/** * 流式缓冲处理器 * 借鉴 x-markdown 的字符级增量处理策略 * 用于精细控制不完整 Markdown 语法的显示 */ /** * Token 类型 * 注意:emphasis、inline-code、link、image、table 不再缓冲 * - emphasis/inline-code/link/image 由 InlineCompleter 自动补全闭合标记 * - table 改为渐进式逐行显示 */ export type StreamTokenType = 'text' | 'html'; /** * 流式缓冲状态 */ export interface StreamBufferState { /** 待处理的内容 */ pending: string; /** 当前 token 类型 */ token: StreamTokenType; /** 已处理的字符数 */ processedLength: number; /** 已确认完整的 Markdown */ completeMarkdown: string; } /** * 创建初始缓冲状态 */ export declare function createInitialBufferState(): StreamBufferState; /** * 流式缓冲处理器 */ export declare class StreamBuffer { private state; constructor(); /** * 处理输入文本,返回可以安全显示的 Markdown */ process(input: string): string; /** * 完成处理,刷新所有缓冲 */ finish(): string; /** * 获取完整内容(包括待处理部分) */ getFullContent(): string; /** * 获取当前 token 类型 */ getCurrentToken(): StreamTokenType; /** * 获取待处理内容 */ getPending(): string; /** * 重置状态 */ reset(): void; } //# sourceMappingURL=stream-buffer.d.ts.map