import type BasePluginEvent from './BasePluginEvent'; import type SelectionPath from '../interface/SelectionPath'; import type { PluginEventType } from '../enum/PluginEventType'; import type { CompatiblePluginEventType } from '../compatibleEnum/PluginEventType'; /** * Data of EnterShadowEditEvent */ export interface EnterShadowEditEventData { /** * The document fragment of original editor content */ fragment: DocumentFragment; /** * The selection path of original editor content */ selectionPath: SelectionPath | null; } /** * A plugin triggered right after editor has entered Shadow Edit mode */ export interface EnterShadowEditEvent extends EnterShadowEditEventData, BasePluginEvent { } /** * A plugin triggered right before editor leave Shadow Edit mode */ export interface LeaveShadowEditEvent extends BasePluginEvent { } /** * A plugin triggered right after editor has entered Shadow Edit mode */ export interface CompatibleEnterShadowEditEvent extends EnterShadowEditEventData, BasePluginEvent { } /** * A plugin triggered right before editor leave Shadow Edit mode */ export interface CompatibleLeaveShadowEditEvent extends BasePluginEvent { }