Files
Wino-Mail/Wino.Core.Domain/Interfaces/IContactService.cs
T

26 lines
1.1 KiB
C#
Raw Normal View History

using System.Collections.Generic;
2025-10-29 19:35:04 +01:00
using System.Linq;
using System.Threading.Tasks;
using MimeKit;
using Wino.Core.Domain.Entities.Shared;
using Wino.Core.Domain.Models.Contacts;
2025-02-16 11:54:23 +01:00
namespace Wino.Core.Domain.Interfaces;
public interface IContactService
{
2025-02-16 11:54:23 +01:00
Task<List<AccountContact>> GetAddressInformationAsync(string queryText);
Task<AccountContact> GetAddressInformationByAddressAsync(string address);
Task SaveAddressInformationAsync(MimeMessage message);
Task SaveAddressInformationAsync(IEnumerable<AccountContact> contacts);
2025-02-16 11:54:23 +01:00
Task<AccountContact> CreateNewContactAsync(string address, string displayName);
2025-10-29 19:35:04 +01:00
// New methods for ContactsPage
Task<List<AccountContact>> GetAllContactsAsync();
Task<List<AccountContact>> SearchContactsAsync(string searchQuery);
Task<PagedContactsResult> GetContactsPageAsync(int offset, int pageSize, string searchQuery = null, bool excludeRootContacts = false);
2025-10-29 19:35:04 +01:00
Task<AccountContact> UpdateContactAsync(AccountContact contact);
Task DeleteContactAsync(string address);
Task DeleteContactsAsync(IEnumerable<string> addresses);
}