namespace AIStudio.Tools.Databases.IndexStore;
///
/// How the sync of a mailbox as a whole stands.
///
internal sealed class MailboxSyncStateEntity
{
public string DataSourceId { get; set; } = string.Empty;
///
/// When the last complete sync of the mailbox ended, or null until one did.
///
public DateTimeOffset? LastSyncCompletedUtc { get; set; }
///
/// How many mails a sync would remove from the index at once, held back until the user decides,
/// or null when nothing is held back.
///
///
/// Nothing on the server is touched either way. But mails removed from the index have to be
/// embedded again should they come back, which costs time and, with a cloud provider, money.
///
public int? PendingRemovalCount { get; set; }
///
/// When the user agreed to the held back removal, or null while they did not.
///
public DateTimeOffset? PendingRemovalApprovedUtc { get; set; }
}