import * as z from "zod/v4"; import { AnthropicCacheControlDirective, AnthropicCacheControlDirective$Outbound } from "./anthropiccachecontroldirective.js"; export type MessagesToolRemovalBlockToolMcpToolsetReference = { serverName: string; type: "mcp_toolset_reference"; }; export type MessagesToolRemovalBlockToolMcpToolReference = { name: string; serverName: string; type: "mcp_tool_reference"; }; export type MessagesToolRemovalBlockToolToolReference = { name: string; type: "tool_reference"; }; export type MessagesToolRemovalBlockToolUnion = MessagesToolRemovalBlockToolToolReference | MessagesToolRemovalBlockToolMcpToolReference | MessagesToolRemovalBlockToolMcpToolsetReference; /** * Removes a tool from the conversation mid-conversation without invalidating the prompt cache. Only valid in `role: "system"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8. */ export type MessagesToolRemovalBlock = { /** * Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. */ cacheControl?: AnthropicCacheControlDirective | undefined; tool: MessagesToolRemovalBlockToolToolReference | MessagesToolRemovalBlockToolMcpToolReference | MessagesToolRemovalBlockToolMcpToolsetReference; type: "tool_removal"; }; /** @internal */ export type MessagesToolRemovalBlockToolMcpToolsetReference$Outbound = { server_name: string; type: "mcp_toolset_reference"; }; /** @internal */ export declare const MessagesToolRemovalBlockToolMcpToolsetReference$outboundSchema: z.ZodType; export declare function messagesToolRemovalBlockToolMcpToolsetReferenceToJSON(messagesToolRemovalBlockToolMcpToolsetReference: MessagesToolRemovalBlockToolMcpToolsetReference): string; /** @internal */ export type MessagesToolRemovalBlockToolMcpToolReference$Outbound = { name: string; server_name: string; type: "mcp_tool_reference"; }; /** @internal */ export declare const MessagesToolRemovalBlockToolMcpToolReference$outboundSchema: z.ZodType; export declare function messagesToolRemovalBlockToolMcpToolReferenceToJSON(messagesToolRemovalBlockToolMcpToolReference: MessagesToolRemovalBlockToolMcpToolReference): string; /** @internal */ export type MessagesToolRemovalBlockToolToolReference$Outbound = { name: string; type: "tool_reference"; }; /** @internal */ export declare const MessagesToolRemovalBlockToolToolReference$outboundSchema: z.ZodType; export declare function messagesToolRemovalBlockToolToolReferenceToJSON(messagesToolRemovalBlockToolToolReference: MessagesToolRemovalBlockToolToolReference): string; /** @internal */ export type MessagesToolRemovalBlockToolUnion$Outbound = MessagesToolRemovalBlockToolToolReference$Outbound | MessagesToolRemovalBlockToolMcpToolReference$Outbound | MessagesToolRemovalBlockToolMcpToolsetReference$Outbound; /** @internal */ export declare const MessagesToolRemovalBlockToolUnion$outboundSchema: z.ZodType; export declare function messagesToolRemovalBlockToolUnionToJSON(messagesToolRemovalBlockToolUnion: MessagesToolRemovalBlockToolUnion): string; /** @internal */ export type MessagesToolRemovalBlock$Outbound = { cache_control?: AnthropicCacheControlDirective$Outbound | undefined; tool: MessagesToolRemovalBlockToolToolReference$Outbound | MessagesToolRemovalBlockToolMcpToolReference$Outbound | MessagesToolRemovalBlockToolMcpToolsetReference$Outbound; type: "tool_removal"; }; /** @internal */ export declare const MessagesToolRemovalBlock$outboundSchema: z.ZodType; export declare function messagesToolRemovalBlockToJSON(messagesToolRemovalBlock: MessagesToolRemovalBlock): string; //# sourceMappingURL=messagestoolremovalblock.d.ts.map