2024-07-21 05:45:02 +02:00
|
|
|
|
using Wino.Domain.Entities;
|
|
|
|
|
|
using Wino.Domain.Models.MailItem;
|
2024-04-18 01:44:37 +02:00
|
|
|
|
|
2024-07-21 05:45:02 +02:00
|
|
|
|
namespace Wino.Domain.Interfaces
|
2024-04-18 01:44:37 +02:00
|
|
|
|
{
|
|
|
|
|
|
public interface IThreadingStrategy
|
|
|
|
|
|
{
|
2024-04-30 00:04:59 +02:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Attach thread mails to the list.
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="items">Original mails.</param>
|
|
|
|
|
|
/// <returns>Original mails with thread mails.</returns>
|
2024-04-18 01:44:37 +02:00
|
|
|
|
Task<List<IMailItem>> ThreadItemsAsync(List<MailCopy> items);
|
|
|
|
|
|
bool ShouldThreadWithItem(IMailItem originalItem, IMailItem targetItem);
|
|
|
|
|
|
}
|
2024-07-21 05:45:02 +02:00
|
|
|
|
|
|
|
|
|
|
public interface IOutlookThreadingStrategy : IThreadingStrategy { }
|
|
|
|
|
|
|
|
|
|
|
|
public interface IGmailThreadingStrategy : IThreadingStrategy { }
|
|
|
|
|
|
|
|
|
|
|
|
public interface IImapThreadStrategy : IThreadingStrategy { }
|
2024-04-18 01:44:37 +02:00
|
|
|
|
}
|