'int', 'campaignName' => 'string', 'campaignStatus' => 'string', 'scheduledAt' => 'string', 'senderNumber' => 'string', 'stats' => 'WPMailSMTP\\Vendor\\SendinBlue\\Client\\Model\\WhatsappCampStats', 'template' => 'WPMailSMTP\\Vendor\\SendinBlue\\Client\\Model\\WhatsappCampTemplate', 'createdAt' => 'string', 'modifiedAt' => 'string']; /** * Array of property to format mappings. Used for (de)serialization * * @var string[] */ protected static $swaggerFormats = ['id' => 'int64', 'campaignName' => null, 'campaignStatus' => null, 'scheduledAt' => null, 'senderNumber' => null, 'stats' => null, 'template' => null, 'createdAt' => null, 'modifiedAt' => null]; /** * Array of property to type mappings. Used for (de)serialization * * @return array */ public static function swaggerTypes() { return self::$swaggerTypes; } /** * Array of property to format mappings. Used for (de)serialization * * @return array */ public static function swaggerFormats() { return self::$swaggerFormats; } /** * Array of attributes where the key is the local name, * and the value is the original name * * @var string[] */ protected static $attributeMap = ['id' => 'id', 'campaignName' => 'campaignName', 'campaignStatus' => 'campaignStatus', 'scheduledAt' => 'scheduledAt', 'senderNumber' => 'senderNumber', 'stats' => 'stats', 'template' => 'template', 'createdAt' => 'createdAt', 'modifiedAt' => 'modifiedAt']; /** * Array of attributes to setter functions (for deserialization of responses) * * @var string[] */ protected static $setters = ['id' => 'setId', 'campaignName' => 'setCampaignName', 'campaignStatus' => 'setCampaignStatus', 'scheduledAt' => 'setScheduledAt', 'senderNumber' => 'setSenderNumber', 'stats' => 'setStats', 'template' => 'setTemplate', 'createdAt' => 'setCreatedAt', 'modifiedAt' => 'setModifiedAt']; /** * Array of attributes to getter functions (for serialization of requests) * * @var string[] */ protected static $getters = ['id' => 'getId', 'campaignName' => 'getCampaignName', 'campaignStatus' => 'getCampaignStatus', 'scheduledAt' => 'getScheduledAt', 'senderNumber' => 'getSenderNumber', 'stats' => 'getStats', 'template' => 'getTemplate', 'createdAt' => 'getCreatedAt', 'modifiedAt' => 'getModifiedAt']; /** * Array of attributes where the key is the local name, * and the value is the original name * * @return array */ public static function attributeMap() { return self::$attributeMap; } /** * Array of attributes to setter functions (for deserialization of responses) * * @return array */ public static function setters() { return self::$setters; } /** * Array of attributes to getter functions (for serialization of requests) * * @return array */ public static function getters() { return self::$getters; } /** * The original name of the model. * * @return string */ public function getModelName() { return self::$swaggerModelName; } const CAMPAIGN_STATUS_DRAFT = 'draft'; const CAMPAIGN_STATUS_SCHEDULED = 'scheduled'; const CAMPAIGN_STATUS_PENDING = 'pending'; const CAMPAIGN_STATUS_APPROVED = 'approved'; const CAMPAIGN_STATUS_RUNNING = 'running'; const CAMPAIGN_STATUS_SUSPENDED = 'suspended'; const CAMPAIGN_STATUS_REJECTED = 'rejected'; const CAMPAIGN_STATUS_SENT = 'sent'; /** * Gets allowable values of the enum * * @return string[] */ public function getCampaignStatusAllowableValues() { return [self::CAMPAIGN_STATUS_DRAFT, self::CAMPAIGN_STATUS_SCHEDULED, self::CAMPAIGN_STATUS_PENDING, self::CAMPAIGN_STATUS_APPROVED, self::CAMPAIGN_STATUS_RUNNING, self::CAMPAIGN_STATUS_SUSPENDED, self::CAMPAIGN_STATUS_REJECTED, self::CAMPAIGN_STATUS_SENT]; } /** * Associative array for storing property values * * @var mixed[] */ protected $container = []; /** * Constructor * * @param mixed[] $data Associated array of property values * initializing the model */ public function __construct(array $data = null) { $this->container['id'] = isset($data['id']) ? $data['id'] : null; $this->container['campaignName'] = isset($data['campaignName']) ? $data['campaignName'] : null; $this->container['campaignStatus'] = isset($data['campaignStatus']) ? $data['campaignStatus'] : null; $this->container['scheduledAt'] = isset($data['scheduledAt']) ? $data['scheduledAt'] : null; $this->container['senderNumber'] = isset($data['senderNumber']) ? $data['senderNumber'] : null; $this->container['stats'] = isset($data['stats']) ? $data['stats'] : null; $this->container['template'] = isset($data['template']) ? $data['template'] : null; $this->container['createdAt'] = isset($data['createdAt']) ? $data['createdAt'] : null; $this->container['modifiedAt'] = isset($data['modifiedAt']) ? $data['modifiedAt'] : null; } /** * Show all the invalid properties with reasons. * * @return array invalid properties with reasons */ public function listInvalidProperties() { $invalidProperties = []; if ($this->container['id'] === null) { $invalidProperties[] = "'id' can't be null"; } if ($this->container['campaignName'] === null) { $invalidProperties[] = "'campaignName' can't be null"; } if ($this->container['campaignStatus'] === null) { $invalidProperties[] = "'campaignStatus' can't be null"; } $allowedValues = $this->getCampaignStatusAllowableValues(); if (!\is_null($this->container['campaignStatus']) && !\in_array($this->container['campaignStatus'], $allowedValues, \true)) { $invalidProperties[] = \sprintf("invalid value for 'campaignStatus', must be one of '%s'", \implode("', '", $allowedValues)); } if ($this->container['senderNumber'] === null) { $invalidProperties[] = "'senderNumber' can't be null"; } if ($this->container['template'] === null) { $invalidProperties[] = "'template' can't be null"; } if ($this->container['createdAt'] === null) { $invalidProperties[] = "'createdAt' can't be null"; } if ($this->container['modifiedAt'] === null) { $invalidProperties[] = "'modifiedAt' can't be null"; } return $invalidProperties; } /** * Validate all the properties in the model * return true if all passed * * @return bool True if all properties are valid */ public function valid() { return \count($this->listInvalidProperties()) === 0; } /** * Gets id * * @return int */ public function getId() { return $this->container['id']; } /** * Sets id * * @param int $id ID of the Whatsapp Campaign * * @return $this */ public function setId($id) { $this->container['id'] = $id; return $this; } /** * Gets campaignName * * @return string */ public function getCampaignName() { return $this->container['campaignName']; } /** * Sets campaignName * * @param string $campaignName Name of the Whatsapp Campaign * * @return $this */ public function setCampaignName($campaignName) { $this->container['campaignName'] = $campaignName; return $this; } /** * Gets campaignStatus * * @return string */ public function getCampaignStatus() { return $this->container['campaignStatus']; } /** * Sets campaignStatus * * @param string $campaignStatus Status of the Whatsapp Campaign * * @return $this */ public function setCampaignStatus($campaignStatus) { $allowedValues = $this->getCampaignStatusAllowableValues(); if (!\in_array($campaignStatus, $allowedValues, \true)) { throw new \InvalidArgumentException(\sprintf("Invalid value for 'campaignStatus', must be one of '%s'", \implode("', '", $allowedValues))); } $this->container['campaignStatus'] = $campaignStatus; return $this; } /** * Gets scheduledAt * * @return string */ public function getScheduledAt() { return $this->container['scheduledAt']; } /** * Sets scheduledAt * * @param string $scheduledAt UTC date-time on which Whatsapp campaign is scheduled. Should be in YYYY-MM-DDTHH:mm:ss.SSSZ format * * @return $this */ public function setScheduledAt($scheduledAt) { $this->container['scheduledAt'] = $scheduledAt; return $this; } /** * Gets senderNumber * * @return string */ public function getSenderNumber() { return $this->container['senderNumber']; } /** * Sets senderNumber * * @param string $senderNumber Sender of the Whatsapp Campaign * * @return $this */ public function setSenderNumber($senderNumber) { $this->container['senderNumber'] = $senderNumber; return $this; } /** * Gets stats * * @return \SendinBlue\Client\Model\WhatsappCampStats */ public function getStats() { return $this->container['stats']; } /** * Sets stats * * @param \SendinBlue\Client\Model\WhatsappCampStats $stats stats * * @return $this */ public function setStats($stats) { $this->container['stats'] = $stats; return $this; } /** * Gets template * * @return \SendinBlue\Client\Model\WhatsappCampTemplate */ public function getTemplate() { return $this->container['template']; } /** * Sets template * * @param \SendinBlue\Client\Model\WhatsappCampTemplate $template template * * @return $this */ public function setTemplate($template) { $this->container['template'] = $template; return $this; } /** * Gets createdAt * * @return string */ public function getCreatedAt() { return $this->container['createdAt']; } /** * Sets createdAt * * @param string $createdAt Creation UTC date-time of the SMS campaign (YYYY-MM-DDTHH:mm:ss.SSSZ) * * @return $this */ public function setCreatedAt($createdAt) { $this->container['createdAt'] = $createdAt; return $this; } /** * Gets modifiedAt * * @return string */ public function getModifiedAt() { return $this->container['modifiedAt']; } /** * Sets modifiedAt * * @param string $modifiedAt UTC date-time of last modification of the SMS campaign (YYYY-MM-DDTHH:mm:ss.SSSZ) * * @return $this */ public function setModifiedAt($modifiedAt) { $this->container['modifiedAt'] = $modifiedAt; return $this; } /** * Returns true if offset exists. False otherwise. * * @param integer $offset Offset * * @return boolean */ #[\ReturnTypeWillChange] public function offsetExists($offset) { return isset($this->container[$offset]); } /** * Gets offset. * * @param integer $offset Offset * * @return mixed */ #[\ReturnTypeWillChange] public function offsetGet($offset) { return isset($this->container[$offset]) ? $this->container[$offset] : null; } /** * Sets value based on offset. * * @param integer $offset Offset * @param mixed $value Value to be set * * @return void */ #[\ReturnTypeWillChange] public function offsetSet($offset, $value) { if (\is_null($offset)) { $this->container[] = $value; } else { $this->container[$offset] = $value; } } /** * Unsets offset. * * @param integer $offset Offset * * @return void */ #[\ReturnTypeWillChange] public function offsetUnset($offset) { unset($this->container[$offset]); } /** * Gets the string presentation of the object * * @return string */ public function __toString() { if (\defined('JSON_PRETTY_PRINT')) { // use JSON pretty print return \json_encode(\WPMailSMTP\Vendor\SendinBlue\Client\ObjectSerializer::sanitizeForSerialization($this), \JSON_PRETTY_PRINT); } return \json_encode(\WPMailSMTP\Vendor\SendinBlue\Client\ObjectSerializer::sanitizeForSerialization($this)); } }