@citrineos/data
Version:
The OCPP data module which includes all persistence layer implementation.
24 lines (23 loc) • 2.04 kB
TypeScript
import { CrudRepository, OCPPVersion, SystemConfig } from '@citrineos/base';
import { Sequelize } from 'sequelize-typescript';
import { ILogObj, Logger } from 'tslog';
import { ChargingStation, Connector, Location, SequelizeRepository, StatusNotification } from '..';
import { type ILocationRepository } from '../../..';
import { LatestStatusNotification } from '../model/Location/LatestStatusNotification';
export declare class SequelizeLocationRepository extends SequelizeRepository<Location> implements ILocationRepository {
chargingStation: CrudRepository<ChargingStation>;
statusNotification: CrudRepository<StatusNotification>;
latestStatusNotification: CrudRepository<LatestStatusNotification>;
connector: CrudRepository<Connector>;
constructor(config: SystemConfig, logger?: Logger<ILogObj>, sequelizeInstance?: Sequelize, chargingStation?: CrudRepository<ChargingStation>, statusNotification?: CrudRepository<StatusNotification>, latestStatusNotification?: CrudRepository<LatestStatusNotification>, connector?: CrudRepository<Connector>);
readLocationById(id: number): Promise<Location | undefined>;
readChargingStationByStationId(stationId: string): Promise<ChargingStation | undefined>;
setChargingStationIsOnlineAndOCPPVersion(stationId: string, isOnline: boolean, ocppVersion: OCPPVersion | null): Promise<ChargingStation | undefined>;
doesChargingStationExistByStationId(stationId: string): Promise<boolean>;
addStatusNotificationToChargingStation(stationId: string, statusNotification: StatusNotification): Promise<void>;
updateLatestStatusNotification(stationId: string, statusNotification: StatusNotification): Promise<void>;
getChargingStationsByIds(stationIds: string[]): Promise<ChargingStation[]>;
createOrUpdateLocationWithChargingStations(location: Partial<Location>): Promise<Location>;
createOrUpdateChargingStation(chargingStation: ChargingStation): Promise<ChargingStation>;
createOrUpdateConnector(connector: Connector): Promise<Connector | undefined>;
}