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