@ckeditor/ckeditor5-collaboration-core
Version:
Base utilities used by CKEditor 5 collaboration features to support multiple users working together in a rich text editor.
22 lines (21 loc) • 930 B
TypeScript
/**
* @license Copyright (c) 2003-2025, CKSource Holding sp. z o.o. All rights reserved.
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
*/
/**
* @module collaboration-core/collaborationhistory
* @publicApi
*/
import type { CollaborationOperation } from './collaborationoperation.js';
/**
* Interface compatible with {@link module:engine/model/history~History} with the difference that it uses
* {@link module:collaboration-core/collaborationoperation~CollaborationOperation} instead of regular model operations.
*/
export interface CollaborationHistory {
_operations: Array<CollaborationOperation>;
version: number;
getOperations(fromBaseVersion?: number, toBaseVersion?: number): Array<CollaborationOperation>;
getOperation(baseVersion: number): CollaborationOperation | undefined;
addOperation(operation: CollaborationOperation): void;
reset(): void;
}