using System.Text.Json.Serialization; namespace DysonNetwork.Common.Models.Auth; [JsonConverter(typeof(JsonStringEnumConverter))] public enum AuthChallengeType { // Authentication challenges Password = 0, EmailCode = 1, PhoneCode = 2, Totp = 3, WebAuthn = 4, RecoveryCode = 5, // Authorization challenges Consent = 10, TwoFactor = 11, // Account recovery challenges ResetPassword = 20, VerifyEmail = 21, VerifyPhone = 22, // Security challenges Reauthentication = 30, DeviceVerification = 31, // Custom challenges Custom = 100 } [JsonConverter(typeof(JsonStringEnumConverter))] public enum AuthChallengePlatform { Web = 0, Ios = 1, Android = 2, Desktop = 3, Api = 4, Cli = 5, Sdk = 6, // Special platforms System = 100, Unknown = 999 }