*/ public function chatBodyExtras(): array; /** * Tokens this provider spends before it writes anything, which must be added to a max_tokens * budget or the caller's own request eats itself. Zero for providers that do not think first. */ public function tokenOverhead(): int; /** HTTP headers for a chat / streaming request, as an array of "Key: value" strings. */ public function headers(): array; /** Request body for a streaming chat completion. */ public function streamBody(string $prompt, float $temperature): array; }