/** * Integration glue between a verification run and the support templates: take the * run's checks + environment facts + SETUP.md text, redact, and produce the * rendered {@link SupportTemplate}s plus a terminal summary. * * Kept pure (no I/O, no clock): the caller reads SETUP.md and supplies `runId` / * `timestamp`, so this is fully testable and deterministic. Redaction runs HERE * (defence in depth) over the command and every live detail, regardless of what * the caller already scrubbed. */ import type { Check } from "../internals/verify.js"; import { type SupportFinding } from "./findings.js"; import { type SupportTemplate } from "./render.js"; export interface SupportInputs { capability: string; checks: readonly Check[]; projectName: string; root: string; command: string; contextDir: string; targets: string; platform: string; runId: string; timestamp: string; /** Raw SETUP.md (or similar) contents, if a setup file was found. */ setupText?: string; /** For home-dir scrubbing. */ env: NodeJS.ProcessEnv; } export interface SupportBundle { findings: SupportFinding[]; templates: SupportTemplate[]; /** SETUP.md corporate-language instruction, surfaced as a terminal note (not in tickets). */ corporateGuidance?: string; } /** Build redacted, rendered support templates from a verification run. */ export declare function buildSupport(input: SupportInputs): SupportBundle; /** * The terminal section: one `[copy] …` line per template, the saved path when * files were written, and the SETUP.md corporate-language note when present. * Empty string when there are no templates (nothing to print). */ export declare function supportSummary(bundle: SupportBundle, saved?: Record): string;