using ClaudeDo.Data.Models;
using TaskStatus = ClaudeDo.Data.Models.TaskStatus;

namespace ClaudeDo.Data.Filtering.Filters;

public sealed class ImportantFilter : ITaskListFilter
{
    public string Id => "smart:important";
    public bool Matches(TaskEntity t) => t.IsStarred;
    public bool ShouldCount(TaskEntity t) => t.IsStarred && t.Status != TaskStatus.Done;
    public bool MatchesAsContext(TaskEntity t, IReadOnlyList<TaskEntity> all) => false;
}
