/**
* Markdown rendering component for ink-terminal.
*
* Adapted from Claude Code's Markdown.tsx. Key patterns extracted:
* 1. LRU token cache (500 entries, hash-keyed, MRU promotion)
* 2. hasMarkdownSyntax fast-path optimization (skip lexer for plain text)
* 3. Stable/unstable prefix splitting for streaming mode
*
* Simplified vs Claude Code:
* - No useSettings/useTheme — standalone component
* - No syntax highlighting (code blocks render as dim text)
* - No MarkdownTable React component — tables rendered inline as ANSI strings
* - No stripPromptXMLTags — no Claude-specific preprocessing
* - No React compiler runtime (_c) — uses standard React.memo/useMemo
*/
import React from 'react';
type MarkdownProps = {
children: string;
/** When true, render all text content as dim */
dimColor?: boolean;
/** When true, use streaming mode with stable/unstable prefix splitting */
streaming?: boolean;
};
/**
* Renders markdown content as styled ANSI text inside an ink-terminal layout.
*
* Basic usage:
* ```tsx
* {markdownString}
* ```
*
* Streaming usage (re-parses only the unstable tail):
* ```tsx
* {partialMarkdownString}
* ```
*/
export declare function Markdown({ children, dimColor, streaming, }: MarkdownProps): React.ReactNode;
export {};
//# sourceMappingURL=Markdown.d.ts.map