HoldStatus::class, 'expires_at' => 'datetime', ]; } /** @return BelongsTo */ public function slot(): BelongsTo { return $this->belongsTo(Slot::class); } public function isExpired(): bool { return $this->expires_at->isPast(); } public function isActiveHold(): bool { return $this->status === HoldStatus::Held && ! $this->isExpired(); } }