using Cleanuparr.Domain.Entities; using Cleanuparr.Domain.Enums; namespace Cleanuparr.Infrastructure.Features.DownloadClient; public sealed record DownloadCheckResult { /// /// True if the download should be removed; otherwise false. /// public bool ShouldRemove { get; set; } public DeleteReason DeleteReason { get; set; } /// /// True if the download is private; otherwise false. /// public bool IsPrivate { get; set; } public bool Found { get; set; } /// /// True if the download should be deleted from the client; otherwise false. /// public bool DeleteFromClient { get; set; } /// /// True if the matching queue rule asked to change the category in the *arr instead of deleting; otherwise false. /// public bool ChangeCategory { get; set; } /// /// The matched torrent located in the download client during evaluation. Populated when /// is true so that callers (e.g. LazyLibrarian, which lacks an /// arr-driven removeFromClient equivalent) can act on it without a second lookup. /// public ITorrentItemWrapper? Torrent { get; set; } }