@typedef FIRVerifyPasswordResetCodeCallback
@brief The type of block invoked when verifying that an out of band code should be used to
perform password reset.
@typedef FIRAuthCredentialCallback
@brief The type of block invoked when obtaining an auth credential.
- parameter: credential The credential obtained.
- parameter: error The error that occurred if any.
@typedef FIRGameCenterCredentialCallback
@brief The type of block invoked when the Game Center credential code has finished.
- parameter: credential On success, the credential will be provided, nil otherwise.
- parameter: error On error, the error that occurred, nil otherwise.
@typedef FIRMultiFactorSessionCallback
@brief The callback that triggered when a developer calls getSessionWithCompletion.
This type is available on iOS and macOS.
- parameter: session The multi factor session returned, if any.
- parameter: error The error which occurred, if any.
@typedef FIRVerificationResultCallback
@brief The type of block invoked when a request to send a verification code has finished.
This type is available on iOS only.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-27 UTC."],[],[],null,["# FirebaseAuth Framework Reference\n\nType Definitions\n================\n\nThe following type definitions are available globally.\n- `\n ``\n ``\n `\n\n ### [FIRUserUpdateCallback](#/c:FIRAuth.h@T@FIRUserUpdateCallback)\n\n `\n ` \n @typedef FIRUserUpdateCallback\n @brief The type of block invoked when a request to update the current user is completed.\n- `\n ``\n ``\n `\n\n ### [AuthStateDidChangeListenerHandle](#/c:FIRAuth.h@T@FIRAuthStateDidChangeListenerHandle)\n\n `\n ` \n @typedef FIRAuthStateDidChangeListenerHandle\n @brief The type of handle returned by `Auth.addAuthStateDidChangeListener(_:)`. \n\n #### Declaration\n\n Swift \n\n typealias AuthStateDidChangeListenerHandle = any NSObjectProtocol\n\n- `\n ``\n ``\n `\n\n ### [FIRAuthStateDidChangeListenerBlock](#/c:FIRAuth.h@T@FIRAuthStateDidChangeListenerBlock)\n\n `\n ` \n @typedef FIRAuthStateDidChangeListenerBlock\n @brief The type of block which can be registered as a listener for auth state did change events. \n\n - parameter: auth The Auth object on which state changes occurred.\n - parameter: user Optionally; the current signed in user, if any.\n\n- `\n ``\n ``\n `\n\n ### [IDTokenDidChangeListenerHandle](#/c:FIRAuth.h@T@FIRIDTokenDidChangeListenerHandle)\n\n `\n ` \n @typedef FIRIDTokenDidChangeListenerHandle\n @brief The type of handle returned by [Auth.addIDTokenDidChangeListener(_:)](/docs/reference/swift/firebaseauth/api/reference/Classes/Auth#/c:@M@FirebaseAuth@objc(cs)FIRAuth(im)addIDTokenDidChangeListener:). \n\n #### Declaration\n\n Swift \n\n typealias IDTokenDidChangeListenerHandle = any NSObjectProtocol\n\n- `\n ``\n ``\n `\n\n ### [FIRIDTokenDidChangeListenerBlock](#/c:FIRAuth.h@T@FIRIDTokenDidChangeListenerBlock)\n\n `\n ` \n @typedef FIRIDTokenDidChangeListenerBlock\n @brief The type of block which can be registered as a listener for ID token did change events. \n\n - parameter: auth The Auth object on which ID token changes occurred.\n - parameter: user Optionally; the current signed in user, if any.\n\n- `\n ``\n ``\n `\n\n ### [FIRAuthDataResultCallback](#/c:FIRAuth.h@T@FIRAuthDataResultCallback)\n\n `\n ` \n @typedef FIRAuthDataResultCallback\n @brief The type of block invoked when sign-in related events complete. \n\n - parameter: authResult Optionally; Result of sign-in request containing both the user and\n the additional user info associated with the user.\n - parameter: error Optionally; the error which occurred - or nil if the request was successful.\n\n- `\n ``\n ``\n `\n\n ### [FIRAuthResultCallback](#/c:FIRAuth.h@T@FIRAuthResultCallback)\n\n `\n ` \n @typedef FIRAuthResultCallback\n @brief The type of block invoked when sign-in related events complete. \n\n - parameter: user Optionally; the signed in user, if any.\n - parameter: error Optionally; if an error occurs, this is the NSError object that describes the\n problem. Set to nil otherwise.\n\n- `\n ``\n ``\n `\n\n ### [FIRProviderQueryCallback](#/c:FIRAuth.h@T@FIRProviderQueryCallback)\n\n `\n ` \n @typedef FIRProviderQueryCallback\n @brief The type of block invoked when a list of identity providers for a given email address is\n requested. \n\n - parameter: providers Optionally; a list of provider identifiers, if any.\n - see: GoogleAuthProviderID etc.\n - parameter: error Optionally; if an error occurs, this is the NSError object that describes the\n problem. Set to nil otherwise.\n\n- `\n ``\n ``\n `\n\n ### [FIRSignInMethodQueryCallback](#/c:FIRAuth.h@T@FIRSignInMethodQueryCallback)\n\n `\n ` \n @typedef FIRSignInMethodQueryCallback\n @brief The type of block invoked when a list of sign-in methods for a given email address is\n requested.\n- `\n ``\n ``\n `\n\n ### [FIRSendPasswordResetCallback](#/c:FIRAuth.h@T@FIRSendPasswordResetCallback)\n\n `\n ` \n @typedef FIRSendPasswordResetCallback\n @brief The type of block invoked when sending a password reset email. \n\n - parameter: error Optionally; if an error occurs, this is the NSError object that describes the\n problem. Set to nil otherwise.\n\n- `\n ``\n ``\n `\n\n ### [FIRSendSignInLinkToEmailCallback](#/c:FIRAuth.h@T@FIRSendSignInLinkToEmailCallback)\n\n `\n ` \n @typedef FIRSendSignInLinkToEmailCallback\n @brief The type of block invoked when sending an email sign-in link email.\n- `\n ``\n ``\n `\n\n ### [FIRConfirmPasswordResetCallback](#/c:FIRAuth.h@T@FIRConfirmPasswordResetCallback)\n\n `\n ` \n @typedef FIRConfirmPasswordResetCallback\n @brief The type of block invoked when performing a password reset. \n\n - parameter: error Optionally; if an error occurs, this is the NSError object that describes the\n problem. Set to nil otherwise.\n\n- `\n ``\n ``\n `\n\n ### [FIRVerifyPasswordResetCodeCallback](#/c:FIRAuth.h@T@FIRVerifyPasswordResetCodeCallback)\n\n `\n ` \n @typedef FIRVerifyPasswordResetCodeCallback\n @brief The type of block invoked when verifying that an out of band code should be used to\n perform password reset. \n\n - parameter: email Optionally; the email address of the user for which the out of band code applies.\n - parameter: error Optionally; if an error occurs, this is the NSError object that describes the\n problem. Set to nil otherwise.\n\n- `\n ``\n ``\n `\n\n ### [FIRApplyActionCodeCallback](#/c:FIRAuth.h@T@FIRApplyActionCodeCallback)\n\n `\n ` \n @typedef FIRApplyActionCodeCallback\n @brief The type of block invoked when applying an action code. \n\n - parameter: error Optionally; if an error occurs, this is the NSError object that describes the\n problem. Set to nil otherwise.\n\n- `\n ``\n ``\n `\n\n ### [FIRAuthVoidErrorCallback](#/c:FIRAuth.h@T@FIRAuthVoidErrorCallback)\n\n `\n ` \n Undocumented\n- `\n ``\n ``\n `\n\n ### [FIRAuthCredentialCallback](#/c:FIRFederatedAuthProvider.h@T@FIRAuthCredentialCallback)\n\n `\n ` \n @typedef FIRAuthCredentialCallback\n @brief The type of block invoked when obtaining an auth credential.\n - parameter: credential The credential obtained.\n - parameter: error The error that occurred if any.\n- `\n ``\n ``\n `\n\n ### [FIRGameCenterCredentialCallback](#/c:FIRGameCenterAuthProvider.h@T@FIRGameCenterCredentialCallback)\n\n `\n ` \n @typedef FIRGameCenterCredentialCallback\n @brief The type of block invoked when the Game Center credential code has finished.\n - parameter: credential On success, the credential will be provided, nil otherwise.\n - parameter: error On error, the error that occurred, nil otherwise.\n- `\n ``\n ``\n `\n\n ### [FIRMultiFactorSessionCallback](#/c:FIRMultiFactor.h@T@FIRMultiFactorSessionCallback)\n\n `\n ` \n @typedef FIRMultiFactorSessionCallback\n @brief The callback that triggered when a developer calls `getSessionWithCompletion`.\n This type is available on iOS only.\n - parameter: session The multi factor session returned, if any.\n - parameter: error The error which occurred, if any.\n- `\n ``\n ``\n `\n\n ### [FIRVerificationResultCallback](#/c:FIRPhoneAuthProvider.h@T@FIRVerificationResultCallback)\n\n `\n ` \n @typedef FIRVerificationResultCallback\n @brief The type of block invoked when a request to send a verification code has finished.\n This type is available on iOS only. \n\n - parameter: verificationID On success, the verification ID provided, nil otherwise.\n - parameter: error On error, the error that occurred, nil otherwise."]]