Apply dependencies update
[e-mobility-charging-stations-simulator.git] / src / types / ChargingStationTemplate.ts
index 1c68743d8b2903a61e84f9748cf2e020c258b2ef..cd92616c11063cb4060013081ce8ffd45e974bc2 100644 (file)
@@ -3,11 +3,11 @@ import type { ClientRequestArgs } from 'http';
 import type { ClientOptions } from 'ws';
 
 import type { AutomaticTransactionGeneratorConfiguration } from './AutomaticTransactionGenerator';
-import type ChargingStationOcppConfiguration from './ChargingStationOcppConfiguration';
+import type { ChargingStationOcppConfiguration } from './ChargingStationOcppConfiguration';
 import type { ConnectorStatus } from './ConnectorStatus';
 import type { OCPPProtocol } from './ocpp/OCPPProtocol';
 import type { OCPPVersion } from './ocpp/OCPPVersion';
-import type { IncomingRequestCommand, RequestCommand } from './ocpp/Requests';
+import type { IncomingRequestCommand, MessageTrigger, RequestCommand } from './ocpp/Requests';
 
 export enum CurrentType {
   AC = 'AC',
@@ -35,12 +35,22 @@ export enum Voltage {
 
 export type WsOptions = ClientOptions & ClientRequestArgs;
 
-interface CommandsSupport {
+type FirmwareUpgrade = {
+  versionUpgrade: {
+    patternGroup?: number | number[];
+    to?: string;
+  };
+  reset?: boolean;
+  resetDelay?: number;
+  checkIntegrity?: boolean;
+};
+
+type CommandsSupport = {
   incomingCommands: Record<IncomingRequestCommand, boolean>;
   outgoingCommands?: Record<RequestCommand, boolean>;
-}
+};
 
-export default interface ChargingStationTemplate {
+export type ChargingStationTemplate = {
   templateHash?: string;
   supervisionUrls?: string | string[];
   supervisionUrlOcppConfiguration?: boolean;
@@ -61,7 +71,9 @@ export default interface ChargingStationTemplate {
   chargePointVendor: string;
   chargePointSerialNumberPrefix?: string;
   chargeBoxSerialNumberPrefix?: string;
+  firmwareVersionPattern?: string;
   firmwareVersion?: string;
+  firmwareUpgrade?: FirmwareUpgrade;
   iccid?: string;
   imsi?: string;
   meterSerialNumberPrefix?: string;
@@ -93,7 +105,8 @@ export default interface ChargingStationTemplate {
   phaseLineToLineVoltageMeterValues?: boolean;
   customValueLimitationMeterValues?: boolean;
   commandsSupport?: CommandsSupport;
+  messageTriggerSupport?: Record<MessageTrigger, boolean>;
   Configuration?: ChargingStationOcppConfiguration;
   AutomaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration;
   Connectors: Record<string, ConnectorStatus>;
-}
+};