import { z } from 'zod'; import type { Tool } from '../schema'; /** * Definition for a tool the client can call. */ export declare const toolSchema: z.ZodObject<{ /** * The name of the tool. */ name: z.ZodString; /** * A human-readable description of the tool. * * This can be used by clients to improve the LLM's understanding of available tools. It can be thought of like a "hint" to the model. */ description: z.ZodOptional; /** * A JSON Schema object defining the expected parameters for the tool. */ inputSchema: z.ZodObject<{ type: z.ZodLiteral<"object">; properties: z.ZodOptional, z.objectInputType<{}, z.ZodUnknown, "strip">>>>; required: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "object"; required?: string[] | undefined; properties?: Record> | undefined; }, { type: "object"; required?: string[] | undefined; properties?: Record> | undefined; }>; /** * Optional additional tool information. */ annotations: z.ZodOptional; readOnlyHint: z.ZodOptional; destructiveHint: z.ZodOptional; idempotentHint: z.ZodOptional; openWorldHint: z.ZodOptional; }, "strip", z.ZodTypeAny, { title?: string | undefined; readOnlyHint?: boolean | undefined; destructiveHint?: boolean | undefined; idempotentHint?: boolean | undefined; openWorldHint?: boolean | undefined; }, { title?: string | undefined; readOnlyHint?: boolean | undefined; destructiveHint?: boolean | undefined; idempotentHint?: boolean | undefined; openWorldHint?: boolean | undefined; }>>; }, "strip", z.ZodTypeAny, { name: string; inputSchema: { type: "object"; required?: string[] | undefined; properties?: Record> | undefined; }; description?: string | undefined; annotations?: { title?: string | undefined; readOnlyHint?: boolean | undefined; destructiveHint?: boolean | undefined; idempotentHint?: boolean | undefined; openWorldHint?: boolean | undefined; } | undefined; }, { name: string; inputSchema: { type: "object"; required?: string[] | undefined; properties?: Record> | undefined; }; description?: string | undefined; annotations?: { title?: string | undefined; readOnlyHint?: boolean | undefined; destructiveHint?: boolean | undefined; idempotentHint?: boolean | undefined; openWorldHint?: boolean | undefined; } | undefined; }>; /** * Type guard function for validating if a value is a Tool * @param value - The value to check * @returns True if the value matches the Tool schema */ export declare function isTool(value: unknown): value is Tool; //# sourceMappingURL=tool.d.ts.map