import type { DatabaseConnector, ConnectionConfig } from './connector.js'; import type { QueryExecutionOptions, QueryResult } from './result-types.js'; import { ConnectionPoolManager } from './connection-pool.js'; import { type SQLParamSpec } from './sql-params.js'; /** * A reconnect may replay a statement, so it is limited to one read-only * statement. This deliberately rejects semicolon-separated scripts and any * data-changing keyword even when a connector reports a lost session. */ export declare function isReconnectSafeReadOnlySql(sql: string): boolean; export declare function isRecoverableConnectionLoss(error: unknown): boolean; export declare class QueryExecutor { private pool; constructor(pool?: ConnectionPoolManager); getConnector(config: ConnectionConfig): Promise; executeQuery(sql: string, params: SQLParamSpec[], variables: Record, config: ConnectionConfig): Promise; executePositional(sql: string, paramValues: unknown[], config: ConnectionConfig, options?: QueryExecutionOptions): Promise; disconnect(): Promise; } //# sourceMappingURL=query-executor.d.ts.map