using System; using System.Collections.Generic; using System.Threading.Tasks; using Wino.Core.Domain.Entities.Mail; namespace Wino.Core.Domain.Interfaces; public interface ISignatureService { /// /// Get one signature by Id. /// /// Signature Id. Task GetSignatureAsync(Guid signatureId); /// /// Returns all signatures for specified account. /// /// Account id Task> GetSignaturesAsync(Guid accountId); /// /// Creates a new signature for the account. /// /// Signature that should be created. It should contain ID and account to which it belongs. Task CreateSignatureAsync(AccountSignature signature); /// /// Creates a default Wino signature for the account. /// Needed only for initial account setup. /// /// Account Id. Task CreateDefaultSignatureAsync(Guid accountId); /// /// Updates existing signature. /// /// Signature that should be updated. It should contain ID and account to which it belongs. Task UpdateSignatureAsync(AccountSignature signature); /// /// Deletes existing signature. /// /// Signature that should be deleted. Task DeleteSignatureAsync(AccountSignature signature); }