status; } public function withStatus($code, $reasonPhrase = ''): self { $clone = clone $this; $clone->status = $code; return $clone; } public function getBody(): Stream { return $this->body; } public function withBody(\Psr\Http\Message\StreamInterface $body): self { $clone = clone $this; $clone->body = $body; return $clone; } public function getHeaders(): array { return $this->headers; } public function hasHeader($name): bool { return isset($this->headers[strtolower($name)]); } public function getHeader($name): array { return $this->headers[strtolower($name)] ?? []; } public function getHeaderLine($name): string { return implode(',', $this->getHeader($name)); } public function withHeader($name, $value): self { $clone = clone $this; $clone->headers[strtolower($name)] = (array)$value; return $clone; } public function withAddedHeader($name, $value): self { $clone = clone $this; $clone->headers[strtolower($name)][] = $value; return $clone; } public function withoutHeader($name): self { $clone = clone $this; unset($clone->headers[strtolower($name)]); return $clone; } public function getProtocolVersion(): string { return $this->protocol; } public function withProtocolVersion($version): self { $clone = clone $this; $clone->protocol = $version; return $clone; } public function getReasonPhrase(): string { return ''; } }