/** * Mini-renderer de markdown para terminal. Convierte una línea de markdown en * un string con ANSI codes que se ve bonito en el REPL. * * Soporta: * - # / ## / ### headings * - **bold** y *italic* * - `inline code` * - ```code blocks``` (multi-línea, lo gestiona el llamador) * - - / * lists * - > blockquotes * - --- horizontal rule * - [text](url) links * * No soporta: tablas, imágenes, footnotes, HTML embebido. Para esos, el texto * crudo se ve con el caracter literal. */ /** Renderiza una línea (sin `\n`) con markdown aplicado. */ export declare function renderMdLine(line: string): string; /** * Para bloques de código multilinea: línea cruda en cyan dim. El llamador * se encarga de detectar los marcadores ``` y togglear el estado. */ export declare function renderCodeLine(line: string): string; /** Marcador de inicio/fin de bloque de código (separador visual). */ export declare function renderCodeFence(lang: string, opening: boolean): string; /** Cuenta caracteres visibles (sin ANSI). Útil para wrap manual. */ export declare function visibleWidth(s: string): number; export interface TableState { rows: string[][]; hasHeader: boolean; aligns: Array<'left' | 'center' | 'right' | null>; } /** Detecta si una línea parece una row de tabla markdown. */ export declare function isTableLine(line: string): boolean; /** Detecta la línea separadora de tabla: `| --- | :---: | ---: |`. */ export declare function isTableSeparator(line: string): boolean; /** Crea un TableState vacío. */ export declare function emptyTable(): TableState; /** Añade una línea al TableState. Devuelve true si consumió la línea. */ export declare function addTableRow(state: TableState, line: string): boolean; /** * Renderiza el TableState como string ANSI bonito: * ┌──────┬──────┐ * │ col │ val │ * ├──────┼──────┤ * │ foo │ bar │ * └──────┴──────┘ */ export declare function renderTable(state: TableState): string; //# sourceMappingURL=markdown.d.ts.map