namespace ScadaLink.NotificationService; /// /// Abstraction over SMTP client for testability. /// public interface ISmtpClientWrapper { Task ConnectAsync(string host, int port, bool useTls, CancellationToken cancellationToken = default); Task AuthenticateAsync(string authType, string? credentials, CancellationToken cancellationToken = default); Task SendAsync(string from, IEnumerable bccRecipients, string subject, string body, CancellationToken cancellationToken = default); Task DisconnectAsync(CancellationToken cancellationToken = default); }