import { default as React } from 'react';
import { DataType, DataSource } from '../core/UnifiedRichText';
import { CustomElement } from '../core/types';
export interface SegmentData {
    id: string;
    content: string | CustomElement[];
    type: DataType;
    timestamp?: number;
    metadata?: Record<string, any>;
}
export interface MarkdownitProps {
    /** 数据源 - 可以是单个数据或分段数据数组 */
    dataSource: DataSource | SegmentData[];
    /** 是否启用虚拟滚动 */
    enableVirtualScroll?: boolean;
    /** 虚拟滚动项高度 */
    itemHeight?: number;
    /** 预加载项数量 */
    preloadCount?: number;
    /** 是否启用分段加载 */
    enableSegmentedLoading?: boolean;
    /** 分段加载回调 */
    onLoadMore?: (lastSegmentId: string) => Promise<SegmentData[]>;
    /** 是否正在加载更多 */
    isLoadingMore?: boolean;
    /** 尺寸大小 */
    size?: 'sm' | 'md';
    /** 基础路径，用于处理相对路径的图片 */
    basePath?: string;
    /** 主题样式 */
    theme?: {
        primaryColor?: string;
        secondaryColor?: string;
        backgroundColor?: string;
        textColor?: string;
        borderColor?: string;
        disabledBackground?: string;
        hoverBackground?: string;
        borderRadius?: string;
        padding?: string;
        scrollbarTrack?: string;
        scrollbarThumb?: string;
        scrollbarThumbHover?: string;
    };
    /** 内容变化回调 */
    onChange?: (content: any, type: DataType) => void;
    /** 滚动回调 */
    onScroll?: (scrollTop: number, scrollHeight: number) => void;
    /** 滚动到顶部回调 */
    onScrollToTop?: () => void;
    /** 滚动到底部回调 */
    onScrollToBottom?: () => void;
    /** 分段点击回调 */
    onSegmentClick?: (segmentId: string, segment: SegmentData) => void;
    /** 自定义样式 */
    className?: string;
    /** 自定义样式对象 */
    style?: React.CSSProperties;
    /** 容器高度 */
    height?: string;
    /** 内容渲染完成回调（DOM 稳定后触发） */
    onRendered?: (root: HTMLElement) => void;
    /** 是否启用 PrismJS 语法高亮（默认 false，使用普通代码块样式） */
    enablePrism?: boolean;
}
declare const _MarkdownitWithRendered: React.FC<MarkdownitProps>;
export default _MarkdownitWithRendered;
