build: switch to NodeNext module resolution
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 2.0 / Requests.ts
CommitLineData
28f1c574
JB
1import type {
2 BootReasonEnumType,
6b635033 3 InstallCertificateUseEnumType,
28f1c574 4 OCPP20ConnectorStatusEnumType,
a6ef1ece
JB
5} from './Common.js';
6import type { OCPP20SetVariableDataType } from './Variables.js';
7import type { EmptyObject } from '../../EmptyObject.js';
8import type { JsonObject } from '../../JsonType.js';
953d6b02 9
d270cc87
JB
10export enum OCPP20RequestCommand {
11 BOOT_NOTIFICATION = 'BootNotification',
12 HEARTBEAT = 'Heartbeat',
6e939d9e 13 STATUS_NOTIFICATION = 'StatusNotification',
d270cc87
JB
14}
15
16export enum OCPP20IncomingRequestCommand {
17 CLEAR_CACHE = 'ClearCache',
81533a20
JB
18 REQUEST_START_TRANSACTION = 'RequestStartTransaction',
19 REQUEST_STOP_TRANSACTION = 'RequestStopTransaction',
d270cc87
JB
20}
21
28f1c574 22type ModemType = {
d270cc87
JB
23 iccid?: string;
24 imsi?: string;
25} & JsonObject;
26
28f1c574 27type ChargingStationType = {
d270cc87
JB
28 serialNumber?: string;
29 model: string;
30 vendorName: string;
31 firmwareVersion?: string;
32 modem?: ModemType;
33} & JsonObject;
34
35export type OCPP20BootNotificationRequest = {
36 reason: BootReasonEnumType;
37 chargingStation: ChargingStationType;
38} & JsonObject;
39
81533a20
JB
40export type OCPP20HeartbeatRequest = EmptyObject;
41
d270cc87 42export type OCPP20ClearCacheRequest = EmptyObject;
6e939d9e 43
6e939d9e
JB
44export type OCPP20StatusNotificationRequest = {
45 timestamp: Date;
46 connectorStatus: OCPP20ConnectorStatusEnumType;
47 evseId: number;
48 connectorId: number;
6415403c 49} & JsonObject;
28f1c574
JB
50
51export type OCPP20SetVariablesRequest = {
52 setVariableData: OCPP20SetVariableDataType[];
53} & JsonObject;
6b635033
JB
54
55export type OCPP20InstallCertificateRequest = {
56 certificateType: InstallCertificateUseEnumType;
57 certificate: string;
58} & JsonObject;