*/ class ShopperEstablishmentCodeCast implements CastsAttributes { /** @param array $attributes */ public function get(Model $model, string $key, mixed $value, array $attributes): ShopperEstablishmentCode { if ($value === null || ! is_string($value)) { throw new \UnexpectedValueException('ShopperEstablishmentCode must be a string.'); } return new ShopperEstablishmentCode($value); } /** @param array $attributes */ public function set(Model $model, string $key, mixed $value, array $attributes): string { if (is_string($value)) { $value = new ShopperEstablishmentCode($value); } if (! $value instanceof ShopperEstablishmentCode) { throw new \UnexpectedValueException('The given value is not an instance of ShopperEstablishmentCode.'); } return $value->value; } }