namespace QtCNETAPI.Models
{
    public class User
    {
        public string Id { get; set; } = string.Empty;
        public string Username { get; set; } = string.Empty;
        public string ProfilePicture { get; set; } = string.Empty;
        public string Bio { get; set; } = string.Empty;
        public string Role { get; set; } = string.Empty;
        public string PasswordHash { get; set; } = string.Empty;
        public string Email { get; set; } = string.Empty;
        public bool IsEmailVerified { get; set; } = false;
        public DateTime DateOfBirth { get; set; }
        public DateTime CreatedAt { get; set; }
        public int Status { get; set; } = 0;
        public int CurrencyAmount { get; set; } = 0;
        public int StockAmount { get; set; } = 0;
        public DateTime LastCurrencySpin { get; set; }
        public int ActiveProfileCosmetic { get; set; } = 0;
        public string CurrentRoomId { get; set; } = string.Empty;

        public virtual IEnumerable<RefreshToken>? RefreshTokens { get; }
        public virtual IEnumerable<Contact>? ContactsMade { get; }
        public virtual IEnumerable<Contact>? ContactsList { get; }
        public virtual IEnumerable<OwnedStoreItem>? OwnedStoreItems { get; }
    }
}
