import type { GetDbStatic } from "../types/GetDb.js"; import { WrappedPool } from "./pool.js"; import { PostgresInterface } from "./PostgresInterface.js"; import { PostgresMigrator } from "./PostgresMigrator.js"; import { isPgUrl, parsePgUrl, pgProtocols } from "./url.js"; const getPgStatic: GetDbStatic = { name: "postgres", protocols: pgProtocols, checkUrl: isPgUrl, getDbInterface: async (url) => { const { connectionString, readonly } = parsePgUrl(url); return new PostgresInterface(new WrappedPool(connectionString, readonly)); }, getMigrator: async (url) => { const { connectionString } = parsePgUrl(url); return new PostgresMigrator(new WrappedPool(connectionString)); }, }; export default getPgStatic;