UNPKG

typed-ocpp

Version:

A library for type-aware parsing, serialization and validation of OCPP 1.6, OCPP 2.0 and OCPP 2.1 messages

98 lines (97 loc) 17.5 kB
import type { BaseMessage } from './utils.js'; import { type ValidateFn } from '../common/utils.js'; import { Action, MessageType } from './utils.js'; import * as types from './types.js'; export type AdjustPeriodicEventStreamCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.AdjustPeriodicEventStream, payload: types.AdjustPeriodicEventStreamRequest]>; export type AFRRSignalCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.AFRRSignal, payload: types.AFRRSignalRequest]>; export type AuthorizeCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.Authorize, payload: types.AuthorizeRequest]>; export type BatterySwapCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.BatterySwap, payload: types.BatterySwapRequest]>; export type BootNotificationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.BootNotification, payload: types.BootNotificationRequest]>; export type CancelReservationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.CancelReservation, payload: types.CancelReservationRequest]>; export type CertificateSignedCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.CertificateSigned, payload: types.CertificateSignedRequest]>; export type ChangeAvailabilityCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ChangeAvailability, payload: types.ChangeAvailabilityRequest]>; export type ChangeTransactionTariffCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ChangeTransactionTariff, payload: types.ChangeTransactionTariffRequest]>; export type ClearCacheCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClearCache, payload: types.ClearCacheRequest]>; export type ClearChargingProfileCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClearChargingProfile, payload: types.ClearChargingProfileRequest]>; export type ClearDERControlCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClearDERControl, payload: types.ClearDERControlRequest]>; export type ClearDisplayMessageCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClearDisplayMessage, payload: types.ClearDisplayMessageRequest]>; export type ClearedChargingLimitCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClearedChargingLimit, payload: types.ClearedChargingLimitRequest]>; export type ClearTariffsCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClearTariffs, payload: types.ClearTariffsRequest]>; export type ClearVariableMonitoringCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClearVariableMonitoring, payload: types.ClearVariableMonitoringRequest]>; export type ClosePeriodicEventStreamCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ClosePeriodicEventStream, payload: types.ClosePeriodicEventStreamRequest]>; export type CostUpdatedCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.CostUpdated, payload: types.CostUpdatedRequest]>; export type CustomerInformationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.CustomerInformation, payload: types.CustomerInformationRequest]>; export type DataTransferCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.DataTransfer, payload: types.DataTransferRequest]>; export type DeleteCertificateCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.DeleteCertificate, payload: types.DeleteCertificateRequest]>; export type FirmwareStatusNotificationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.FirmwareStatusNotification, payload: types.FirmwareStatusNotificationRequest]>; export type Get15118EVCertificateCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.Get15118EVCertificate, payload: types.Get15118EVCertificateRequest]>; export type GetBaseReportCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetBaseReport, payload: types.GetBaseReportRequest]>; export type GetCertificateChainStatusCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetCertificateChainStatus, payload: types.GetCertificateChainStatusRequest]>; export type GetCertificateStatusCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetCertificateStatus, payload: types.GetCertificateStatusRequest]>; export type GetChargingProfilesCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetChargingProfiles, payload: types.GetChargingProfilesRequest]>; export type GetCompositeScheduleCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetCompositeSchedule, payload: types.GetCompositeScheduleRequest]>; export type GetDERControlCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetDERControl, payload: types.GetDERControlRequest]>; export type GetDisplayMessagesCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetDisplayMessages, payload: types.GetDisplayMessagesRequest]>; export type GetInstalledCertificateIdsCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetInstalledCertificateIds, payload: types.GetInstalledCertificateIdsRequest]>; export type GetLocalListVersionCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetLocalListVersion, payload: types.GetLocalListVersionRequest]>; export type GetLogCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetLog, payload: types.GetLogRequest]>; export type GetMonitoringReportCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetMonitoringReport, payload: types.GetMonitoringReportRequest]>; export type GetPeriodicEventStreamCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetPeriodicEventStream, payload: types.GetPeriodicEventStreamRequest]>; export type GetReportCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetReport, payload: types.GetReportRequest]>; export type GetTariffsCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetTariffs, payload: types.GetTariffsRequest]>; export type GetTransactionStatusCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetTransactionStatus, payload: types.GetTransactionStatusRequest]>; export type GetVariablesCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.GetVariables, payload: types.GetVariablesRequest]>; export type HeartbeatCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.Heartbeat, payload: types.HeartbeatRequest]>; export type InstallCertificateCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.InstallCertificate, payload: types.InstallCertificateRequest]>; export type LogStatusNotificationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.LogStatusNotification, payload: types.LogStatusNotificationRequest]>; export type MeterValuesCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.MeterValues, payload: types.MeterValuesRequest]>; export type NotifyAllowedEnergyTransferCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyAllowedEnergyTransfer, payload: types.NotifyAllowedEnergyTransferRequest]>; export type NotifyChargingLimitCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyChargingLimit, payload: types.NotifyChargingLimitRequest]>; export type NotifyCustomerInformationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyCustomerInformation, payload: types.NotifyCustomerInformationRequest]>; export type NotifyDERAlarmCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyDERAlarm, payload: types.NotifyDERAlarmRequest]>; export type NotifyDERStartStopCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyDERStartStop, payload: types.NotifyDERStartStopRequest]>; export type NotifyDisplayMessagesCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyDisplayMessages, payload: types.NotifyDisplayMessagesRequest]>; export type NotifyEVChargingNeedsCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyEVChargingNeeds, payload: types.NotifyEVChargingNeedsRequest]>; export type NotifyEVChargingScheduleCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyEVChargingSchedule, payload: types.NotifyEVChargingScheduleRequest]>; export type NotifyEventCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyEvent, payload: types.NotifyEventRequest]>; export type NotifyMonitoringReportCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyMonitoringReport, payload: types.NotifyMonitoringReportRequest]>; export type NotifyPeriodicEventStreamCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyPeriodicEventStream, payload: types.NotifyPeriodicEventStream]>; export type NotifyPriorityChargingCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyPriorityCharging, payload: types.NotifyPriorityChargingRequest]>; export type NotifyReportCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyReport, payload: types.NotifyReportRequest]>; export type NotifySettlementCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifySettlement, payload: types.NotifySettlementRequest]>; export type NotifyWebPaymentStartedCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.NotifyWebPaymentStarted, payload: types.NotifyWebPaymentStartedRequest]>; export type OpenPeriodicEventStreamCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.OpenPeriodicEventStream, payload: types.OpenPeriodicEventStreamRequest]>; export type PublishFirmwareCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.PublishFirmware, payload: types.PublishFirmwareRequest]>; export type PublishFirmwareStatusNotificationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.PublishFirmwareStatusNotification, payload: types.PublishFirmwareStatusNotificationRequest]>; export type PullDynamicScheduleUpdateCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.PullDynamicScheduleUpdate, payload: types.PullDynamicScheduleUpdateRequest]>; export type ReportChargingProfilesCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ReportChargingProfiles, payload: types.ReportChargingProfilesRequest]>; export type ReportDERControlCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ReportDERControl, payload: types.ReportDERControlRequest]>; export type RequestBatterySwapCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.RequestBatterySwap, payload: types.RequestBatterySwapRequest]>; export type RequestStartTransactionCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.RequestStartTransaction, payload: types.RequestStartTransactionRequest]>; export type RequestStopTransactionCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.RequestStopTransaction, payload: types.RequestStopTransactionRequest]>; export type ReservationStatusUpdateCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ReservationStatusUpdate, payload: types.ReservationStatusUpdateRequest]>; export type ReserveNowCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.ReserveNow, payload: types.ReserveNowRequest]>; export type ResetCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.Reset, payload: types.ResetRequest]>; export type SecurityEventNotificationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SecurityEventNotification, payload: types.SecurityEventNotificationRequest]>; export type SendLocalListCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SendLocalList, payload: types.SendLocalListRequest]>; export type SetChargingProfileCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetChargingProfile, payload: types.SetChargingProfileRequest]>; export type SetDefaultTariffCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetDefaultTariff, payload: types.SetDefaultTariffRequest]>; export type SetDERControlCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetDERControl, payload: types.SetDERControlRequest]>; export type SetDisplayMessageCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetDisplayMessage, payload: types.SetDisplayMessageRequest]>; export type SetMonitoringBaseCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetMonitoringBase, payload: types.SetMonitoringBaseRequest]>; export type SetMonitoringLevelCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetMonitoringLevel, payload: types.SetMonitoringLevelRequest]>; export type SetNetworkProfileCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetNetworkProfile, payload: types.SetNetworkProfileRequest]>; export type SetVariableMonitoringCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetVariableMonitoring, payload: types.SetVariableMonitoringRequest]>; export type SetVariablesCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SetVariables, payload: types.SetVariablesRequest]>; export type SignCertificateCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.SignCertificate, payload: types.SignCertificateRequest]>; export type StatusNotificationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.StatusNotification, payload: types.StatusNotificationRequest]>; export type TransactionEventCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.TransactionEvent, payload: types.TransactionEventRequest]>; export type TriggerMessageCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.TriggerMessage, payload: types.TriggerMessageRequest]>; export type UnlockConnectorCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.UnlockConnector, payload: types.UnlockConnectorRequest]>; export type UnpublishFirmwareCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.UnpublishFirmware, payload: types.UnpublishFirmwareRequest]>; export type UpdateDynamicScheduleCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.UpdateDynamicSchedule, payload: types.UpdateDynamicScheduleRequest]>; export type UpdateFirmwareCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.UpdateFirmware, payload: types.UpdateFirmwareRequest]>; export type UsePriorityChargingCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.UsePriorityCharging, payload: types.UsePriorityChargingRequest]>; export type VatNumberValidationCall = BaseMessage<MessageType.CALL | MessageType.SEND, [action: Action.VatNumberValidation, payload: types.VatNumberValidationRequest]>; export type Call = AdjustPeriodicEventStreamCall | AFRRSignalCall | AuthorizeCall | BatterySwapCall | BootNotificationCall | CancelReservationCall | CertificateSignedCall | ChangeAvailabilityCall | ChangeTransactionTariffCall | ClearCacheCall | ClearChargingProfileCall | ClearDERControlCall | ClearDisplayMessageCall | ClearedChargingLimitCall | ClearTariffsCall | ClearVariableMonitoringCall | ClosePeriodicEventStreamCall | CostUpdatedCall | CustomerInformationCall | DataTransferCall | DeleteCertificateCall | FirmwareStatusNotificationCall | Get15118EVCertificateCall | GetBaseReportCall | GetCertificateChainStatusCall | GetCertificateStatusCall | GetChargingProfilesCall | GetCompositeScheduleCall | GetDERControlCall | GetDisplayMessagesCall | GetInstalledCertificateIdsCall | GetLocalListVersionCall | GetLogCall | GetMonitoringReportCall | GetPeriodicEventStreamCall | GetReportCall | GetTariffsCall | GetTransactionStatusCall | GetVariablesCall | HeartbeatCall | InstallCertificateCall | LogStatusNotificationCall | MeterValuesCall | NotifyAllowedEnergyTransferCall | NotifyChargingLimitCall | NotifyCustomerInformationCall | NotifyDERAlarmCall | NotifyDERStartStopCall | NotifyDisplayMessagesCall | NotifyEVChargingNeedsCall | NotifyEVChargingScheduleCall | NotifyEventCall | NotifyMonitoringReportCall | NotifyPeriodicEventStreamCall | NotifyPriorityChargingCall | NotifyReportCall | NotifySettlementCall | NotifyWebPaymentStartedCall | OpenPeriodicEventStreamCall | PublishFirmwareCall | PublishFirmwareStatusNotificationCall | PullDynamicScheduleUpdateCall | ReportChargingProfilesCall | ReportDERControlCall | RequestBatterySwapCall | RequestStartTransactionCall | RequestStopTransactionCall | ReservationStatusUpdateCall | ReserveNowCall | ResetCall | SecurityEventNotificationCall | SendLocalListCall | SetChargingProfileCall | SetDefaultTariffCall | SetDERControlCall | SetDisplayMessageCall | SetMonitoringBaseCall | SetMonitoringLevelCall | SetNetworkProfileCall | SetVariableMonitoringCall | SetVariablesCall | SignCertificateCall | StatusNotificationCall | TransactionEventCall | TriggerMessageCall | UnlockConnectorCall | UnpublishFirmwareCall | UpdateDynamicScheduleCall | UpdateFirmwareCall | UsePriorityChargingCall | VatNumberValidationCall; export declare const validateCall: ValidateFn<any, Call>;