import type { RiskLevel } from '@cclabsnz/sf-core'; import type { Finding } from './Finding.js'; /** Audit completed; nothing the caller asked to fail on. */ export declare const EXIT_OK = 0; /** Findings at or above the --fail-on threshold. */ export declare const EXIT_FINDINGS = 1; /** Audit ran, but checks could not gather evidence. Only when --fail-on-inconclusive is set. */ export declare const EXIT_INCONCLUSIVE = 3; export interface ExitOptions { failOn?: RiskLevel; failOnInconclusive?: boolean; } /** * Findings at or above `failOn`. * * Ranks are compared only after confirming the level is gateable. Testing * `ORDER.indexOf(level) <= threshold` alone treats INFO (index -1) as more severe * than CRITICAL, which made every passing check a violation. */ export declare function violationsFor(findings: Finding[], failOn: RiskLevel): Finding[]; /** * The process exit code for a completed audit. * * A definite finding outranks unknown coverage: when both apply the caller gets * EXIT_FINDINGS, and the inconclusive count is still carried in the report body. */ export declare function resolveExitCode(findings: Finding[], opts: ExitOptions): number; //# sourceMappingURL=exitCode.d.ts.map