import { RepositoryQuery } from "../domain/repository-query"; import { Repository } from "../domain/repository"; import { Result } from "../common/result"; import { UpdateStats, RemoveStats } from "../domain/types"; import { RemoveParams, UpdateParams } from "../domain/params"; import { AnyContext, BlockchainContext, DatabaseContext, WebContext, SocketContext } from "./repository-data-contexts"; import { ReadRepository } from "./read-repository"; export declare class ReadWriteRepository extends ReadRepository implements Repository { constructor(context: DatabaseContext | WebContext | SocketContext | BlockchainContext | AnyContext); update(paramsOrQuery: UpdateParams> | RepositoryQuery): Promise>; update(entities: Partial[]): Promise>; update(...entities: Partial[]): Promise>; add(...entities: EntityType[]): Promise>; remove(paramsOrQuery: RemoveParams | RepositoryQuery): Promise>; remove(entities: EntityType[]): Promise>; remove(...additionalEntities: EntityType[]): Promise>; private createUpdateQueryFromEntities; private createRemoveQueryFromEntities; private normalizeEntities; private getEntityId; } export declare const isReadWriteRepository: (value: unknown) => value is ReadWriteRepository;