*/ public function uniqueIds(): array { return ['uuid']; } protected function casts(): array { return [ 'status' => ReservationStatus::class, 'starts_at' => 'immutable_datetime', 'ends_at' => 'immutable_datetime', 'approval_deadline' => 'immutable_datetime', 'approved_at' => 'immutable_datetime', 'rejected_at' => 'immutable_datetime', 'cancelled_at' => 'immutable_datetime', ]; } /** @return BelongsTo */ public function requester(): BelongsTo { return $this->belongsTo(User::class, 'requester_id'); } /** @return HasMany */ public function items(): HasMany { return $this->hasMany(ReservationItem::class); } }