-import { EmptyObject } from '../../EmptyObject';
-import { JsonType } from '../../JsonType';
-import { OCPPConfigurationKey } from '../Configuration';
+import type { OCPP16ChargingSchedule } from './ChargingProfile';
+import type { EmptyObject } from '../../EmptyObject';
+import type { JsonObject } from '../../JsonType';
+import type { OCPPConfigurationKey } from '../Configuration';
+import { GenericStatus, type RegistrationStatusEnumType } from '../Responses';
-export interface HeartbeatResponse extends JsonType {
- currentTime: string;
+export interface OCPP16HeartbeatResponse extends JsonObject {
+ currentTime: Date;
}
export enum OCPP16UnlockStatus {
NOT_SUPPORTED = 'NotSupported',
}
-export interface UnlockConnectorResponse extends JsonType {
+export interface UnlockConnectorResponse extends JsonObject {
status: OCPP16UnlockStatus;
}
NOT_SUPPORTED = 'NotSupported',
}
-export interface ChangeConfigurationResponse extends JsonType {
+export interface ChangeConfigurationResponse extends JsonObject {
status: OCPP16ConfigurationStatus;
}
-export enum OCPP16RegistrationStatus {
- ACCEPTED = 'Accepted',
- PENDING = 'Pending',
- REJECTED = 'Rejected',
-}
-
-export interface OCPP16BootNotificationResponse extends JsonType {
- status: OCPP16RegistrationStatus;
- currentTime: string;
+export interface OCPP16BootNotificationResponse extends JsonObject {
+ status: RegistrationStatusEnumType;
+ currentTime: Date;
interval: number;
}
-export type StatusNotificationResponse = EmptyObject;
+export type OCPP16StatusNotificationResponse = EmptyObject;
-export interface GetConfigurationResponse extends JsonType {
+export interface GetConfigurationResponse extends JsonObject {
configurationKey: OCPPConfigurationKey[];
unknownKey: string[];
}
NOT_SUPPORTED = 'NotSupported',
}
-export interface SetChargingProfileResponse extends JsonType {
+export interface OCPP16GetCompositeScheduleResponse extends JsonObject {
+ status: GenericStatus;
+ connectorId?: number;
+ scheduleStart?: Date;
+ chargingSchedule?: OCPP16ChargingSchedule;
+}
+
+export interface SetChargingProfileResponse extends JsonObject {
status: OCPP16ChargingProfileStatus;
}
SCHEDULED = 'Scheduled',
}
-export interface ChangeAvailabilityResponse extends JsonType {
+export interface ChangeAvailabilityResponse extends JsonObject {
status: OCPP16AvailabilityStatus;
}
UNKNOWN = 'Unknown',
}
-export interface ClearChargingProfileResponse extends JsonType {
+export interface ClearChargingProfileResponse extends JsonObject {
status: OCPP16ClearChargingProfileStatus;
}
-export interface GetDiagnosticsResponse extends JsonType {
+export type OCPP16UpdateFirmwareResponse = EmptyObject;
+
+export type OCPP16FirmwareStatusNotificationResponse = EmptyObject;
+
+export interface GetDiagnosticsResponse extends JsonObject {
fileName?: string;
}
-export type DiagnosticsStatusNotificationResponse = EmptyObject;
+export type OCPP16DiagnosticsStatusNotificationResponse = EmptyObject;
export enum OCPP16TriggerMessageStatus {
ACCEPTED = 'Accepted',
NOT_IMPLEMENTED = 'NotImplemented',
}
-export interface OCPP16TriggerMessageResponse extends JsonType {
+export interface OCPP16TriggerMessageResponse extends JsonObject {
status: OCPP16TriggerMessageStatus;
}
+
+export enum OCPP16DataTransferStatus {
+ ACCEPTED = 'Accepted',
+ REJECTED = 'Rejected',
+ UNKNOWN_MESSAGE_ID = 'UnknownMessageId',
+ UNKNOWN_VENDOR_ID = 'UnknownVendorId',
+}
+
+export interface OCPP16DataTransferResponse extends JsonObject {
+ status: OCPP16DataTransferStatus;
+ data?: string;
+}
+
+export interface OCPP16CancelReservationResponse extends JsonObject {
+ status: GenericStatus;
+}
+
+export enum OCPP16ReservationStatus {
+ ACCEPTED = 'Accepted',
+ FAULTED = 'Faulted',
+ OCCUPIED = 'Occupied',
+ REJECTED = 'Rejected',
+ UNAVAILABLE = 'Unavailable',
+ NOT_SUPPORTED = 'NotSupported',
+}
+
+export interface OCPP16ReserveNowResponse extends JsonObject {
+ status: OCPP16ReservationStatus;
+}