import { default as React } from 'react'; import { MarkdownPlugin } from './utils/render-markdown'; export interface RenderMarkdownProps { /** * Markdown 内容 */ content: string; /** * 是否显示返回顶部 */ showBackTop?: boolean; /** * 是否使用 Mermaid 插件 */ isSlotMermaid?: boolean; /** * 是否显示代码折叠 */ isShowCollapsed?: boolean; /** * 代码类型 */ codeType?: string; /** * 自定义底部内容 */ footer?: React.ReactNode; /** * 返回顶部所依赖的容器 * HTMLElement */ backTopTarget?: HTMLElement; /** * 是否显示新手引导 */ showDriverGuide?: boolean; /** * 是否为打印模式 */ isPrintPreview?: boolean; /** * 自定义配置函数,对渲染前 text 进行修改 * @returns */ chartConfig?: (text: string) => string; /** * 默认是否折叠代码 */ defaultCollapsed?: boolean; /** * Mermaid 渲染防抖延迟(ms),默认 10ms */ mermaidDebounce?: number; /** * 自定义 CDN 配置,如 { mermaid: 'https://...' } */ cdn?: Record; /** * 自定义 markdown-it 渲染器插件列表,在内部渲染器之后按序执行 */ customRenderers?: MarkdownPlugin[]; /** * 图片预览排除名单,自定义渲染器容器内的图片不会被 Viewer.js 处理 * 如:['.copy-password-container'] */ excludedSelectors?: string[]; /** * 是否显示目录(TOC)按钮和侧边栏 */ showToc?: boolean; /** * 是否启用增量渲染(使用 morphdom 进行 DOM 差异化更新) * 适用于流式输出或编辑器场景,避免全量重绘导致的状态丢失 */ useIncremental?: boolean; /** * 增量渲染节流时间(ms),默认 16 */ incrementalThrottleMs?: number; } export default function RenderMarkdown(props: RenderMarkdownProps): React.JSX.Element;