import { ProjectContext, AnalysisResult, EnhancedAnalysisResult, EnhancedAnalysisOptions } from '../types'; import { CacheOptions, CacheStats } from './analysis-cache'; export interface AnalysisOptions { depth: number; includeTests: boolean; excludePatterns: string[]; } export interface FullAnalysisOptions extends EnhancedAnalysisOptions { depth: number; includeTests: boolean; excludePatterns: string[]; } export declare class ProjectAnalyzer { private logger; private astAnalyzer; private complexityAnalyzer; private codeSmellDetector; private patternRecognizer; private cache; constructor(cacheOptions?: Partial); analyze(projectPath: string, options: AnalysisOptions): Promise; analyzeEnhanced(projectPath: string, options: FullAnalysisOptions): Promise; getProjectContext(projectPath: string): Promise; private analyzeStructure; private getAllFiles; private getAllDirectories; private findEntryPoints; private findConfigFiles; private findTestFiles; private detectProjectType; private detectLanguage; private detectFramework; private detectPackageManager; private extractDependencies; private extractDevDependencies; private readPackageJson; private detectPatterns; private calculateMetrics; private generateSummary; private generateInsights; private generateSuggestions; private performASTAnalysis; private calculateEnhancedMetrics; private detectCodeSmells; private detectArchitecturePatterns; private analyzeDependencies; private buildContextualAnalysis; private calculateHealthScore; private generateEnhancedSummary; private generateEnhancedInsights; private generateEnhancedSuggestions; private calculateTechnicalDebt; private generateHealthRecommendations; private shouldAnalyzeFile; clearCache(): void; getCacheStats(): { analysis: CacheStats; ast: { size: number; files: string[]; }; }; } //# sourceMappingURL=project-analyzer.d.ts.map