<?php  namespace App\Models;  use App\Traits\HasSlugs; use App\Traits\HasDomain; use App\Traits\HasStorage; use App\Contracts\HasMedia; use App\Traits\HasTranslations; use App\Traits\HasUserActivity; use App\Observers\RecipeObserver; use Illuminate\Database\Eloquent\Builder; use App\Contracts\HasDomain as HasDomainContract; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\BelongsToMany; use App\Contracts\HasTranslations as HasTranslationsContract; use App\Contracts\HasUserActivity as HasUserActivityContract;  /**  * @property-read int $activities_count  */ class Recipe extends Model implements \App\Contracts\HasSlugs, HasDomainContract, HasMedia, HasTranslationsContract, HasUserActivityContract { 	use HasTranslations, HasUserActivity, HasStorage, HasDomain, HasSlugs;  	public array $translatable = ['title', 'slug', 'description', 'serving_for', 'preparation_time', 'ingredients', 'preparation_description', 'marinating', 'serving_description', 'nutritional_values'];  	protected $casts = [ 		'title' => 'array', 		'slug' => 'array', 		'description' => 'array', 		'serving_for' => 'array', 		'preparation_time' => 'array', 		'ingredients' => 'array', 		'preparation_description' => 'array', 		'marinating' => 'array', 		'serving_description' => 'array', 		'nutritional_values' => 'array', 		'active' => 'boolean', 	];  	protected static function initObservers(): string 	{ 		return RecipeObserver::class; 	}  	public function isAvailable(): bool{}  	public function blogRecipePivot(): HasMany{}  	public function blogs(): BelongsToMany{}  	public function productRecipePivot(): HasMany{}  	public function products(): BelongsToMany{}  	public function category(): BelongsTo{}  	public function scopeIncludes(Builder $query): Builder{}  	public function getUserActivityTitle(): string{}  	public function getUserActivityUrl(): string{}  	public function scopeAvailable(Builder $query): Builder{}  	public function getDefaultMediaPrefix(): string{}  	public function mediaConfig(): array{}  	protected function getIncludes(): array{} }