import { OCPPMessageType, ocppVersion, type CallActionType, type OCPPRequestPayloadType, type OCPPResponsePayloadType } from "./common"; import { type ActionV16, type ActionV201, type OCPPRpcMessageV201, type OCPPRpcMessageV16, type OCPPRequestTypeV16, type OCPPRequestTypeV201 } from "./../types"; import { OCPPCallResult } from "./ocpp-call-result"; export interface iOCPPCall { version: ocppVersion; messageId?: string; action: ActionType; payload: RequestPayloadType; } export declare class OCPPCall { messageTypeId: OCPPMessageType.CALL; messageId: string; action: ActionType; payload: RequestPayloadType; private readonly version; /** * Create a OCPPCallResult for this call. * @param payload A OCPPResponse type * @returns OCPPCallResult */ toCallResponse(payload: T): OCPPCallResult; toRPCObject(): OCPPRpcMessageV16 | OCPPRpcMessageV201; constructor({ version, messageId, action, payload, }: iOCPPCall); } export declare class OCPPCallV16 extends OCPPCall { /** * Create a new OCPP RPC Call version 1.6 * * @param {Object} param0 * @param {string=} param0.messageId optional message Identifier for CALL * @param {ActionV16} param0.action OCPP action for CALL * @param {OCPPRequestTypeV16} param0.payload OCPP message for RPC Call */ constructor({ messageId, action, payload, }: Omit, "version">); /** * Validates RPC message format for action * @returns {boolean} validation result */ validatePayload(): boolean; } export declare class OCPPCallV201 extends OCPPCall { /** * Create a new OCPP RPC Call version 2.0.1 * * @param {Object} param0 * @param {string} [param0.messageId] optional message Identifier for CALL * @param {ActionV201} param0.action OCPP action for CALL * @param {OCPPRequestTypeV201} param0.payload OCPP message for RPC Call */ constructor({ messageId, action, payload, }: Omit, "version">); /** * Validates RPC message format for action * @returns {boolean} validation result */ validatePayload(): boolean; } //# sourceMappingURL=ocpp-call.d.ts.map