'string', 'eventDate' => 'string', 'identifiers' => '\Brevo\Client\Model\EventIdentifiers', 'contactProperties' => 'object', 'eventProperties' => 'object' ]; /** * Array of property to format mappings. Used for (de)serialization * * @var string[] */ protected static $swaggerFormats = [ 'eventName' => null, 'eventDate' => null, 'identifiers' => null, 'contactProperties' => null, 'eventProperties' => 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 = [ 'eventName' => 'event_name', 'eventDate' => 'event_date', 'identifiers' => 'identifiers', 'contactProperties' => 'contact_properties', 'eventProperties' => 'event_properties' ]; /** * Array of attributes to setter functions (for deserialization of responses) * * @var string[] */ protected static $setters = [ 'eventName' => 'setEventName', 'eventDate' => 'setEventDate', 'identifiers' => 'setIdentifiers', 'contactProperties' => 'setContactProperties', 'eventProperties' => 'setEventProperties' ]; /** * Array of attributes to getter functions (for serialization of requests) * * @var string[] */ protected static $getters = [ 'eventName' => 'getEventName', 'eventDate' => 'getEventDate', 'identifiers' => 'getIdentifiers', 'contactProperties' => 'getContactProperties', 'eventProperties' => 'getEventProperties' ]; /** * 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; } /** * 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['eventName'] = isset($data['eventName']) ? $data['eventName'] : null; $this->container['eventDate'] = isset($data['eventDate']) ? $data['eventDate'] : null; $this->container['identifiers'] = isset($data['identifiers']) ? $data['identifiers'] : null; $this->container['contactProperties'] = isset($data['contactProperties']) ? $data['contactProperties'] : null; $this->container['eventProperties'] = isset($data['eventProperties']) ? $data['eventProperties'] : null; } /** * Show all the invalid properties with reasons. * * @return array invalid properties with reasons */ public function listInvalidProperties() { $invalidProperties = []; if ($this->container['eventName'] === null) { $invalidProperties[] = "'eventName' can't be null"; } if ($this->container['identifiers'] === null) { $invalidProperties[] = "'identifiers' 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 eventName * * @return string */ public function getEventName() { return $this->container['eventName']; } /** * Sets eventName * * @param string $eventName The name of the event that occurred. This is how you will find your event in Brevo. Limited to 255 characters, alphanumerical characters and - _ only. * * @return $this */ public function setEventName($eventName) { $this->container['eventName'] = $eventName; return $this; } /** * Gets eventDate * * @return string */ public function getEventDate() { return $this->container['eventDate']; } /** * Sets eventDate * * @param string $eventDate Timestamp of when the event occurred (e.g. \"2024-01-24T17:39:57+01:00\"). If no value is passed, the timestamp of the event creation is used. * * @return $this */ public function setEventDate($eventDate) { $this->container['eventDate'] = $eventDate; return $this; } /** * Gets identifiers * * @return \Brevo\Client\Model\EventIdentifiers */ public function getIdentifiers() { return $this->container['identifiers']; } /** * Sets identifiers * * @param \Brevo\Client\Model\EventIdentifiers $identifiers identifiers * * @return $this */ public function setIdentifiers($identifiers) { $this->container['identifiers'] = $identifiers; return $this; } /** * Gets contactProperties * * @return object */ public function getContactProperties() { return $this->container['contactProperties']; } /** * Sets contactProperties * * @param object $contactProperties Properties defining the state of the contact associated to this event. Useful to update contact attributes defined in your contacts database while passing the event. For example: **\"FIRSTNAME\": \"Jane\" , \"AGE\": 37** * * @return $this */ public function setContactProperties($contactProperties) { $this->container['contactProperties'] = $contactProperties; return $this; } /** * Gets eventProperties * * @return object */ public function getEventProperties() { return $this->container['eventProperties']; } /** * Sets eventProperties * * @param object $eventProperties Properties of the event. Top level properties and nested properties can be used to better segment contacts and personalise workflow conditions. The following field type are supported: string, number, boolean (true/false), date (Timestamp e.g. \"2024-01-24T17:39:57+01:00\"). Keys are limited to 255 characters, alphanumerical characters and - _ only. Size is limited to 50Kb. * * @return $this */ public function setEventProperties($eventProperties) { $this->container['eventProperties'] = $eventProperties; 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( ObjectSerializer::sanitizeForSerialization($this), JSON_PRETTY_PRINT ); } return json_encode(ObjectSerializer::sanitizeForSerialization($this)); } }