<?php  namespace App\Models;  use App\Traits\HasSlugs; use App\Traits\HasDomain; use App\Traits\IsProduct; use App\Traits\HasStorage; use App\Traits\IsClonable; use App\Contracts\HasMedia; use App\Observers\PastaObserver; use App\Http\Resources\PastaListResource; use Illuminate\Database\Eloquent\Builder; use App\Http\Resources\PastaSingleResource; use App\Contracts\HasSlugs as HasSlugsContract; use App\Contracts\HasDomain as HasDomainContract; use App\Contracts\IsProduct as IsProductContract; use App\Contracts\IsClonable as IsClonableContract; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsToMany;  /**  * @property bool $active  * @property float $price  * @property float $weight  */ class Pasta extends Model implements HasDomainContract, HasMedia, HasSlugsContract, IsClonableContract, IsProductContract { 	use IsProduct, HasSlugs, HasStorage,IsClonable, HasDomain;  	public array $translatable = ['title', 'slug', 'body', 'serving_description', 'nutritional_values'];  	protected $casts = [ 		'active' => 'boolean', 		'featured' => 'boolean', 		'available_in_store' => 'boolean', 		'body' => 'array', 		'serving_description' => 'array', 		'nutritional_values' => 'array', 		'discounted_price_valid_to' => 'datetime', 	];  	protected static function initObservers(): string 	{ 		return PastaObserver::class; 	}  	public function pastaEmblemPivot(): HasMany{}  	public function domain(): BelongsTo{}  	public function emblems(): BelongsToMany{}  	public function scopeAvailable(Builder $query): Builder{}  	public function isAvailable(): bool{}  	public function getName(): string{}  	public function getPrice(): float{}  	public function getWeight(): float{}  	public function getEditUrl(): string{}  	public function beforeCloneIsSaved(object $original): self{}  	public function afterCloneIsSaved(object $original): void{}  	public function getProductResource(): PastaSingleResource{}  	public function getProductListResource(): PastaListResource{}  	public function getPricePerPiece(): float{}  	public function getDefaultMediaPrefix(): string{}  	public function mediaConfig(): array{}  	protected function getIncludes(): array{} }