-import ChargingStationInfo from './ChargingStationInfo';
-import { ConnectorStatus } from './ConnectorStatus';
-import { JsonObject } from './JsonType';
+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 {
}
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 {
...ChargingStationMessageEvents,
};
-export interface ChargingStationWorkerMessage<T extends WorkerData>
- extends Omit<WorkerMessage<T>, 'id'> {
+export type ChargingStationWorkerMessageData = ChargingStationData | Statistics;
+
+export type ChargingStationWorkerMessage<T extends ChargingStationWorkerMessageData> = Omit<
+ WorkerMessage<T>,
+ 'id'
+> & {
id: ChargingStationWorkerMessageEvents;
-}
+};