import { type Database, type Options, type RunResult } from 'better-sqlite3'; import { entityKind } from "../entity.js"; import { BaseSQLiteDatabase } from "../sqlite-core/db.js"; import { type DrizzleConfig } from "../utils.js"; export type DrizzleBetterSQLite3DatabaseConfig = ({ source?: string | Buffer; } & Options) | string | undefined; export declare class BetterSQLite3Database = Record> extends BaseSQLiteDatabase<'sync', RunResult, TSchema> { static readonly [entityKind]: string; } export declare function drizzle = Record>(...params: [] | [ Database | string ] | [ Database | string, DrizzleConfig ] | [ (DrizzleConfig & ({ connection?: DrizzleBetterSQLite3DatabaseConfig; } | { client: Database; })) ]): BetterSQLite3Database & { $client: Database; }; export declare namespace drizzle { function mock = Record>(config?: DrizzleConfig): BetterSQLite3Database & { $client: '$client is not available on drizzle.mock()'; }; }