import { manage_schema_d_exports } from "./manage-schema.js";
import { NodePgDatabase } from "drizzle-orm/node-postgres";
import { Pool } from "pg";
import { PgliteDatabase } from "drizzle-orm/pglite";

//#region src/db/manage/manage-client.d.ts
type AgentsManageDatabaseClient = NodePgDatabase<typeof manage_schema_d_exports> | PgliteDatabase<typeof manage_schema_d_exports>;
interface AgentsManageDatabaseConfig {
  connectionString?: string;
  poolSize?: number;
  ssl?: boolean;
  logger?: {
    logQuery: (query: string, params: unknown[]) => void;
  };
}
declare function createAgentsManageDatabasePool(config: AgentsManageDatabaseConfig): Pool;
/**
 * Creates a PostgreSQL database client with connection pooling
 */
declare function createAgentsManageDatabaseClient(config: AgentsManageDatabaseConfig): AgentsManageDatabaseClient;
declare function createAgentManageDatabaseConnection(config: AgentsManageDatabaseConfig): Promise<{
  db: AgentsManageDatabaseClient;
  release: () => Promise<void>;
}>;
//#endregion
export { AgentsManageDatabaseClient, AgentsManageDatabaseConfig, createAgentManageDatabaseConnection, createAgentsManageDatabaseClient, createAgentsManageDatabasePool };