import * as z from "zod/v4"; import { ClosedEnum } from "../types/enums.js"; import { ChatContentCacheControl, ChatContentCacheControl$Outbound } from "./chatcontentcachecontrol.js"; import { ChatSearchModelsServerTool, ChatSearchModelsServerTool$Outbound } from "./chatsearchmodelsservertool.js"; import { ChatWebSearchShorthand, ChatWebSearchShorthand$Outbound } from "./chatwebsearchshorthand.js"; import { DatetimeServerTool, DatetimeServerTool$Outbound } from "./datetimeservertool.js"; import { ImageGenerationServerToolOpenRouter, ImageGenerationServerToolOpenRouter$Outbound } from "./imagegenerationservertoolopenrouter.js"; import { OpenRouterWebSearchServerTool, OpenRouterWebSearchServerTool$Outbound } from "./openrouterwebsearchservertool.js"; import { WebFetchServerTool, WebFetchServerTool$Outbound } from "./webfetchservertool.js"; /** * Function definition for tool calling */ export type ChatFunctionToolFunctionFunction = { /** * Function description for the model */ description?: string | undefined; /** * Function name (a-z, A-Z, 0-9, underscores, dashes, max 64 chars) */ name: string; /** * Function parameters as JSON Schema object */ parameters?: { [k: string]: any | null; } | undefined; /** * Enable strict schema adherence */ strict?: boolean | null | undefined; }; export declare const ChatFunctionToolType: { readonly Function: "function"; }; export type ChatFunctionToolType = ClosedEnum; export type ChatFunctionToolFunction = { /** * Cache control for the content part */ cacheControl?: ChatContentCacheControl | undefined; /** * Function definition for tool calling */ function: ChatFunctionToolFunctionFunction; type: ChatFunctionToolType; }; /** * Tool definition for function calling (regular function or OpenRouter built-in server tool) */ export type ChatFunctionTool = ChatFunctionToolFunction | DatetimeServerTool | ImageGenerationServerToolOpenRouter | ChatSearchModelsServerTool | WebFetchServerTool | OpenRouterWebSearchServerTool | ChatWebSearchShorthand; /** @internal */ export type ChatFunctionToolFunctionFunction$Outbound = { description?: string | undefined; name: string; parameters?: { [k: string]: any | null; } | undefined; strict?: boolean | null | undefined; }; /** @internal */ export declare const ChatFunctionToolFunctionFunction$outboundSchema: z.ZodType; export declare function chatFunctionToolFunctionFunctionToJSON(chatFunctionToolFunctionFunction: ChatFunctionToolFunctionFunction): string; /** @internal */ export declare const ChatFunctionToolType$outboundSchema: z.ZodEnum; /** @internal */ export type ChatFunctionToolFunction$Outbound = { cache_control?: ChatContentCacheControl$Outbound | undefined; function: ChatFunctionToolFunctionFunction$Outbound; type: string; }; /** @internal */ export declare const ChatFunctionToolFunction$outboundSchema: z.ZodType; export declare function chatFunctionToolFunctionToJSON(chatFunctionToolFunction: ChatFunctionToolFunction): string; /** @internal */ export type ChatFunctionTool$Outbound = ChatFunctionToolFunction$Outbound | DatetimeServerTool$Outbound | ImageGenerationServerToolOpenRouter$Outbound | ChatSearchModelsServerTool$Outbound | WebFetchServerTool$Outbound | OpenRouterWebSearchServerTool$Outbound | ChatWebSearchShorthand$Outbound; /** @internal */ export declare const ChatFunctionTool$outboundSchema: z.ZodType; export declare function chatFunctionToolToJSON(chatFunctionTool: ChatFunctionTool): string; //# sourceMappingURL=chatfunctiontool.d.ts.map