%PDF- %GIF98; %PNG;
Server : ApacheSystem : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64 User : addictionfreeind ( 1003) PHP Version : 7.2.34 Disable Function : exec,passthru,shell_exec,system Directory : /home/addictionfreeind/public_html/admin1/vendor/square/square/src/Models/ |
Upload File : |
<?php
declare(strict_types=1);
namespace Square\Models;
use stdClass;
/**
* A list of modifiers applicable to items at the time of sale.
*
* For example, a "Condiments" modifier list applicable to a "Hot Dog" item
* may contain "Ketchup", "Mustard", and "Relish" modifiers.
* Use the `selection_type` field to specify whether or not multiple selections from
* the modifier list are allowed.
*/
class CatalogModifierList implements \JsonSerializable
{
/**
* @var string|null
*/
private $name;
/**
* @var int|null
*/
private $ordinal;
/**
* @var string|null
*/
private $selectionType;
/**
* @var CatalogObject[]|null
*/
private $modifiers;
/**
* Returns Name.
*
* The name for the `CatalogModifierList` instance. This is a searchable attribute for use in
* applicable query filters, and its value length is of Unicode code points.
*/
public function getName(): ?string
{
return $this->name;
}
/**
* Sets Name.
*
* The name for the `CatalogModifierList` instance. This is a searchable attribute for use in
* applicable query filters, and its value length is of Unicode code points.
*
* @maps name
*/
public function setName(?string $name): void
{
$this->name = $name;
}
/**
* Returns Ordinal.
*
* Determines where this modifier list appears in a list of `CatalogModifierList` values.
*/
public function getOrdinal(): ?int
{
return $this->ordinal;
}
/**
* Sets Ordinal.
*
* Determines where this modifier list appears in a list of `CatalogModifierList` values.
*
* @maps ordinal
*/
public function setOrdinal(?int $ordinal): void
{
$this->ordinal = $ordinal;
}
/**
* Returns Selection Type.
*
* Indicates whether a CatalogModifierList supports multiple selections.
*/
public function getSelectionType(): ?string
{
return $this->selectionType;
}
/**
* Sets Selection Type.
*
* Indicates whether a CatalogModifierList supports multiple selections.
*
* @maps selection_type
*/
public function setSelectionType(?string $selectionType): void
{
$this->selectionType = $selectionType;
}
/**
* Returns Modifiers.
*
* The options included in the `CatalogModifierList`.
* You must include at least one `CatalogModifier`.
* Each CatalogObject must have type `MODIFIER` and contain
* `CatalogModifier` data.
*
* @return CatalogObject[]|null
*/
public function getModifiers(): ?array
{
return $this->modifiers;
}
/**
* Sets Modifiers.
*
* The options included in the `CatalogModifierList`.
* You must include at least one `CatalogModifier`.
* Each CatalogObject must have type `MODIFIER` and contain
* `CatalogModifier` data.
*
* @maps modifiers
*
* @param CatalogObject[]|null $modifiers
*/
public function setModifiers(?array $modifiers): void
{
$this->modifiers = $modifiers;
}
/**
* Encode this object to JSON
*
* @param bool $asArrayWhenEmpty Whether to serialize this model as an array whenever no fields
* are set. (default: false)
*
* @return mixed
*/
public function jsonSerialize(bool $asArrayWhenEmpty = false)
{
$json = [];
if (isset($this->name)) {
$json['name'] = $this->name;
}
if (isset($this->ordinal)) {
$json['ordinal'] = $this->ordinal;
}
if (isset($this->selectionType)) {
$json['selection_type'] = $this->selectionType;
}
if (isset($this->modifiers)) {
$json['modifiers'] = $this->modifiers;
}
$json = array_filter($json, function ($val) {
return $val !== null;
});
return (!$asArrayWhenEmpty && empty($json)) ? new stdClass() : $json;
}
}