UNPKG

vulcain-corejs

Version:
53 lines (52 loc) 1.57 kB
import { IProvider, ListOptions } from "../provider"; import { Schema } from "../../schemas/schema"; /** * Default memory provider */ export declare class MemoryProvider implements IProvider<any> { private dataFolder; private state; readonly address: string; /** * Create a memory provider instance. * @param dataFolder : (optional) if provided, data will be persisted on disk on EVERY create, update or delete */ constructor(dataFolder?: string); initializeTenantAsync(tenant: string): Promise<() => void>; private ensureSchema(schema); private save(schema); static clone(obj: any): any; /** * Return a list of entities * @param options * @returns {Promise} */ getAllAsync(schema: Schema, options: ListOptions): Promise<Array<any>>; take(schema: Schema, list: any, options: ListOptions): IterableIterator<any>; findOneAsync(schema: Schema, query: any): Promise<any>; /** * Read an entity * @param name * @returns {Promise} */ getAsync(schema: Schema, name: string): Promise<{}>; /** * Delete an entity * @param id * @returns {Promise} */ deleteAsync(schema: Schema, old: string | any): Promise<{}>; /** * Persist an entity * @param entity * @returns {Promise} */ createAsync(schema: Schema, entity: any): Promise<{}>; /** * Update an entity * @param entity * @param old * @returns {Promise<T>} */ updateAsync(schema: Schema, entity: any, old: any): Promise<{}>; }