/** * Claude Code Integration Service (SOLID Refactored) * SOLID Principles: Dependency Inversion - Coordinator depends on service abstractions * Coordinates all Claude Code integration operations using focused services */ import { ClaudeCodeOptions, ClaudeCodeResponse, AnalysisResult, ProjectContext, IClaudeExecutionService, IPromptProcessingService, IProjectAnalysisService, ISessionManagementService, IRequestProcessingService, IContextBuilderService, IResponseParsingService } from './interfaces/index'; export { ClaudeCodeOptions, ClaudeCodeResponse, AnalysisResult, ProjectContext } from './interfaces/index'; declare class ClaudeCodeIntegration { private executionService?; private promptService?; private analysisService?; private sessionManager?; private requestProcessor?; private contextBuilder?; private responseParser?; private dbConnections; private logger; private initialized; constructor(executionService?: IClaudeExecutionService, promptService?: IPromptProcessingService, analysisService?: IProjectAnalysisService, sessionManager?: ISessionManagementService, requestProcessor?: IRequestProcessingService, contextBuilder?: IContextBuilderService, responseParser?: IResponseParsingService); /** * Execute Claude Code with a specific prompt and context using centralized command processor */ executeClaudeCode(prompt: string, context: string, options?: ClaudeCodeOptions): Promise; /** * Perform comprehensive project analysis using Claude Code */ analyzeProject(projectPath: string, resumeToken?: string): Promise; /** * Process user request with enhanced context and prompt optimization */ processRequest(userRequest: string, projectPath: string, options?: ClaudeCodeOptions): Promise; /** * Build comprehensive project context for Claude Code */ buildProjectContext(projectPath: string): Promise; getSessionForProject(projectPath: string): Promise; startNewSession(projectPath: string): Promise; endSession(sessionId: string): Promise; processBatchRequests(requests: Array<{ request: string; projectPath: string; options?: ClaudeCodeOptions; }>, maxConcurrent?: number): Promise; testConnection(): Promise<{ connected: boolean; version?: string; error?: string; }>; extractUseCases(projectPath: string, context: string): Promise; assessCodeQuality(projectPath: string, context: string): Promise; detectUserIntentSimple(query: string): Promise<{ category: string; confidence: number; requiresModifications: boolean; reasoning: string; }>; processLargePrompt(prompt: string, projectPath: string, originalRequest: string): Promise; validatePromptSize(prompt: string): { valid: boolean; size: number; warning?: string; }; initialize(): Promise; close(): Promise; getSessionStats(): any; getExecutionStats(): any; analyzeRequestComplexity(request: string): any; private ensureInitialized; static createWithServices(executionService: IClaudeExecutionService, promptService: IPromptProcessingService, analysisService: IProjectAnalysisService, sessionManager: ISessionManagementService, requestProcessor: IRequestProcessingService, contextBuilder: IContextBuilderService, responseParser: IResponseParsingService): ClaudeCodeIntegration; static createDefault(): ClaudeCodeIntegration; executeCommand(command: string, options?: any): Promise; validateRequest(request: string): { valid: boolean; error?: string; }; sanitizeInput(input: string): string; } export default ClaudeCodeIntegration; export { ClaudeCodeIntegration }; export { ClaudeExecutionService } from './services/claude-execution-service'; export { PromptProcessingService } from './services/prompt-processing-service'; export { ProjectAnalysisService } from './services/project-analysis-service'; export { SessionManagementService } from './services/session-management-service'; export { RequestProcessingService } from './services/request-processing-service'; //# sourceMappingURL=claude-cli-integration.d.ts.map