import { Pool } from "pg"; // Singleton database connection pool // Uses environment variables for configuration const pool = new Pool({ host: process.env.DB_HOST || "127.0.0.1", port: parseInt(process.env.DB_PORT || "5432"), user: process.env.DB_USER || "myuser", password: process.env.DB_PASSWORD || "mypassword", database: process.env.DB_DATABASE || "mydb", }); export default pool; // Helper function for queries export async function query(text: string, params?: unknown[]): Promise { const result = await pool.query(text, params); return result.rows as T[]; } // Helper function for single row export async function queryOne( text: string, params?: unknown[] ): Promise { const result = await pool.query(text, params); return result.rows[0] as T | null; }