import { ChangeSet, EditorState, StateEffect, Transaction, Extension } from "@codemirror/next/state"; export interface Update { changes: ChangeSet; effects?: readonly StateEffect[]; } declare type CollabConfig = { startVersion?: number; clientID?: string; sharedEffects?: (tr: Transaction) => readonly StateEffect[]; }; export declare function collab(config?: CollabConfig): Extension; export declare function receiveUpdates(state: EditorState, updates: readonly Update[], ownUpdateCount: number): Transaction; export declare function sendableUpdates(state: EditorState): readonly (Update & { origin: Transaction; })[]; export declare function getSyncedVersion(state: EditorState): number; export declare function getClientID(state: EditorState): string; export {}; //# sourceMappingURL=collab.d.ts.map