import React from 'react'; import { CodeNode } from '../../MarkdownEditor/el'; type MermaidApi = typeof import('mermaid').default; /** * 加载 Mermaid 库 * 使用单例模式确保只加载一次,并初始化配置 */ export declare const loadMermaid: () => Promise; /** * Mermaid 组件 - Mermaid图表渲染组件 * * 该组件使用Mermaid库渲染图表,支持流程图、时序图、甘特图等。 * 使用 React.lazy 和 Suspense 实现代码分割和延迟加载,优化性能。 * * @component * @description Mermaid图表渲染组件,支持各种Mermaid图表类型 * @param {Object} props - 组件属性 * @param {CodeNode} props.element - 代码节点,包含Mermaid图表代码 * @param {string} [props.element.value] - Mermaid图表代码字符串 * * @example * ```tsx * B[处理] --> C[结束]' * }} * /> * ``` * * @returns {React.ReactElement} 渲染的Mermaid图表组件 * * @remarks * - 基于Mermaid库实现图表渲染 * - 支持多种图表类型(流程图、时序图、甘特图等) * - 使用 React.lazy 和 Suspense 实现代码分割 * - 提供延迟渲染优化性能 * - 包含错误处理机制 * - 支持空状态显示 * - 提供美观的样式设计 * - 禁用文本选择 * - 居中显示图表 * - 自动生成唯一ID */ export declare const Mermaid: (props: { element: CodeNode; }) => React.JSX.Element | null; export {};