using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Microsoft.EntityFrameworkCore; namespace Spacebar.Db.Models; [Table("users")] [Index("SettingsIndex", Name = "REL_0c14beb78d8c5ccba66072adbc", IsUnique = true)] public partial class User { [Key] [Column("id", TypeName = "character varying")] public string Id { get; set; } = null!; [Column("username", TypeName = "character varying")] public string Username { get; set; } = null!; [Column("discriminator", TypeName = "character varying")] public string Discriminator { get; set; } = null!; [Column("avatar", TypeName = "character varying")] public string? Avatar { get; set; } [Column("accent_color")] public int? AccentColor { get; set; } [Column("banner", TypeName = "character varying")] public string? Banner { get; set; } [Column("theme_colors")] public string? ThemeColors { get; set; } [Column("pronouns", TypeName = "character varying")] public string? Pronouns { get; set; } [Column("phone", TypeName = "character varying")] public string? Phone { get; set; } [Column("desktop")] public bool Desktop { get; set; } [Column("mobile")] public bool Mobile { get; set; } [Column("premium")] public bool Premium { get; set; } [Column("premium_type")] public int PremiumType { get; set; } [Column("bot")] public bool Bot { get; set; } [Column("bio", TypeName = "character varying")] public string Bio { get; set; } = null!; [Column("system")] public bool System { get; set; } [Column("nsfw_allowed")] public bool NsfwAllowed { get; set; } [Column("mfa_enabled")] public bool MfaEnabled { get; set; } [Column("webauthn_enabled")] public bool WebauthnEnabled { get; set; } [Column("totp_secret", TypeName = "character varying")] public string? TotpSecret { get; set; } [Column("totp_last_ticket", TypeName = "character varying")] public string? TotpLastTicket { get; set; } [Column("created_at", TypeName = "timestamp without time zone")] public DateTime CreatedAt { get; set; } [Column("premium_since", TypeName = "timestamp without time zone")] public DateTime? PremiumSince { get; set; } [Column("verified")] public bool Verified { get; set; } [Column("disabled")] public bool Disabled { get; set; } [Column("deleted")] public bool Deleted { get; set; } [Column("email", TypeName = "character varying")] public string? Email { get; set; } [Column("flags", TypeName = "character varying")] public string Flags { get; set; } [Column("public_flags")] public ulong PublicFlags { get; set; } [Column("purchased_flags")] public int PurchasedFlags { get; set; } [Column("premium_usage_flags")] public int PremiumUsageFlags { get; set; } [Column("rights")] public ulong Rights { get; set; } [Column("data")] public string Data { get; set; } = null!; [Column("fingerprints")] public string Fingerprints { get; set; } = null!; [Column("extended_settings")] public string ExtendedSettings { get; set; } = null!; [Column("badge_ids")] public string? BadgeIds { get; set; } [Column("settingsIndex")] public int? SettingsIndex { get; set; } [InverseProperty("BotUser")] public virtual Application? ApplicationBotUser { get; set; } [InverseProperty("Owner")] public virtual ICollection ApplicationOwners { get; set; } = new List(); [InverseProperty("Target")] public virtual ICollection AuditLogTargets { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection AuditLogUsers { get; set; } = new List(); [InverseProperty("Creator")] public virtual ICollection AutomodRules { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection BackupCodes { get; set; } = new List(); [InverseProperty("Executor")] public virtual ICollection BanExecutors { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection BanUsers { get; set; } = new List(); [InverseProperty("Owner")] public virtual ICollection Channels { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection CloudAttachments { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection ConnectedAccounts { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection Emojis { get; set; } = new List(); [InverseProperty("Owner")] public virtual ICollection Guilds { get; set; } = new List(); [InverseProperty("Inviter")] public virtual ICollection InviteInviters { get; set; } = new List(); [InverseProperty("TargetUser")] public virtual ICollection InviteTargetUsers { get; set; } = new List(); [InverseProperty("IdNavigation")] public virtual ICollection Members { get; set; } = new List(); [InverseProperty("Author")] public virtual ICollection MessageAuthors { get; set; } = new List(); [InverseProperty("Member")] public virtual ICollection MessageMembers { get; set; } = new List(); [InverseProperty("Owner")] public virtual ICollection NoteOwners { get; set; } = new List(); [InverseProperty("Target")] public virtual ICollection NoteTargets { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection ReadStates { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection Recipients { get; set; } = new List(); [InverseProperty("From")] public virtual ICollection RelationshipFroms { get; set; } = new List(); [InverseProperty("To")] public virtual ICollection RelationshipTos { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection SecurityKeys { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection Sessions { get; set; } = new List(); [ForeignKey("SettingsIndex")] [InverseProperty("User")] public virtual UserSetting? SettingsIndexNavigation { get; set; } [InverseProperty("User")] public virtual ICollection Stickers { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection StreamSessions { get; set; } = new List(); [InverseProperty("Owner")] public virtual ICollection Streams { get; set; } = new List(); [InverseProperty("User")] public virtual ICollection TeamMembers { get; set; } = new List(); [InverseProperty("OwnerUser")] public virtual ICollection Teams { get; set; } = new List(); [InverseProperty("Creator")] public virtual ICollection