/**
 * NativeDbProxy — wraps a NativeDatabase (rusqlite via napi-rs) to satisfy the
 * BetterSqlite3Database interface.  When the native addon is available, the
 * build pipeline uses this proxy as `ctx.db` so that every stage operates on a
 * single rusqlite connection — no dual-connection WAL corruption, no
 * open/close/reopen dance.
 *
 * When native is unavailable, the pipeline falls back to real better-sqlite3.
 */
import type { BetterSqlite3Database, NativeDatabase, SqliteStatement } from '../../../types.js';
export declare class NativeDbProxy implements BetterSqlite3Database {
    #private;
    /** Advisory lock path — set by the pipeline so closeDb() can release it. */
    __lockPath?: string;
    constructor(nativeDb: NativeDatabase);
    prepare<TRow = unknown>(sql: string): SqliteStatement<TRow>;
    exec(sql: string): this;
    pragma(sql: string): unknown;
    close(): void;
    get open(): boolean;
    get name(): string;
    transaction<F extends (...args: any[]) => any>(fn: F): (...args: F extends (...a: infer A) => unknown ? A : never) => ReturnType<F>;
}
//# sourceMappingURL=native-db-proxy.d.ts.map