UNPKG

@citrineos/data

Version:

The OCPP data module which includes all persistence layer implementation.

24 lines (23 loc) 2.23 kB
import { CrudRepository, OCPPVersion, BootstrapConfig } 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: BootstrapConfig, logger?: Logger<ILogObj>, sequelizeInstance?: Sequelize, chargingStation?: CrudRepository<ChargingStation>, statusNotification?: CrudRepository<StatusNotification>, latestStatusNotification?: CrudRepository<LatestStatusNotification>, connector?: CrudRepository<Connector>); readLocationById(tenantId: number, id: number): Promise<Location | undefined>; readChargingStationByStationId(tenantId: number, stationId: string): Promise<ChargingStation | undefined>; setChargingStationIsOnlineAndOCPPVersion(tenantId: number, stationId: string, isOnline: boolean, ocppVersion: OCPPVersion | null): Promise<ChargingStation | undefined>; doesChargingStationExistByStationId(tenantId: number, stationId: string): Promise<boolean>; addStatusNotificationToChargingStation(tenantId: number, stationId: string, statusNotification: StatusNotification): Promise<void>; updateLatestStatusNotification(tenantId: number, stationId: string, statusNotification: StatusNotification): Promise<void>; getChargingStationsByIds(tenantId: number, stationIds: string[]): Promise<ChargingStation[]>; createOrUpdateLocationWithChargingStations(tenantId: number, location: Partial<Location>): Promise<Location>; createOrUpdateChargingStation(tenantId: number, chargingStation: ChargingStation): Promise<ChargingStation>; createOrUpdateConnector(tenantId: number, connector: Connector): Promise<Connector | undefined>; }