using System.Collections.Generic; using System.Threading.Tasks; using Wino.Core.Domain.Entities; using Wino.Core.Domain.Models.Folders; using Wino.Core.Domain.Models.MailItem; namespace Wino.Core.Domain.Interfaces { public interface IThreadingStrategy { /// /// Attach thread mails to the list. /// /// Original mails. /// Original mails with thread mails. Task> ThreadItemsAsync(List items, IMailItemFolder threadingForFolder); bool ShouldThreadWithItem(IMailItem originalItem, IMailItem targetItem); } }