import { DelegationRule, DelegationContext, MCPRequest } from '../types/enhanced-core.js';
import { AgentRouter } from './agent-router.js';
export declare class DelegationInterceptor {
    private agentRouter;
    private enforcementLevel;
    private rules;
    private activeInterceptions;
    private bypassPatterns;
    private taskClassifier;
    constructor(agentRouter: AgentRouter, enforcementLevel?: 'strict' | 'moderate' | 'advisory');
    interceptToolCall(request: MCPRequest): Promise<MCPRequest | null>;
    private classifyTask;
    private requiresDelegation;
    private createDelegationContext;
    private enforceStrictDelegation;
    private injectDelegationMechanism;
    private addDelegationMarkers;
    private selectTargetAgent;
    private extractTaskContent;
    private testPattern;
    private initializeDefaultRules;
    private initializeBypassPatterns;
    addRule(domain: string, rule: DelegationRule): void;
    removeRule(domain: string, pattern: RegExp | string): boolean;
    getActiveInterceptions(): DelegationContext[];
    getStats(): {
        totalInterceptions: number;
        activeInterceptions: number;
        bypassAttempts: number;
        enforcementLevel: string;
    };
    setEnforcementLevel(level: 'strict' | 'moderate' | 'advisory'): void;
    private generateDelegationSession;
    private shouldBypass;
}
//# sourceMappingURL=delegation-interceptor.d.ts.map