/// /// /// /// /// import { Hydrator } from './hydrator'; import { AdamantDeletedMeta, AdamantRevMeta } from './meta-interfaces'; import { EntityMetadataCollection } from './metadata'; import { Ctor } from './utils/metadata'; import { Validator } from './validator'; export declare enum BulkOperation { Create = "create", Update = "update", Delete = "delete" } export declare class Bulk { protected readonly db: PouchDB.Database; protected readonly entityClass: Ctor; protected readonly metadata: EntityMetadataCollection; protected readonly hydrator: Hydrator; protected readonly validator: Validator; constructor(db: PouchDB.Database, entityClass: Ctor, metadata: EntityMetadataCollection, hydrator: Hydrator, validator: Validator); protected bulk(entities: T[], operation: BulkOperation): Promise<(T & AdamantRevMeta & AdamantDeletedMeta)[]>; create(entities: T[]): Promise<(T & AdamantRevMeta)[]>; update(entities: T[]): Promise<(T & AdamantRevMeta)[]>; delete(entities: T[]): Promise<(T & AdamantRevMeta & AdamantDeletedMeta)[]>; } export declare const ADAMANT_BULK_PROVIDER: { provide: typeof Bulk; useFactory(db: PouchDB.Database, entityClass: Ctor, metadata: EntityMetadataCollection, hydrator: Hydrator, validator: Validator): Bulk; deps: any[]; };