'integer', 'catalog_item_id' => 'integer', 'variant_id' => 'integer', 'cantidad' => 'integer', ]; } /** * @return BelongsTo */ public function cart(): BelongsTo { return $this->belongsTo(Cart::class, 'cart_id'); } /** @return BelongsTo */ public function catalogItem(): BelongsTo { return $this->belongsTo(CatalogItem::class); } /** @return BelongsTo */ public function variant(): BelongsTo { return $this->belongsTo(Variant::class); } public function selectedItem(): CatalogItem|Variant|null { return $this->variant ?? $this->catalogItem; } }