@sqb/builder
Version:
Extensible multi-dialect SQL query builder written with TypeScript
48 lines (47 loc) • 1.33 kB
TypeScript
import { DefaultSerializeFunction, GenerateOptions, ParamOptions } from './types.js';
export declare class SerializeContext implements GenerateOptions {
readonly reservedWords: string[];
dialect?: string;
prettyPrint?: boolean;
params?: Record<string, any>;
dialectVersion?: string;
strictParams?: boolean;
serializeHooks?: Function[];
paramOptions?: Record<string, ParamOptions> | ParamOptions[];
preparedParams?: Record<string, any> | any[];
returningFields?: {
field: string;
alias?: string;
}[];
strictParamGenId?: number;
constructor(opts?: GenerateOptions);
/**
* Performs a fallback mechanism, tries hook functions, extensions than default function to serialize
*/
serialize(type: string, o: any, fallback: DefaultSerializeFunction): string;
/**
* Serializes object
*/
anyToSQL(v: any): string;
/**
*
*/
stringToSQL(val: string): string;
/**
*
*/
booleanToSQL(val: any): string;
/**
*
*/
numberToSQL(val: any): string;
/**
*
*/
dateToSQL(date: Date): string;
/**
* Check if a string value is a reserved word
*/
isReservedWord(s: string | undefined | null): boolean;
escapeReserved(s: string | undefined | null): string;
}