<?php

declare(strict_types=1);

namespace ImovelZapAi\Authentication\Domain\Enums;

enum SystemRole: string
{
    case Admin = 'Admin';
    case Corretor = 'Corretor';
    case Gestor = 'Gestor';

    public function label(): string
    {
        return match ($this) {
            self::Admin => 'Administrador',
            self::Corretor => 'Corretor',
            self::Gestor => 'Gestor',
        };
    }

    /** @return list<string> */
    public static function values(): array
    {
        return array_column(self::cases(), 'value');
    }
}
