*/ public readonly array $roles, /** @var list */ public readonly array $permissions, ) {} public static function fromSession(array $authData): self { $u = $authData['user'] ?? []; return new self( keycloakId: (string) ($u['keycloak_id'] ?? ''), username: (string) ($u['username'] ?? ''), email: (string) ($u['email'] ?? ''), displayName: (string) ($u['display_name'] ?? ''), roles: (array) ($u['roles'] ?? []), permissions: (array) ($u['permissions'] ?? []), ); } }