UNPKG

nuxt-surrealdb

Version:

A Nuxt module aimed to simplify the use of SurrealDB

61 lines (60 loc) 6.42 kB
import type { PublicRuntimeConfig } from '@nuxt/schema'; import type { AsyncData } from 'nuxt/app'; import type { FetchError } from 'ofetch'; import type { KeysOf, PickFrom, Overrides, QueryResponse, RpcMethods, RpcParams, RpcResponseError, UseSurrealRpcOptions } from '#surrealdb/types/index'; import type { MaybeRefOrGetter } from '#imports'; type MROGParam<T, M extends keyof RpcMethods<T>, N extends number> = MaybeRefOrGetter<RpcParams<T, M>[N]>; export declare function useSurrealDB(overrides?: Overrides): { $authenticate: (token: MROGParam<any, "authenticate", 0>, options?: Overrides) => Promise<void>; authenticate: (token: MROGParam<any, "authenticate", 0>, options?: UseSurrealRpcOptions<any>) => Promise<AsyncData<void, RpcResponseError | undefined>>; $create: <T = any>(thing: MROGParam<T, "create", 0>, data?: MROGParam<T, "create", 1>, options?: Overrides) => Promise<T>; create: <ResT, DataT = ResT, DefaultT = undefined>(thing: MROGParam<ResT, "create", 0>, data?: MROGParam<ResT, "create", 1>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $delete: <T = any>(thing: MROGParam<any, "delete", 0>, options?: Overrides) => Promise<T>; delete: <ResT, DataT = ResT, DefaultT = undefined>(thing: MROGParam<any, "delete", 0>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $info: <T = any>(options?: Overrides) => Promise<T>; info: <ResT, DataT = ResT, DefaultT = undefined>(options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $insert: <T = any>(thing: MROGParam<T, "insert", 0>, data?: MROGParam<T, "insert", 1>, options?: Overrides) => Promise<T>; insert: <ResT, DataT = ResT, DefaultT = undefined>(thing: MROGParam<ResT, "insert", 0>, data?: MROGParam<ResT, "insert", 1>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $invalidate: (options?: Overrides) => Promise<void>; invalidate: (options?: UseSurrealRpcOptions<any>) => Promise<AsyncData<void, RpcResponseError | undefined>>; $merge: <T = any>(thing: MROGParam<T, "merge", 0>, data: MROGParam<T, "merge", 1>, options?: Overrides) => Promise<T>; merge: <ResT, DataT = ResT, DefaultT = undefined>(thing: MROGParam<ResT, "merge", 0>, data: MROGParam<ResT, "merge", 1>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $patch: <T = any>(thing: MROGParam<T, "patch", 0>, patches: MROGParam<T, "patch", 1>, diff?: MROGParam<T, "patch", 2>, options?: Overrides) => Promise<T>; patch: <T = any>(thing: MROGParam<T, "patch", 0>, patches: MROGParam<T, "patch", 1>, diff?: MROGParam<T, "patch", 2>, options?: UseSurrealRpcOptions<T>) => Promise<AsyncData<undefined | PickFrom<T, KeysOf<T>>, RpcResponseError | undefined>>; $query: <T = any, R = QueryResponse<T>>(sql: MROGParam<any, "query", 0>, vars?: MROGParam<any, "query", 1>, options?: Overrides) => Promise<R>; query: <ResT extends QueryResponse<any[]> = import("#surrealdb/types/index").RpcResponse<any>[], DataT = ResT, DefaultT = undefined>(sql: MROGParam<any, "query", 0>, vars?: MROGParam<any, "query", 1>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $remove: <T = any>(thing: MROGParam<any, "delete", 0>, options?: Overrides) => Promise<T>; remove: <ResT, DataT = ResT, DefaultT = undefined>(thing: MROGParam<any, "delete", 0>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $select: <T = any>(thing: MROGParam<T, "select", 0>, options?: Overrides) => Promise<T>; select: <ResT, DataT = ResT, DefaultT = undefined>(thing: MROGParam<ResT, "select", 0>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $signin: (auth: MROGParam<any, "signin", 0>, options?: { database?: keyof PublicRuntimeConfig["surrealdb"]["databases"] | { host?: string; }; }) => Promise<string>; signin: (auth: MROGParam<any, "signin", 0>, options?: UseSurrealRpcOptions<string>) => Promise<AsyncData<string | undefined, RpcResponseError | undefined>>; $signup: { (credentials: MROGParam<any, "signup", 0> & { SC: string; AC?: never; }): Promise<string>; (credentials: MROGParam<any, "signup", 0> & { AC: string; SC?: never; }): Promise<string>; }; signup: (auth: MROGParam<any, "signup", 0>, options?: Omit<UseSurrealRpcOptions<string>, "database"> & { database?: keyof PublicRuntimeConfig["surrealdb"]["databases"] | { host?: string; }; }) => Promise<AsyncData<string | undefined, RpcResponseError | undefined>>; $sql: <T = any, R = QueryResponse<T>>(sql: MROGParam<any, "query", 0>, vars?: MROGParam<any, "query", 1>, options?: Overrides) => Promise<R>; sql: <ResT extends QueryResponse<any[]> = import("#surrealdb/types/index").RpcResponse<any>[], DataT = ResT, DefaultT = undefined>(sql: MROGParam<any, "query", 0>, vars?: MROGParam<any, "query", 1>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $update: <T = any>(thing: MROGParam<T, "update", 0>, data?: MROGParam<T, "update", 1>, options?: Overrides) => Promise<T>; update: <ResT, DataT = ResT, DefaultT = undefined>(thing: MROGParam<ResT, "update", 0>, data?: MROGParam<ResT, "update", 1>, options?: UseSurrealRpcOptions<ResT, DataT, DefaultT>) => Promise<AsyncData<DefaultT | PickFrom<DataT, KeysOf<DataT>>, RpcResponseError | undefined>>; $version: (options?: Overrides) => Promise<string>; version: (options?: Overrides) => Promise<AsyncData<string | undefined, FetchError<any> | undefined>>; $surrealFetch: unknown; $surrealRPC: unknown; }; export {};