import { AntManager } from '@antjs/ant-js/src/api/AntManager'; import { QueryMapType } from '@antjs/ant-js/src/api/AntModelManager'; import { IAntModelManager } from '@antjs/ant-js/src/api/IAntModelManager'; import { IEntity } from '@antjs/ant-js/src/model/IEntity'; import { AntSqlModelManager } from '../api/AntSqlModelManager'; import { IAntSqlModel } from '../model/IAntSqlModel'; import { IAntSqlModelConfig } from './config/IAntSqlModelConfig'; import { IAntSqlModelManager } from './IAntSqlModelManager'; export class AntSqlManager extends AntManager< IAntSqlModelConfig, IAntSqlModel, IAntSqlModelManager > { /** * Queries map. */ protected _queriesMap: QueryMapType; /** * Creates a new AntSqlManager. */ public constructor() { super(); this._queriesMap = new Map(); } /** * Creates a model manager. * @param model Model to manage. * @returns model manager created. */ protected _createModelManager( model: IAntSqlModel, ): IAntSqlModelManager { return new AntSqlModelManager( model, this._queriesMap as QueryMapType, ); } }