'decimal:2', 'isActive' => 'boolean', 'allowOnlineBooking' => 'boolean']; } public function business(): BelongsTo { return $this->belongsTo(Business::class, 'businessId'); } public function category(): BelongsTo { return $this->belongsTo(ServiceCategory::class, 'categoryId'); } public function staff(): BelongsToMany { return $this->belongsToMany(StaffProfile::class, 'StaffService', 'serviceId', 'staffId')->withPivot(['priceOverride', 'durationOverrideMinutes']); } public function appointmentServices(): HasMany { return $this->hasMany(AppointmentService::class, 'serviceId'); } public function loyaltyEligibleFor(): HasMany { return $this->hasMany(LoyaltyEligibleService::class, 'serviceId'); } public function loyaltyProgrammesUsingAsFreeReward(): HasMany { return $this->hasMany(LoyaltyProgramme::class, 'freeServiceId'); } }