import { Tool as OpenAITool } from 'openai/src/resources/responses/responses.js'; import { z } from 'zod'; import { ToolRAGConfigInput } from './ToolRAGConfig'; declare const mcpToolSchema: z.ZodObject<{ name: z.ZodString; description: z.ZodOptional; inputSchema: z.ZodObject<{ type: z.ZodLiteral<"object">; properties: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "object"; properties?: Record | undefined; }, { type: "object"; properties?: Record | undefined; }>; }, "strip", z.ZodTypeAny, { name: string; inputSchema: { type: "object"; properties?: Record | undefined; }; description?: string | undefined; }, { name: string; inputSchema: { type: "object"; properties?: Record | undefined; }; description?: string | undefined; }>; type MCPTool = z.infer; declare class ToolRAG { private _mcpClients; private _mcpTools; private _toolToClientMap; private _embeddingProvider; private _db; private _config; private _log; private _db_table_name; constructor(config?: ToolRAGConfigInput); static init(config?: ToolRAGConfigInput): Promise; private _initEmbeddingProvider; private _initMcpServers; private _hashTool; private _ensureInitialized; _initDatabase(): Promise; private _registerMcpServer; private _formatToolText; _generateToolsEmbeddings(tools: MCPTool[]): Promise<{ tool: { name: string; inputSchema: { type: "object"; properties?: Record | undefined; }; description?: string | undefined; }; toolName: string; toolHash: string; embedding: number[]; toolText: string; }[]>; private _refreshToolsEmbeddings; _pruneMissingTools(): Promise; _findSimilarToolsByVector(query: string): Promise<{ toolName: string; relevance: number; tool: any; }[]>; private _convertToOpenAIFunction; listTools(query: string, options?: { relevanceThreshold?: number; }): Promise; callTool(toolName: string, input: any): Promise, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; }, { content: import("zod").ZodArray; text: import("zod").ZodString; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"text">; text: import("zod").ZodString; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"text">; text: import("zod").ZodString; }, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject<{ type: import("zod").ZodLiteral<"image">; data: import("zod").ZodString; mimeType: import("zod").ZodString; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"image">; data: import("zod").ZodString; mimeType: import("zod").ZodString; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"image">; data: import("zod").ZodString; mimeType: import("zod").ZodString; }, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject<{ type: import("zod").ZodLiteral<"resource">; resource: import("zod").ZodUnion<[import("zod").ZodObject; }, { text: import("zod").ZodString; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType; }, { text: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType; }, { text: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject; }, { blob: import("zod").ZodString; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType; }, { blob: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType; }, { blob: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">>]>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"resource">; resource: import("zod").ZodUnion<[import("zod").ZodObject; }, { text: import("zod").ZodString; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType; }, { text: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType; }, { text: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject; }, { blob: import("zod").ZodString; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType; }, { blob: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType; }, { blob: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">>]>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"resource">; resource: import("zod").ZodUnion<[import("zod").ZodObject; }, { text: import("zod").ZodString; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType; }, { text: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType; }, { text: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject; }, { blob: import("zod").ZodString; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType; }, { blob: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType; }, { blob: import("zod").ZodString; }>, import("zod").ZodTypeAny, "passthrough">>]>; }, import("zod").ZodTypeAny, "passthrough">>]>, "many">; isError: import("zod").ZodOptional>; }>, z.ZodTypeAny, "passthrough"> | z.objectOutputType, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; }, { toolResult: import("zod").ZodUnknown; }>, z.ZodTypeAny, "passthrough">>; } export default ToolRAG; //# sourceMappingURL=ToolRAG.d.ts.map