ATG: fix start transaction counting with no authentication
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / Requests.ts
index 60724254c8a61390bcee73787bfc4facdaa8514f..99a3f817b064301c55d396c28f11a557c0c6b90e 100644 (file)
@@ -1,3 +1,8 @@
+import type ChargingStation from '../../charging-station/ChargingStation';
+import type OCPPError from '../../exception/OCPPError';
+import type { JsonType } from '../JsonType';
+import { OCPP16DiagnosticsStatus } from './1.6/DiagnosticsStatus';
+import type { OCPP16MeterValuesRequest } from './1.6/MeterValues';
 import {
   OCPP16AvailabilityType,
   OCPP16BootNotificationRequest,
@@ -6,40 +11,36 @@ import {
   OCPP16RequestCommand,
   OCPP16StatusNotificationRequest,
 } from './1.6/Requests';
+import type { MessageType } from './MessageType';
 
-import { JsonObject } 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 OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonObject];
-
-export type IncomingRequest = [
-  MessageType.CALL_MESSAGE,
-  string,
-  IncomingRequestCommand,
-  JsonObject
-];
-
-export type CachedRequest = [
-  (payload: JsonObject, requestPayload: JsonObject) => void,
-  (error: OCPPError, requestStatistic?: boolean) => void,
-  RequestCommand | IncomingRequestCommand,
-  JsonObject
-];
+export type RequestCommand = OCPP16RequestCommand;
 
-export type IncomingRequestHandler = (
-  commandPayload: JsonObject
-) => JsonObject | Promise<JsonObject>;
+export const RequestCommand = {
+  ...OCPP16RequestCommand,
+};
 
-export type ResponseType = JsonObject | OCPPError;
+export type OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonType];
 
 export interface RequestParams {
   skipBufferingOnError?: boolean;
   triggerMessage?: boolean;
 }
 
+export type IncomingRequestCommand = OCPP16IncomingRequestCommand;
+
+export const IncomingRequestCommand = {
+  ...OCPP16IncomingRequestCommand,
+};
+
+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 BootNotificationRequest = OCPP16BootNotificationRequest;
 
 export type HeartbeatRequest = OCPP16HeartbeatRequest;
@@ -48,26 +49,21 @@ export type StatusNotificationRequest = OCPP16StatusNotificationRequest;
 
 export type MeterValuesRequest = OCPP16MeterValuesRequest;
 
+export type IncomingRequestHandler = (
+  chargingStation: ChargingStation,
+  commandPayload: JsonType
+) => JsonType | Promise<JsonType>;
+
 export type AvailabilityType = OCPP16AvailabilityType;
 
 export const AvailabilityType = {
   ...OCPP16AvailabilityType,
 };
 
-export type RequestCommand = OCPP16RequestCommand;
-
-export const RequestCommand = {
-  ...OCPP16RequestCommand,
-};
-
-export type IncomingRequestCommand = OCPP16IncomingRequestCommand;
-
-export const IncomingRequestCommand = {
-  ...OCPP16IncomingRequestCommand,
-};
-
 export type DiagnosticsStatus = OCPP16DiagnosticsStatus;
 
 export const DiagnosticsStatus = {
   ...OCPP16DiagnosticsStatus,
 };
+
+export type ResponseType = JsonType | OCPPError;