. */ declare(strict_types=1); namespace App\Helpers\Trees; use JsonSerializable; final class TreeViewNodeState implements JsonSerializable { /** * @var bool|null */ private ?bool $disabled = null; /** * @var bool|null */ private ?bool $expanded = null; /** * @var bool|null */ private ?bool $selected = null; public function getDisabled(): ?bool { return $this->disabled; } public function setDisabled(?bool $disabled): self { $this->disabled = $disabled; return $this; } public function getExpanded(): ?bool { return $this->expanded; } public function setExpanded(?bool $expanded): self { $this->expanded = $expanded; return $this; } public function getSelected(): ?bool { return $this->selected; } public function setSelected(?bool $selected): self { $this->selected = $selected; return $this; } public function jsonSerialize(): array { $ret = []; if (null !== $this->selected) { $ret['selected'] = $this->selected; } if (null !== $this->disabled) { $ret['disabled'] = $this->disabled; } if (null !== $this->expanded) { $ret['expanded'] = $this->expanded; } return $ret; } }