import { AnyPluginConfig } from "@udecode/plate-core"; import { PlatePlugin, TPlateEditor } from "../../../../../../node_modules/@udecode/plate-core/dist/react/index.d.ts"; import { ListPlugin } from "../../../../../../node_modules/@udecode/plate-list/dist/react/index.d.ts"; import { Value } from "@udecode/slate"; import React, { HTMLProps } from "react"; type EditorType = { editor: TPlateEditor; }; export interface HTMLToolbarProps extends EditorType { customButtons: React.ReactElement[]; } export interface ToolbarButtonsBasicMarksProps extends EditorType { customButtons: React.ReactElement[]; isExtendedView: boolean; } export interface ToolbarButtonProps { active?: boolean; icon: React.ReactChild; onMouseDown?: HTMLProps["onMouseDown"]; } export interface ToolbarElementProps extends ToolbarButtonProps, EditorType { type: string; inactiveType?: string; } export interface ToolbarMarkProps extends ToolbarButtonProps, EditorType { plugin: PlatePlugin; } export interface ToolbarLinkProps extends ToolbarButtonProps, EditorType { } export interface ToolbarLinkPanelFormProps { hideText: boolean; url: string; onSubmit: (args: LinkNodeData) => void; onRemove: () => void; onClose: () => void; } export interface LinkNodeData { text: string; url: string; } export {};