import { McpHandler, McpHandlerOptions } from './mcp-handlers.types'; export declare function createMcpHandlers(options: McpHandlerOptions): (McpHandler<{ params: { [x: string]: unknown; protocolVersion: string; capabilities: { [x: string]: unknown; experimental?: { [x: string]: unknown; } | undefined; sampling?: { [x: string]: unknown; } | undefined; elicitation?: { [x: string]: unknown; } | undefined; roots?: { [x: string]: unknown; listChanged?: boolean | undefined; } | undefined; }; clientInfo: { [x: string]: unknown; name: string; version: string; icons?: { [x: string]: unknown; src: string; mimeType?: string | undefined; sizes?: string[] | undefined; }[] | undefined; title?: string | undefined | undefined; websiteUrl?: string | undefined | undefined; }; _meta?: { [x: string]: unknown; progressToken?: string | number | undefined; } | undefined; }; method: "initialize"; }, { [x: string]: unknown; protocolVersion: string; capabilities: { [x: string]: unknown; tools?: { [x: string]: unknown; listChanged?: boolean | undefined; } | undefined; resources?: { [x: string]: unknown; subscribe?: boolean | undefined; listChanged?: boolean | undefined; } | undefined; prompts?: { [x: string]: unknown; listChanged?: boolean | undefined; } | undefined; logging?: { [x: string]: unknown; } | undefined; experimental?: { [x: string]: unknown; } | undefined; completions?: { [x: string]: unknown; } | undefined; }; serverInfo: { [x: string]: unknown; name: string; version: string; title?: string | undefined; icons?: { [x: string]: unknown; src: string; mimeType?: string | undefined; sizes?: string[] | undefined; }[] | undefined; websiteUrl?: string | undefined; }; _meta?: { [x: string]: unknown; } | undefined; instructions?: string | undefined; }, import("zod").ZodObject<{ method: import("zod").ZodLiteral; }, import("zod").UnknownKeysParam, import("zod").ZodTypeAny, { method: string; }, { method: string; }>, import("zod").ZodObject, { method: string; params?: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; } | undefined; }> | McpHandler<{ method: "notifications/initialized"; params?: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; } | undefined; }, { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; }, import("zod").ZodObject<{ method: import("zod").ZodLiteral; }, import("zod").UnknownKeysParam, import("zod").ZodTypeAny, { method: string; }, { method: string; }>, import("zod").ZodObject, { method: string; params?: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; } | undefined; }> | { requestSchema: import("zod").ZodObject<{ params: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; }, { cursor: import("zod").ZodOptional; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; }, { cursor: import("zod").ZodOptional; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; }, { cursor: import("zod").ZodOptional; }>, import("zod").ZodTypeAny, "passthrough">>>; } & { method: import("zod").ZodLiteral<"tools/list">; }, "strip", import("zod").ZodTypeAny, { method: "tools/list"; params?: import("zod").objectOutputType>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; }, { cursor: import("zod").ZodOptional; }>, import("zod").ZodTypeAny, "passthrough"> | undefined; }, { method: "tools/list"; params?: import("zod").objectInputType>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ progressToken: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; }, { cursor: import("zod").ZodOptional; }>, import("zod").ZodTypeAny, "passthrough"> | undefined; }>; handler: (request: import("@modelcontextprotocol/sdk/types.js").ListToolsRequest, ctx: import("./mcp-handlers.types").McpRequestHandler<{ method: "tools/list"; params?: { [x: string]: unknown; _meta?: { [x: string]: unknown; progressToken?: string | number | undefined; } | undefined; cursor?: string | undefined; } | undefined; }, { method: string; params?: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; } | undefined; }>) => Promise, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; } & { nextCursor: import("zod").ZodOptional; } & { tools: import("zod").ZodArray; }, { description: import("zod").ZodOptional; inputSchema: import("zod").ZodObject<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>; outputSchema: import("zod").ZodOptional; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; annotations: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ title: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ title: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, import("zod").ZodTypeAny, "passthrough">>>; _meta: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; }>, { icons: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ src: import("zod").ZodString; mimeType: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ src: import("zod").ZodString; mimeType: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>, "many">>; }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType; }, { description: import("zod").ZodOptional; inputSchema: import("zod").ZodObject<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>; outputSchema: import("zod").ZodOptional; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; annotations: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ title: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ title: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, import("zod").ZodTypeAny, "passthrough">>>; _meta: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; }>, { icons: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ src: import("zod").ZodString; mimeType: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ src: import("zod").ZodString; mimeType: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>, "many">>; }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType; }, { description: import("zod").ZodOptional; inputSchema: import("zod").ZodObject<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>; outputSchema: import("zod").ZodOptional; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ type: import("zod").ZodLiteral<"object">; properties: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; required: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>>; annotations: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ title: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ title: import("zod").ZodOptional; readOnlyHint: import("zod").ZodOptional; destructiveHint: import("zod").ZodOptional; idempotentHint: import("zod").ZodOptional; openWorldHint: import("zod").ZodOptional; }, import("zod").ZodTypeAny, "passthrough">>>; _meta: import("zod").ZodOptional, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>; }>, { icons: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{ src: import("zod").ZodString; mimeType: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{ src: import("zod").ZodString; mimeType: import("zod").ZodOptional; sizes: import("zod").ZodOptional>; }, import("zod").ZodTypeAny, "passthrough">>, "many">>; }>, import("zod").ZodTypeAny, "passthrough">>, "many">; }, import("zod").ZodTypeAny, "passthrough">>; } | McpHandler<{ params: { [x: string]: unknown; name: string; _meta?: { [x: string]: unknown; progressToken?: string | number | undefined; } | undefined; arguments?: { [x: string]: unknown; } | undefined; }; method: "tools/call"; }, { [x: string]: unknown; content: ({ [x: string]: unknown; type: "text"; text: string; _meta?: { [x: string]: unknown; } | undefined; } | { [x: string]: unknown; type: "image"; mimeType: string; data: string; _meta?: { [x: string]: unknown; } | undefined; } | { [x: string]: unknown; type: "audio"; mimeType: string; data: string; _meta?: { [x: string]: unknown; } | undefined; } | { [x: string]: unknown; name: string; type: "resource_link"; uri: string; description?: string | undefined; _meta?: { [x: string]: unknown; } | undefined; title?: string | undefined; icons?: { [x: string]: unknown; src: string; mimeType?: string | undefined; sizes?: string[] | undefined; }[] | undefined; mimeType?: string | undefined; } | { [x: string]: unknown; type: "resource"; resource: { [x: string]: unknown; text: string; uri: string; _meta?: { [x: string]: unknown; } | undefined; mimeType?: string | undefined; } | { [x: string]: unknown; uri: string; blob: string; _meta?: { [x: string]: unknown; } | undefined; mimeType?: string | undefined; }; _meta?: { [x: string]: unknown; } | undefined; })[]; _meta?: { [x: string]: unknown; } | undefined; structuredContent?: { [x: string]: unknown; } | undefined; isError?: boolean | undefined; }, import("zod").ZodObject<{ method: import("zod").ZodLiteral; }, import("zod").UnknownKeysParam, import("zod").ZodTypeAny, { method: string; }, { method: string; }>, import("zod").ZodObject, { method: string; params?: { [x: string]: unknown; _meta?: { [x: string]: unknown; } | undefined; } | undefined; }>)[];