Use the fixed JsonType definition where appropriate
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / Requests.ts
index 2808e2f56a31dc3cb0d7b60176a81d9fd6dc7a3b..16a79c05d2cf74365cd09f2e102af269cfe08b0a 100644 (file)
@@ -1,39 +1,66 @@
-import { OCPP16AvailabilityType, OCPP16BootNotificationRequest, OCPP16IncomingRequestCommand, OCPP16RequestCommand } from './1.6/Requests';
+import {
+  OCPP16AvailabilityType,
+  OCPP16BootNotificationRequest,
+  OCPP16HeartbeatRequest,
+  OCPP16IncomingRequestCommand,
+  OCPP16RequestCommand,
+  OCPP16StatusNotificationRequest,
+} from './1.6/Requests';
 
+import { JsonType } from '../JsonType';
 import { MessageType } from './MessageType';
 import { OCPP16DiagnosticsStatus } from './1.6/DiagnosticsStatus';
+import { OCPP16MeterValuesRequest } from './1.6/MeterValues';
 import OCPPError from '../../exception/OCPPError';
 
-export type IncomingRequestHandler = (commandPayload: Record<string, unknown>) => Record<string, unknown> | Promise<Record<string, unknown>>;
+export type OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonType];
+
+export type IncomingRequest = [MessageType.CALL_MESSAGE, string, IncomingRequestCommand, JsonType];
+
+export type CachedRequest = [
+  (payload: JsonType, requestPayload: JsonType) => void,
+  (error: OCPPError, requestStatistic?: boolean) => void,
+  RequestCommand | IncomingRequestCommand,
+  JsonType
+];
+
+export type IncomingRequestHandler = (commandPayload: JsonType) => JsonType | Promise<JsonType>;
+
+export type ResponseType = JsonType | OCPPError;
+
+export interface RequestParams {
+  skipBufferingOnError?: boolean;
+  triggerMessage?: boolean;
+}
 
 export type BootNotificationRequest = OCPP16BootNotificationRequest;
 
+export type HeartbeatRequest = OCPP16HeartbeatRequest;
+
+export type StatusNotificationRequest = OCPP16StatusNotificationRequest;
+
+export type MeterValuesRequest = OCPP16MeterValuesRequest;
+
 export type AvailabilityType = OCPP16AvailabilityType;
 
 export const AvailabilityType = {
-  ...OCPP16AvailabilityType
+  ...OCPP16AvailabilityType,
 };
 
 export type RequestCommand = OCPP16RequestCommand;
 
 export const RequestCommand = {
-  ...OCPP16RequestCommand
+  ...OCPP16RequestCommand,
 };
 
 export type IncomingRequestCommand = OCPP16IncomingRequestCommand;
 
 export const IncomingRequestCommand = {
-  ...OCPP16IncomingRequestCommand
+  ...OCPP16IncomingRequestCommand,
 };
 
 export type DiagnosticsStatus = OCPP16DiagnosticsStatus;
 
 export const DiagnosticsStatus = {
-  ...OCPP16DiagnosticsStatus
+  ...OCPP16DiagnosticsStatus,
 };
-
-export type Request = [MessageType, string, RequestCommand, Record<string, unknown>, Record<string, unknown>];
-
-export type IncomingRequest = [MessageType, string, IncomingRequestCommand, Record<string, unknown>, Record<string, unknown>];
-
-export type CachedRequest = [(payload: Record<string, unknown> | string, requestPayload: Record<string, unknown>) => void, (error: OCPPError, requestStatistic?: boolean) => void, RequestCommand | IncomingRequestCommand, Record<string, unknown>];