<?php  namespace App\Models;  use App\Traits\HasTags; use App\Traits\HasSlugs; use App\Traits\HasStorage; use App\Contracts\HasMedia; use App\Traits\HasComments; use App\Contracts\HasAuthor; use App\Contracts\Commentable; use App\Observers\BlogObserver; use App\Traits\HasUserActivity; use App\Contracts\HasNotifications; use Illuminate\Database\Eloquent\Builder; use App\Traits\HasAuthor as TraitsHasAuthor; use App\Contracts\HasTags as HasTagsContract; use App\Contracts\HasSlugs as HasSlugsContract; use Illuminate\Database\Eloquent\Relations\BelongsTo; use App\Traits\HasNotifications as TraitsHasNotifications; use App\Contracts\HasUserActivity as HasUserActivityContract;  /**  * @property-read int $activities_count  */ class Blog extends Model implements Commentable, HasAuthor, HasMedia, HasNotifications, HasSlugsContract, HasTagsContract, HasUserActivityContract { 	use HasStorage, HasTags, HasUserActivity, HasSlugs, HasComments, TraitsHasNotifications, TraitsHasAuthor;  	public array $translatable = ['title', 'slug', 'body', 'short_description'];  	protected $perPage = 10;  	protected $casts = [ 		'title' => 'array', 		'slug' => 'array', 		'body' => 'array', 		'featured' => 'boolean', 		'published_at' => 'datetime', 	];  	protected static function initObservers(): string 	{ 		return BlogObserver::class; 	}  	public function isAvailable(): bool{}  	public function scopeAvailable(Builder $query): Builder{}  	public function scopeIncludeCounts(Builder $query): Builder{}  	public function scopeIncludesExtra(Builder $query): Builder{}  	public function scopeAvailableForTags(Builder $query): Builder{}  	public function scopeSearch(object $query, ?string $search = null): Builder{}  	public function getDefaultMediaPrefix(): string{}  	public function mediaConfig(): array{}  	public function getUserActivityTitle(): string{}  	public function getUserActivityUrl(): string{}  	public function setPublishedAtAttribute(?string $value): void{}  	public function author(): BelongsTo{}  	public function getAuthorName(): ?string{}  	public function getCommentRoutePrefix(): string{}  	public function getEditView(): string{}  	public function getAppDeeplinkUrl(?string $uri = null): string{}  	protected function getIncludes(): array{} }