Optionalid: stringOptionalname: stringOptionalarg_string: stringOptionalfinished: booleanOptionalresult: ToolCallResultProtected Optional_Protected Optional_Protected Optional_Protected Optional_Protected_Protected Optional_Protected Optional_Protected Optional_Protected Optional_Protected Optional_Protected_Protected Optional_Protected Optional_Protected_ReadonlykindStatic ReadonlytypeTimeout in seconds for confirmation dialogs. 0 means no timeout.
Timeout in seconds for confirmation dialogs. 0 means no timeout.
Stable identifier for deduplication in pending interaction tracking.
Whether the interaction has been resolved (e.g., confirmed/denied, option selected).
Resolves when the tool call requires user confirmation (show Allow/Deny UI).
Resolves when the interaction is resolved. Used for cleanup in delegation chains.
Represents the content as a string. Returns undefined if the content
is purely informational and/or visual and should not be included in the overall
representation of the response.
Optionalreason: unknownMark the tool call as completed with the given result.
This is used to update the UI immediately when a tool finishes execution, without waiting for all parallel tool calls to complete. The language model batches tool results (via Promise.all) before yielding them to the stream, so without this early completion signal, the UI wouldn't update until all tools finish. The values set here will be overwritten by merge() when the language model eventually yields the results, but they should be identical.
Confirm the tool execution
Optionalreason: stringProtectedparseSignal that this tool call needs user confirmation. Resolves the needsUserConfirmation promise.
ProtectedresolveOptionalargs: stringOptionalfinished: booleanOptionalresult: ToolCallResultStaticis
Interface for ChatResponseContent parts that require user interaction. Content parts that implement this interface can be tracked by the delegation renderer without content-type-specific checks.