import { D1Database, D1DatabaseSession, DurableObjectState } from '@cloudflare/workers-types'; import { Kysely } from 'kysely'; import { SqliteConnection, ISqliteConnectionConfig, TransactionOptions } from '@supabase/lite'; interface ID1SqliteConnectionConfig extends ISqliteConnectionConfig { binding: D1; } type D1 = D1Database | D1DatabaseSession; declare class D1SqliteConnection extends SqliteConnection { kysely: Kysely; driver: D1; constructor(config: ID1SqliteConnectionConfig); normalizeBindParams(parameters: readonly unknown[] | undefined): unknown[]; exec(query: string, ...parameters: readonly unknown[]): Promise; runInTransaction(fn: (trx: Kysely) => Promise): Promise; transaction(statements: string[], opts?: TransactionOptions): Promise; } declare function createD1SqliteConnection(config: ID1SqliteConnectionConfig): D1SqliteConnection; declare function d1(config: ID1SqliteConnectionConfig): D1SqliteConnection; type DurableObjectStorage = DurableObjectState["storage"]; interface IDoSqliteConnectionConfig extends ISqliteConnectionConfig { storage: DurableObjectStorage; } declare class DoSqliteConnection extends SqliteConnection { kysely: Kysely; driver: DurableObjectStorage; constructor(config: IDoSqliteConnectionConfig); normalizeBindParams(parameters: readonly unknown[] | undefined): unknown[]; exec(query: string, ...parameters: readonly unknown[]): Promise; runInTransaction(fn: (trx: Kysely) => Promise): Promise; transaction(_statements: string[], opts?: TransactionOptions): Promise; } declare function createDoSqliteConnection(config: IDoSqliteConnectionConfig): DoSqliteConnection; declare function doSqlite(config: IDoSqliteConnectionConfig): DoSqliteConnection; declare function createConnection(_config: any): Promise; export { D1SqliteConnection, DoSqliteConnection, type ID1SqliteConnectionConfig, type IDoSqliteConnectionConfig, createConnection, createD1SqliteConnection, createDoSqliteConnection, d1, doSqlite };