Skip to content

Type Alias: ApprovalDecision

ApprovalDecision = { approved: true; input: unknown; messageId?: string; runId?: string; toolCallId: string; toolName: string; } | { approved: false; input: unknown; messageId?: string; reason: string; runId?: string; toolCallId: string; toolName: string; }

Payload ChatViewProps.onResolveToolApproval receives.

{ approved: true; input: unknown; messageId?: string; runId?: string; toolCallId: string; toolName: string; }

approved: true

input: unknown

optional messageId?: string

Assistant UI message that owns the approval card.

optional runId?: string

Mastra run id required to resume the suspended workflow. Native suspended-run discovery restores it for persisted approvals.

toolCallId: string

toolName: string


{ approved: false; input: unknown; messageId?: string; reason: string; runId?: string; toolCallId: string; toolName: string; }

approved: false

input: unknown

optional messageId?: string

Assistant UI message that owns the approval card.

reason: string

optional runId?: string

toolCallId: string

toolName: string