import * as z from "zod/v4"; import { ClosedEnum } from "../types/enums.js"; import { ToolCallStatus } from "./toolcallstatus.js"; export type FunctionCallItemSubagentItem = { type: string; additionalProperties?: { [k: string]: any; } | undefined; }; export declare const FunctionCallItemType: { readonly FunctionCall: "function_call"; }; export type FunctionCallItemType = ClosedEnum; /** * A function call initiated by the model */ export type FunctionCallItem = { arguments: string; /** * True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. */ async?: boolean | null | undefined; callId: string; id?: string | null | undefined; name: string; /** * Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) */ namespace?: string | null | undefined; status?: ToolCallStatus | null | undefined; /** * EXPERIMENTAL — subject to change without notice. String id that matches the `call_id` of the `openrouter:subagent` server tool call that spawned the subagent. Present on every `function_call` item the subagent projects; absent on ordinary function calls. */ subagentId?: string | null | undefined; /** * EXPERIMENTAL — subject to change without notice. The subagent's output items produced on this turn. Treat this as an opaque object; you must replay it in the request so that the subagent can continue execution of the tool with the same context. If a subagent created multiple parallel tool calls, only the first tool call will have this field. The other tool calls will only have `subagent_id`. Present only if the tool call originates from a subagent spawned by the `openrouter:subagent` server tool. */ subagentItems?: Array | null | undefined; type: FunctionCallItemType; }; /** @internal */ export type FunctionCallItemSubagentItem$Outbound = { type: string; [additionalProperties: string]: unknown; }; /** @internal */ export declare const FunctionCallItemSubagentItem$outboundSchema: z.ZodType; export declare function functionCallItemSubagentItemToJSON(functionCallItemSubagentItem: FunctionCallItemSubagentItem): string; /** @internal */ export declare const FunctionCallItemType$outboundSchema: z.ZodEnum; /** @internal */ export type FunctionCallItem$Outbound = { arguments: string; async?: boolean | null | undefined; call_id: string; id?: string | null | undefined; name: string; namespace?: string | null | undefined; status?: string | null | undefined; subagent_id?: string | null | undefined; subagent_items?: Array | null | undefined; type: string; }; /** @internal */ export declare const FunctionCallItem$outboundSchema: z.ZodType; export declare function functionCallItemToJSON(functionCallItem: FunctionCallItem): string; //# sourceMappingURL=functioncallitem.d.ts.map