package llm // Response represents the result of a completion request. type Response struct { // Text is the assistant's text content. Empty if only tool calls. Text string // ToolCalls contains any tool invocations the assistant requested. ToolCalls []ToolCall // Usage contains token usage information (if available from provider). Usage *Usage // message is the full assistant message for this response. message Message } // Message returns the full assistant Message for this response, // suitable for appending to the conversation history. func (r Response) Message() Message { return r.message } // HasToolCalls returns true if the response contains tool call requests. func (r Response) HasToolCalls() bool { return len(r.ToolCalls) > 0 } // Usage captures token consumption. type Usage struct { InputTokens int OutputTokens int TotalTokens int }