database-builder
Version:
Library to assist in creating and maintaining SQL commands.
28 lines (27 loc) • 1.38 kB
TypeScript
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;
}