method; } public function setMethod(string $method): void { $this->method = $method; } protected function getPath(): string { return $this->path; } public function setPath(string $path): void { $this->path = $path; } protected function getParams(): array { return $this->params; } public function setParams(array $params): void { $this->params = $params; } public function setParam(string $name, mixed $value): void { $this->params[$name] = $value; } public function removeParam(string $name): void { unset($this->params[$name]); } protected function getCookies(): array { return $this->cookies; } public function setCookies(array $cookies): void { $this->cookies = $cookies; } public function setCookie(string $name, mixed $value): void { $this->cookies[$name] = $value; } public function removeCookie(string $name): void { unset($this->cookies[$name]); } public function toRequest(): HttpRequest { return new HttpRequest( $this->getHttpVersion(), $this->getMethod(), $this->getPath(), $this->getParams(), $this->getCookies(), $this->getHeaders(), $this->getContent() ); } }