UNPKG

drizzle-orm

Version:

Drizzle ORM package for SQL databases

25 lines (24 loc) 1.4 kB
import type { BatchItem, BatchResponse } from "../batch.cjs"; import { entityKind } from "../entity.cjs"; import { BaseSQLiteDatabase } from "../sqlite-core/db.cjs"; import type { DrizzleConfig } from "../utils.cjs"; export interface SqliteRemoteResult<T = unknown> { rows?: T[]; } export declare class SqliteRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends BaseSQLiteDatabase<'async', SqliteRemoteResult, TSchema> { static readonly [entityKind]: string; batch<U extends BatchItem<'sqlite'>, T extends Readonly<[U, ...U[]]>>(batch: T): Promise<BatchResponse<T>>; } export type AsyncRemoteCallback = (sql: string, params: any[], method: 'run' | 'all' | 'values' | 'get') => Promise<{ rows: any[]; }>; export type AsyncBatchRemoteCallback = (batch: { sql: string; params: any[]; method: 'run' | 'all' | 'values' | 'get'; }[]) => Promise<{ rows: any[]; }[]>; export type RemoteCallback = AsyncRemoteCallback; export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, config?: DrizzleConfig<TSchema>): SqliteRemoteDatabase<TSchema>; export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, batchCallback?: AsyncBatchRemoteCallback, config?: DrizzleConfig<TSchema>): SqliteRemoteDatabase<TSchema>;