import type { Finding, LyseConfig } from "../types.js"; export declare const RETIRED_RULE_IDS: ReadonlySet; /** * Rule ids referenced in `config.rules` that are not in the known registry. * Returned sorted for deterministic error messages. Catching these at audit * start turns a typo'd / renamed rule id from a silent no-op into a hard error. * Retired ids are excluded — they degrade gracefully via {@link findRetiredRuleIds}. */ export declare function findUnknownRuleIds(config: LyseConfig, knownRuleIds: ReadonlySet): string[]; /** * Retired rule ids referenced in `config.rules`. The audit pipeline warns on * these (rather than erroring) so a stale `.lyse.yaml` keeps working. */ export declare function findRetiredRuleIds(config: LyseConfig): string[]; /** * Rule ids the config disables — `"off"` literal or `{ severity: "off" }`. * A disabled rule does not run and contributes no findings or opportunities. */ export declare function disabledRuleIds(config: LyseConfig): Set; /** * Applies `rules..severity` overrides to findings' **display** severity. * * Returns a new array with overridden findings shallow-cloned; the input is * never mutated. By contract this runs AFTER scoring, so a config severity * override changes what reporters show but never the Health Score — keeping * the determinism contract ("severity does not change the score") intact. * Returns the input reference unchanged when there is nothing to override. */ export declare function applySeverityOverrides(findings: Finding[], config: LyseConfig): Finding[];