/** * Rule definition adapter that converts legacy SecurityRule to canonical RuleDefinition. * This adapter enables the static scanner to work with the contract layer. */ import type { SecurityRule } from "../rules/types"; import type { RuleDefinition } from "../contracts/types"; /** * Converts a SecurityRule from the legacy static engine to a RuleDefinition contract. * This adapter maintains full fidelity: all properties are preserved from the original rule. * * @param rule The SecurityRule to adapt * @returns A RuleDefinition conforming to the contract */ export declare function adaptSecurityRuleToDefinition(rule: SecurityRule): RuleDefinition; /** * Batch converts multiple SecurityRules to RuleDefinitions. * Useful for plugin loading and validation. */ export declare function adaptSecurityRulesToDefinitions(rules: readonly SecurityRule[]): RuleDefinition[]; /** * Reverses the adaptation for compatibility. * Converts a RuleDefinition back to a SecurityRule-compatible object. * Note: This is primarily useful for testing and backward compatibility, * not for production use (RuleDefinition is the canonical form). */ export declare function adaptDefinitionToSecurityRule(definition: RuleDefinition): SecurityRule;