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 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, _newable: new () => T, mapperTable: MapperTable, _alias?: string); protected createTablename(_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; }