import fs from 'node:fs/promises'; import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { ProjectService } from '../services/projectService.js'; import { DefinitionLocator } from '../services/definitionLocator.js'; import { CallHierarchyBuilder } from '../services/callHierarchyBuilder.js'; import { CodeSmellDetector } from '../services/codeSmellDetector.js'; import { RefactoringSuggester } from '../services/refactoringSuggester.js'; import { DocumentationGenerator } from '../services/documentationGenerator.js'; import type { QueryService } from '../domain/query/queryService.js'; export interface CodeToolDependencies { readFile: typeof fs.readFile; writeFile: typeof fs.writeFile; mkdir: typeof fs.mkdir; projectService?: ProjectService; definitionLocator?: DefinitionLocator; queryService?: QueryService; callHierarchyBuilder?: CallHierarchyBuilder; codeSmellDetector?: CodeSmellDetector; refactoringSuggester?: RefactoringSuggester; documentationGenerator?: DocumentationGenerator; } export declare function registerCodeTools(server: McpServer, deps?: Partial): void;