Broadcast Channel: optimize requests handling implementation
[e-mobility-charging-stations-simulator.git] / src / types / ChargingStationWorker.ts
index 0caf1a81b082b491979cc5d8b16752fa32b14b07..020ec7bd9b16295c72c5db64784fb0d86e47e475 100644 (file)
@@ -1,6 +1,9 @@
-import ChargingStationInfo from './ChargingStationInfo';
-import { ConnectorStatus } from './ConnectorStatus';
-import { JsonObject } from './JsonType';
+import type { Status } 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 {
@@ -14,9 +17,12 @@ export interface ChargingStationWorkerData extends WorkerData {
 }
 
 export interface ChargingStationData extends WorkerData {
-  hashId: string;
   stationInfo: ChargingStationInfo;
+  started: boolean;
+  wsState?: number;
+  bootNotificationResponse: BootNotificationResponse;
   connectors: ConnectorStatus[];
+  automaticTransactionGeneratorStatuses?: Status[];
 }
 
 enum ChargingStationMessageEvents {
@@ -33,6 +39,8 @@ export const ChargingStationWorkerMessageEvents = {
   ...ChargingStationMessageEvents,
 };
 
+export type ChargingStationWorkerMessageData = ChargingStationData | Statistics;
+
 export interface ChargingStationWorkerMessage<T extends WorkerData>
   extends Omit<WorkerMessage<T>, 'id'> {
   id: ChargingStationWorkerMessageEvents;