/** * Shared pure render helpers for static view.html and the viewer SPA. * Renderer is a leaf — consumes graph.json only. */ import type { SutraGraph, SutraFeature, SutraIssue, Severity } from "../types.js"; export declare const CAP = 60; export declare const DISCLAIMER = "Heuristic grouping \u2014 candidate results, not complete. Feature boundaries are approximate. Review findings before acting on them."; /** Escape text for safe HTML insertion. */ export declare function esc(s: string): string; /** Build issue list item with optional provenance/confidence chip. */ export declare function formatIssueRow(iss: SutraIssue): string; /** Sanitize a label for use inside a Mermaid flowchart. */ export declare function mermaidLabel(s: string): string; /** Map node type to a Mermaid shape prefix/suffix pair. */ export declare function mermaidShape(type: string): [string, string]; /** Badge color from structural health band (heuristic). */ export declare function healthBadgeClass(band: string): string; /** Fallback badge color based on issue severity set. */ export declare function badgeClass(issues: SutraIssue[]): string; /** Count edges that touch at least one node in the set. */ export declare function edgeCount(graph: SutraGraph, nodeIds: Set): number; /** Build a Mermaid flowchart source for nodes whose ids are in nodeIds. */ export declare function buildMermaid(graph: SutraGraph, nodeIds: Set, truncated: boolean): string; /** Build the detail panel HTML for one feature. */ export declare function buildDetailPanel(graph: SutraGraph, feature: SutraFeature, featureIssues: SutraIssue[]): string; /** Build feature card HTML for one feature. */ export declare function buildFeatureCard(graph: SutraGraph, feat: SutraFeature, issues: SutraIssue[]): string; /** Shared viewer stylesheet (static view + SPA). */ export declare function renderStyles(): string; /** Index issues by feature id. */ export declare function indexIssuesByFeature(issues: SutraIssue[]): Map; export declare const severityOrder: Record;