X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FChargingStationWorker.ts;h=c27ec6eb32e3eeec4c3cd8290c3cd414502288fc;hb=1b821a640d1f793e969eed6d76e9c20e7cebb626;hp=0fba406bc8bea212492f8e365d94f451d9d6f0cf;hpb=53e5fd67dea2dd83ec9c34d963dd6e502ec46f5c;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ChargingStationWorker.ts b/src/types/ChargingStationWorker.ts index 0fba406b..c27ec6eb 100644 --- a/src/types/ChargingStationWorker.ts +++ b/src/types/ChargingStationWorker.ts @@ -1,7 +1,11 @@ -import ChargingStationInfo from './ChargingStationInfo'; -import { ConnectorStatus } from './ConnectorStatus'; -import { JsonObject } from './JsonType'; -import Statistics from './Statistics'; +import type { WebSocket } from 'ws'; + +import type { ChargingStationAutomaticTransactionGeneratorConfiguration } from './AutomaticTransactionGenerator'; +import type { ChargingStationInfo } from './ChargingStationInfo'; +import type { ConnectorStatus } from './ConnectorStatus'; +import type { JsonObject } from './JsonType'; +import type { BootNotificationResponse } from './ocpp/Responses'; +import type { Statistics } from './Statistics'; import { WorkerData, WorkerMessage, WorkerMessageEvents } from './Worker'; export interface ChargingStationWorkerOptions extends JsonObject { @@ -15,10 +19,16 @@ export interface ChargingStationWorkerData extends WorkerData { } export interface ChargingStationData extends WorkerData { - hashId: string; stationInfo: ChargingStationInfo; - stopped: boolean; + started: boolean; + wsState?: + | typeof WebSocket.CONNECTING + | typeof WebSocket.OPEN + | typeof WebSocket.CLOSING + | typeof WebSocket.CLOSED; + bootNotificationResponse: BootNotificationResponse; connectors: ConnectorStatus[]; + automaticTransactionGenerator?: ChargingStationAutomaticTransactionGeneratorConfiguration; } enum ChargingStationMessageEvents { @@ -28,16 +38,17 @@ enum ChargingStationMessageEvents { PERFORMANCE_STATISTICS = 'performanceStatistics', } -export type ChargingStationWorkerMessageEvents = WorkerMessageEvents | ChargingStationMessageEvents; - export const ChargingStationWorkerMessageEvents = { ...WorkerMessageEvents, ...ChargingStationMessageEvents, -}; +} as const; +export type ChargingStationWorkerMessageEvents = WorkerMessageEvents | ChargingStationMessageEvents; export type ChargingStationWorkerMessageData = ChargingStationData | Statistics; -export interface ChargingStationWorkerMessage - extends Omit, 'id'> { +export type ChargingStationWorkerMessage = Omit< + WorkerMessage, + 'id' +> & { id: ChargingStationWorkerMessageEvents; -} +};