/** * `archrad explain ` — canonical rule metadata lookup. * * Wraps the `static-rule-guidance` registry with layer / category derivation * and a "did you mean?" suggestion for near-miss codes. Used by the CLI and * is safe to consume from tests and other tooling. */ export type RuleLayer = 'structural' | 'lint' | 'drift' | 'impl-drift' | 'other'; export type RuleExplanation = { code: string; title: string; remediation: string; docsUrl: string; /** Derived from the code prefix so PolicyPack codes still classify sensibly. */ layer: RuleLayer; }; /** Classify a rule code by its prefix. */ export declare function layerForCode(code: string): RuleLayer; /** Normalise a user-supplied rule id: trim + uppercase, tolerant of lower-case input. */ export declare function normalizeRuleCode(input: string): string; /** * Return up to `limit` rule codes that are close to `query` by edit distance * or shared prefix. Case-insensitive. Exact matches are excluded from the * suggestion list. */ export declare function suggestRuleCodes(query: string, limit?: number): string[]; /** * Look up canonical explanation for `code`. Returns `null` when the code is * unknown. Codes are case-normalised (`ir-lint-missing-auth-010` works). */ export declare function explainRuleCode(code: string): RuleExplanation | null; /** Grouped listing for `--list` / help output. */ export declare function listAllExplanations(): Record; /** * Pretty, multi-line rendering for terminal output. Mirrors the shape of * `printFindingsPretty` so users recognise the format instantly. */ export declare function formatExplanationLines(exp: RuleExplanation): string[]; //# sourceMappingURL=explain.d.ts.map