import { QueryCompiled } from "../core";
import { ValueType } from "../core/utils";
import { MapperColumn } from "../mapper-column";
import { MapperTable } from "../mapper-table";
import { ConfigDatabase } from "./config-database";
export declare class CommanderBuilder {
    private _config;
    constructor(_config: ConfigDatabase);
    delete(tableName: string): QueryCompiled;
    deleteMapper<T>(mapper: MapperTable): QueryCompiled;
    update(tableName: string, columnsNames: string[], params: ValueType[]): QueryCompiled;
    updateColumn<T>(tableName: string, columns: MapperColumn[], model: T): QueryCompiled;
    updateMapper<T>(mapper: MapperTable, model: T): QueryCompiled;
    insert(tableName: string, columnsNames: string[], params: ValueType[]): QueryCompiled;
    insertColumn<T>(tableName: string, columns: MapperColumn[], model: T): QueryCompiled;
    insertMapper<T>(mapper: MapperTable, model: T): QueryCompiled;
    batchInsert(tableName: string, columnsNames: string[], values: Array<ValueType[]>): QueryCompiled[];
    private validValues;
    batchInsertColumn<T>(tableName: string, columns: MapperColumn[], models: Array<T>): QueryCompiled[];
    batchInsertMapper<T>(mapper: MapperTable, models: Array<T>): QueryCompiled[];
    private splitChunks;
}
