build: switch to NodeNext module resolution
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 1.6 / ChargingProfile.ts
CommitLineData
a6ef1ece 1import type { JsonObject } from '../../JsonType.js';
c3ee95af 2
e3822d6f 3export interface OCPP16ChargingProfile extends JsonObject {
f738a0e9
JB
4 chargingProfileId: number;
5 transactionId?: number;
6 stackLevel: number;
0ac97927
JB
7 chargingProfilePurpose: OCPP16ChargingProfilePurposeType;
8 chargingProfileKind: OCPP16ChargingProfileKindType;
9 recurrencyKind?: OCPP16RecurrencyKindType;
f738a0e9
JB
10 validFrom?: Date;
11 validTo?: Date;
41189456 12 chargingSchedule: OCPP16ChargingSchedule;
f738a0e9
JB
13}
14
41189456 15export interface OCPP16ChargingSchedule extends JsonObject {
f738a0e9 16 startSchedule?: Date;
ef9e3b33 17 duration?: number;
cfa9539e
JB
18 chargingRateUnit: OCPP16ChargingRateUnitType;
19 chargingSchedulePeriod: OCPP16ChargingSchedulePeriod[];
f738a0e9
JB
20 minChargeRate?: number;
21}
22
e3822d6f 23export interface OCPP16ChargingSchedulePeriod extends JsonObject {
f738a0e9
JB
24 startPeriod: number;
25 limit: number;
26 numberPhases?: number;
27}
28
cfa9539e 29export enum OCPP16ChargingRateUnitType {
f738a0e9
JB
30 WATT = 'W',
31 AMPERE = 'A',
32}
33
0ac97927 34export enum OCPP16ChargingProfileKindType {
f738a0e9
JB
35 ABSOLUTE = 'Absolute',
36 RECURRING = 'Recurring',
37 RELATIVE = 'Relative',
38}
39
0ac97927 40export enum OCPP16ChargingProfilePurposeType {
f738a0e9
JB
41 CHARGE_POINT_MAX_PROFILE = 'ChargePointMaxProfile',
42 TX_DEFAULT_PROFILE = 'TxDefaultProfile',
43 TX_PROFILE = 'TxProfile',
44}
45
0ac97927 46export enum OCPP16RecurrencyKindType {
f738a0e9
JB
47 DAILY = 'Daily',
48 WEEKLY = 'Weekly',
49}