using System;
using SQLite;
namespace Wino.Core.Domain.Entities
{
public class RemoteAccountAlias
{
///
/// Display address of the alias.
///
public string AliasAddress { get; set; }
///
/// Address to be included in Reply-To header when alias is used for sending messages.
///
public string ReplyToAddress { get; set; }
///
/// Whether this alias is the primary alias for the account.
///
public bool IsPrimary { get; set; }
///
/// Whether the alias is verified by the server.
/// Only Gmail aliases are verified for now.
/// Non-verified alias messages might be rejected by SMTP server.
///
public bool IsVerified { get; set; }
///
/// Whether this alias is the root alias for the account.
/// Root alias means the first alias that was created for the account.
/// It can't be deleted or changed.
///
public bool IsRootAlias { get; set; }
}
public class MailAccountAlias : RemoteAccountAlias
{
///
/// Unique Id for the alias.
///
[PrimaryKey]
public Guid Id { get; set; }
///
/// Account id that this alias is attached to.
///
public Guid AccountId { get; set; }
///
/// Root aliases can't be deleted.
///
public bool CanDelete => !IsRootAlias;
}
}