import { ResolvedWASQLiteOpenFactoryOptions } from './WASQLiteOpenFactory.js'; export interface RawResultSet { columns: string[]; rows: SQLiteCompatibleType[][]; } export interface RawQueryResult { changes: number; lastInsertRowId: number; autocommit: boolean; resultSet: RawResultSet | undefined; } /** * A small wrapper around WA-sqlite to help with opening databases and running statements by preparing them internally. * * This is an internal class, and it must never be used directly. Wrappers are required to ensure raw connections aren't * used concurrently across tabs. */ export declare class RawSqliteConnection { readonly options: ResolvedWASQLiteOpenFactoryOptions; private _sqliteAPI; /** * The `sqlite3*` connection pointer. */ private db; private _moduleFactory; constructor(options: ResolvedWASQLiteOpenFactoryOptions); get isOpen(): boolean; init(): Promise; private openSQLiteAPI; requireSqlite(): SQLiteAPI; /** * Checks if the database connection is in autocommit mode. * @returns true if in autocommit mode, false if in a transaction */ isAutoCommit(): boolean; execute(sql: string, bindings?: any[]): Promise; executeBatch(sql: string, bindings: any[][]): Promise; private wrapQueryResults; /** * This executes a single statement using SQLite3 and returns the results as a {@link RawResultSet}. */ private executeSingleStatementRaw; executeRaw(sql: string, bindings?: any[]): Promise; private stepThroughStatement; close(): Promise; }