<?php
 declare(strict_types=1); namespace Square\Models; use stdClass; class BusinessBookingProfile implements \JsonSerializable { private $sellerId; private $createdAt; private $bookingEnabled; private $customerTimezoneChoice; private $bookingPolicy; private $allowUserCancel; private $businessAppointmentSettings; private $supportSellerLevelWrites; public function getSellerId(): ?string { return $this->sellerId; } public function setSellerId(?string $sellerId): void { $this->sellerId = $sellerId; } public function getCreatedAt(): ?string { return $this->createdAt; } public function setCreatedAt(?string $createdAt): void { $this->createdAt = $createdAt; } public function getBookingEnabled(): ?bool { return $this->bookingEnabled; } public function setBookingEnabled(?bool $bookingEnabled): void { $this->bookingEnabled = $bookingEnabled; } public function getCustomerTimezoneChoice(): ?string { return $this->customerTimezoneChoice; } public function setCustomerTimezoneChoice(?string $customerTimezoneChoice): void { $this->customerTimezoneChoice = $customerTimezoneChoice; } public function getBookingPolicy(): ?string { return $this->bookingPolicy; } public function setBookingPolicy(?string $bookingPolicy): void { $this->bookingPolicy = $bookingPolicy; } public function getAllowUserCancel(): ?bool { return $this->allowUserCancel; } public function setAllowUserCancel(?bool $allowUserCancel): void { $this->allowUserCancel = $allowUserCancel; } public function getBusinessAppointmentSettings(): ?BusinessAppointmentSettings { return $this->businessAppointmentSettings; } public function setBusinessAppointmentSettings(?BusinessAppointmentSettings $businessAppointmentSettings): void { $this->businessAppointmentSettings = $businessAppointmentSettings; } public function getSupportSellerLevelWrites(): ?bool { return $this->supportSellerLevelWrites; } public function setSupportSellerLevelWrites(?bool $supportSellerLevelWrites): void { $this->supportSellerLevelWrites = $supportSellerLevelWrites; } #[\ReturnTypeWillChange] public function jsonSerialize(bool $asArrayWhenEmpty = false) { $json = []; if (isset($this->sellerId)) { $json['seller_id'] = $this->sellerId; } if (isset($this->createdAt)) { $json['created_at'] = $this->createdAt; } if (isset($this->bookingEnabled)) { $json['booking_enabled'] = $this->bookingEnabled; } if (isset($this->customerTimezoneChoice)) { $json['customer_timezone_choice'] = $this->customerTimezoneChoice; } if (isset($this->bookingPolicy)) { $json['booking_policy'] = $this->bookingPolicy; } if (isset($this->allowUserCancel)) { $json['allow_user_cancel'] = $this->allowUserCancel; } if (isset($this->businessAppointmentSettings)) { $json['business_appointment_settings'] = $this->businessAppointmentSettings; } if (isset($this->supportSellerLevelWrites)) { $json['support_seller_level_writes'] = $this->supportSellerLevelWrites; } $json = array_filter($json, function ($val) { return $val !== null; }); return (!$asArrayWhenEmpty && empty($json)) ? new stdClass() : $json; } } 