typed-ocpp
Version:
A library for type-aware parsing, serialization and validation of OCPP 1.6, OCPP 2.0 and OCPP 2.1 messages
29 lines (28 loc) • 2.24 kB
TypeScript
import type { ClearChargingProfileRequest, SetChargingProfileRequest } from './types.js';
import type { ChargingSchedule, ChargingContext, MaybeChargingSchedule } from '../common/chargingmanager/utils.js';
import type { ChargingRateUnit, NumberOfPhases, ChargingLimits } from '../common/utils.js';
import type { Models } from '../common/models.js';
import { AbstractChargingManager } from '../common/chargingmanager/chargingmanager.js';
export type getCompositeProfileOpts = Pick<SetChargingProfileRequest['csChargingProfiles'], 'stackLevel' | 'chargingProfileId' | 'chargingProfilePurpose'>;
export declare class ChargingManager extends AbstractChargingManager<SetChargingProfileRequest, ClearChargingProfileRequest> {
protected _getScheduleFromProfile(context: ChargingContext, profile: SetChargingProfileRequest, fromDate: Date, toDate: Date, unit: ChargingRateUnit, maxNumberPhases: NumberOfPhases): MaybeChargingSchedule;
setChargingProfile(request: SetChargingProfileRequest): void;
clearChargingProfile(request: ClearChargingProfileRequest): void;
getConnectorSchedule(fromDate: Date, toDate: Date, connectorId: number, unit: ChargingRateUnit, model: Models.ChargingSession, maxNumPhases: NumberOfPhases, enablePriority: boolean): ChargingSchedule;
getConnectorLimitsAtDate(atDate: Date, connectorId: number, unit: ChargingRateUnit, model: Models.ChargingSession, maxNumPhases: NumberOfPhases, enablePriority: boolean): ChargingLimits;
getConnectorCompositeSchedule(fromDate: Date, toDate: Date, chargerId: number, model: Models.ChargingSession, maxNumPhases: NumberOfPhases, enablePriority: boolean): {
status: "Accepted";
connectorId: number;
chargingSchedule: {
startSchedule: string;
duration: number;
chargingRateUnit: "W";
chargingSchedulePeriod: {
startPeriod: number;
limit: number;
numberPhases: NumberOfPhases;
}[];
};
};
getConnectorCompositeProfile(fromDate: Date, toDate: Date, connectorId: number, model: Models.ChargingSession, maxNumPhases: NumberOfPhases, enablePriority: boolean, opts: getCompositeProfileOpts): SetChargingProfileRequest;
}