import { DBAdapter, SQLOpenFactory, type ILogLevel } from '@powersync/common'; import { ResolvedWebSQLOpenOptions, WebSQLOpenFactoryOptions } from '../web-sql-flags.js'; import { WASQLiteVFS } from './vfs.js'; import { DatabaseClient } from './DatabaseClient.js'; export interface WASQLiteOpenFactoryOptions extends WebSQLOpenFactoryOptions { vfs?: WASQLiteVFS; } export interface ResolvedWASQLiteOpenFactoryOptions extends ResolvedWebSQLOpenOptions { vfs: WASQLiteVFS; } export interface WorkerDBOpenerOptions extends ResolvedWASQLiteOpenFactoryOptions { logLevel: ILogLevel; /** * A lock that is currently held by the client. When the lock is returned, we know the client is gone and that we need * to clean up resources. */ lockName: string; } /** * Opens a SQLite connection using WA-SQLite. */ export declare class WASQLiteOpenFactory implements SQLOpenFactory { private options; private resolvedFlags; private logger; constructor(options: WASQLiteOpenFactoryOptions); get waOptions(): WASQLiteOpenFactoryOptions; protected openAdapter(): DBAdapter; openDB(): DBAdapter; openConnection(): Promise; }