# Microsoft.AspNetCore.Identity.UI

``` diff
 {
     namespace Microsoft.AspNetCore.Identity {
         public static class IdentityBuilderUIExtensions {
-            public static IdentityBuilder AddDefaultUI(this IdentityBuilder builder, UIFramework framework);

         }
     }
     namespace Microsoft.AspNetCore.Identity.UI {
-        public class DefaultUIOptions {
 {
-            public DefaultUIOptions();

-            public UIFramework UIFramework { get; set; }

-        }
-        public enum UIFramework {
 {
-            Bootstrap3 = 0,

-            Bootstrap4 = 1,

-        }
+        public sealed class UIFrameworkAttribute : Attribute {
+            public UIFrameworkAttribute(string uiFramework);
+            public string UIFramework { get; }
+        }
     }
     namespace Microsoft.AspNetCore.Identity.UI.V3.Pages.Account.Internal {
+        public abstract class ConfirmEmailChangeModel : PageModel {
+            protected ConfirmEmailChangeModel();
+            public string StatusMessage { get; set; }
+            public virtual Task<IActionResult> OnGetAsync(string userId, string email, string code);
+        }
         public abstract class ConfirmEmailModel : PageModel {
+            public string StatusMessage { get; set; }
         }
         public abstract class LoginModel : PageModel {
+            public virtual Task<IActionResult> OnPostSendVerificationEmailAsync();
         }
+        public class RegisterConfirmationModel : PageModel {
+            public RegisterConfirmationModel();
+            public bool DisplayConfirmAccountLink { get; set; }
+            public string Email { get; set; }
+            public string EmailConfirmationUrl { get; set; }
+            public virtual Task<IActionResult> OnGetAsync(string email);
+        }
         public abstract class RegisterModel : PageModel {
+            public IList<AuthenticationScheme> ExternalLogins { get; set; }
-            public virtual void OnGet(string returnUrl = null);

+            public virtual Task OnGetAsync(string returnUrl = null);
         }
     }
     namespace Microsoft.AspNetCore.Identity.UI.V3.Pages.Account.Manage.Internal {
+        public abstract class EmailModel : PageModel {
+            protected EmailModel();
+            public string Email { get; set; }
+            public EmailModel.InputModel Input { get; set; }
+            public bool IsEmailConfirmed { get; set; }
+            public string StatusMessage { get; set; }
+            public virtual Task<IActionResult> OnGetAsync();
+            public virtual Task<IActionResult> OnPostChangeEmailAsync();
+            public virtual Task<IActionResult> OnPostSendVerificationEmailAsync();
+            public class InputModel {
+                public InputModel();
+                public string NewEmail { get; set; }
+            }
+        }
         public abstract class IndexModel : PageModel {
-            public bool IsEmailConfirmed { get; set; }

-            public virtual Task<IActionResult> OnPostSendVerificationEmailAsync();

             public class InputModel {
-                public string Email { get; set; }

             }
         }
         public static class ManageNavPages {
+            public static string Email { get; }
+            public static string EmailNavClass(ViewContext viewContext);
         }
     }
     namespace Microsoft.AspNetCore.Identity.UI.V4.Pages.Account.Internal {
+        public abstract class ConfirmEmailChangeModel : PageModel {
+            protected ConfirmEmailChangeModel();
+            public string StatusMessage { get; set; }
+            public virtual Task<IActionResult> OnGetAsync(string userId, string email, string code);
+        }
         public abstract class ConfirmEmailModel : PageModel {
+            public string StatusMessage { get; set; }
         }
+        public class RegisterConfirmationModel : PageModel {
+            public RegisterConfirmationModel();
+            public bool DisplayConfirmAccountLink { get; set; }
+            public string Email { get; set; }
+            public string EmailConfirmationUrl { get; set; }
+            public virtual Task<IActionResult> OnGetAsync(string email);
+        }
         public abstract class RegisterModel : PageModel {
+            public IList<AuthenticationScheme> ExternalLogins { get; set; }
-            public virtual void OnGet(string returnUrl = null);

+            public virtual Task OnGetAsync(string returnUrl = null);
         }
     }
     namespace Microsoft.AspNetCore.Identity.UI.V4.Pages.Account.Manage.Internal {
+        public abstract class EmailModel : PageModel {
+            protected EmailModel();
+            public string Email { get; set; }
+            public EmailModel.InputModel Input { get; set; }
+            public bool IsEmailConfirmed { get; set; }
+            public string StatusMessage { get; set; }
+            public virtual Task<IActionResult> OnGetAsync();
+            public virtual Task<IActionResult> OnPostChangeEmailAsync();
+            public virtual Task<IActionResult> OnPostSendVerificationEmailAsync();
+            public class InputModel {
+                public InputModel();
+                public string NewEmail { get; set; }
+            }
+        }
         public abstract class IndexModel : PageModel {
-            public bool IsEmailConfirmed { get; set; }

-            public virtual Task<IActionResult> OnPostSendVerificationEmailAsync();

             public class InputModel {
-                public string Email { get; set; }

             }
         }
         public static class ManageNavPages {
+            public static string Email { get; }
+            public static string EmailNavClass(ViewContext viewContext);
         }
     }
 }
```

