import { FileAnalysis, ASTAnalysisResult } from '../types'; export interface ASTAnalyzerOptions { includeComments?: boolean; includeTokens?: boolean; maxDepth?: number; followImports?: boolean; jsx?: boolean; strictMode?: boolean; } export declare class ASTAnalyzer { private logger; private cache; constructor(); analyzeFile(filePath: string, options?: ASTAnalyzerOptions): Promise; analyzeProject(rootPath: string, options?: ASTAnalyzerOptions): Promise; private shouldAnalyzeFile; private detectLanguage; private getScriptKind; private analyzeScope; private analyzeComplexity; private analyzeDependencies; private analyzePatterns; private analyzeSecurityIssues; private analyzeRefactoringOpportunities; private calculateMetrics; private getNodeLocation; private getNodeLineCount; private findSourceFiles; private generateHash; clearCache(): void; getCacheStats(): { size: number; files: string[]; }; } //# sourceMappingURL=ast-analyzer.d.ts.map