id; } /** * Get group status. * * @return int Group status * * @since 1.0.0 */ public function getStatus() : int { return $this->status; } /** * Set group status. * * @param int $status Group status * * @return void * * @throws InvalidEnumValue This exception is thrown if an invalid status is used * * @since 1.0.0 */ public function setStatus(int $status) : void { if (!GroupStatus::isValidValue($status)) { throw new InvalidEnumValue($status); } $this->status = $status; } /** * Get string representation. * * @return string Returns the json_encode of this object * * @since 1.0.0 */ public function __toString() : string { return (string) \json_encode($this->toArray()); } /** * {@inheritdoc} */ public function toArray() : array { return [ 'id' => $this->id, 'name' => $this->name, 'description' => $this->description, 'permissions' => $this->permissions, 'members' => $this->members, ]; } /** * Json serialize. * * @return array * * @since 1.0.0 */ /** * {@inheritdoc} */ public function jsonSerialize() : mixed { return $this->toArray(); } }