import { ArchDocConfig } from '../utils/config-loader'; export type ToolHandler = (args: Record) => Promise; export interface ToolResponse { content: Array<{ type: 'text' | 'image' | 'resource'; text?: string; data?: string; mimeType?: string; }>; isError?: boolean; } export interface ToolVersion { major: number; minor: number; patch: number; } export interface ToolChangelogEntry { version: string; date: string; changes: string[]; breaking?: boolean; } export interface ToolDefinition { name: string; description: string; version?: string; versionInfo?: { current: ToolVersion; changelog?: ToolChangelogEntry[]; deprecated?: boolean; deprecatedSince?: string; replacedBy?: string; }; inputSchema: { type: 'object'; properties: Record; required?: string[]; }; } export interface ToolContext { projectPath: string; config: ArchDocConfig | null; logger: any; } export type ContextualToolHandler = (args: Record, context: ToolContext) => Promise; export interface VectorStore { query: (question: string, topK?: number) => Promise>; reload: (docsPath: string) => Promise; isReady: () => boolean; } export interface ServiceRegistry { configService: any; documentationService: any; vectorStoreService: any; } //# sourceMappingURL=types.d.ts.map