*/ use HasFactory; protected $guarded = []; protected function casts(): array { return [ 'token' => 'encrypted', 'type' => ProviderType::class, ]; } public function networks(): HasMany { return $this->hasMany(Network::class); } public function servers(): HasMany { return $this->hasMany(Server::class); } public function service(): ?ServerProviderService { return match ($this->type) { ProviderType::HETZNER => app(HetznerService::class)->forProvider($this), default => null, }; } }