namespace AIStudio.Tools.Databases.IndexStore; /// /// One place on the server where a mail lies. /// /// /// A mail can lie in more than one folder, and moving it changes only its locations, never its /// embedding. The flags are kept here, not with the mail, because IMAP keeps them per folder: a /// copy in another folder has flags of its own. /// internal sealed class MailLocationEntity { public int Id { get; set; } public string ParentFileId { get; set; } = string.Empty; public int FolderId { get; set; } /// /// The UID of the mail within its folder, valid for the UIDVALIDITY of that folder. /// public long Uid { get; set; } public bool IsSeen { get; set; } public bool IsFlagged { get; set; } public bool IsAnswered { get; set; } public MailMessageEntity? Message { get; set; } public MailFolderEntity? Folder { get; set; } }