vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
47 lines • 3.44 kB
TypeScript
import { LanguageHandler, FunctionExtractionOptions, ClassExtractionOptions, ImportExtractionOptions, FunctionContext } from '../types.js';
import { FunctionInfo, ClassInfo, ImportInfo, ImportedItem } from '../codeMapModel.js';
import { SyntaxNode } from '../parser.js';
import { ContextTracker } from '../context/contextTracker.js';
export declare abstract class BaseLanguageHandler implements LanguageHandler {
protected contextTracker: ContextTracker;
extractFunctions(rootNode: SyntaxNode, sourceCode: string, options?: FunctionExtractionOptions): FunctionInfo[];
extractClasses(rootNode: SyntaxNode, sourceCode: string, options?: ClassExtractionOptions): ClassInfo[];
extractImports(rootNode: SyntaxNode, sourceCode: string, options?: ImportExtractionOptions): ImportInfo[];
detectFramework(_sourceCode: string): string | null;
protected abstract getFunctionQueryPatterns(): string[];
protected abstract getClassQueryPatterns(): string[];
protected abstract getImportQueryPatterns(): string[];
protected abstract extractFunctionName(node: SyntaxNode, sourceCode: string, options?: FunctionExtractionOptions): string;
protected abstract extractClassName(node: SyntaxNode, sourceCode: string): string;
protected abstract extractImportPath(node: SyntaxNode, sourceCode: string): string;
protected extractFunctionSignature(node: SyntaxNode, sourceCode: string): string;
protected extractFunctionComment(_node: SyntaxNode, _sourceCode: string): string | undefined;
protected extractClassComment(_node: SyntaxNode, _sourceCode: string): string | undefined;
protected extractImportComment(_node: SyntaxNode, _sourceCode: string): string | undefined;
protected extractParentClass(_node: SyntaxNode, _sourceCode: string): string | undefined;
protected extractImplementedInterfaces(_node: SyntaxNode, _sourceCode: string): string[] | undefined;
protected extractImportedItems(_node: SyntaxNode, _sourceCode: string): ImportedItem[] | undefined;
protected isDefaultImport(_node: SyntaxNode, _sourceCode: string): boolean | undefined;
protected extractImportAlias(_node: SyntaxNode, _sourceCode: string): string | undefined;
protected generateHeuristicComment(name: string, type: 'function' | 'method' | 'class' | 'property' | 'import' | 'file', signature?: string, parentClass?: string): string;
protected isAsyncFunction(node: SyntaxNode, _sourceCode: string): boolean;
protected isGeneratorFunction(_node: SyntaxNode, _sourceCode: string): boolean;
protected isExportedFunction(node: SyntaxNode, _sourceCode: string): boolean;
protected isExportedClass(node: SyntaxNode, _sourceCode: string): boolean;
protected isNestedFunction(node: SyntaxNode): boolean;
protected isNestedClass(node: SyntaxNode): boolean;
protected getNodeDepth(node: SyntaxNode): number;
protected getCurrentContext(): FunctionContext | undefined;
protected extractClassProperties(_node: SyntaxNode, _sourceCode: string): Array<{
name: string;
type?: string;
comment?: string;
startLine: number;
endLine: number;
accessModifier?: string;
isStatic?: boolean;
}>;
enhanceImportInfo(filePath: string, imports: ImportInfo[], options: unknown): Promise<ImportInfo[]>;
protected mergeImportInfo(original: ImportInfo[], enhanced: ImportInfo[]): ImportInfo[];
}
//# sourceMappingURL=base.d.ts.map