import { next as A } from "@automerge/automerge";
import { EditorView, ViewPlugin, ViewUpdate } from "@codemirror/view";
import { Transaction } from "@codemirror/state";
import { DocHandle } from "@automerge/automerge-repo";
export declare const reconcileAnnotationType: import("@codemirror/state").AnnotationType<unknown>;
export declare const isReconcileTx: (tr: Transaction) => boolean;
type AutomergeSyncPluginConfig = {
    handle: DocHandle<any>;
    path: A.Prop[];
};
export declare const automergeSyncPlugin: ({ handle, path, }: AutomergeSyncPluginConfig) => ViewPlugin<{
    view: EditorView;
    reconciledHeads: A.Heads;
    isProcessingCmTransaction: boolean;
    update(update: ViewUpdate): void;
    onChange: () => void;
    destroy(): void;
}>;
export {};
