import { TrailingBlockPlugin } from 'platejs'; export { BaseBasicBlocksKit } from './basic-blocks-base-kit'; export { BaseBasicMarksKit } from './basic-marks-base-kit'; export { BaseCodeBlockKit } from './code-block-base-kit'; export { BaseTableKit } from './table-base-kit'; export { BaseToggleKit } from './toggle-base-kit'; export { BaseTocKit } from './toc-base-kit'; export { BaseMediaKit } from './media-base-kit'; export { BaseCalloutKit } from './callout-base-kit'; export { BaseColumnKit } from './column-base-kit'; export { BaseMathKit } from './math-base-kit'; export { BaseDateKit } from './date-base-kit'; export { BaseLinkKit } from './link-base-kit'; export { BaseMentionKit } from './mention-base-kit'; export { BaseFontKit } from './font-base-kit'; export { BaseListKit } from './list-base-kit'; export { BaseAlignKit } from './align-base-kit'; export { BaseLineHeightKit } from './line-height-base-kit'; export { BasicBlocksKit } from './basic-blocks-kit'; export { BasicMarksKit } from './basic-marks-kit'; export { CodeBlockKit } from './code-block-kit'; export { TableKit } from './table-kit'; export { ToggleKit } from './toggle-kit'; export { TocKit } from './toc-kit'; export { MediaKit } from './media-kit'; export { CalloutKit } from './callout-kit'; export { ColumnKit } from './column-kit'; export { MathKit } from './math-kit'; export { DateKit } from './date-kit'; export { LinkKit } from './link-kit'; export { MentionKit } from './mention-kit'; export { FontKit } from './font-kit'; export { ListKit } from './list-kit'; export { AlignKit } from './align-kit'; export { LineHeightKit } from './line-height-kit'; export { SlashKit } from './slash-kit'; export { AutoformatKit } from './autoformat-kit'; export { BlockMenuKit } from './block-menu-kit'; export { DndKit } from './dnd-kit'; export { EmojiKit } from './emoji-kit'; export { ExitBreakKit } from './exit-break-kit'; export { BlockPlaceholderKit } from './block-placeholder-kit'; export { FixedToolbarKit } from './fixed-toolbar-kit'; export { FloatingToolbarKit } from './floating-toolbar-kit'; export { ResponsiveToolbarKit } from './responsive-toolbar-kit'; export { createConfigurableToolbarKit } from './configurable-toolbar-kit'; export { DocxKit } from './docx-kit'; export { MarkdownKit } from './markdown-kit'; export { AIKit } from './ai-kit'; export { CopilotKit } from './copilot-kit'; export { CommentKit } from './comment-kit'; export { BaseCommentKit } from './comment-base-kit'; export { DiscussionKit } from './discussion-kit'; export { SuggestionKit } from './suggestion-kit'; export { BaseSuggestionKit } from './suggestion-base-kit'; export { CursorOverlayKit } from './cursor-overlay-kit'; export { TrailingBlockPlugin }; /** * 核心元素插件(必需) */ export declare const CoreElementPlugins: { BasicBlocksKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin>)[]>; BasicMarksKit: () => Promise<(import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>>)[]>; }; /** * 扩展元素插件(可选) */ export declare const ExtendedElementPlugins: { CodeBlockKit: () => Promise<(import('platejs/react').PlatePlugin | null; }, {}, Record<"code_block", { toggle: () => void; }>, {}>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; TableKit: () => Promise<(import('platejs/react').PlatePlugin; selectedCells: import('platejs').TElement[] | null; selectedTables: import('platejs').TElement[] | null; disableExpandOnInsert?: boolean; disableMarginLeft?: boolean; disableMerge?: boolean; enableUnsetSingleColSize?: boolean; initialTableWidth?: number; minColumnWidth?: number; }, { create: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount, ...cellOptions }?: import('@platejs/table').GetEmptyTableNodeOptions) => import('platejs').TTableElement>; tableCell: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { children, header, row }?: import('@platejs/table').CreateCellOptions) => { children: import('platejs').Descendant[]; type: string; }>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, ...cellOptions }?: import('@platejs/table').GetEmptyRowNodeOptions) => { children: { children: import('platejs').Descendant[]; type: string; }[]; type: string; }>; }; table: { getCellBorders: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, defaultBorder, element }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; defaultBorder?: import('platejs').TTableCellBorder; }) => import('@platejs/table').BorderStylesDefault>; getCellSize: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, colSizes, element, rowSize }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; colSizes?: number[]; rowSize?: number; }) => { minHeight: number | undefined; width: number; }>; getColSpan: (cellElem: import('platejs').TTableCellElement) => number; getRowSpan: (cellElem: import('platejs').TTableCellElement) => number; getCellChildren: (cell: import('platejs').TTableCellElement) => import('platejs').Descendant[]; }; } & { create: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount, ...cellOptions }?: import('@platejs/table').GetEmptyTableNodeOptions) => import('platejs').TTableElement>; tableCell: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { children, header, row }?: import('@platejs/table').CreateCellOptions) => { children: import('platejs').Descendant[]; type: string; }>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, ...cellOptions }?: import('@platejs/table').GetEmptyRowNodeOptions) => { children: { children: import('platejs').Descendant[]; type: string; }[]; type: string; }>; }; table: { getCellBorders: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, defaultBorder, element }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; defaultBorder?: import('platejs').TTableCellBorder; }) => import('@platejs/table').BorderStylesDefault>; getCellSize: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, colSizes, element, rowSize }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; colSizes?: number[]; rowSize?: number; }) => { minHeight: number | undefined; width: number; }>; getColSpan: (cellElem: import('platejs').TTableCellElement) => number; getRowSpan: (cellElem: import('platejs').TTableCellElement) => number; getCellChildren: (cell: import('platejs').TTableCellElement) => import('platejs').Descendant[]; }; }, { insert: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount }?: import('@platejs/table').GetEmptyTableNodeOptions, { select: shouldSelect, ...options }?: import('platejs').InsertNodesOptions) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromCell?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromRow?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; }; remove: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; table: { merge: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; split: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; } & { insert: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount }?: import('@platejs/table').GetEmptyTableNodeOptions, { select: shouldSelect, ...options }?: import('platejs').InsertNodesOptions) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromCell?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromRow?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; }; remove: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; table: { merge: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; split: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; }, { cellIndices?: (id: string) => import('@platejs/table').CellIndices; }>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; ToggleKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin; } & { toggleIndex?: ReturnType<(elements: import('platejs').Value) => Map>; }, { toggle: { toggleIds: (ids: string[], force?: boolean | null) => void; }; }, {}, { isOpen?: (toggleId: string) => boolean; someClosed?: (toggleIds: string[]) => boolean; }>>)[]>; TocKit: () => Promise import('@platejs/toc').Heading[]; }, {}, {}, {}>>[]>; MediaKit: () => Promise<(import('platejs/react').PlatePlugin; error?: import('@platejs/media/react').UploadError | null; maxFileCount?: number; multiple?: boolean; }, { placeholder: import('@platejs/media/react').PlaceholderApi; } & Record<"placeholder", { addUploadingFile: (id: string, file: File) => void; getUploadingFile: (id: string) => File; removeUploadingFile: (id: string) => void; }>, { insert: { media: (files: FileList, options?: (Omit & { at?: import('platejs').Path; }) | undefined) => any; }; }, {}>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin ArrayBuffer | Promise | string; } & import('@platejs/media').MediaPluginOptions, {}, { insert: { imageFromFiles: (files: FileList, options?: import('platejs').InsertNodesOptions | undefined) => void; }; }, {}>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin boolean; }>>)[]>; CalloutKit: () => Promise> | undefined; text?: boolean; } & import('platejs').QueryAt & import('platejs').QueryMode & import('platejs').QueryVoids & { icon?: string; variant?: (string & {}) | import('platejs').TCalloutElement["variant"]; }) | undefined) => void; }; }, {}>>[]>; ColumnKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; MathKit: () => Promise<(import('platejs/react').PlatePlugin void; }; }, {}>> | import('platejs/react').PlatePlugin void; }; }, {}>>)[]>; DateKit: () => Promise> | undefined; text?: boolean; } & import('platejs').QueryAt & import('platejs').QueryMode & import('platejs').QueryVoids) | undefined) => void; }; }, {}>>[]>; LinkKit: () => Promise; forceSubmit?: boolean; keepSelectedTextOnPaste?: boolean; rangeBeforeOptions?: import('platejs').EditorBeforeOptions; triggerFloatingLinkHotkeys?: string[] | string; getLinkUrl?: (prevUrl: string | null) => Promise; getUrlHref?: (url: string) => string | undefined; isUrl?: (text: string) => boolean; transformInput?: (url: string) => string | undefined; } & { isEditing: boolean; mode: import('@platejs/link/react').FloatingLinkMode; mouseDown: boolean; newTab: boolean; openEditorId: string | null; text: string; updated: boolean; url: string; triggerFloatingLinkHotkeys?: string; }, { floatingLink: { hide: () => void; reset: () => void; show: (mode: import('@platejs/link/react').FloatingLinkMode, editorId: string) => void; }; link: { getAttributes: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, link: import('platejs').TLinkElement) => Pick, "href" | "target"> & import('platejs').UnknownObject>; }; }, {}, { isOpen?: (editorId: string) => boolean; }>>[]>; MentionKit: () => Promise<(import('platejs/react').PlatePlugin void; }; }, {}>> | import('platejs/react').PlatePlugin>)[]>; }; /** * 样式插件 */ export declare const StylePlugins: { FontKit: () => Promise<(import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>>)[]>; ListKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin; getListStyleType?: (element: HTMLElement) => import('@platejs/list').ListStyleType; }, {}, {}, {}>>)[]>; AlignKit: () => Promise void; }>, {}>>[]>; LineHeightKit: () => Promise void; }>, {}>>[]>; }; /** * 编辑增强插件 */ export declare const EditingPlugins: { SlashKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; AutoformatKit: () => Promise[]>; BlockMenuKit: () => Promise<(import('platejs/react').PlatePlugin; shadowInputRef?: React.RefObject; isSelectable?: (element: import('platejs').TElement, path: import('platejs').Path) => boolean; onKeyDownSelecting?: (editor: import('platejs').SlateEditor, e: KeyboardEvent) => void; }, { blockSelection: { addOnContextMenu: import('platejs').OmitFirst<(editor: import('platejs/react').PlateEditor, { disabledWhenFocused, element, event }: { element: import('platejs').TElement; event: React.MouseEvent; disabledWhenFocused?: boolean; }) => void>; setSelectedIds: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { added, ids, removed }: Partial<{ added: Element[]; removed: Element[]; }> & { ids?: string[]; }) => void>; add: (id: string[] | string) => void; addSelectedRow: (id: string, options?: { clear?: boolean; delay?: number; }) => void; clear: () => void; delete: (id: string[] | string) => void; deselect: () => void; first: () => import('platejs').NodeEntry | null; focus: () => void; getNodes: (options?: { collapseTableRows?: boolean; selectionFallback?: boolean; sort?: boolean; }) => import('platejs').NodeEntry[]; has: (id: string[] | string) => boolean; isSelectable: (element: import('platejs').TElement, path: import('platejs').Path) => boolean; moveSelection: (direction: "down" | "up") => void; resetSelectedIds: () => void; selectAll: () => void; set: (id: string[] | string) => void; shiftSelection: (direction: "down" | "up") => void; unselect: () => void; }; } & Record<"blockSelection", Partial<{ addOnContextMenu: import('platejs').OmitFirst<(editor: import('platejs/react').PlateEditor, { disabledWhenFocused, element, event }: { element: import('platejs').TElement; event: React.MouseEvent; disabledWhenFocused?: boolean; }) => void>; setSelectedIds: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { added, ids, removed }: Partial<{ added: Element[]; removed: Element[]; }> & { ids?: string[]; }) => void>; add: (id: string[] | string) => void; addSelectedRow: (id: string, options?: { clear?: boolean; delay?: number; }) => void; clear: () => void; delete: (id: string[] | string) => void; deselect: () => void; first: () => import('platejs').NodeEntry | null; focus: () => void; getNodes: (options?: { collapseTableRows?: boolean; selectionFallback?: boolean; sort?: boolean; }) => import('platejs').NodeEntry[]; has: (id: string[] | string) => boolean; isSelectable: (element: import('platejs').TElement, path: import('platejs').Path) => boolean; moveSelection: (direction: "down" | "up") => void; resetSelectedIds: () => void; selectAll: () => void; set: (id: string[] | string) => void; shiftSelection: (direction: "down" | "up") => void; unselect: () => void; }>>, Record<"blockSelection", { duplicate: () => void; insertBlocksAndSelect: (nodes: import('platejs').TElement[], args_1: { at: import('platejs').Path; insertedCallback?: () => void; }) => void; removeNodes: () => void; select: () => void; selectBlocks: (at: import('platejs').Path | import('platejs').TNode) => void; setIndent: (indent: number, options?: import('platejs').SetNodesOptions | undefined) => void; setNodes: (props: Partial>, options?: import('platejs').SetNodesOptions | undefined) => void; setTexts: (props: Partial>, options?: Omit | undefined) => void; }>, { isSelected?: (id?: string) => boolean; isSelectingSome?: () => boolean; }>> | import('platejs/react').PlatePlugin void; show: (id: (string & {}) | "context", position?: { x: number; y: number; }) => void; showContextMenu: (blockId: string, position: { x: number; y: number; }) => void; }; } & Record<"blockMenu", Partial<{ hide: () => void; show: (id: (string & {}) | "context", position?: { x: number; y: number; }) => void; showContextMenu: (blockId: string, position: { x: number; y: number; }) => void; }>>, {}, {}>>)[]>; DndKit: () => Promise | null; scrollerProps?: Partial; onDropFiles?: (props: { id: string; dragItem: import('@platejs/dnd').FileDragItemNode; editor: import('platejs/react').PlateEditor; monitor: import('react-dnd').DropTargetMonitor; nodeRef: any; target?: import('platejs').Path; }) => void; }, {}, {}, {}>>[]>; EmojiKit: () => Promise<(import('platejs/react').PlatePlugin import('platejs').Descendant; } & import('@platejs/combobox').TriggerComboboxPluginOptions, {}, {}, {}>> | import('platejs/react').PlatePlugin>)[]>; ExitBreakKit: () => Promise; }; /** * 工具栏插件 */ export declare const ToolbarPlugins: { FixedToolbarKit: () => Promise>[]>; FloatingToolbarKit: () => Promise>[]>; ResponsiveToolbarKit: () => Promise>[]>; }; /** * AI 插件 */ export declare const AIPlugins: { AIKit: () => Promise; CopilotKit: () => Promise; }; /** * 协作插件 */ export declare const CollaborationPlugins: { CommentKit: () => Promise; }, { comment: { has: (options: { id: string; }) => boolean; node: (options?: import('platejs').EditorNodesOptions & { id?: string; isDraft?: boolean; }) => import('platejs').NodeEntry | undefined; nodeId: (leaf: import('platejs').TCommentText) => string | undefined; nodes: (options?: import('platejs').EditorNodesOptions & { id?: string; isDraft?: boolean; transient?: boolean; }) => import('platejs').NodeEntry[]; }; }, { comment: { removeMark: () => void; setDraft: (options?: import('platejs').SetNodesOptions) => void; unsetMark: (options: { id?: string; transient?: boolean; }) => void; }; } & Record<"comment", { setDraft: () => void; }>, {}>>[]>; DiscussionKit: () => Promise; }, {}, {}, { currentUser: () => { id: string; avatarUrl: string; name: string; hue?: number; }; user: (id: string) => { id: string; avatarUrl: string; name: string; hue?: number; }; }>>[]>; SuggestionKit: () => Promise; }, { suggestion: { dataList: (node: import('platejs').TSuggestionText) => import('platejs').TInlineSuggestionData[]; isBlockSuggestion: (node: import('platejs').TNode) => node is import('platejs').TSuggestionElement; node: (options?: import('platejs').EditorNodesOptions & { id?: string; isText?: boolean; }) => import('platejs').NodeEntry | undefined; nodeId: (node: import('platejs').TElement | import('platejs').TSuggestionText) => string | undefined; nodes: (options?: import('platejs').EditorNodesOptions & { transient?: boolean; }) => import('platejs').NodeEntry[]; suggestionData: (node: import('platejs').TElement | import('platejs').TSuggestionText) => import('platejs').TInlineSuggestionData | import('platejs').TSuggestionElement["suggestion"] | undefined; withoutSuggestions: (fn: () => void) => void; }; }, {}, {}>>[]>; CursorOverlayKit: () => Promise>; }, { cursorOverlay: { addCursor: (id: string, cursor: Omit, "id">) => void; removeCursor: (id: (string & {}) | "drag" | "selection") => void; }; } & Record<"cursorOverlay", { addCursor: (id: string, cursor: Omit, "id">) => void; removeCursor: (id: (string & {}) | "drag" | "selection") => void; }>, {}, {}>>[]>; }; /** * 解析器插件 */ export declare const ParserPlugins: { DocxKit: () => Promise<(import('platejs').SlatePlugin> | import('platejs').SlatePlugin>)[]>; MarkdownKit: () => Promise; }; /** * 插件分类枚举 */ export type PluginCategory = 'core' | 'extended' | 'style' | 'editing' | 'toolbar' | 'ai' | 'collaboration' | 'parser'; /** * 插件分类映射 */ export declare const PLUGIN_CATEGORIES: Record; /** * 所有插件分类的动态加载器 */ export declare const PluginLoaders: { core: { BasicBlocksKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin>)[]>; BasicMarksKit: () => Promise<(import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>>)[]>; }; extended: { CodeBlockKit: () => Promise<(import('platejs/react').PlatePlugin | null; }, {}, Record<"code_block", { toggle: () => void; }>, {}>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; TableKit: () => Promise<(import('platejs/react').PlatePlugin; selectedCells: import('platejs').TElement[] | null; selectedTables: import('platejs').TElement[] | null; disableExpandOnInsert?: boolean; disableMarginLeft?: boolean; disableMerge?: boolean; enableUnsetSingleColSize?: boolean; initialTableWidth?: number; minColumnWidth?: number; }, { create: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount, ...cellOptions }?: import('@platejs/table').GetEmptyTableNodeOptions) => import('platejs').TTableElement>; tableCell: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { children, header, row }?: import('@platejs/table').CreateCellOptions) => { children: import('platejs').Descendant[]; type: string; }>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, ...cellOptions }?: import('@platejs/table').GetEmptyRowNodeOptions) => { children: { children: import('platejs').Descendant[]; type: string; }[]; type: string; }>; }; table: { getCellBorders: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, defaultBorder, element }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; defaultBorder?: import('platejs').TTableCellBorder; }) => import('@platejs/table').BorderStylesDefault>; getCellSize: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, colSizes, element, rowSize }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; colSizes?: number[]; rowSize?: number; }) => { minHeight: number | undefined; width: number; }>; getColSpan: (cellElem: import('platejs').TTableCellElement) => number; getRowSpan: (cellElem: import('platejs').TTableCellElement) => number; getCellChildren: (cell: import('platejs').TTableCellElement) => import('platejs').Descendant[]; }; } & { create: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount, ...cellOptions }?: import('@platejs/table').GetEmptyTableNodeOptions) => import('platejs').TTableElement>; tableCell: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { children, header, row }?: import('@platejs/table').CreateCellOptions) => { children: import('platejs').Descendant[]; type: string; }>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, ...cellOptions }?: import('@platejs/table').GetEmptyRowNodeOptions) => { children: { children: import('platejs').Descendant[]; type: string; }[]; type: string; }>; }; table: { getCellBorders: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, defaultBorder, element }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; defaultBorder?: import('platejs').TTableCellBorder; }) => import('@platejs/table').BorderStylesDefault>; getCellSize: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { cellIndices, colSizes, element, rowSize }: { element: import('platejs').TTableCellElement; cellIndices?: import('@platejs/table').CellIndices; colSizes?: number[]; rowSize?: number; }) => { minHeight: number | undefined; width: number; }>; getColSpan: (cellElem: import('platejs').TTableCellElement) => number; getRowSpan: (cellElem: import('platejs').TTableCellElement) => number; getCellChildren: (cell: import('platejs').TTableCellElement) => import('platejs').Descendant[]; }; }, { insert: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount }?: import('@platejs/table').GetEmptyTableNodeOptions, { select: shouldSelect, ...options }?: import('platejs').InsertNodesOptions) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromCell?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromRow?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; }; remove: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; table: { merge: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; split: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; } & { insert: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { colCount, header, rowCount }?: import('@platejs/table').GetEmptyTableNodeOptions, { select: shouldSelect, ...options }?: import('platejs').InsertNodesOptions) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromCell?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, options?: { at?: import('platejs').Path; before?: boolean; fromRow?: import('platejs').Path; header?: boolean; select?: boolean; }) => void>; }; remove: { table: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableColumn: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; tableRow: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; table: { merge: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; split: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor) => void>; }; }, { cellIndices?: (id: string) => import('@platejs/table').CellIndices; }>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; ToggleKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin; } & { toggleIndex?: ReturnType<(elements: import('platejs').Value) => Map>; }, { toggle: { toggleIds: (ids: string[], force?: boolean | null) => void; }; }, {}, { isOpen?: (toggleId: string) => boolean; someClosed?: (toggleIds: string[]) => boolean; }>>)[]>; TocKit: () => Promise import('@platejs/toc').Heading[]; }, {}, {}, {}>>[]>; MediaKit: () => Promise<(import('platejs/react').PlatePlugin; error?: import('@platejs/media/react').UploadError | null; maxFileCount?: number; multiple?: boolean; }, { placeholder: import('@platejs/media/react').PlaceholderApi; } & Record<"placeholder", { addUploadingFile: (id: string, file: File) => void; getUploadingFile: (id: string) => File; removeUploadingFile: (id: string) => void; }>, { insert: { media: (files: FileList, options?: (Omit & { at?: import('platejs').Path; }) | undefined) => any; }; }, {}>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin ArrayBuffer | Promise | string; } & import('@platejs/media').MediaPluginOptions, {}, { insert: { imageFromFiles: (files: FileList, options?: import('platejs').InsertNodesOptions | undefined) => void; }; }, {}>> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin boolean; }>>)[]>; CalloutKit: () => Promise> | undefined; text?: boolean; } & import('platejs').QueryAt & import('platejs').QueryMode & import('platejs').QueryVoids & { icon?: string; variant?: (string & {}) | import('platejs').TCalloutElement["variant"]; }) | undefined) => void; }; }, {}>>[]>; ColumnKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; MathKit: () => Promise<(import('platejs/react').PlatePlugin void; }; }, {}>> | import('platejs/react').PlatePlugin void; }; }, {}>>)[]>; DateKit: () => Promise> | undefined; text?: boolean; } & import('platejs').QueryAt & import('platejs').QueryMode & import('platejs').QueryVoids) | undefined) => void; }; }, {}>>[]>; LinkKit: () => Promise; forceSubmit?: boolean; keepSelectedTextOnPaste?: boolean; rangeBeforeOptions?: import('platejs').EditorBeforeOptions; triggerFloatingLinkHotkeys?: string[] | string; getLinkUrl?: (prevUrl: string | null) => Promise; getUrlHref?: (url: string) => string | undefined; isUrl?: (text: string) => boolean; transformInput?: (url: string) => string | undefined; } & { isEditing: boolean; mode: import('@platejs/link/react').FloatingLinkMode; mouseDown: boolean; newTab: boolean; openEditorId: string | null; text: string; updated: boolean; url: string; triggerFloatingLinkHotkeys?: string; }, { floatingLink: { hide: () => void; reset: () => void; show: (mode: import('@platejs/link/react').FloatingLinkMode, editorId: string) => void; }; link: { getAttributes: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, link: import('platejs').TLinkElement) => Pick, "href" | "target"> & import('platejs').UnknownObject>; }; }, {}, { isOpen?: (editorId: string) => boolean; }>>[]>; MentionKit: () => Promise<(import('platejs/react').PlatePlugin void; }; }, {}>> | import('platejs/react').PlatePlugin>)[]>; }; style: { FontKit: () => Promise<(import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>> | import('platejs/react').PlatePlugin void; }>, {}>>)[]>; ListKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin; getListStyleType?: (element: HTMLElement) => import('@platejs/list').ListStyleType; }, {}, {}, {}>>)[]>; AlignKit: () => Promise void; }>, {}>>[]>; LineHeightKit: () => Promise void; }>, {}>>[]>; }; editing: { SlashKit: () => Promise<(import('platejs/react').PlatePlugin> | import('platejs/react').PlatePlugin>)[]>; AutoformatKit: () => Promise[]>; BlockMenuKit: () => Promise<(import('platejs/react').PlatePlugin; shadowInputRef?: React.RefObject; isSelectable?: (element: import('platejs').TElement, path: import('platejs').Path) => boolean; onKeyDownSelecting?: (editor: import('platejs').SlateEditor, e: KeyboardEvent) => void; }, { blockSelection: { addOnContextMenu: import('platejs').OmitFirst<(editor: import('platejs/react').PlateEditor, { disabledWhenFocused, element, event }: { element: import('platejs').TElement; event: React.MouseEvent; disabledWhenFocused?: boolean; }) => void>; setSelectedIds: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { added, ids, removed }: Partial<{ added: Element[]; removed: Element[]; }> & { ids?: string[]; }) => void>; add: (id: string[] | string) => void; addSelectedRow: (id: string, options?: { clear?: boolean; delay?: number; }) => void; clear: () => void; delete: (id: string[] | string) => void; deselect: () => void; first: () => import('platejs').NodeEntry | null; focus: () => void; getNodes: (options?: { collapseTableRows?: boolean; selectionFallback?: boolean; sort?: boolean; }) => import('platejs').NodeEntry[]; has: (id: string[] | string) => boolean; isSelectable: (element: import('platejs').TElement, path: import('platejs').Path) => boolean; moveSelection: (direction: "down" | "up") => void; resetSelectedIds: () => void; selectAll: () => void; set: (id: string[] | string) => void; shiftSelection: (direction: "down" | "up") => void; unselect: () => void; }; } & Record<"blockSelection", Partial<{ addOnContextMenu: import('platejs').OmitFirst<(editor: import('platejs/react').PlateEditor, { disabledWhenFocused, element, event }: { element: import('platejs').TElement; event: React.MouseEvent; disabledWhenFocused?: boolean; }) => void>; setSelectedIds: import('platejs').OmitFirst<(editor: import('platejs').SlateEditor, { added, ids, removed }: Partial<{ added: Element[]; removed: Element[]; }> & { ids?: string[]; }) => void>; add: (id: string[] | string) => void; addSelectedRow: (id: string, options?: { clear?: boolean; delay?: number; }) => void; clear: () => void; delete: (id: string[] | string) => void; deselect: () => void; first: () => import('platejs').NodeEntry | null; focus: () => void; getNodes: (options?: { collapseTableRows?: boolean; selectionFallback?: boolean; sort?: boolean; }) => import('platejs').NodeEntry[]; has: (id: string[] | string) => boolean; isSelectable: (element: import('platejs').TElement, path: import('platejs').Path) => boolean; moveSelection: (direction: "down" | "up") => void; resetSelectedIds: () => void; selectAll: () => void; set: (id: string[] | string) => void; shiftSelection: (direction: "down" | "up") => void; unselect: () => void; }>>, Record<"blockSelection", { duplicate: () => void; insertBlocksAndSelect: (nodes: import('platejs').TElement[], args_1: { at: import('platejs').Path; insertedCallback?: () => void; }) => void; removeNodes: () => void; select: () => void; selectBlocks: (at: import('platejs').Path | import('platejs').TNode) => void; setIndent: (indent: number, options?: import('platejs').SetNodesOptions | undefined) => void; setNodes: (props: Partial>, options?: import('platejs').SetNodesOptions | undefined) => void; setTexts: (props: Partial>, options?: Omit | undefined) => void; }>, { isSelected?: (id?: string) => boolean; isSelectingSome?: () => boolean; }>> | import('platejs/react').PlatePlugin void; show: (id: (string & {}) | "context", position?: { x: number; y: number; }) => void; showContextMenu: (blockId: string, position: { x: number; y: number; }) => void; }; } & Record<"blockMenu", Partial<{ hide: () => void; show: (id: (string & {}) | "context", position?: { x: number; y: number; }) => void; showContextMenu: (blockId: string, position: { x: number; y: number; }) => void; }>>, {}, {}>>)[]>; DndKit: () => Promise | null; scrollerProps?: Partial; onDropFiles?: (props: { id: string; dragItem: import('@platejs/dnd').FileDragItemNode; editor: import('platejs/react').PlateEditor; monitor: import('react-dnd').DropTargetMonitor; nodeRef: any; target?: import('platejs').Path; }) => void; }, {}, {}, {}>>[]>; EmojiKit: () => Promise<(import('platejs/react').PlatePlugin import('platejs').Descendant; } & import('@platejs/combobox').TriggerComboboxPluginOptions, {}, {}, {}>> | import('platejs/react').PlatePlugin>)[]>; ExitBreakKit: () => Promise; }; toolbar: { FixedToolbarKit: () => Promise>[]>; FloatingToolbarKit: () => Promise>[]>; ResponsiveToolbarKit: () => Promise>[]>; }; ai: { AIKit: () => Promise; CopilotKit: () => Promise; }; collaboration: { CommentKit: () => Promise; }, { comment: { has: (options: { id: string; }) => boolean; node: (options?: import('platejs').EditorNodesOptions & { id?: string; isDraft?: boolean; }) => import('platejs').NodeEntry | undefined; nodeId: (leaf: import('platejs').TCommentText) => string | undefined; nodes: (options?: import('platejs').EditorNodesOptions & { id?: string; isDraft?: boolean; transient?: boolean; }) => import('platejs').NodeEntry[]; }; }, { comment: { removeMark: () => void; setDraft: (options?: import('platejs').SetNodesOptions) => void; unsetMark: (options: { id?: string; transient?: boolean; }) => void; }; } & Record<"comment", { setDraft: () => void; }>, {}>>[]>; DiscussionKit: () => Promise; }, {}, {}, { currentUser: () => { id: string; avatarUrl: string; name: string; hue?: number; }; user: (id: string) => { id: string; avatarUrl: string; name: string; hue?: number; }; }>>[]>; SuggestionKit: () => Promise; }, { suggestion: { dataList: (node: import('platejs').TSuggestionText) => import('platejs').TInlineSuggestionData[]; isBlockSuggestion: (node: import('platejs').TNode) => node is import('platejs').TSuggestionElement; node: (options?: import('platejs').EditorNodesOptions & { id?: string; isText?: boolean; }) => import('platejs').NodeEntry | undefined; nodeId: (node: import('platejs').TElement | import('platejs').TSuggestionText) => string | undefined; nodes: (options?: import('platejs').EditorNodesOptions & { transient?: boolean; }) => import('platejs').NodeEntry[]; suggestionData: (node: import('platejs').TElement | import('platejs').TSuggestionText) => import('platejs').TInlineSuggestionData | import('platejs').TSuggestionElement["suggestion"] | undefined; withoutSuggestions: (fn: () => void) => void; }; }, {}, {}>>[]>; CursorOverlayKit: () => Promise>; }, { cursorOverlay: { addCursor: (id: string, cursor: Omit, "id">) => void; removeCursor: (id: (string & {}) | "drag" | "selection") => void; }; } & Record<"cursorOverlay", { addCursor: (id: string, cursor: Omit, "id">) => void; removeCursor: (id: (string & {}) | "drag" | "selection") => void; }>, {}, {}>>[]>; }; parser: { DocxKit: () => Promise<(import('platejs').SlatePlugin> | import('platejs').SlatePlugin>)[]>; MarkdownKit: () => Promise; }; };