$permissions */ public function __construct( public bool $allowed, public ?string $reason, public array $permissions, ) {} /** * @return array{allowed: bool, reason: string|null, permissions: array} */ public function toArray(): array { return [ 'allowed' => $this->allowed, 'reason' => $this->reason, 'permissions' => $this->permissions, ]; } }