import { ConnectionPool, DBAdapterListener, DBLockOptions, LockContext } from '@powersync/common'; import { SharedConnectionWorker, WebDBAdapter, WebDBAdapterConfiguration } from './WebDBAdapter.js'; import { DatabaseClient } from './wa-sqlite/DatabaseClient.js'; /** * A connection pool implementation delegating to another pool opened asynchronnously. */ declare class AsyncConnectionPool implements ConnectionPool { readonly name: string; protected readonly inner: Promise; protected resolvedClient?: DatabaseClient; private readonly pendingListeners; constructor(inner: Promise, name: string); init(): Promise; close(): Promise; readLock(fn: (tx: LockContext) => Promise, options?: DBLockOptions): Promise; writeLock(fn: (tx: LockContext) => Promise, options?: DBLockOptions): Promise; refreshSchema(): Promise; registerListener(listener: Partial): () => void; } declare const AsyncDbAdapter_base: (new (...args: any[]) => { readTransaction(fn: (tx: import("@powersync/common").Transaction) => Promise, options?: DBLockOptions): Promise; writeTransaction(fn: (tx: import("@powersync/common").Transaction) => Promise, options?: DBLockOptions): Promise; getAll(sql: string, parameters?: any[]): Promise; getOptional(sql: string, parameters?: any[]): Promise; get(sql: string, parameters?: any[]): Promise; execute(query: string, params?: any[]): Promise; executeRaw(query: string, params?: any[]): Promise; executeBatch(query: string, params?: any[][]): Promise; name: string; close: () => void | Promise; readLock: (fn: (tx: LockContext) => Promise, options?: DBLockOptions) => Promise; writeLock: (fn: (tx: LockContext) => Promise, options?: DBLockOptions) => Promise; refreshSchema: () => Promise; registerListener(listener: Partial): () => void; }) & typeof AsyncConnectionPool; export declare class AsyncDbAdapter extends AsyncDbAdapter_base implements WebDBAdapter { shareConnection(): Promise; getConfiguration(): WebDBAdapterConfiguration; } export {};