Files

37 lines
1.0 KiB
TypeScript
Raw Permalink Normal View History

/**
* PostgreSQL database client with connection pooling
*/
import { Pool, QueryResult, QueryResultRow } from 'pg';
export type { QueryResult, QueryResultRow };
export interface DatabaseConfig {
connectionString?: string;
host?: string;
port?: number;
database?: string;
user?: string;
password?: string;
max?: number;
idleTimeoutMillis?: number;
connectionTimeoutMillis?: number;
}
/**
* Create a PostgreSQL connection pool
*/
export declare function createPool(config: DatabaseConfig): Pool;
/**
* Get or create the default database pool
*/
export declare function getPool(config?: DatabaseConfig): Pool;
/**
* Execute a query
*/
export declare function query<T extends QueryResultRow = QueryResultRow>(text: string, params?: unknown[]): Promise<QueryResult<T>>;
/**
* Close the database pool
*/
export declare function closePool(): Promise<void>;
/**
* Health check for database connection
*/
export declare function healthCheck(): Promise<boolean>;
//# sourceMappingURL=client.d.ts.map