import type { PgTExtensionContext, PostQueryHookData, PreQueryHookData } from "@postgresql-typed/util"; import { Logger, Query, RelationalSchemaConfig, SelectedFieldsOrdered, SQL, TablesRelationalConfig } from "drizzle-orm"; import { NodePgQueryResultHKT, NodePgSessionOptions } from "drizzle-orm/node-postgres"; import { AnyPgColumn, PgDialect, PgTransactionConfig, PreparedQuery, PreparedQueryConfig } from "drizzle-orm/pg-core"; import type { Client, PoolClient } from "pg"; import pg from "pg"; import { PgTDriver } from "./driver.js"; import { PgTExtensionManager } from "./extensions.js"; import { PgTransaction } from "./query-builders/transaction.js"; type NodePgClient = pg.Pool | PoolClient | Client; export declare class PgTPreparedQuery extends PreparedQuery { private client; private extensions; private driver; private parameters; private logger; private fields; private customResultMapper?; private rawQuery; private query; constructor(client: NodePgClient, extensions: PgTExtensionManager, driver: PgTDriver, queryString: string, parameters: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, name: string | undefined, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined); /** @internal */ joinsNotNullableMap?: Record; execute(placeholderValues?: Record | undefined, context?: PgTExtensionContext | PreQueryHookData | PostQueryHookData): Promise; all(placeholderValues?: Record | undefined, context?: PgTExtensionContext | PreQueryHookData | PostQueryHookData): Promise; private mapValue; } export declare class PgTSession = Record, TSchema extends TablesRelationalConfig = Record> { client: NodePgClient; extensions: PgTExtensionManager; driver: PgTDriver; private dialect; private schema; private options; private logger; constructor(client: NodePgClient, extensions: PgTExtensionManager, driver: PgTDriver, dialect: PgDialect, schema: RelationalSchemaConfig | undefined, options?: NodePgSessionOptions); prepareQuery(query: Query, fields: SelectedFieldsOrdered | undefined, name: string | undefined, customResultMapper?: (rows: unknown[][], mapColumnValue?: (value: unknown) => unknown) => T["execute"]): PgTPreparedQuery; execute(query: SQL): Promise; all(query: SQL): Promise; transaction(transaction: (tx: PgTTransaction) => Promise, config?: PgTransactionConfig | undefined): Promise; } export declare class PgTTransaction, TSchema extends TablesRelationalConfig> extends PgTransaction { transaction(transaction: (tx: PgTTransaction) => Promise): Promise; } export {};