import { Logger } from '../utils/logger'; import { ProjectContext } from '../types'; import type { ProcessInfo } from './tool-orchestrator'; import { TaskAnalysis, RoutingDecision } from './task-router'; import type { SMEAgentDefinition, TaskResult, DynamicAgentTemplate } from '../types/orchestrator'; import { ChatOrchestrationMethods } from './chat-orchestration-methods'; export interface ChatOptions { model?: string; maxTokens?: number; conversationHistory?: Array<{ role: string; content: string; }>; useOrchestration?: boolean; expertiseLevel?: 'basic' | 'intermediate' | 'expert'; taskComplexity?: 'simple' | 'moderate' | 'complex' | 'expert'; requireSpecialists?: boolean; allowDynamicAgents?: boolean; timeout?: number; } export interface FileSystemWatcher { id: string; path: string; options: { recursive: boolean; ignoreInitial: boolean; persistent: boolean; }; watcher: any; callback: (event: string, filePath: string) => void; } export interface ChatDependencies { projectContext?: ProjectContext; userPreferences: { verbosity: 'concise' | 'detailed' | 'comprehensive'; expertise: 'beginner' | 'intermediate' | 'expert'; focus: 'code' | 'explanation' | 'guidance'; }; sessionData: { startTime: Date; messageCount: number; topics: string[]; }; orchestration?: { isEnabled: boolean; availableAgents: SMEAgentDefinition[]; dynamicAgents: DynamicAgentTemplate[]; currentTasks: TaskResult[]; metrics?: any; }; } export declare class ChatService extends ChatOrchestrationMethods { protected logger: Logger; private projectAnalyzer; private configManager; private agent; private currentContext?; private antiHallucinationValidator; private fileWatchers; private backupDirectory; private fileOperations; private toolOrchestrator; private operationHistory; constructor(); private ensureBackupDirectory; protected initializeOrchestration(): Promise; initializeOrchestrationAsync(): Promise; private resolvePath; private validatePath; private createBackup; private recordOperation; loadProjectContext(projectPath: string): Promise; sendMessage(message: string, options?: ChatOptions): Promise; private handleMessageWithSingleAgent; private handleMessageWithOrchestration; private handleMessageWithEnhancedAgent; private createChatDependencies; private buildConversationHistory; private getSystemPrompt; private analyzeCode; private suggestCode; private explainConcept; private getProjectInfo; private camelCase; private pascalCase; private readFile; private writeFile; private listDirectory; private createDirectory; private deleteDirectory; private watchDirectory; private analyzeFile; private detectLanguage; private refactorAcrossFiles; private findAndReplace; private batchEdit; private organizeImports; private scaffoldProject; private analyzeProjectStructure; private generateProjectDocs; private optimizeProject; getOperationHistory(): any[]; clearOperationHistory(): void; getFileWatchers(): Map; stopWatching(watcherId: string): Promise; stopAllWatchers(): Promise; private gitMerge; private gitStash; private validateTests; private bundleAnalyze; private updateDependencies; private restartDevServer; private serveBuild; private runMigrations; private seedDatabase; private envSetup; private dockerOperations; private processManagement; private detectPackageManager; getRunningProcesses(): ProcessInfo[]; stopAllProcesses(): Promise; cleanup(): Promise; enableOrchestrationSystem(autoRoute?: boolean): Promise; disableOrchestrationSystem(): Promise; isOrchestrationActive(): boolean; getOrchestrationMetrics(): any; getActiveAgentTasks(): TaskResult[]; getLastTaskAnalysis(): TaskAnalysis | undefined; getLastRoutingDecision(): RoutingDecision | undefined; getAvailableSpecialists(): SMEAgentDefinition[]; getDynamicAgents(): DynamicAgentTemplate[]; } //# sourceMappingURL=chat-service.d.ts.map