true, default => false, }; } /** * Check if registration can be retried */ public function canRetry(): bool { return $this === self::FAILED; } /** * Get badge color for UI */ public function getBadgeColor(): string { return match ($this) { self::PENDING => 'yellow', self::COMPLETED => 'green', self::FAILED => 'red', self::REVOKED => 'gray', }; } /** * Get display label */ public function getLabel(): string { return match ($this) { self::PENDING => 'Pending', self::COMPLETED => 'Completed', self::FAILED => 'Failed', self::REVOKED => 'Revoked', }; } }