test(simulator): add cloneObject() helper tests
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 1.6 / Requests.ts
index 97dccc1e1480418bb4f8740be23da78252be953b..6b244d043a678e804c852fc6cffdbccac4a21c53 100644 (file)
@@ -1,10 +1,13 @@
-import type { EmptyObject } from '../../EmptyObject';
-import type { JsonObject } from '../../JsonType';
-import type { OCPP16ChargePointErrorCode } from './ChargePointErrorCode';
-import type { OCPP16ChargePointStatus } from './ChargePointStatus';
-import type { ChargingProfilePurposeType, OCPP16ChargingProfile } from './ChargingProfile';
-import type { OCPP16StandardParametersKey } from './Configuration';
-import type { OCPP16DiagnosticsStatus } from './DiagnosticsStatus';
+import type {
+  EmptyObject,
+  JsonObject,
+  OCPP16ChargePointErrorCode,
+  OCPP16ChargePointStatus,
+  OCPP16ChargingProfile,
+  OCPP16ChargingProfilePurposeType,
+  OCPP16DiagnosticsStatus,
+  OCPP16StandardParametersKey,
+} from '../../internal';
 
 export enum OCPP16RequestCommand {
   BOOT_NOTIFICATION = 'BootNotification',
@@ -15,6 +18,7 @@ export enum OCPP16RequestCommand {
   STOP_TRANSACTION = 'StopTransaction',
   METER_VALUES = 'MeterValues',
   DIAGNOSTICS_STATUS_NOTIFICATION = 'DiagnosticsStatusNotification',
+  FIRMWARE_STATUS_NOTIFICATION = 'FirmwareStatusNotification',
   DATA_TRANSFER = 'DataTransfer',
 }
 
@@ -54,7 +58,7 @@ export interface OCPP16StatusNotificationRequest extends JsonObject {
   errorCode: OCPP16ChargePointErrorCode;
   status: OCPP16ChargePointStatus;
   info?: string;
-  timestamp?: string;
+  timestamp?: Date;
   vendorId?: string;
   vendorErrorCode?: string;
 }
@@ -81,10 +85,10 @@ export interface UnlockConnectorRequest extends JsonObject {
 }
 
 export interface GetConfigurationRequest extends JsonObject {
-  key?: string | OCPP16StandardParametersKey[];
+  key?: (string | OCPP16StandardParametersKey)[];
 }
 
-export enum ResetType {
+enum ResetType {
   HARD = 'Hard',
   SOFT = 'Soft',
 }
@@ -111,7 +115,7 @@ export interface ChangeAvailabilityRequest extends JsonObject {
 export interface ClearChargingProfileRequest extends JsonObject {
   id?: number;
   connectorId?: number;
-  chargingProfilePurpose?: ChargingProfilePurposeType;
+  chargingProfilePurpose?: OCPP16ChargingProfilePurposeType;
   stackLevel?: number;
 }
 
@@ -122,6 +126,20 @@ export interface OCPP16UpdateFirmwareRequest extends JsonObject {
   retryInterval?: number;
 }
 
+export enum OCPP16FirmwareStatus {
+  Downloaded = 'Downloaded',
+  DownloadFailed = 'DownloadFailed',
+  Downloading = 'Downloading',
+  Idle = 'Idle',
+  InstallationFailed = 'InstallationFailed',
+  Installing = 'Installing',
+  Installed = 'Installed',
+}
+
+export type OCPP16FirmwareStatusNotificationRequest = {
+  status: OCPP16FirmwareStatus;
+} & JsonObject;
+
 export interface GetDiagnosticsRequest extends JsonObject {
   location: string;
   retries?: number;
@@ -130,7 +148,7 @@ export interface GetDiagnosticsRequest extends JsonObject {
   stopTime?: Date;
 }
 
-export interface DiagnosticsStatusNotificationRequest extends JsonObject {
+export interface OCPP16DiagnosticsStatusNotificationRequest extends JsonObject {
   status: OCPP16DiagnosticsStatus;
 }