import type { LocalEvidenceDiagnosticsReport, LocalEvidenceInventory, LocalEvidenceRaw, LocalEvidenceSummary, LocalScenarioEvidence } from "../normalize/local-evidence.js"; import { type ExportPortableBundleResult } from "../bundle/portable-export.js"; import { type WriteReportBundleOptions, type WriteReportBundleResult } from "../bundle/write-bundle.js"; import type { ReportBundleFormat } from "../types/manifest.js"; import type { ReportProfileId, ReportVisualComparison, SiteLensReportV1 } from "../types/report-v1.js"; import type { NormalizeLocalRunOptions } from "../normalize/from-local-run.js"; import type { NormalizeLocalScenarioOptions } from "../normalize/from-local-scenario.js"; import type { BundleIntegrityResult } from "../validate/types.js"; export interface BuildLocalRunReportInput { summary: LocalEvidenceSummary; raw?: LocalEvidenceRaw; inventory?: LocalEvidenceInventory; /** Browser diagnostics engine findings from `diagnostics.json`, when present. */ diagnostics?: LocalEvidenceDiagnosticsReport; artifactDir: string; profile?: ReportProfileId; generatedAt?: string; reportType?: "local-flow-run" | "local-qa-run"; incomplete?: boolean; visualComparisons?: ReportVisualComparison[]; generator?: NormalizeLocalRunOptions["generator"]; } export declare function buildLocalRunReport(input: BuildLocalRunReportInput): SiteLensReportV1; export interface BuildScenarioSuiteReportInput { scenario: LocalScenarioEvidence; suiteArtifactDir: string; profile?: ReportProfileId; generatedAt?: string; scenarioRunId?: string; generator?: NormalizeLocalScenarioOptions["generator"]; } export declare function buildScenarioSuiteReport(input: BuildScenarioSuiteReportInput): SiteLensReportV1; export declare function writeLocalRunReportBundle(args: { summary: LocalEvidenceSummary; raw?: LocalEvidenceRaw; inventory?: LocalEvidenceInventory; /** Browser diagnostics engine findings from `diagnostics.json`, when present. */ diagnostics?: LocalEvidenceDiagnosticsReport; artifactDir: string; profile?: ReportProfileId; /** Always writes json; set true to also write report.md */ writeMarkdown?: boolean; /** When true, also write report.html (on-request; not default for runs). */ writeHtml?: boolean; producedBy?: string; incomplete?: boolean; generator?: NormalizeLocalRunOptions["generator"]; }): Promise; export declare function writeScenarioSuiteReportBundle(args: { scenario: LocalScenarioEvidence; suiteArtifactDir: string; scenarioRunId: string; profile?: ReportProfileId; writeMarkdown?: boolean; /** When true, also write report.html (on-request; not default for scenario suites). */ writeHtml?: boolean; producedBy?: string; generator?: NormalizeLocalScenarioOptions["generator"]; }): Promise; /** * Regenerate report.json (+ optional markdown) from a run directory. * Prefers normalizing from summary.json so profile/format changes apply. */ export declare function regenerateReportFromDirectory(args: { runDir: string; formats?: ReportBundleFormat[]; profile?: ReportProfileId; generatedAt?: string; generator?: NormalizeLocalRunOptions["generator"]; }): Promise; /** * Export a portable directory or ZIP from a local run directory. * Regenerates the canonical report from evidence first (unless useExistingReport). */ export declare function exportPortableBundleFromDirectory(args: { runDir: string; outPath: string; formats?: ReportBundleFormat[]; profile?: ReportProfileId; includeEvidence?: boolean; useExistingReport?: boolean; }): Promise; /** * Render formats from an existing canonical report (does not re-normalize from summary.json). * Use `regenerateReportFromDirectory` to rebuild from execution evidence. */ export declare function renderReportFromDirectory(args: { bundleDir: string; formats?: ReportBundleFormat[]; }): Promise; /** Validate report.json and/or a portable/co-located bundle directory. */ export declare function validateReportPath(targetPath: string): Promise<{ ok: true; kind: "report" | "bundle"; integrity?: BundleIntegrityResult; } | { ok: false; error: string; issues?: unknown; }>; export type { WriteReportBundleOptions, WriteReportBundleResult }; //# sourceMappingURL=report-builder.d.ts.map