import type { CRDTDocumentField, CRDTEntry, CRDTOperation, HashFunction, JsonSchema, RxConflictHandler, RxDocument, RxDocumentData, RxJsonSchema, RxPlugin, RxStorageStatics, WithDeleted } from '../../types'; import { RxCollection } from '../..'; export declare function updateCRDT(this: RxDocument, entry: CRDTEntry | CRDTEntry[]): Promise>; export declare function insertCRDT(this: RxCollection, entry: CRDTEntry | CRDTEntry[]): Promise>; export declare function sortOperationComparator(a: CRDTOperation, b: CRDTOperation): 1 | -1; export declare function hashCRDTOperations(hashFunction: HashFunction, crdts: CRDTDocumentField): string; export declare function getCRDTSchemaPart(): JsonSchema>; export declare function mergeCRDTFields(hashFunction: HashFunction, crdtsA: CRDTDocumentField, crdtsB: CRDTDocumentField): CRDTDocumentField; export declare function rebuildFromCRDT(storageStatics: RxStorageStatics, schema: RxJsonSchema>, docData: WithDeleted, crdts: CRDTDocumentField): WithDeleted; export declare function getCRDTConflictHandler(hashFunction: HashFunction, storageStatics: RxStorageStatics, schema: RxJsonSchema>): RxConflictHandler; export declare const RX_CRDT_CONTEXT = "rx-crdt"; export declare const NxDBcrdtPlugin: RxPlugin;