ToolCallConfirmationEvent
ToolCallConfirmationEvent = {
approved:true;input:JSONValue; } | {approved:false;input?:JSONValue; }
Sent by the client to approve or reject a tool call that was emitted with
requireConfirmation: true. Carries the user's decision and, when approved,
the (possibly edited) input the tool should execute with.
input is required when approved is true and optional when approved
is false. The discriminated union enforces this at compile time so
{ approved: true } (no input) is a type error.