import { RegexRule } from "../models/RegexRule"; import { RegexScanConfig } from "../models/RegexViolation"; type RuleConstructor = new () => RegexRule; interface RuleRegistryEntry { ruleId: string; ruleClass: RuleConstructor; legacyName: string; } declare class RuleRegistry { private rules; private legacyNameMap; register(ruleId: string, ruleClass: RuleConstructor, legacyName: string): void; get(idOrLegacyName: string): RuleRegistryEntry | undefined; getAllRuleIds(): string[]; has(idOrLegacyName: string): boolean; createInstance(idOrLegacyName: string): RegexRule; /** * Get all rules, optionally filtered by config. * Supports both ruleId and legacy name lookups. */ getRules(config?: RegexScanConfig): RegexRule[]; /** * Get specific rules by ID or legacy name. */ getRulesByIds(ruleIds: string[]): RegexRule[]; } export declare const regexRuleRegistry: RuleRegistry; export {};