/** * Copyright (c) 2025 Mihajlo Stojanovski * All rights reserved. */ import { Rule, RuleContext, Finding } from "../../types"; /** * Rule Registry * Enterprise principle: deterministic, ordered, capped. */ export declare class RuleRegistry { private rules; /** * Initialize the rule registry and register all built-in rules * Rules are automatically sorted by priority (higher priority runs first) */ constructor(); /** * Register a new rule in the registry * Rules are automatically sorted by priority after registration * * @param rule - Rule implementation to register */ register(rule: Rule): void; /** * Evaluate all registered rules against a test context * Returns findings in deterministic priority order, capped per test * Ensures at least one finding (fallback to unknown-error if needed) * * @param ctx - Rule context containing test result and analysis data * @returns Array of findings (max CAPS.MAX_FINDINGS_PER_TEST) */ evaluate(ctx: RuleContext): Finding[]; /** * Get count of registered rules. */ getRuleCount(): number; /** * Get all rule IDs for documentation. */ getRuleIds(): string[]; } //# sourceMappingURL=registry.d.ts.map