feat(simulator): add certificates related OCPP 2.x types
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 2.0 / Common.ts
index 5e47a2512cbdc4eebe78ab019bb993f969a62ca1..ba908562c87bb70b013bbb94e9436f0db133fd55 100644 (file)
@@ -1,4 +1,17 @@
-import type { JsonObject } from '../../internal';
+import type { GenericStatus, JsonObject } from '../../internal';
+
+export enum DataEnumType {
+  // eslint-disable-next-line id-blacklist
+  string = 'string',
+  decimal = 'decimal',
+  integer = 'integer',
+  dateTime = 'dateTime',
+  // eslint-disable-next-line id-blacklist
+  boolean = 'boolean',
+  OptionList = 'OptionList',
+  SequenceList = 'SequenceList',
+  MemberList = 'MemberList',
+}
 
 export enum BootReasonEnumType {
   ApplicationReset = 'ApplicationReset',
@@ -20,6 +33,84 @@ export enum OCPP20ConnectorStatusEnumType {
   FAULTED = 'Faulted',
 }
 
+export type GenericStatusEnumType = GenericStatus;
+
+export enum HashAlgorithmEnumType {
+  SHA256 = 'SHA256',
+  SHA384 = 'SHA384',
+  SHA512 = 'SHA512',
+}
+
+export enum GetCertificateIdUseEnumType {
+  V2GRootCertificate = 'V2GRootCertificate',
+  MORootCertificate = 'MORootCertificate',
+  CSMSRootCertificate = 'CSMSRootCertificate',
+  V2GCertificateChain = 'V2GCertificateChain',
+  ManufacturerRootCertificate = 'ManufacturerRootCertificate',
+}
+
+export enum GetCertificateStatusEnumType {
+  Accepted = 'Accepted',
+  Failed = 'Failed',
+}
+
+export enum GetInstalledCertificateStatusEnumType {
+  Accepted = 'Accepted',
+  NotFound = 'NotFound',
+}
+
+export enum InstallCertificateStatusEnumType {
+  Accepted = 'Accepted',
+  Rejected = 'Rejected',
+  Failed = 'Failed',
+}
+
+export enum InstallCertificateUseEnumType {
+  V2GRootCertificate = 'V2GRootCertificate',
+  MORootCertificate = 'MORootCertificate',
+  CSMSRootCertificate = 'CSMSRootCertificate',
+  ManufacturerRootCertificate = 'ManufacturerRootCertificate',
+}
+
+export enum DeleteCertificateStatusEnumType {
+  Accepted = 'Accepted',
+  Failed = 'Failed',
+  NotFound = 'NotFound',
+}
+
+export enum CertificateActionEnumType {
+  Install = 'Install',
+  Update = 'Update',
+}
+
+export enum CertificateSigningUseEnumType {
+  ChargingStationCertificate = 'ChargingStationCertificate',
+  V2GCertificate = 'V2GCertificate',
+}
+
+export type CertificateSignedStatusEnumType = GenericStatus;
+
+export type CertificateHashDataType = {
+  hashAlgorithm: HashAlgorithmEnumType;
+  issuerNameHash: string;
+  issuerKeyHash: string;
+  serialNumber: string;
+} & JsonObject;
+
+export type CertificateHashDataChainType = {
+  certificateType: GetCertificateIdUseEnumType;
+  certificateHashData: CertificateHashDataType;
+  childCertificateHashData?: CertificateHashDataType;
+} & JsonObject;
+
+export type OCSPRequestDataType = {
+  hashAlgorithm: HashAlgorithmEnumType;
+  issuerNameHash: string;
+  issuerKeyHash: string;
+  serialNumber: string;
+  responderURL: string;
+} & JsonObject;
+
 export type StatusInfoType = {
   reasonCode: string;
   additionalInfo?: string;