-import { OCPP16AvailabilityType, OCPP16BootNotificationRequest, OCPP16IncomingRequestCommand, OCPP16RequestCommand } from './1.6/Requests';
-
-import { MessageType } from './MessageType';
-import { OCPP16DiagnosticsStatus } from './1.6/DiagnosticsStatus';
+import type ChargingStation from '../../charging-station/ChargingStation';
import OCPPError from '../../exception/OCPPError';
+import { JsonType } from '../JsonType';
+import { OCPP16DiagnosticsStatus } from './1.6/DiagnosticsStatus';
+import { OCPP16MeterValuesRequest } from './1.6/MeterValues';
+import {
+ OCPP16AvailabilityType,
+ OCPP16BootNotificationRequest,
+ OCPP16HeartbeatRequest,
+ OCPP16IncomingRequestCommand,
+ OCPP16RequestCommand,
+ OCPP16StatusNotificationRequest,
+} from './1.6/Requests';
+import { MessageType } from './MessageType';
+
+export type RequestCommand = OCPP16RequestCommand;
-export interface SendParams {
- skipBufferingOnError?: boolean,
- triggerMessage?: boolean
+export const RequestCommand = {
+ ...OCPP16RequestCommand,
+};
+
+export type OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonType];
+
+export interface RequestParams {
+ skipBufferingOnError?: boolean;
+ triggerMessage?: boolean;
}
-export type IncomingRequestHandler = (commandPayload: Record<string, unknown>) => Record<string, unknown> | Promise<Record<string, unknown>>;
+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 AvailabilityType = OCPP16AvailabilityType;
+export type HeartbeatRequest = OCPP16HeartbeatRequest;
-export const AvailabilityType = {
- ...OCPP16AvailabilityType
-};
+export type StatusNotificationRequest = OCPP16StatusNotificationRequest;
-export type RequestCommand = OCPP16RequestCommand;
+export type MeterValuesRequest = OCPP16MeterValuesRequest;
-export const RequestCommand = {
- ...OCPP16RequestCommand
-};
+export type IncomingRequestHandler = (
+ chargingStation: ChargingStation,
+ commandPayload: JsonType
+) => JsonType | Promise<JsonType>;
-export type IncomingRequestCommand = OCPP16IncomingRequestCommand;
+export type AvailabilityType = OCPP16AvailabilityType;
-export const IncomingRequestCommand = {
- ...OCPP16IncomingRequestCommand
+export const AvailabilityType = {
+ ...OCPP16AvailabilityType,
};
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>];
+export type ResponseType = JsonType | OCPPError;