import { OrchestratorAgent } from './orchestrator-agent'; import { MCPManager } from './mcp-client'; export interface TaskAnalysis { intent: TaskIntent; complexity: TaskComplexity; domain: string[]; requiredCapabilities: string[]; estimatedDuration: 'short' | 'medium' | 'long' | 'extended'; dependencies: string[]; riskLevel: 'low' | 'medium' | 'high' | 'critical'; complianceRequirements: string[]; } export declare enum TaskIntent { CODE_GENERATION = "code_generation", CODE_ANALYSIS = "code_analysis", DEBUGGING = "debugging", REFACTORING = "refactoring", TESTING = "testing", DOCUMENTATION = "documentation", ARCHITECTURE_DESIGN = "architecture_design", PROJECT_SETUP = "project_setup", DEPLOYMENT = "deployment", RESEARCH = "research", CONFIGURATION = "configuration", OPTIMIZATION = "optimization", SECURITY_AUDIT = "security_audit", MIGRATION = "migration", INTEGRATION = "integration", CONSULTATION = "consultation" } export declare enum TaskComplexity { TRIVIAL = 1, SIMPLE = 2, MODERATE = 3, COMPLEX = 4, VERY_COMPLEX = 5 } export interface AgentAssignment { agent: string; role: 'primary' | 'secondary' | 'reviewer' | 'validator'; confidence: number; justification: string; estimatedEffort: number; } export interface RoutingDecision { assignments: AgentAssignment[]; coordinationStrategy: 'single' | 'parallel' | 'sequential' | 'hierarchical'; mcpTools: string[]; validationLevel: 'basic' | 'standard' | 'enhanced' | 'critical'; fallbackPlan: string[]; } export declare class TaskRouter { private logger; private validator; private registry; private _orchestrator; private mcpManager; private intentPatterns; private complexityIndicators; constructor(orchestrator: OrchestratorAgent, mcpManager: MCPManager); analyzeTask(userInput: string, _context?: Record): Promise; routeTask(analysis: TaskAnalysis, userInput: string): Promise; private detectIntent; private assessComplexity; private identifyDomains; private identifyRequiredCapabilities; private estimateDuration; private identifyDependencies; private assessRisk; private findCandidateAgents; private scoreAgents; private createAssignments; private determineCoordinationStrategy; private selectMcpTools; private determineValidationLevel; private createFallbackPlan; } //# sourceMappingURL=task-router.d.ts.map