'array', 'start_date' => 'date', 'due_date' => 'date', 'estimated_time' => 'decimal:2', 'actual_time' => 'decimal:2', ]; public function project(): BelongsTo { return $this->belongsTo(Project::class); } public function assignee(): BelongsTo { return $this->belongsTo(User::class, 'assignee_id'); } public function reporter(): BelongsTo { return $this->belongsTo(User::class, 'reporter_id'); } public function creator(): BelongsTo { return $this->belongsTo(User::class, 'created_by'); } public function checklists(): HasMany { return $this->hasMany(Checklist::class); } public function subtasks(): HasMany { return $this->hasMany(Subtask::class); } public function comments(): MorphMany { return $this->morphMany(Comment::class, 'commentable'); } public function files(): MorphMany { return $this->morphMany(File::class, 'fileable'); } public function sprints() { return $this->belongsToMany(Sprint::class, 'sprint_task')->withTimestamps(); } }