UNPKG

@gecogvidanto/plugin-nedb

Version:

Nebd local database management plugin for ĞecoĞvidanto

22 lines (21 loc) 1.11 kB
import { Collection, Identifier, Projection, Query, Update } from '@gecogvidanto/plugin'; import { BinaryStore } from './bindata'; import NedbPromiseDatastore from './NedbPromiseDatastore'; /** * A nedb collection (datastore in nedb vocabulary). */ export default class NedbDatastore<T> implements Collection<T> { private readonly db; private readonly name; private readonly compactInterval; private readonly binaryStore; private nextCompact; constructor(db: NedbPromiseDatastore, name: string, compactInterval: number, binaryStore: BinaryStore); private static checkCompact; insert(newDoc: T): Promise<Identifier & T>; count(query: Query<Identifier & T>): Promise<number>; find(query: Query<Identifier & T>, projection?: Projection<Identifier & T>): Promise<Array<Identifier & T>>; findOne(query: Query<Identifier & T>, projection?: Projection<Identifier & T>): Promise<(Identifier & T) | undefined>; update(query: Query<Identifier & T>, updateQuery: Update<T>, upsert?: boolean): Promise<number>; remove(query: Query<Identifier & T>): Promise<number>; }