UNPKG

database-builder

Version:

Library to assist in creating and maintaining SQL commands.

28 lines (27 loc) 1.38 kB
import { QueryCompiled } from "../core/query-compiled"; import { WhereCompiled } from "./where-compiled"; import { MapperTable } from "../mapper-table"; import { QueryCompilable } from "../core/query-compilable"; import { QueryBuilder } from "./query/query-builder"; export declare abstract class SqlBaseBuilder<T> implements QueryCompilable { protected _newable: new () => T; mapperTable: MapperTable; protected readonly _alias: string; protected _tablename: string; protected whereCompiled: WhereCompiled; protected innerUsedAliasTest: Array<{ hasAlias: (alias: string) => boolean; }>; private readonly WHERE; private NEXT_VALUE_ALIAS; constructor(queryT: (new () => T) | QueryBuilder<T>, _newable: new () => T, mapperTable: MapperTable, _alias?: string); protected createTablename<TTable>(_currentTypeT: new () => TTable, currentMapper: MapperTable): string; protected createAlias(currentAlias: string, currentTablename: string): string; getMapper(): MapperTable; hasAlias(alias: string): boolean; abstract compile(): QueryCompiled | QueryCompiled[]; protected abstract buildBase(): QueryCompiled | QueryCompiled[]; protected compileWhere(current: WhereCompiled, compiled: WhereCompiled, addCommand?: boolean): void; private defaultAlias; private createUniqueAlias; }