'array', 'is_enabled' => 'boolean', 'installed_at' => 'datetime', 'updated_at_marketplace' => 'datetime']; public function package(): BelongsTo { return $this->belongsTo(MarketplacePackage::class, 'marketplace_package_id'); } public function installations(): HasMany { return $this->hasMany(Installation::class, 'installed_package_id'); } public function hasUpdate(): bool { return $this->package?->latest_version && version_compare($this->package->latest_version, $this->version, '>'); } }