/**
* @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;
	_aiSource?: string;
	createdAt?: Date;
	wasUndone?: boolean;
	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;
