/** * 查找匹配的闭合标记 * * 用于流式解析代码块(特别是 Mermaid 代码块)时,判断代码块是否完整。 * 通过查找匹配的闭合标记来确定代码块是否已经完成输入。 * * @param src - 源字符串 * @param startIdx - 开始搜索的索引位置 * @param open - 开始标记(如 "```", "$$", "(" 等) * @param close - 结束标记(如 "```", "$$", ")" 等) * @returns 匹配的闭合标记的索引位置,如果未找到则返回 -1 * * @example * ```typescript * // 查找代码块的闭合标记 * const code = "```javascript\nconsole.log('hello');\n```"; * const closeIdx = findMatchingClose(code, 0, "```", "```"); * // 返回: 42 (第二个 ``` 的位置) * * // 查找数学公式的闭合标记 * const math = "$$\\sum_{i=1}^{n} x_i$$"; * const closeIdx = findMatchingClose(math, 0, "$$", "$$"); * // 返回: 最后一个 $ 的位置 * ``` */ export declare function findMatchingClose(src: string, startIdx: number, open: string, close: string): number; /** * 检查代码块是否完整(基于代码内容) * 用于流式输入时判断代码块是否已经完成 * * @param code - 代码内容 * @param language - 代码语言(如 'mermaid', 'javascript' 等) * @returns 是否可能完整 */ export declare function isCodeBlockLikelyComplete(code: string, language?: string): boolean; export default findMatchingClose;