/** * 判断是否为 QueryBuilder 实例 * @param query */ export declare function isQueryBuilder(query: any): boolean; /** * 格式化SQL字符串 * @param tpl 模板字符串 * @param values 模板变量 */ export declare function sqlFormat(tpl: string, values?: any[]): string; /** * 返回格式化后的 SQL 语句 * 格式: SELECT * FROM ::table WHERE `title`=:title AND `id` IN :::ids * @param sql SQL 模板语句 * @param values 参数对象 * @param disable$ 是否没有 $ 开头的 key */ export declare function sqlFormatObject(sql: string, values?: Record, disable$?: boolean): string; /** * 转义SQL值 * @param value 值 */ export declare function sqlEscape(value: string): string; /** * 转义SQL标识符 * @param value 标识符 */ export declare function sqlEscapeId(value: string): string; /** * 查找值为undefined的key列表 * @param data */ export declare function findKeysForUndefinedValue(data: Record): string[]; /** * 返回根据对象生成的 SQL UPDATE 语句 * @param data 键值对对象 */ export declare function sqlUpdateString(data: Record): string; /** * 返回根据对象生成的 SQL WHERE 语句 * @param self QueryBuilder实例 * @param condition 查询条件 */ export declare function sqlConditionStrings(condition: Record): string[]; /** * 返回生成 SQL LIMIT 语句 * @param offset 跳过的行数 * @param limit 返回的行数 */ export declare function sqlLimitString(offset: number, limit: number): string; /** * 合并多段文本 * @param strs 文本数组 */ export declare function joinMultiString(...strs: string[]): string; /** * 对象深拷贝 * @param data */ export declare function deepCopy(data: T): T; /** * 格式化字段列表 * @param table * @param fields */ export declare function formatFields(table: string, fields: string[]): string[];