UNPKG

@berish/orm-web-db-adapter

Version:

Адаптер базы данных по сети для @berish/orm

36 lines (35 loc) 2.07 kB
import { BaseDBAdapter, IBaseDBItem, QueryData, QueryDataSchema } from '@berish/orm'; import type { WebDBMethodParameters, WebDBMethodReturn } from './webDBReceiver'; export interface IWebDBAdapterParams { get: (...args: WebDBMethodParameters<'get'>) => WebDBMethodReturn<'get'>; create: (...args: WebDBMethodParameters<'create'>) => WebDBMethodReturn<'create'>; update: (...args: WebDBMethodParameters<'update'>) => WebDBMethodReturn<'update'>; delete: (...args: WebDBMethodParameters<'delete'>) => WebDBMethodReturn<'delete'>; count: (...args: WebDBMethodParameters<'count'>) => WebDBMethodReturn<'count'>; find: (...args: WebDBMethodParameters<'find'>) => WebDBMethodReturn<'find'>; index: (...args: WebDBMethodParameters<'index'>) => WebDBMethodReturn<'index'>; subscribe: (...args: WebDBMethodParameters<'subscribe'>) => WebDBMethodReturn<'subscribe'>; } export interface IWebDBAdapterConstructorParams { isConnected: () => boolean; } export declare class WebDBAdapter extends BaseDBAdapter<IWebDBAdapterParams> { private _emitter; private _constructorParams; private _uniqueQueries; private _offTriggers; constructor(constructorParams: IWebDBAdapterConstructorParams); initialize: (params: IWebDBAdapterParams) => Promise<void>; close: () => Promise<void>; count(query: QueryData<QueryDataSchema>): Promise<number>; get: (query: QueryData<QueryDataSchema>) => Promise<IBaseDBItem>; create: (tableName: string, items: IBaseDBItem[]) => Promise<void>; update: (tableName: string, items: IBaseDBItem[]) => Promise<void>; delete: (query: QueryData<QueryDataSchema>) => Promise<void>; index: (tableName: string, indexName: string, keys?: string[]) => void; find: (query: QueryData<QueryDataSchema>) => Promise<IBaseDBItem[]>; subscribe: (data: QueryData<QueryDataSchema>, callback: (oldValue: IBaseDBItem, newValue: IBaseDBItem) => any) => Promise<() => void>; connectSubscriptions: () => void; disconnectSubscriptions: () => void; private _realSubscribe; }