mirror of
https://github.com/shishantbiswas/bknd.git
synced 2026-03-17 04:46:05 +00:00
libsql: update typings to allow minimal client fns (execute, batch)
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
import type { Client, Config, ResultSet } from "@libsql/client";
|
import type { Client, Config, InStatement, ResultSet, TransactionMode } from "@libsql/client";
|
||||||
import { createClient } from "libsql-stateless-easy";
|
import { createClient } from "libsql-stateless-easy";
|
||||||
import { FilterNumericKeysPlugin } from "data/plugins/FilterNumericKeysPlugin";
|
import { FilterNumericKeysPlugin } from "data/plugins/FilterNumericKeysPlugin";
|
||||||
import {
|
import {
|
||||||
@@ -10,7 +10,12 @@ import type { QueryResult } from "kysely";
|
|||||||
export type LibsqlConnection = GenericSqliteConnection<Client>;
|
export type LibsqlConnection = GenericSqliteConnection<Client>;
|
||||||
export type LibSqlCredentials = Config;
|
export type LibSqlCredentials = Config;
|
||||||
|
|
||||||
function getClient(clientOrCredentials: Client | LibSqlCredentials): Client {
|
export type LibsqlClientFns = {
|
||||||
|
execute: (statement: InStatement) => Promise<ResultSet>;
|
||||||
|
batch: (statements: InStatement[], mode?: TransactionMode) => Promise<ResultSet[]>;
|
||||||
|
};
|
||||||
|
|
||||||
|
function getClient(clientOrCredentials: Client | LibSqlCredentials | LibsqlClientFns): Client {
|
||||||
if (clientOrCredentials && "url" in clientOrCredentials) {
|
if (clientOrCredentials && "url" in clientOrCredentials) {
|
||||||
const { url, authToken } = clientOrCredentials;
|
const { url, authToken } = clientOrCredentials;
|
||||||
return createClient({ url, authToken });
|
return createClient({ url, authToken });
|
||||||
@@ -19,7 +24,7 @@ function getClient(clientOrCredentials: Client | LibSqlCredentials): Client {
|
|||||||
return clientOrCredentials as Client;
|
return clientOrCredentials as Client;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function libsql(config: LibSqlCredentials | Client) {
|
export function libsql(config: LibSqlCredentials | Client | LibsqlClientFns) {
|
||||||
const db = getClient(config);
|
const db = getClient(config);
|
||||||
|
|
||||||
return genericSqlite(
|
return genericSqlite(
|
||||||
|
|||||||
Reference in New Issue
Block a user