declare (strict_types=1); namespace WPForms\Vendor\Square\Models; use stdClass; /** * Represents an accrual rule, which defines how buyers can earn points from the base [loyalty * program]($m/LoyaltyProgram). */ class LoyaltyProgramAccrualRule implements \JsonSerializable { /** * @var string */ private $accrualType; /** * @var array */ private $points = []; /** * @var LoyaltyProgramAccrualRuleVisitData|null */ private $visitData; /** * @var LoyaltyProgramAccrualRuleSpendData|null */ private $spendData; /** * @var LoyaltyProgramAccrualRuleItemVariationData|null */ private $itemVariationData; /** * @var LoyaltyProgramAccrualRuleCategoryData|null */ private $categoryData; /** * @param string $accrualType */ public function __construct(string $accrualType) { $this->accrualType = $accrualType; } /** * Returns Accrual Type. * The type of the accrual rule that defines how buyers can earn points. */ public function getAccrualType() : string { return $this->accrualType; } /** * Sets Accrual Type. * The type of the accrual rule that defines how buyers can earn points. * * @required * @maps accrual_type */ public function setAccrualType(string $accrualType) : void { $this->accrualType = $accrualType; } /** * Returns Points. * The number of points that * buyers earn based on the `accrual_type`. */ public function getPoints() : ?int { if (\count($this->points) == 0) { return null; } return $this->points['value']; } /** * Sets Points. * The number of points that * buyers earn based on the `accrual_type`. * * @maps points */ public function setPoints(?int $points) : void { $this->points['value'] = $points; } /** * Unsets Points. * The number of points that * buyers earn based on the `accrual_type`. */ public function unsetPoints() : void { $this->points = []; } /** * Returns Visit Data. * Represents additional data for rules with the `VISIT` accrual type. */ public function getVisitData() : ?LoyaltyProgramAccrualRuleVisitData { return $this->visitData; } /** * Sets Visit Data. * Represents additional data for rules with the `VISIT` accrual type. * * @maps visit_data */ public function setVisitData(?LoyaltyProgramAccrualRuleVisitData $visitData) : void { $this->visitData = $visitData; } /** * Returns Spend Data. * Represents additional data for rules with the `SPEND` accrual type. */ public function getSpendData() : ?LoyaltyProgramAccrualRuleSpendData { return $this->spendData; } /** * Sets Spend Data. * Represents additional data for rules with the `SPEND` accrual type. * * @maps spend_data */ public function setSpendData(?LoyaltyProgramAccrualRuleSpendData $spendData) : void { $this->spendData = $spendData; } /** * Returns Item Variation Data. * Represents additional data for rules with the `ITEM_VARIATION` accrual type. */ public function getItemVariationData() : ?LoyaltyProgramAccrualRuleItemVariationData { return $this->itemVariationData; } /** * Sets Item Variation Data. * Represents additional data for rules with the `ITEM_VARIATION` accrual type. * * @maps item_variation_data */ public function setItemVariationData(?LoyaltyProgramAccrualRuleItemVariationData $itemVariationData) : void { $this->itemVariationData = $itemVariationData; } /** * Returns Category Data. * Represents additional data for rules with the `CATEGORY` accrual type. */ public function getCategoryData() : ?LoyaltyProgramAccrualRuleCategoryData { return $this->categoryData; } /** * Sets Category Data. * Represents additional data for rules with the `CATEGORY` accrual type. * * @maps category_data */ public function setCategoryData(?LoyaltyProgramAccrualRuleCategoryData $categoryData) : void { $this->categoryData = $categoryData; } /** * Encode this object to JSON * * @param bool $asArrayWhenEmpty Whether to serialize this model as an array whenever no fields * are set. (default: false) * * @return array|stdClass */ #[\ReturnTypeWillChange] // @phan-suppress-current-line PhanUndeclaredClassAttribute for (php < 8.1) public function jsonSerialize(bool $asArrayWhenEmpty = \false) { $json = []; $json['accrual_type'] = $this->accrualType; if (!empty($this->points)) { $json['points'] = $this->points['value']; } if (isset($this->visitData)) { $json['visit_data'] = $this->visitData; } if (isset($this->spendData)) { $json['spend_data'] = $this->spendData; } if (isset($this->itemVariationData)) { $json['item_variation_data'] = $this->itemVariationData; } if (isset($this->categoryData)) { $json['category_data'] = $this->categoryData; } $json = \array_filter($json, function ($val) { return $val !== null; }); return !$asArrayWhenEmpty && empty($json) ? new stdClass() : $json; } } Slots online – Reeko Furniture Inc
  • Home
  • ABOUT
  • CATALOG
  • NEWSLETTER
  • FAQs
  • Contact Us
Reeko Furniture Inc Reeko Furniture Inc
  • NEW ARRIVALS
Menu
Reeko Furniture Inc Reeko Furniture Inc

Slots online

Home » Archive by Category "Slots online"
26 Nov
Slots online

Reseña de Balloon de SmartSoft: Un juego de casino emocionante para jugadores en México

  • November 26, 2025
  • By author-avatar Becca Distefano
  • 0 comments
 Balloon, desarrollado por SmartSoft Gaming, es un juego de casino en línea que ha captado la atención de los jugadores mexicanos por...

Continue reading

05 Sep
Slots online

Minas Turbo Games: reseña completa de esta variante exclusiva de Spribe

  • September 5, 2025
  • By author-avatar Becca Distefano
  • 0 comments
 Minas Turbo Games se ha convertido en una de las variantes más emocionantes del popular juego minas desarrollado por Spribe‚ especia...

Continue reading

[html_block id="1742"]

Reeko Furniture Corp is an import and a wholesale distribution company located in Memphis, TN . We specialized in Residential Furniture wholesale.

1325 Farmville Rd. Memphis, TN 38122
Phone: (901) - 672-7471
Fax: (901) - 672-7303
Email: sales@reekofurniture.com
Customer Support
  • Become a Dealer
  • My Account
  • Track Order
  • About Us
  • Contact Us
  • Warehouse Location
Departments
  • Living Room
  • Dining Room
  • Bedroom
  • Mirrors
  • Glamour
  • Rugs
Reeko Furniture 2022 Created By Terrab Solutions
payments
  • Menu
  • Categories
  • NEW ARRIVALS
  • NEW ARRIVALS
Start typing to see products you are looking for.