Represents a handle to a tool with typed outputs.
Output fields are placed at the TOP LEVEL of the handle, matching the platform's template syntax where outputs are accessed directly:
All tool types use the same mapped type — no conditional branching:
readonly ['output']
readonly ['provider', 'response', ...]
readonly string[]
Readonly
Internal
Tool name — hidden from IntelliSense
Output field names — used by PromptBuilder for type inference
Represents a handle to a tool with typed outputs.
Output fields are placed at the TOP LEVEL of the handle, matching the platform's template syntax where outputs are accessed directly:
All tool types use the same mapped type — no conditional branching:
readonly ['output']→ { output: ToolOutputRef }readonly ['provider', 'response', ...]→ { provider: ToolOutputRef, response: ToolOutputRef, ... }readonly string[](dynamic) → { [key: string]: ToolOutputRef }