pg-cache
Version:
PostgreSQL connection pool LRU cache manager
24 lines (23 loc) • 832 B
TypeScript
import pg from 'pg';
type PgPoolKey = string;
export type PoolCleanupCallback = (pgPoolKey: string) => void;
export declare class PgPoolCacheManager {
private cleanupTasks;
private closed;
private cleanupCallbacks;
private readonly pgCache;
registerCleanupCallback(callback: PoolCleanupCallback): () => void;
get(key: PgPoolKey): pg.Pool | undefined;
has(key: PgPoolKey): boolean;
set(key: PgPoolKey, pool: pg.Pool): void;
delete(key: PgPoolKey): void;
clear(): void;
close(): Promise<void>;
waitForDisposals(): Promise<void>;
private notifyCleanup;
private disposePool;
}
export declare const pgCache: PgPoolCacheManager;
export declare const close: (verbose?: boolean) => Promise<void>;
export declare const teardownPgPools: (verbose?: boolean) => Promise<void>;
export {};