<?php
 declare(strict_types=1); namespace Square\Models; use stdClass; class CatalogQueryRange implements \JsonSerializable { private $attributeName; private $attributeMinValue; private $attributeMaxValue; public function __construct(string $attributeName) { $this->attributeName = $attributeName; } public function getAttributeName(): string { return $this->attributeName; } public function setAttributeName(string $attributeName): void { $this->attributeName = $attributeName; } public function getAttributeMinValue(): ?int { return $this->attributeMinValue; } public function setAttributeMinValue(?int $attributeMinValue): void { $this->attributeMinValue = $attributeMinValue; } public function getAttributeMaxValue(): ?int { return $this->attributeMaxValue; } public function setAttributeMaxValue(?int $attributeMaxValue): void { $this->attributeMaxValue = $attributeMaxValue; } #[\ReturnTypeWillChange] public function jsonSerialize(bool $asArrayWhenEmpty = false) { $json = []; $json['attribute_name'] = $this->attributeName; if (isset($this->attributeMinValue)) { $json['attribute_min_value'] = $this->attributeMinValue; } if (isset($this->attributeMaxValue)) { $json['attribute_max_value'] = $this->attributeMaxValue; } $json = array_filter($json, function ($val) { return $val !== null; }); return (!$asArrayWhenEmpty && empty($json)) ? new stdClass() : $json; } } 