Strong type sendMessageHandler response with generics
[e-mobility-charging-stations-simulator.git] / src / types / ChargingStationTemplate.ts
index 6ecc9ec971e294ae0f6858cc88515ea0a780bbad..ee7df49a0ab2e7220c540c6b04edee3cee965199 100644 (file)
@@ -1,5 +1,7 @@
 import ChargingStationConfiguration from './ChargingStationConfiguration';
-import { Connectors } from './Connectors';
+import { ClientOptions } from 'ws';
+import { ClientRequestArgs } from 'http';
+import { ConnectorStatus } from './ConnectorStatus';
 import { OCPPProtocol } from './ocpp/OCPPProtocol';
 import { OCPPVersion } from './ocpp/OCPPVersion';
 
@@ -17,7 +19,7 @@ export enum Voltage {
   VOLTAGE_110 = 110,
   VOLTAGE_230 = 230,
   VOLTAGE_400 = 400,
-  VOLTAGE_800 = 800
+  VOLTAGE_800 = 800,
 }
 
 export interface AutomaticTransactionGenerator {
@@ -29,15 +31,20 @@ export interface AutomaticTransactionGenerator {
   probabilityOfStart: number;
   stopAfterHours: number;
   stopOnConnectionFailure: boolean;
-  requireAuthorize?: boolean
+  requireAuthorize?: boolean;
 }
 
 export default interface ChargingStationTemplate {
-  supervisionURL?: string;
+  supervisionUrls?: string | string[];
+  supervisionUrlOcppConfiguration?: boolean;
+  supervisionUrlOcppKey?: string;
   supervisionUser?: string;
   supervisionPassword?: string;
   ocppVersion?: OCPPVersion;
   ocppProtocol?: OCPPProtocol;
+  ocppStrictCompliance?: boolean;
+  ocppPersistentConfiguration?: boolean;
+  wsOptions?: ClientOptions & ClientRequestArgs;
   authorizationFile?: string;
   baseName: string;
   nameSuffix?: string;
@@ -46,6 +53,10 @@ export default interface ChargingStationTemplate {
   chargePointVendor: string;
   chargeBoxSerialNumberPrefix?: string;
   firmwareVersion?: string;
+  iccid?: string;
+  imsi?: string;
+  meterSerialNumber?: string;
+  meterType?: string;
   power: number | number[];
   powerSharedByConnectors?: boolean;
   powerUnit: PowerUnits;
@@ -70,5 +81,5 @@ export default interface ChargingStationTemplate {
   phaseLineToLineVoltageMeterValues?: boolean;
   Configuration?: ChargingStationConfiguration;
   AutomaticTransactionGenerator: AutomaticTransactionGenerator;
-  Connectors: Connectors;
+  Connectors: Record<string, ConnectorStatus>;
 }