///
import { FxSqlQueryDialect } from "./Typo/Dialect";
import { FxSqlQuery } from "./Typo/Query";
import { FxSqlQueryChainBuilder } from "./Typo/Query-ChainBuilder";
import { FxSqlQuerySql } from "./Typo/Sql";
export declare function escapeQuery(Dialect: FxSqlQueryDialect.Dialect, query: FxSqlQuerySql.SqlFragmentStr, args: FxSqlQuerySql.SqlAssignmentValues): FxSqlQuerySql.SqlFragmentStr;
export declare function dateToString(date: number | Date, timeZone: FxSqlQuery.FxSqlQueryTimezone, opts: FxSqlQueryChainBuilder.ChainBuilderOptions): string;
export declare function zeroPad(number: string | number, n?: number): string;
export declare function get_table_alias(sql: FxSqlQuerySql.SqlQueryChainDescriptor, table: string | FxSqlQuerySql.SqlFromTableInput): string;
export declare function parseTableInputStr(table_name: FxSqlQuerySql.SqlTableInputType, dialect?: FxSqlQueryDialect.DialectType): FxSqlQuerySql.SqlTableTuple;
export declare function pickAliasFromFromDescriptor(fd: FxSqlQuerySql.QueryFromDescriptor): string;
export declare function pickColumnAsFromSelectFieldsDescriptor(sitem: FxSqlQuerySql.SqlSelectFieldItemDescriptor): FxSqlQuerySql.SqlSelectFieldItemDescriptor['as'];
export declare function autoIncreatementTableIndex(from: FxSqlQuerySql.SqlQueryChainDescriptor['from']): number;
export declare function defaultTableAliasNameRule(idx: number): string;
export declare const DialectTypes: FxSqlQueryDialect.DialectType[];
export declare function ucfirst(str?: string): string;
export declare function ensureNumber(num: any): any;
export declare function bufferToString(buffer: Class_Buffer | string, dialect: FxSqlQueryDialect.DialectType): string;
export declare function escapeValForKnex(val: any, Dialect: FxSqlQueryDialect.Dialect, opts: FxSqlQueryChainBuilder.ChainBuilderOptions): any;
export declare function cutOffOrderDirectionFromColumnFirstStr(col_name: string): {
col_name: string;
direction: FxSqlQuerySql.SqlOrderDescriptor['d'];
};
export declare function maybeKnexSubQuery(input: any): input is import('@fxjs/knex').Knex.QueryBuilder;
export declare function maybeKnexRaw(input: any): input is import('@fxjs/knex').Knex.Raw;
export declare function maybeKnexRawOrQueryBuilder(input: any): input is import('@fxjs/knex').Knex.QueryBuilder | import('@fxjs/knex').Knex.Raw;
export declare function isWrapperdSubQuerySelect(sql: any): sql is `(${string})`;
/** @internal */
export declare function convertSqlFromTable(sql_from_item: FxSqlQuerySql.QueryFromDescriptor, knex: import('@fxjs/knex').Knex, isSubQuery?: boolean): string | import("@fxjs/knex").Knex.Raw;
export declare class ChainBuilderBase implements FxSqlQueryChainBuilder.ChainBuilder {
protected Dialect: FxSqlQueryDialect.Dialect;
readonly knex: FxSqlQuery.Class_Query['knex'];
constructor(Dialect: FxSqlQueryDialect.Dialect);
/**
* @override
*/
build(): string;
}