/** * @license Copyright (c) 2003-2026, 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/collaborationoperation * @publicApi */ import type { Operation, InsertOperation, MergeOperation, MoveOperation, SplitOperation, MarkerOperation, RootOperation, RootAttributeOperation } from '@ckeditor/ckeditor5-engine'; /** * Extends the {@link module:engine/model/operation/operation operation}. */ export interface CollaborationOperation extends Operation { _isInit?: boolean; _authorId?: null | string; _isDisconnection?: boolean; createdAt?: Date; wasUndone?: boolean; affectsData?: Record; clone(): CollaborationOperation; } export type InsertCollaborationOperation = CollaborationOperation & InsertOperation; export type MoveCollaborationOperation = CollaborationOperation & MoveOperation; export type MergeCollaborationOperation = CollaborationOperation & MergeOperation; export type SplitCollaborationOperation = CollaborationOperation & SplitOperation; export type MarkerCollaborationOperation = CollaborationOperation & MarkerOperation; export type RootCollaborationOperation = CollaborationOperation & RootOperation; export type RootAttributeCollaborationOperation = CollaborationOperation & RootAttributeOperation;