@aaswe/codebase-ai
Version:
AI-Assisted Software Engineering (AASWE) - Rich codebase context for IDE LLMs
51 lines • 1.8 kB
TypeScript
/**
* AST Analyzer Factory
* Main entry point for AST analysis functionality
*/
import { BaseAnalyzer } from './BaseAnalyzer';
import { SupportedLanguage, AnalysisResult, AnalysisOptions } from './types';
export declare class ASTAnalyzerFactory {
private static analyzers;
/**
* Get analyzer for specific language
*/
static getAnalyzer(language: SupportedLanguage): BaseAnalyzer;
/**
* Create analyzer instance for language
*/
private static createAnalyzer;
/**
* Detect language from file extension
*/
static detectLanguage(filePath: string): SupportedLanguage;
/**
* Analyze single file with automatic language detection
*/
static analyzeFile(filePath: string, options?: Partial<AnalysisOptions>): Promise<AnalysisResult>;
/**
* Analyze multiple files with automatic language detection
*/
static analyzeFiles(filePaths: string[], options?: Partial<AnalysisOptions>): Promise<AnalysisResult[]>;
/**
* Get supported languages
*/
static getSupportedLanguages(): SupportedLanguage[];
/**
* Check if language is supported
*/
static isLanguageSupported(language: string): language is SupportedLanguage;
/**
* Get file extensions for language
*/
static getLanguageExtensions(language: SupportedLanguage): string[];
}
export * from './types';
export { BaseAnalyzer } from './BaseAnalyzer';
export { TypeScriptAnalyzer } from './TypeScriptAnalyzer';
export { PythonAnalyzer } from './PythonAnalyzer';
export { JavaAnalyzer } from './JavaAnalyzer';
export { GoAnalyzer } from './GoAnalyzer';
export { RustAnalyzer } from './RustAnalyzer';
export { CppAnalyzer } from './CppAnalyzer';
export default ASTAnalyzerFactory;
//# sourceMappingURL=index.d.ts.map