build: switch to NodeNext module resolution
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 1.6 / ChargingProfile.ts
index e4a66d786eb4a82fefd82b460832db616f3ac276..89cf8e4d8545308d0e841f9647dde94beac746ff 100644 (file)
@@ -1,48 +1,49 @@
+import type { JsonObject } from '../../JsonType.js';
 
-export interface ChargingProfile {
+export interface OCPP16ChargingProfile extends JsonObject {
   chargingProfileId: number;
   transactionId?: number;
   stackLevel: number;
-  chargingProfilePurpose: ChargingProfilePurposeType;
-  chargingProfileKind: ChargingProfileKindType;
-  recurrencyKind?: RecurrencyKindType;
+  chargingProfilePurpose: OCPP16ChargingProfilePurposeType;
+  chargingProfileKind: OCPP16ChargingProfileKindType;
+  recurrencyKind?: OCPP16RecurrencyKindType;
   validFrom?: Date;
   validTo?: Date;
-  chargingSchedule: ChargingSchedule;
+  chargingSchedule: OCPP16ChargingSchedule;
 }
 
-export interface ChargingSchedule {
-  duration?: number;
+export interface OCPP16ChargingSchedule extends JsonObject {
   startSchedule?: Date;
-  chargingRateUnit: ChargingRateUnitType;
-  chargingSchedulePeriod: ChargingSchedulePeriod[];
+  duration?: number;
+  chargingRateUnit: OCPP16ChargingRateUnitType;
+  chargingSchedulePeriod: OCPP16ChargingSchedulePeriod[];
   minChargeRate?: number;
 }
 
-export interface ChargingSchedulePeriod {
+export interface OCPP16ChargingSchedulePeriod extends JsonObject {
   startPeriod: number;
   limit: number;
   numberPhases?: number;
 }
 
-export enum ChargingRateUnitType {
+export enum OCPP16ChargingRateUnitType {
   WATT = 'W',
   AMPERE = 'A',
 }
 
-export enum ChargingProfileKindType {
+export enum OCPP16ChargingProfileKindType {
   ABSOLUTE = 'Absolute',
   RECURRING = 'Recurring',
   RELATIVE = 'Relative',
 }
 
-export enum ChargingProfilePurposeType {
+export enum OCPP16ChargingProfilePurposeType {
   CHARGE_POINT_MAX_PROFILE = 'ChargePointMaxProfile',
   TX_DEFAULT_PROFILE = 'TxDefaultProfile',
   TX_PROFILE = 'TxProfile',
 }
 
-export enum RecurrencyKindType {
+export enum OCPP16RecurrencyKindType {
   DAILY = 'Daily',
   WEEKLY = 'Weekly',
 }