UNPKG

@ckpack/pg-helper

Version:

A small helper of node-postgres can help you build queries more easily and safely

52 lines (51 loc) 1.73 kB
import type * as PHTypes from './types/pg-helper'; import * as sqlUtils from './utils/sql-utils'; import type * as SqlUtilsType from './types/sql-utils'; declare class PgHelper { private logger; private pooConfig; private autoHump; private returning; private pool; constructor(pooConfig: PHTypes.PoolConfig, options?: PHTypes.Options); private initPool; /** * get a poolClient * @returns */ getClient(): Promise<any>; /** * get a transaction poolClient * @returns */ getTransaction(): Promise<any>; /** * * @param sqlTemp the executed sql template * @param sqlParams template parameters, the key of Object needs to correspond to the value of {params} in the SQL template one-to-one * @param options * @returns */ runSql(sqlTemp: PHTypes.SqlTemplate, sqlParams?: PHTypes.SqlTempParams, options?: PHTypes.SqlOptions): Promise<PHTypes.QueryResult>; /** * will auto commit or rollback */ runTSql(sqlTemps: PHTypes.TSqlTempParams[], options?: PHTypes.SqlOptions): Promise<PHTypes.QueryResult[]>; /** * build insert sql */ insert(params: SqlUtilsType.Insert, options: PHTypes.InsertOptions): Promise<PHTypes.QueryResult>; /** * build delete sql */ delete(params: PHTypes.SqlTempParams, options: PHTypes.DeleteOptions): Promise<PHTypes.QueryResult>; /** * build update sql */ update(params: PHTypes.SqlTempParams, options: PHTypes.UpdateOptions): Promise<PHTypes.QueryResult>; /** * build select sql */ select(params: PHTypes.SqlTempParams, options: PHTypes.SelectOptions): Promise<PHTypes.QueryResult>; } export { PgHelper, sqlUtils };