/**
 * Better-SQLite3-backed Kernel Backend
 *
 * Node.js compatible SQLite backend using better-sqlite3.
 * Use this backend when running in Node.js environments.
 *
 * @module trellis/core/persist
 */
import type { KernelOp, KernelBackend } from './backend.js';
export declare class BetterSqliteKernelBackend implements KernelBackend {
    private db;
    private _stmts;
    private _initialized;
    constructor(dbPath: string);
    private _prepareStatements;
    init(): void;
    append(op: KernelOp): void;
    appendBatch(ops: KernelOp[]): void;
    readAll(): KernelOp[];
    readUntil(opHash: string): KernelOp[];
    readUntilTimestamp(isoTimestamp: string): KernelOp[];
    readAfter(opHash: string): KernelOp[];
    getByHash(hash: string): KernelOp | undefined;
    getOpByHash(hash: string): KernelOp | undefined;
    getLastOp(): KernelOp | undefined;
    getOpCount(): number;
    count(): number;
    saveSnapshot(lastOpHash: string, data: any): void;
    loadLatestSnapshot(): {
        lastOpHash: string;
        data: any;
    } | undefined;
    putBlob(hash: string, content: Uint8Array): void;
    getBlob(hash: string): Uint8Array | undefined;
    hasBlob(hash: string): boolean;
    findCommonAncestor(hashA: string, hashB: string): KernelOp | undefined;
    close(): void;
    private _rowToOp;
}
//# sourceMappingURL=better-sqlite-backend.d.ts.map