import { z } from 'zod'; import { ExitCode } from './exit-codes.js'; import type { RunMode } from './config.js'; export declare const CheckStatusSchema: z.ZodEnum<{ error: "error"; pass: "pass"; fail: "fail"; warn: "warn"; skipped: "skipped"; }>; export declare const CheckSeveritySchema: z.ZodEnum<{ blocking: "blocking"; review: "review"; info: "info"; }>; export declare const CheckSuiteSchema: z.ZodEnum<{ design: "design"; visual: "visual"; print: "print"; setup: "setup"; component: "component"; browser: "browser"; environment: "environment"; }>; export declare const ReportStatusSchema: z.ZodEnum<{ error: "error"; pass: "pass"; fail: "fail"; "pass-with-review": "pass-with-review"; }>; export declare const ArtifactTypeSchema: z.ZodEnum<{ screenshot: "screenshot"; html: "html"; metadata: "metadata"; log: "log"; report: "report"; image: "image"; "visual-diff": "visual-diff"; trace: "trace"; video: "video"; pdf: "pdf"; "document-page": "document-page"; "contact-sheet": "contact-sheet"; }>; export declare const ArtifactRoleSchema: z.ZodEnum<{ trace: "trace"; evidence: "evidence"; expected: "expected"; actual: "actual"; diff: "diff"; debug: "debug"; }>; export declare const FailureClassSchema: z.ZodEnum<{ unknown: "unknown"; "visual-diff": "visual-diff"; "source-node-mismatch": "source-node-mismatch"; "token-mismatch": "token-mismatch"; "baseline-export-mismatch": "baseline-export-mismatch"; "framing-layout-mismatch": "framing-layout-mismatch"; "adapter-fixture-mismatch": "adapter-fixture-mismatch"; "runtime-implementation-mismatch": "runtime-implementation-mismatch"; "render-noise": "render-noise"; "route-failure": "route-failure"; "auth-gate-failure": "auth-gate-failure"; "dom-contract-failure": "dom-contract-failure"; "accessibility-contract-failure": "accessibility-contract-failure"; "layout-overflow": "layout-overflow"; "console-error": "console-error"; "network-error": "network-error"; "component-drift": "component-drift"; "environment-mismatch": "environment-mismatch"; "missing-baseline": "missing-baseline"; "flaky-unstable-screenshot": "flaky-unstable-screenshot"; "artifact-redaction-warning": "artifact-redaction-warning"; "tool-error": "tool-error"; }>; export declare const DiagnosticEvidenceSchema: z.ZodObject<{ kind: z.ZodString; summary: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>; export declare const CheckDiagnosticSchema: z.ZodObject<{ kind: z.ZodString; message: z.ZodString; severity: z.ZodOptional>; evidence: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>; export declare const ArtifactRefSchema: z.ZodObject<{ type: z.ZodEnum<{ screenshot: "screenshot"; html: "html"; metadata: "metadata"; log: "log"; report: "report"; image: "image"; "visual-diff": "visual-diff"; trace: "trace"; video: "video"; pdf: "pdf"; "document-page": "document-page"; "contact-sheet": "contact-sheet"; }>; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>; export declare const CheckResultSchema: z.ZodObject<{ id: z.ZodString; suite: z.ZodEnum<{ design: "design"; visual: "visual"; print: "print"; setup: "setup"; component: "component"; browser: "browser"; environment: "environment"; }>; target: z.ZodString; status: z.ZodEnum<{ error: "error"; pass: "pass"; fail: "fail"; warn: "warn"; skipped: "skipped"; }>; severity: z.ZodEnum<{ blocking: "blocking"; review: "review"; info: "info"; }>; summary: z.ZodString; details: z.ZodOptional; artifacts: z.ZodArray; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>>; metadata: z.ZodRecord; failureClass: z.ZodOptional>; confidence: z.ZodOptional; diagnostics: z.ZodOptional>; evidence: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>>; evidence: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>>>; recommendations: z.ZodOptional>; suggestedNextStep: z.ZodOptional; }, z.core.$strip>; export declare const SuggestedNextStepSchema: z.ZodObject<{ kind: z.ZodString; summary: z.ZodString; }, z.core.$strip>; export declare const EvidenceGroupSchema: z.ZodObject<{ id: z.ZodString; checks: z.ZodArray; artifacts: z.ZodArray; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>>; metadata: z.ZodOptional>; }, z.core.$strip>; export declare const ReportSummarySchema: z.ZodObject<{ passed: z.ZodNumber; failed: z.ZodNumber; warnings: z.ZodNumber; skipped: z.ZodNumber; blockingFailures: z.ZodNumber; reviewItems: z.ZodNumber; }, z.core.$strip>; export declare const ReflectionReportV2Schema: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; runId: z.ZodString; project: z.ZodString; startedAt: z.ZodString; finishedAt: z.ZodString; status: z.ZodEnum<{ error: "error"; pass: "pass"; fail: "fail"; "pass-with-review": "pass-with-review"; }>; mode: z.ZodEnum<{ smoke: "smoke"; design: "design"; visual: "visual"; print: "print"; full: "full"; }>; ci: z.ZodBoolean; environment: z.ZodRecord; summary: z.ZodObject<{ passed: z.ZodNumber; failed: z.ZodNumber; warnings: z.ZodNumber; skipped: z.ZodNumber; blockingFailures: z.ZodNumber; reviewItems: z.ZodNumber; }, z.core.$strip>; checks: z.ZodArray; target: z.ZodString; status: z.ZodEnum<{ error: "error"; pass: "pass"; fail: "fail"; warn: "warn"; skipped: "skipped"; }>; severity: z.ZodEnum<{ blocking: "blocking"; review: "review"; info: "info"; }>; summary: z.ZodString; details: z.ZodOptional; artifacts: z.ZodArray; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>>; metadata: z.ZodRecord; failureClass: z.ZodOptional>; confidence: z.ZodOptional; diagnostics: z.ZodOptional>; evidence: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>>; evidence: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>>>; recommendations: z.ZodOptional>; suggestedNextStep: z.ZodOptional; }, z.core.$strip>>; artifacts: z.ZodArray; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>>; suggestedNextSteps: z.ZodArray>; }, z.core.$strip>; export declare const ReflectionReportSchema: z.ZodObject<{ schemaVersion: z.ZodLiteral<2>; runId: z.ZodString; project: z.ZodString; startedAt: z.ZodString; finishedAt: z.ZodString; status: z.ZodEnum<{ error: "error"; pass: "pass"; fail: "fail"; "pass-with-review": "pass-with-review"; }>; mode: z.ZodEnum<{ smoke: "smoke"; design: "design"; visual: "visual"; print: "print"; full: "full"; }>; ci: z.ZodBoolean; environment: z.ZodRecord; summary: z.ZodObject<{ passed: z.ZodNumber; failed: z.ZodNumber; warnings: z.ZodNumber; skipped: z.ZodNumber; blockingFailures: z.ZodNumber; reviewItems: z.ZodNumber; }, z.core.$strip>; checks: z.ZodArray; target: z.ZodString; status: z.ZodEnum<{ error: "error"; pass: "pass"; fail: "fail"; warn: "warn"; skipped: "skipped"; }>; severity: z.ZodEnum<{ blocking: "blocking"; review: "review"; info: "info"; }>; summary: z.ZodString; details: z.ZodOptional; artifacts: z.ZodArray; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>>; metadata: z.ZodRecord; failureClass: z.ZodOptional>; confidence: z.ZodOptional; diagnostics: z.ZodOptional>; evidence: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>>>; evidence: z.ZodOptional; data: z.ZodOptional>; }, z.core.$strip>>>; recommendations: z.ZodOptional>; suggestedNextStep: z.ZodOptional; }, z.core.$strip>>; artifacts: z.ZodArray; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>>; suggestedNextSteps: z.ZodArray>; evidenceGroups: z.ZodArray; artifacts: z.ZodArray; role: z.ZodOptional>; path: z.ZodString; bytes: z.ZodOptional; sha256: z.ZodOptional; }, z.core.$strip>>; metadata: z.ZodOptional>; }, z.core.$strip>>; }, z.core.$strip>; export type CheckStatus = z.output; export type CheckSeverity = z.output; export type CheckSuite = z.output; export type ReportStatus = z.output; export type ArtifactRef = z.output; export type FailureClass = z.output; export type DiagnosticEvidence = z.output; export type CheckDiagnostic = z.output; export type CheckResult = z.output; export type ReflectionReport = z.output; export type ReportSummary = z.output; export type SuggestedNextStep = z.output; export type EvidenceGroup = z.output; export declare function summarizeChecks(checks: CheckResult[]): ReportSummary; export declare function deriveReportStatus(checks: CheckResult[]): ReportStatus; export declare function deriveExitCode(status: ReportStatus): ExitCode; export declare function deriveSuggestedNextSteps(checks: CheckResult[]): SuggestedNextStep[]; export declare function validateReport(report: unknown): ReflectionReport; export declare function createReport(input: { runId: string; project: string; startedAt: Date; finishedAt: Date; mode: RunMode; ci: boolean; environment?: Record; checks: CheckResult[]; artifacts?: ArtifactRef[]; suggestedNextSteps?: SuggestedNextStep[]; }): ReflectionReport; export declare function deriveEvidenceGroups(checks: CheckResult[], reportArtifacts?: ArtifactRef[]): EvidenceGroup[];