UNPKG

@ocap/statedb-memory

Version:

OCAP statedb adapter that uses memory as backend statedb, just for test purpose

37 lines (36 loc) 1.26 kB
import { StateDBTable } from "@ocap/statedb"; import { IBalanceTable, IOperationContext } from "@ocap/types"; import Lokijs from "lokijs"; //#region src/table/base.d.ts interface TableOptions { name: string; uniqIndex: string | string[]; syncBalance?: boolean; balanceTable?: IBalanceTable; db: Lokijs; } /** * 内存表基类 * 使用 LokiJS Collection 作为底层存储 */ declare class MemoryTable<T = unknown> extends StateDBTable<T> { name: string; balanceTable?: IBalanceTable; syncBalance: boolean; collection: Collection<LokiObj & Record<string, unknown>>; constructor({ name, uniqIndex, balanceTable, syncBalance, db }: TableOptions); _create(key: string | Record<string, unknown>, attrs?: Partial<T>, context?: IOperationContext): Promise<T>; _get(key: string | Record<string, unknown>, _context?: IOperationContext): Promise<T | null>; _history(_key?: string, _context?: IOperationContext): T[]; _update(key: string | Record<string, unknown>, updates: Partial<T>, context?: IOperationContext): Promise<T>; updateOrCreate(exist: unknown, state: Partial<T>, ctx?: IOperationContext): Promise<T>; _reset(_context?: IOperationContext): void; } //#endregion export { MemoryTable as default };