# `ReqManagedAgents.TurnResult`
[🔗](https://github.com/cash-mckeeman/req_managed_agents/blob/v0.13.0/req_managed_agents/lib/req_managed_agents/turn_result.ex#L1)

The canonical outcome of ONE turn — what `Provider.normalize/1` returns.

# `t`

```elixir
@type t() :: %ReqManagedAgents.TurnResult{
  custom_tool_uses: [ReqManagedAgents.ToolUse.t()],
  events: [map()],
  server_tool_uses: [ReqManagedAgents.ToolUse.t()],
  stop_reason: String.t() | map() | atom() | nil,
  terminal: ReqManagedAgents.Provider.terminal(),
  text: String.t(),
  usage: ReqManagedAgents.Usage.t() | nil
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
