#if NET
using DigitalData.MessagingService.Application.Common.Dto.EmailAccounts;
namespace DigitalData.MessagingService.Infrastructure.Options;
///
/// Wrapper options class that holds a list of entries
/// bound from the EmailAccounts configuration section.
///
public class EmailAccountsOptions
{
public const string SectionName = "EmailAccounts";
///
/// The list of configured email accounts.
///
public required List Accounts { get; set; } = [];
///
/// How often the IMAP sync worker polls for new emails, in seconds.
/// Defaults to 300 seconds (5 minutes).
///
public int SyncIntervalSeconds { get; set; } = 300;
///
/// The minimum interval, in seconds, between forced IMAP sync operations regardless of idle state.
/// Defaults to 30 seconds (0.5 minute).
///
public int ForcedSyncIntervalSeconds { get; set; } = 30;
}
#endif