flint-orm
Version:
Type-safe SQLite ORM for JavaScript
19 lines (18 loc) • 779 B
TypeScript
/**
* A database executor that runs SQL and returns results.
* All methods return Promises for a uniform async API.
*/
export interface Executor {
/** Execute a query and return all matching rows. */
all(sql: string, params: unknown[]): Promise<unknown[]>;
/** Execute a query and return a single row or null. */
get(sql: string, params: unknown[]): Promise<unknown>;
/** Execute a statement (INSERT, UPDATE, DELETE, DDL) and return affected row count. */
run(sql: string, params: unknown[]): Promise<{
rowsAffected: number;
}>;
/** Run a callback inside a transaction. */
transaction(fn: () => void | Promise<void>): Promise<void>;
/** Close the underlying database connection. No-op if already closed. */
close(): void;
}