import { type StreamdownProps } from "streamdown";
import type { SecurityConfig } from "../types.js";
/**
 * A primitive component for rendering markdown text using Streamdown.
 *
 * Streamdown is optimized for AI-powered streaming with features like:
 * - Block-based rendering for better streaming performance
 * - Incomplete markdown handling via remend
 * - Built-in syntax highlighting via Shiki
 * - Math, Mermaid, and CJK support via plugins
 *
 * @example
 * ```tsx
 * // Basic usage
 * <StreamdownTextPrimitive />
 *
 * // With plugins
 * import { code } from "@streamdown/code";
 * import { math } from "@streamdown/math";
 *
 * <StreamdownTextPrimitive
 *   plugins={{ code, math }}
 *   shikiTheme={["github-light", "github-dark"]}
 * />
 *
 * // Disable a specific plugin
 * <StreamdownTextPrimitive plugins={{ code: false }} />
 *
 * // Migration from react-markdown (compatibility mode)
 * <StreamdownTextPrimitive
 *   components={{
 *     SyntaxHighlighter: MySyntaxHighlighter,
 *     CodeHeader: MyCodeHeader,
 *   }}
 *   componentsByLanguage={{
 *     mermaid: { SyntaxHighlighter: MermaidRenderer }
 *   }}
 * />
 * ```
 */
export declare const StreamdownTextPrimitive: import("react").ForwardRefExoticComponent<Omit<StreamdownProps, "children" | "components" | "plugins" | "caret" | "controls" | "linkSafety" | "remend" | "mermaid" | "BlockComponent" | "parseMarkdownIntoBlocksFn"> & {
    components?: import("..").StreamdownTextComponents | undefined;
    componentsByLanguage?: import("..").ComponentsByLanguage | undefined;
    plugins?: import("..").PluginConfig | undefined;
    preprocess?: ((text: string) => string) | undefined;
    containerProps?: Omit<import("react").ComponentPropsWithoutRef<"div">, "children"> | undefined;
    containerClassName?: string | undefined;
    caret?: import("..").CaretStyle | undefined;
    controls?: import("..").ControlsConfig | undefined;
    linkSafety?: import("..").LinkSafetyConfig | undefined;
    remend?: import("..").RemendConfig | undefined;
    mermaid?: import("streamdown").MermaidOptions | undefined;
    parseIncompleteMarkdown?: boolean | undefined;
    allowedTags?: import("..").AllowedTags | undefined;
    remarkRehypeOptions?: import("remark-rehype").Options | undefined;
    security?: SecurityConfig | undefined;
    BlockComponent?: StreamdownProps["BlockComponent"] | undefined;
    parseMarkdownIntoBlocksFn?: ((markdown: string) => string[]) | undefined;
} & import("react").RefAttributes<HTMLDivElement>>;
//# sourceMappingURL=StreamdownText.d.ts.map