UNPKG

@electric-sql/drivers

Version:

ElectricSQL database drivers.

21 lines (20 loc) 1.2 kB
import { Mutex } from 'async-mutex'; import { DatabaseAdapter as DatabaseAdapterInterface, RunResult, Transaction as Tx, UncoordinatedDatabaseAdapter } from '../adapter.js'; import { Statement as DbStatement, Row, Statement } from '../util/types.js'; import { Database } from './database.js'; export declare class DatabaseAdapter implements DatabaseAdapterInterface { db: Database; readonly defaultNamespace = "main"; protected txMutex: Mutex; constructor(db: Database); _runInTransaction(...statements: DbStatement[]): Promise<RunResult>; _transaction<T>(f: (_tx: Tx, setResult: (res: T) => void) => void): Promise<T>; _run({ sql, args }: DbStatement): Promise<RunResult>; _query({ sql, args }: DbStatement): Promise<Row[]>; _runExclusively<T>(f: (adapter: UncoordinatedDatabaseAdapter) => Promise<T> | T): Promise<T>; runInTransaction(...statements: DbStatement[]): Promise<RunResult>; transaction<T>(f: (_tx: Tx, setResult: (res: T) => void) => void): Promise<T>; run(stmt: Statement): Promise<RunResult>; query(stmt: Statement): Promise<Row[]>; runExclusively<T>(f: (adapter: UncoordinatedDatabaseAdapter) => Promise<T> | T): Promise<T>; }