key = $key; $this->args = $args; } public function getKey(): string { return $this->key; } public function getArgs(): array { return $this->args; } public function toArray(): array { return [ 'key' => $this->getKey(), 'args' => $this->getArgs(), ]; } public static function fromArray(array $data): self { return new self($data['key'], $data['args']); } }