import type { BaseNode, HtmlPolicy, ParsedNode, ParseOptions } from 'stream-markdown-parser';
export type RenderableMarkdownNode = (ParsedNode | BaseNode) & Record;
type NestedClassValue = string | readonly string[] | null | undefined;
export interface MarkstreamSvelteRenderOptions {
content?: string | null;
nodes?: readonly RenderableMarkdownNode[] | null;
final?: boolean;
parseOptions?: ParseOptions;
customHtmlTags?: readonly string[];
allowHtml?: boolean;
htmlPolicy?: HtmlPolicy;
}
export interface NestedMarkdownHtmlOptions {
cacheKey?: string;
customHtmlTags?: readonly string[];
allowHtml?: boolean;
htmlPolicy?: HtmlPolicy;
customNodeTag?: string;
customNodeClass?: NestedClassValue | ((node: RenderableMarkdownNode) => NestedClassValue);
}
export interface NestedMarkdownHtmlInput {
node?: RenderableMarkdownNode | null;
nodes?: readonly RenderableMarkdownNode[] | null;
content?: string | null;
}
export declare function renderMarkdownToHtml(input: MarkstreamSvelteRenderOptions): string;
export declare function renderNestedMarkdownToHtml(input: NestedMarkdownHtmlInput, options?: NestedMarkdownHtmlOptions): string;
export declare function renderMarkdownNodesToHtml(nodes: readonly RenderableMarkdownNode[] | null | undefined, options?: NestedMarkdownHtmlOptions): string;
export declare function renderMarkdownNodeToHtml(node: RenderableMarkdownNode | null | undefined, options?: NestedMarkdownHtmlOptions): string;
export {};