1 import type { JsonObject
} from
'./JsonType';
2 import type { BroadcastChannelResponsePayload
} from
'./WorkerBroadcastChannel';
8 export enum ApplicationProtocol
{
13 export enum AuthenticationType
{
14 BASIC_AUTH
= 'basic-auth',
17 export enum ProtocolVersion
{
21 export type ProtocolRequest
= [string, ProcedureName
, RequestPayload
];
22 export type ProtocolResponse
= [string, ResponsePayload
];
24 export type ProtocolRequestHandler
= (
26 payload
?: RequestPayload
27 ) => undefined | Promise
<undefined> | ResponsePayload
| Promise
<ResponsePayload
>;
29 export enum ProcedureName
{
30 LIST_CHARGING_STATIONS
= 'listChargingStations',
31 START_CHARGING_STATION
= 'startChargingStation',
32 STOP_CHARGING_STATION
= 'stopChargingStation',
33 START_SIMULATOR
= 'startSimulator',
34 STOP_SIMULATOR
= 'stopSimulator',
35 OPEN_CONNECTION
= 'openConnection',
36 CLOSE_CONNECTION
= 'closeConnection',
37 START_TRANSACTION
= 'startTransaction',
38 STOP_TRANSACTION
= 'stopTransaction',
39 START_AUTOMATIC_TRANSACTION_GENERATOR
= 'startAutomaticTransactionGenerator',
40 STOP_AUTOMATIC_TRANSACTION_GENERATOR
= 'stopAutomaticTransactionGenerator',
41 STATUS_NOTIFICATION
= 'statusNotification',
44 export interface RequestPayload
extends JsonObject
{
46 connectorIds
?: number[];
49 export enum ResponseStatus
{
54 export interface ResponsePayload
extends JsonObject
{
55 status: ResponseStatus
;
56 hashIdsSucceeded
?: string[];
57 hashIdsFailed
?: string[];
58 responsesFailed
?: BroadcastChannelResponsePayload
[];