using Wino.Domain.Entities;
using Wino.Domain.Models.MailItem;
namespace Wino.Domain.Interfaces
{
public interface IThreadingStrategy
{
///
/// Attach thread mails to the list.
///
/// Original mails.
/// Original mails with thread mails.
Task> ThreadItemsAsync(List items);
bool ShouldThreadWithItem(IMailItem originalItem, IMailItem targetItem);
}
public interface IOutlookThreadingStrategy : IThreadingStrategy { }
public interface IGmailThreadingStrategy : IThreadingStrategy { }
public interface IImapThreadStrategy : IThreadingStrategy { }
}