import type { McpTool } from "../../types/index.js";
/**
 * OpenAI Responses API 向け tool schema
 */
export type OpenAiTool = {
    type: "function";
    name: string;
    description?: string;
    parameters: unknown;
};
/**
 * Gemini (Google Generative Language API) 向け tool schema
 * - tools: [{ functionDeclarations: [...] }]
 * - functionDeclarations[].parametersJsonSchema に JSON Schema を入れる
 */
export type GeminiTool = {
    functionDeclarations: Array<{
        name: string;
        description?: string;
        parametersJsonSchema?: unknown;
    }>;
};
/**
 * MCP tool 定義（McpTool[]）を OpenAI tool schema に変換するための小さなカタログ。
 * 目的は「変換処理に名前を与えて読みやすくする」こと。
 */
export declare class McpToolCatalog {
    readonly tools: ReadonlyArray<McpTool>;
    constructor(tools: McpTool[]);
    /**
     * MCP tools -> OpenAI tools
     */
    toOpenAiTools(): OpenAiTool[];
    /**
     * MCP tools -> Gemini tools
     *
     * IMPORTANT:
     * - Gemini の functionDeclarations は `parameters` ではなく `parametersJsonSchema` を使う。
     *   （parameters に JSON Schema を入れると "Unknown name additionalProperties/$schema" 等で落ちる）
     */
    toGeminiTools(): GeminiTool[];
}
//# sourceMappingURL=mcp-tool-catalog.d.ts.map