using System; using SQLite; using Wino.Core.Domain.Enums; namespace Wino.Core.Domain.Entities { public class MailAccount { [PrimaryKey] public Guid Id { get; set; } /// /// Given name of the account in Wino. /// public string Name { get; set; } /// /// TODO: Display name of the authenticated user/account. /// API integrations will query this value from the API. /// IMAP is populated by user on setup dialog. /// public string ProfileName { get; set; } /// /// Account e-mail address. /// public string Address { get; set; } /// /// Provider type of the account. Outlook,Gmail etc... /// public MailProviderType ProviderType { get; set; } /// /// For tracking change delta. /// Gmail : historyId /// Outlook: deltaToken /// public string SynchronizationDeltaIdentifier { get; set; } /// /// Gets or sets the signature to be used for this account. /// Null if no signature should be used. /// public Guid? SignatureId { get; set; } /// /// Gets or sets whether the account has any reason for an interactive user action to fix continue operating. /// public AccountAttentionReason AttentionReason { get; set; } /// /// Gets or sets the id of the merged inbox this account belongs to. /// public Guid? MergedInboxId { get; set; } /// /// Contains the merged inbox this account belongs to. /// Ignored for all SQLite operations. /// [Ignore] public MergedInbox MergedInbox { get; set; } /// /// Populated only when account has custom server information. /// [Ignore] public CustomServerInformation ServerInformation { get; set; } /// /// Account preferences. /// [Ignore] public MailAccountPreferences Preferences { get; set; } } }