/** * AST Parser - Tree-sitter based code parsing * * Provides real AST parsing for accurate code analysis, * replacing regex-based heuristics with proper parsing. * * Supports: TypeScript, JavaScript, Python, Rust, Go, Java, C/C++ */ export declare function isTreeSitterAvailable(): boolean; export interface ASTNode { type: string; text: string; startPosition: { row: number; column: number; }; endPosition: { row: number; column: number; }; children: ASTNode[]; parent?: string; } export interface FunctionInfo { name: string; params: string[]; returnType?: string; async: boolean; exported: boolean; startLine: number; endLine: number; complexity: number; calls: string[]; } export interface ClassInfo { name: string; extends?: string; implements: string[]; methods: FunctionInfo[]; properties: string[]; exported: boolean; startLine: number; endLine: number; } export interface ImportInfo { source: string; default?: string; named: string[]; namespace?: string; type: 'esm' | 'commonjs' | 'dynamic'; } export interface ExportInfo { name: string; type: 'default' | 'named' | 'all'; source?: string; } export interface FileAnalysis { file: string; language: string; imports: ImportInfo[]; exports: ExportInfo[]; functions: FunctionInfo[]; classes: ClassInfo[]; variables: string[]; types: string[]; complexity: number; lines: number; parseTime: number; } export declare class CodeParser { private parser; private initialized; init(): Promise; /** * Detect language from file extension */ detectLanguage(file: string): string; /** * Parse a file and return the AST */ parse(file: string, content?: string): Promise; private convertNode; /** * Analyze a file for functions, classes, imports, etc. */ analyze(file: string, content?: string): Promise; private analyzeTree; private parseImport; private parseExport; private parseFunction; private parseClass; private findChild; private getIdentifierName; private calculateComplexity; private analyzeWithRegex; /** * Get all symbols (functions, classes, types) in a file */ getSymbols(file: string): Promise; /** * Get the call graph for a file */ getCallGraph(file: string): Promise>; } export declare function getCodeParser(): CodeParser; export declare function initCodeParser(): Promise; export default CodeParser; //# sourceMappingURL=ast-parser.d.ts.map