/**
 * Shared GFM Markdown Parser
 * GFM-compatible markdown-to-HTML conversion with optional Mermaid diagram support.
 * Handles: headings, links, images, blockquotes, lists, tables,
 * horizontal rules, strikethrough, task lists, code blocks with
 * language labels and copy buttons.
 */
interface CodeBlock {
    language: string;
    code: string;
    id: string;
}
export interface MarkdownParserOptions {
    supportMermaid?: boolean;
}
export declare function resetCodeBlockCounter(): void;
/**
 * Convert markdown text to HTML.
 * The input is assumed to already be HTML-escaped for XSS safety.
 * Code blocks, headings, links, etc. are converted to appropriate HTML.
 */
export declare function markdownToHtml(escapedText: string, options?: MarkdownParserOptions): string;
declare function renderCodeBlock(block: CodeBlock): string;
declare function transformHeadings(text: string): string;
declare function transformHorizontalRules(text: string): string;
declare function transformBlockquotes(text: string): string;
declare function transformTables(text: string): string;
declare function transformLists(text: string): string;
declare function transformStrikethrough(text: string): string;
declare function transformBold(text: string): string;
declare function transformItalic(text: string): string;
declare function transformInlineCode(text: string): string;
declare function transformLinks(text: string): string;
declare function transformImages(text: string): string;
declare function transformTaskLists(text: string): string;
declare function decodeHtmlEntities(text: string): string;
declare function escapeForCodeBlock(text: string): string;
/** Base64 encode with proper Unicode handling */
export declare function base64Encode(str: string): string;
/** Base64 decode with proper Unicode handling */
export declare function base64Decode(str: string): string;
export declare const markdownParserUtils: {
    transformHeadings: typeof transformHeadings;
    transformHorizontalRules: typeof transformHorizontalRules;
    transformBlockquotes: typeof transformBlockquotes;
    transformTables: typeof transformTables;
    transformLists: typeof transformLists;
    transformStrikethrough: typeof transformStrikethrough;
    transformBold: typeof transformBold;
    transformItalic: typeof transformItalic;
    transformInlineCode: typeof transformInlineCode;
    transformLinks: typeof transformLinks;
    transformImages: typeof transformImages;
    transformTaskLists: typeof transformTaskLists;
    renderCodeBlock: typeof renderCodeBlock;
    decodeHtmlEntities: typeof decodeHtmlEntities;
    escapeForCodeBlock: typeof escapeForCodeBlock;
};
export {};
//# sourceMappingURL=parser.d.ts.map