import type { AuditOptions, AuditSummary, CategoryKey, RuleResult, Verdict } from "./types.js"; import { type SiteClassification } from "./site-classifier.js"; export declare function categoryForRule(ruleId: string): CategoryKey | undefined; /** * Shared bounded bidirectional verdict moderator. A 0-100 `score` shifts the * verdict along {@link VERDICT_LADDER} by at most `cap` tiers: * - `score >= lenientAt` → soften (toward "ready"), clamped at index 0. * - `score <= strictAt` → escalate (toward "critical"), clamped at the top. * - in between (or absent) → no shift. * Absent evidence is a no-op: `undefined`/`null`/non-finite/out-of-[0,100] * `score` returns the verdict unchanged (so a null content-effort or an * unavailable authority provider never moves the verdict). Authority and * content-effort are both callers (see {@link shiftVerdictForAuthority}). */ export declare function shiftVerdict(verdict: Verdict, o: { score: number | null | undefined; lenientAt: number; strictAt: number; cap: number; }): Verdict; export declare function shiftVerdictForEffort(verdict: Verdict, score: number | null | undefined): Verdict; /** * v0.4.3 — apply per-site-type severity + confidence overrides BEFORE any * bucketing happens, so blocker/shouldFix counts and category buckets all * reflect the user-visible severity, not the rule's native severity. * * Returns a NEW array of findings (does not mutate the input). Only the * `severity` and `confidence` fields are remapped; everything else is * preserved by reference. */ export declare function applyScoringProfileOverrides(findings: RuleResult[], classification: SiteClassification | undefined): RuleResult[]; export declare function parseSitemapUrlsWithLastmod(xml: string): Array<{ url: string; lastmod?: string; }>; export declare function auditSource(source: string, options?: AuditOptions): Promise; //# sourceMappingURL=auditor.d.ts.map