import React from 'react';
import { MarkdownEditorInstance, MarkdownEditorProps } from '../types';
/**
 * Markdown 编辑器组件的属性接口
 *
 * 扩展了基础的 MarkdownEditorProps，添加了编辑器特定的配置
 */
export type MEditorProps = {
    /** 自定义元素项渲染函数 */
    eleItemRender?: MarkdownEditorProps['eleItemRender'];
    /** 自定义叶子节点渲染函数 */
    leafRender?: MarkdownEditorProps['leafRender'];
    /** 内容变化时的回调函数 */
    onChange?: MarkdownEditorProps['onChange'];
    /** 编辑器实例对象 */
    instance: MarkdownEditorInstance;
    /** 自定义CSS类名 */
    className?: string;
    /** 评论相关配置 */
    comment?: MarkdownEditorProps['comment'];
    /** CSS前缀类名 */
    prefixCls?: string;
    /** 是否为报告模式 */
    reportMode?: MarkdownEditorProps['reportMode'];
    /** 输入框占位符文本 */
    placeholder?: string;
} & MarkdownEditorProps;
/**
 * SlateMarkdownEditor 组件 - Slate Markdown编辑器组件
 *
 * 基于Slate.js的Markdown编辑器，支持丰富的编辑功能，包括文本编辑、表格、代码块、媒体插入、链接等。
 * 通过MobX进行状态管理，支持多种编辑器事件和操作。
 *
 * @component
 * @description 基于Slate.js的Markdown编辑器组件
 * @param {MEditorProps} props - 编辑器属性
 * @param {Function} [props.eleItemRender] - 自定义元素渲染函数
 * @param {Function} [props.leafRender] - 自定义叶子节点渲染函数
 * @param {Function} [props.onChange] - 内容变化回调
 * @param {MarkdownEditorInstance} props.instance - 编辑器实例
 * @param {string} [props.className] - 自定义CSS类名
 * @param {CommentDataType} [props.comment] - 评论数据
 * @param {string} [props.prefixCls] - 前缀类名
 * @param {boolean} [props.reportMode] - 是否为报告模式
 * @param {string} [props.placeholder] - 占位符文本
 *
 * @example
 * ```tsx
 * <SlateMarkdownEditor
 *   instance={editorInstance}
 *   onChange={(value) => console.log('内容变化:', value)}
 *   placeholder="请输入Markdown内容..."
 *   reportMode={false}
 * />
 * ```
 *
 * @returns {React.ReactElement} 渲染的Markdown编辑器组件
 *
 * @remarks
 * - 基于Slate.js实现
 * - 支持丰富的Markdown语法
 * - 提供自定义渲染功能
 * - 支持插件系统
 * - 集成状态管理
 * - 支持键盘快捷键
 * - 提供粘贴处理
 * - 支持错误边界
 * - 响应式布局
 */
export declare const SlateMarkdownEditor: React.MemoExoticComponent<(props: MEditorProps) => React.JSX.Element>;
