Authentication Service
An interface that contains the requisite fields and methods required for an authentication service.
Types
A sealed class that contains multiple nested classes that model different user attributes that can be updated. For certain attributes, a password is required to update the value. For such attributes, a password field will be defined as the constructor param of the nested class.
Functions
Used to create a new user account with the provided username, email,password and an optional profilePhotoUri. An instance of AuthenticationResult will be returned to indicate whether an account was successfully created or not.
Used to sign in a user with the provided email and password. An instance of AuthenticationResult will be returned to indicate a successful or failed sign-in attempt.
Used to update an attribute of the specified user. The UpdateAttribute param of the function will be used to specify the attribute to update. An instance of AuthenticationResult will be returned to indicate whether the update was successful.