/** * Mode-based constraint policy rule evaluator. * * ModeConstraintRule activates only when a specific PermissionMode is active. * Primarily used by the mode evaluation layer (Layer 2) to enforce mode-level * restrictions, but can also be used in user/managed policy rules. * Independently testable. */ import type { ModeConstraintRule, PermissionMode, CommandClassification, EvaluationStep } from '../types.js'; /** Result returned by evaluateModeConstraintRule. */ export interface ModeConstraintRuleResult { matched: boolean; step: EvaluationStep; } /** * evaluateModeConstraintRule, Evaluates a single ModeConstraintRule. * * Returns `matched: true` when: * 1. The active mode is listed in `rule.activeModes`, AND * 2. The tool name matches `rule.toolPattern`, AND * 3. If `rule.classifications` is set, the tool classification is in that list. * * @param rule , The ModeConstraintRule to evaluate. * @param toolName , Name of the tool being called. * @param activeMode , The currently active PermissionMode. * @param classification, The semantic classification of the tool call (may be undefined). */ export declare function evaluateModeConstraintRule(rule: ModeConstraintRule, toolName: string, activeMode: PermissionMode, classification: CommandClassification | undefined): ModeConstraintRuleResult; //# sourceMappingURL=mode-constraint.d.ts.map