addType('appid', 'string'); $this->addType('name', 'string'); $this->addType('display_name', 'string'); $this->addType('icon', 'string'); $this->addType('admin_required', 'integer'); if (isset($params['id'])) { $this->setId($params['id']); } if (isset($params['appid'])) { $this->setAppid($params['appid']); } if (isset($params['name'])) { $this->setName($params['name']); } if (isset($params['display_name'])) { $this->setDisplayName($params['display_name']); } if (isset($params['icon'])) { $this->setIcon($params['icon']); } if (isset($params['admin_required'])) { $this->setAdminRequired($params['admin_required']); } } public function jsonSerialize(): array { return [ 'id' => $this->getId(), 'appid' => $this->getAppid(), 'name' => $this->getName(), 'display_name' => $this->getDisplayName(), 'icon' => $this->getIcon(), 'admin_required' => $this->getAdminRequired(), ]; } }