import * as pg from "pg"; declare class Pool extends pg.Pool { readonly Client: Pool.ClientLikeCtr; constructor(config?: Pool.Config, client?: Pool.ClientLikeCtr); connect(): Promise; connect(callback: (err?: Error, client?: T & pg.PoolClient, done?: (release?: any) => void) => void): void; on(event: "error", listener: (err: Error, client: T & pg.PoolClient) => void): this; on(event: "connect" | "acquire" | "remove", listener: (client: T & pg.PoolClient) => void): this; } declare namespace Pool { type ClientLikeCtr = new(config?: string | pg.ClientConfig) => T; interface Config extends pg.PoolConfig { Client?: ClientLikeCtr | undefined; } } export = Pool;