import { z } from "zod"; import type { FindingSeverity, FindingConfidence } from "./finding.js"; /** The canonical zod enum every other lens artifact derives from. */ export declare const LensSchema: z.ZodEnum<["correctness", "architecture", "maintainability", "security", "reliability", "performance", "data_integrity", "tests", "operability", "config_deployment", "observability"]>; /** The canonical ordered tuple of lenses. */ export declare const LENSES: ["correctness", "architecture", "maintainability", "security", "reliability", "performance", "data_integrity", "tests", "operability", "config_deployment", "observability"]; /** Audit lens: one analytical perspective an audit task covers a unit under. */ export type Lens = z.infer; /** Runtime membership test set for {@link Lens}. */ export declare const VALID_LENSES: ReadonlySet; export declare function isLens(value: unknown): value is Lens; /** The canonical ordered tuple of finding severities. */ export declare const SEVERITIES: readonly FindingSeverity[]; /** Runtime membership test set for {@link FindingSeverity}. */ export declare const VALID_SEVERITIES: ReadonlySet; /** The canonical ordered tuple of finding confidence levels. */ export declare const CONFIDENCES: readonly FindingConfidence[]; /** Runtime membership test set for {@link FindingConfidence}. */ export declare const VALID_CONFIDENCES: ReadonlySet; /** * Numeric severity rank: `critical`=5, `high`=4, `medium`=3, `low`=2, `info`=1. * Higher == more severe. Derived from {@link SEVERITIES} so it never drifts. */ export declare function severityRank(severity: FindingSeverity): number; /** * Numeric confidence rank: `high`=3, `medium`=2, `low`=1. Higher == more * confident. Derived from {@link CONFIDENCES} so it never drifts. */ export declare function confidenceRank(confidence: FindingConfidence): number; /** * Comparator that orders severities **most-severe-first** (`critical` before * `info`). Returns a negative number when `a` is more severe than `b`, so * `findings.sort((x, y) => severityCompare(x.severity, y.severity))` puts the * most-severe finding first. Single-sources the "critical-first" sort direction * that intake previously open-coded with an inverted ad-hoc table. */ export declare function severityCompare(a: FindingSeverity, b: FindingSeverity): number; //# sourceMappingURL=lens.d.ts.map