import { PGlite } from '@electric-sql/pglite';
import { CompiledQuery, type DatabaseConnection, type QueryCompiler, type QueryResult, type TransactionSettings } from 'kysely';
import { PGliteDialectConfig } from './pglite-dialect-config.js';
export declare class PGliteDriver {
    #private;
    constructor(config: PGliteDialectConfig);
    init(): Promise<void>;
    acquireConnection(): Promise<DatabaseConnection>;
    beginTransaction(connection: DatabaseConnection, settings: TransactionSettings): Promise<void>;
    commitTransaction(connection: DatabaseConnection): Promise<void>;
    rollbackTransaction(connection: DatabaseConnection): Promise<void>;
    savepoint(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>;
    rollbackToSavepoint(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>;
    releaseSavepoint(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>;
    destroy(): Promise<void>;
    releaseConnection(_connection: DatabaseConnection): Promise<void>;
}
export declare class PGliteConnection implements DatabaseConnection {
    #private;
    constructor(client: PGlite);
    executeQuery<R>(compiledQuery: CompiledQuery<any>): Promise<QueryResult<R>>;
    streamQuery(): AsyncGenerator<never, void, unknown>;
}
