fix: move and fix statistic related helpers implementation
[e-mobility-charging-stations-simulator.git] / src / types / ChargingStationWorker.ts
index cd2cb0058993ffb4ba6923a4b9f7b36c33f5814f..3164414ae59a5b558a8a70693f8dc3f879510a02 100644 (file)
@@ -4,13 +4,15 @@ import type {
   BootNotificationResponse,
   ChargingStationAutomaticTransactionGeneratorConfiguration,
   ChargingStationInfo,
+  ChargingStationOcppConfiguration,
   ConnectorStatus,
+  EvseStatus,
   JsonObject,
   Statistics,
 } from './internal';
 import { type WorkerData, type WorkerMessage, WorkerMessageEvents } from '../worker';
 
-export interface ChargingStationWorkerOptions extends JsonObject {
+interface ChargingStationWorkerOptions extends JsonObject {
   elementStartDelay?: number;
 }
 
@@ -20,24 +22,30 @@ export interface ChargingStationWorkerData extends WorkerData {
   chargingStationWorkerOptions?: ChargingStationWorkerOptions;
 }
 
+type EvseStatusType = Omit<EvseStatus, 'connectors'> & {
+  connectors?: ConnectorStatus[];
+};
+
 export interface ChargingStationData extends WorkerData {
-  stationInfo: ChargingStationInfo;
   started: boolean;
+  stationInfo: ChargingStationInfo;
+  connectors: ConnectorStatus[];
+  evses: EvseStatusType[];
+  ocppConfiguration: ChargingStationOcppConfiguration;
   wsState?:
     | typeof WebSocket.CONNECTING
     | typeof WebSocket.OPEN
     | typeof WebSocket.CLOSING
     | typeof WebSocket.CLOSED;
   bootNotificationResponse?: BootNotificationResponse;
-  connectors: ConnectorStatus[];
   automaticTransactionGenerator?: ChargingStationAutomaticTransactionGeneratorConfiguration;
 }
 
 enum ChargingStationMessageEvents {
-  STARTED = 'started',
-  STOPPED = 'stopped',
-  UPDATED = 'updated',
-  PERFORMANCE_STATISTICS = 'performanceStatistics',
+  started = 'started',
+  stopped = 'stopped',
+  updated = 'updated',
+  performanceStatistics = 'performanceStatistics',
 }
 
 export const ChargingStationWorkerMessageEvents = {