@citrineos/data
Version:
The OCPP data module which includes all persistence layer implementation.
28 lines (27 loc) • 1.95 kB
TypeScript
import { CrudRepository, OCPP2_0_1, SystemConfig } from '@citrineos/base';
import { Transaction } from 'sequelize';
import { type AuthorizationQuerystring, type AuthorizationRestrictions, type IAuthorizationRepository } from '../../../interfaces';
import { AdditionalInfo, Authorization, IdToken, IdTokenInfo } from '../model/Authorization';
import { SequelizeRepository } from './Base';
import { Sequelize } from 'sequelize-typescript';
import { ILogObj, Logger } from 'tslog';
import { IdTokenAdditionalInfo } from '../model/Authorization/IdTokenAdditionalInfo';
export declare class SequelizeAuthorizationRepository extends SequelizeRepository<Authorization> implements IAuthorizationRepository {
idToken: CrudRepository<IdToken>;
idTokenInfo: CrudRepository<IdTokenInfo>;
additionalInfo: CrudRepository<AdditionalInfo>;
idTokenAdditionalInfo: CrudRepository<IdTokenAdditionalInfo>;
constructor(config: SystemConfig, logger?: Logger<ILogObj>, sequelizeInstance?: Sequelize, idToken?: CrudRepository<IdToken>, idTokenInfo?: CrudRepository<IdTokenInfo>, additionalInfo?: CrudRepository<AdditionalInfo>, idTokenAdditionalInfo?: CrudRepository<IdTokenAdditionalInfo>);
createOrUpdateByQuerystring(value: OCPP2_0_1.AuthorizationData, query: AuthorizationQuerystring, transaction?: Transaction): Promise<Authorization | undefined>;
updateRestrictionsByQuerystring(value: AuthorizationRestrictions, query: AuthorizationQuerystring): Promise<Authorization[]>;
readAllByQuerystring(query: AuthorizationQuerystring): Promise<Authorization[]>;
readOnlyOneByQuerystring(query: AuthorizationQuerystring): Promise<Authorization | undefined>;
existByQuerystring(query: AuthorizationQuerystring): Promise<number>;
deleteAllByQuerystring(query: AuthorizationQuerystring): Promise<Authorization[]>;
/**
* Private Methods
*/
private _updateIdToken;
private _constructQuery;
private _createInclude;
}