export type StructuredSurface = 'gateway' | 'terminal' | 'tui' | 'docs'; interface MarkdownTable { start: number; end: number; headers: string[]; rows: string[][]; } export declare function parseMarkdownTableBlock(lines: string[], start: number): MarkdownTable | null; export declare function renderMarkdownTableAsBlocks(headers: string[], rows: string[][]): string; export declare function markdownTablesToBlockCards(text: string): string; export declare function boxDrawingTablesToBlockCards(text: string): string; export declare function formatStructuredOutput(text: string, surface?: StructuredSurface): string; export declare const STRUCTURED_OUTPUT_PROMPT = "# Structured output formatting\n- For comparisons, summaries, rankings, specs, benchmarks, pros/cons, and other dense structured data, prefer compact summary tables with real columns.\n- Use short headers, concise cell text, and status emoji only when it helps scanning.\n- Keep tables narrow enough for mobile chat. Wrap long cells instead of turning the table into vertical cards.\n- Start directly with the useful heading or content. Do not repeat filler intros or meta commentary about formatting.\n- Do not end with permission/offering questions. If a file or artifact was generated, state the path once.\n- Example summary-table style:\n \uD83D\uDCCA SUMMARY\n | Item | Category | Metric | Status |\n |---|---|---|---|\n | Example A | General | 123 | \uD83D\uDFE2 Good |\n | Example B | General | 456 | \uD83D\uDFE1 Watch |\n- Use markdown pipe tables for structured chat answers when a compact summary is clearer; the runtime preserves pipe tables for gateway/mobile surfaces instead of converting them into box/ascii grids.\n- For sections named like source confidence, benchmark results, claim status, model comparison, release status, pricing, specs, or capabilities, ALWAYS format the dense rows as a markdown pipe table with a header and divider row. Do not write loose A | B | C rows inside a paragraph.\n- Use vertical label/value blocks only when each item has too many fields for a readable table."; export {}; //# sourceMappingURL=StructuredOutputFormat.d.ts.map