# account-kit/react

> Overview of account-kit/react

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

{/* This file is auto-generated by TypeDoc. Do not edit manually. */}

> **Note:** Use [`@alchemy/wallet-apis`](https://www.npmjs.com/package/@alchemy/wallet-apis) for new integrations. It is currently in beta.

React components and hooks for integrating smart accounts into React applications.

## Getting started

```bash
npm i @account-kit/react
```

## Classes

| Class                                                                                                     | Description                                                          |
| :-------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------- |
| [NoAlchemyAccountContextError](/wallets/reference/account-kit/react/classes/NoAlchemyAccountContextError) | Error thrown when a hook is called without a AlchemyAccountProvider. |

## Interfaces

| Interface                                                                                                        | Description                                                                                                                                                                                                                              |
| :--------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [ConfigForExternalWalletsParams](/wallets/reference/account-kit/react/interfaces/ConfigForExternalWalletsParams) | -                                                                                                                                                                                                                                        |
| [SendVerificationCodeParams](/wallets/reference/account-kit/react/interfaces/SendVerificationCodeParams)         | -                                                                                                                                                                                                                                        |
| [SolanaConnection](/wallets/reference/account-kit/react/interfaces/SolanaConnection)                             | Returned from the solana connection.                                                                                                                                                                                                     |
| [SolanaTransaction](/wallets/reference/account-kit/react/interfaces/SolanaTransaction)                           | We wanted to make sure that this will be using the same useMutation that the useSendUserOperation does. We are going to flatten it to make sure that we are abstracting it, and that we have the flattened version here for readability. |
| [UseChainResult](/wallets/reference/account-kit/react/interfaces/UseChainResult)                                 | -                                                                                                                                                                                                                                        |
| [UseWaitForCallsStatusParams](/wallets/reference/account-kit/react/interfaces/UseWaitForCallsStatusParams)       | -                                                                                                                                                                                                                                        |

## Type Aliases

| Type Alias                                                                                                                                         | Description                                                                                                                                                                                                        |
| :------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [AlchemyAccountContextProps](/wallets/reference/account-kit/react/type-aliases/AlchemyAccountContextProps)                                         | -                                                                                                                                                                                                                  |
| [AlchemyAccountsConfigWithUI](/wallets/reference/account-kit/react/type-aliases/AlchemyAccountsConfigWithUI)                                       | -                                                                                                                                                                                                                  |
| [AlchemyAccountsProviderProps](/wallets/reference/account-kit/react/type-aliases/AlchemyAccountsProviderProps)                                     | -                                                                                                                                                                                                                  |
| [AlchemyAccountsUIConfig](/wallets/reference/account-kit/react/type-aliases/AlchemyAccountsUIConfig)                                               | -                                                                                                                                                                                                                  |
| [AuthType](/wallets/reference/account-kit/react/type-aliases/AuthType)                                                                             | -                                                                                                                                                                                                                  |
| [ChainType](/wallets/reference/account-kit/react/type-aliases/ChainType)                                                                           | -                                                                                                                                                                                                                  |
| [ClientActionParameters](/wallets/reference/account-kit/react/type-aliases/ClientActionParameters)                                                 | -                                                                                                                                                                                                                  |
| [ConnectedUser](/wallets/reference/account-kit/react/type-aliases/ConnectedUser)                                                                   | -                                                                                                                                                                                                                  |
| [ExecutableFunctionArgs](/wallets/reference/account-kit/react/type-aliases/ExecutableFunctionArgs)                                                 | -                                                                                                                                                                                                                  |
| [ExecutableFunctionName](/wallets/reference/account-kit/react/type-aliases/ExecutableFunctionName)                                                 | -                                                                                                                                                                                                                  |
| [ExecuteableFunctionResult](/wallets/reference/account-kit/react/type-aliases/ExecuteableFunctionResult)                                           | -                                                                                                                                                                                                                  |
| [ExportAccountComponentProps](/wallets/reference/account-kit/react/type-aliases/ExportAccountComponentProps)                                       | Props for the `ExportAccountComponent` component. This component is returned from the `useExportAccount` hook and should be rendered in the parent component to display the account recovery details in an iframe. |
| [SendUserOperationWithEOA](/wallets/reference/account-kit/react/type-aliases/SendUserOperationWithEOA)                                             | -                                                                                                                                                                                                                  |
| [SetEmailParams](/wallets/reference/account-kit/react/type-aliases/SetEmailParams)                                                                 | -                                                                                                                                                                                                                  |
| [SignMessageArgs](/wallets/reference/account-kit/react/type-aliases/SignMessageArgs)                                                               | -                                                                                                                                                                                                                  |
| [SignTypedDataArgs](/wallets/reference/account-kit/react/type-aliases/SignTypedDataArgs)                                                           | -                                                                                                                                                                                                                  |
| [UiConfigStore](/wallets/reference/account-kit/react/type-aliases/UiConfigStore)                                                                   | -                                                                                                                                                                                                                  |
| [UseAccountMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseAccountMutationArgs)                                                 | -                                                                                                                                                                                                                  |
| [UseAccountProps](/wallets/reference/account-kit/react/type-aliases/UseAccountProps)                                                               | -                                                                                                                                                                                                                  |
| [UseAccountResult](/wallets/reference/account-kit/react/type-aliases/UseAccountResult)                                                             | -                                                                                                                                                                                                                  |
| [UseAddOauthProviderMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseAddOauthProviderMutationArgs)                               | -                                                                                                                                                                                                                  |
| [UseAddOauthProviderResult](/wallets/reference/account-kit/react/type-aliases/UseAddOauthProviderResult)                                           | -                                                                                                                                                                                                                  |
| [UseAddPasskeyMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseAddPasskeyMutationArgs)                                           | -                                                                                                                                                                                                                  |
| [UseAddPasskeyResult](/wallets/reference/account-kit/react/type-aliases/UseAddPasskeyResult)                                                       | -                                                                                                                                                                                                                  |
| [UseAuthenticateMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseAuthenticateMutationArgs)                                       | -                                                                                                                                                                                                                  |
| [UseAuthenticateResult](/wallets/reference/account-kit/react/type-aliases/UseAuthenticateResult)                                                   | -                                                                                                                                                                                                                  |
| [UseAuthErrorResult](/wallets/reference/account-kit/react/type-aliases/UseAuthErrorResult)                                                         | -                                                                                                                                                                                                                  |
| [UseBundlerClientResult](/wallets/reference/account-kit/react/type-aliases/UseBundlerClientResult)                                                 | -                                                                                                                                                                                                                  |
| [UseCallsStatusParams](/wallets/reference/account-kit/react/type-aliases/UseCallsStatusParams)                                                     | -                                                                                                                                                                                                                  |
| [UseCallsStatusResult](/wallets/reference/account-kit/react/type-aliases/UseCallsStatusResult)                                                     | -                                                                                                                                                                                                                  |
| [UseChainParams](/wallets/reference/account-kit/react/type-aliases/UseChainParams)                                                                 | -                                                                                                                                                                                                                  |
| [UseClientActionsProps](/wallets/reference/account-kit/react/type-aliases/UseClientActionsProps)                                                   | -                                                                                                                                                                                                                  |
| [UseClientActionsResult](/wallets/reference/account-kit/react/type-aliases/UseClientActionsResult)                                                 | -                                                                                                                                                                                                                  |
| [UseConnectedUserResult](/wallets/reference/account-kit/react/type-aliases/UseConnectedUserResult)                                                 | -                                                                                                                                                                                                                  |
| [UseDropAndReplaceUserOperationArgs](/wallets/reference/account-kit/react/type-aliases/UseDropAndReplaceUserOperationArgs)                         | -                                                                                                                                                                                                                  |
| [UseDropAndReplaceUserOperationMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseDropAndReplaceUserOperationMutationArgs)         | -                                                                                                                                                                                                                  |
| [UseDropAndReplaceUserOperationResult](/wallets/reference/account-kit/react/type-aliases/UseDropAndReplaceUserOperationResult)                     | -                                                                                                                                                                                                                  |
| [UseExportAccountMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseExportAccountMutationArgs)                                     | -                                                                                                                                                                                                                  |
| [UseExportAccountResult](/wallets/reference/account-kit/react/type-aliases/UseExportAccountResult)                                                 | -                                                                                                                                                                                                                  |
| [UseGrantPermissionsParams](/wallets/reference/account-kit/react/type-aliases/UseGrantPermissionsParams)                                           | -                                                                                                                                                                                                                  |
| [UseGrantPermissionsResult](/wallets/reference/account-kit/react/type-aliases/UseGrantPermissionsResult)                                           | -                                                                                                                                                                                                                  |
| [UseLogoutMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseLogoutMutationArgs)                                                   | -                                                                                                                                                                                                                  |
| [UseLogoutResult](/wallets/reference/account-kit/react/type-aliases/UseLogoutResult)                                                               | -                                                                                                                                                                                                                  |
| [UseMFAResult](/wallets/reference/account-kit/react/type-aliases/UseMFAResult)                                                                     | -                                                                                                                                                                                                                  |
| [UsePrepareCallsParams](/wallets/reference/account-kit/react/type-aliases/UsePrepareCallsParams)                                                   | -                                                                                                                                                                                                                  |
| [UsePrepareCallsResult](/wallets/reference/account-kit/react/type-aliases/UsePrepareCallsResult)                                                   | -                                                                                                                                                                                                                  |
| [UsePrepareSwapParams](/wallets/reference/account-kit/react/type-aliases/UsePrepareSwapParams)                                                     | -                                                                                                                                                                                                                  |
| [UsePrepareSwapResult](/wallets/reference/account-kit/react/type-aliases/UsePrepareSwapResult)                                                     | -                                                                                                                                                                                                                  |
| [UseRemoveEmailMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseRemoveEmailMutationArgs)                                         | -                                                                                                                                                                                                                  |
| [UseRemoveEmailResult](/wallets/reference/account-kit/react/type-aliases/UseRemoveEmailResult)                                                     | -                                                                                                                                                                                                                  |
| [UseRemoveOauthProviderMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseRemoveOauthProviderMutationArgs)                         | -                                                                                                                                                                                                                  |
| [UseRemoveOauthProviderResult](/wallets/reference/account-kit/react/type-aliases/UseRemoveOauthProviderResult)                                     | -                                                                                                                                                                                                                  |
| [UseRemovePasskeyMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseRemovePasskeyMutationArgs)                                     | -                                                                                                                                                                                                                  |
| [UseRemovePasskeyResult](/wallets/reference/account-kit/react/type-aliases/UseRemovePasskeyResult)                                                 | -                                                                                                                                                                                                                  |
| [UseSendCallsParams](/wallets/reference/account-kit/react/type-aliases/UseSendCallsParams)                                                         | -                                                                                                                                                                                                                  |
| [UseSendCallsResult](/wallets/reference/account-kit/react/type-aliases/UseSendCallsResult)                                                         | -                                                                                                                                                                                                                  |
| [UseSendPreparedCallsParams](/wallets/reference/account-kit/react/type-aliases/UseSendPreparedCallsParams)                                         | -                                                                                                                                                                                                                  |
| [UseSendPreparedCallsResult](/wallets/reference/account-kit/react/type-aliases/UseSendPreparedCallsResult)                                         | -                                                                                                                                                                                                                  |
| [UseSendUserOperationArgs](/wallets/reference/account-kit/react/type-aliases/UseSendUserOperationArgs)                                             | -                                                                                                                                                                                                                  |
| [UseSendUserOperationMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseSendUserOperationMutationArgs)                             | -                                                                                                                                                                                                                  |
| [UseSendUserOperationResult](/wallets/reference/account-kit/react/type-aliases/UseSendUserOperationResult)                                         | -                                                                                                                                                                                                                  |
| [UseSendVerificationCodeMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseSendVerificationCodeMutationArgs)                       | -                                                                                                                                                                                                                  |
| [UseSendVerificationCodeResult](/wallets/reference/account-kit/react/type-aliases/UseSendVerificationCodeResult)                                   | -                                                                                                                                                                                                                  |
| [UseSetEmailMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseSetEmailMutationArgs)                                               | -                                                                                                                                                                                                                  |
| [UseSetEmailResult](/wallets/reference/account-kit/react/type-aliases/UseSetEmailResult)                                                           | -                                                                                                                                                                                                                  |
| [UseSignAndSendPreparedCallsParams](/wallets/reference/account-kit/react/type-aliases/UseSignAndSendPreparedCallsParams)                           | -                                                                                                                                                                                                                  |
| [UseSignAndSendPreparedCallsResult](/wallets/reference/account-kit/react/type-aliases/UseSignAndSendPreparedCallsResult)                           | -                                                                                                                                                                                                                  |
| [UseSignerStatusResult](/wallets/reference/account-kit/react/type-aliases/UseSignerStatusResult)                                                   | -                                                                                                                                                                                                                  |
| [UseSignMessageArgs](/wallets/reference/account-kit/react/type-aliases/UseSignMessageArgs)                                                         | -                                                                                                                                                                                                                  |
| [UseSignMessagedMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseSignMessagedMutationArgs)                                       | -                                                                                                                                                                                                                  |
| [UseSignMessageResult](/wallets/reference/account-kit/react/type-aliases/UseSignMessageResult)                                                     | -                                                                                                                                                                                                                  |
| [UseSignTypedDataArgs](/wallets/reference/account-kit/react/type-aliases/UseSignTypedDataArgs)                                                     | -                                                                                                                                                                                                                  |
| [UseSignTypedDataMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseSignTypedDataMutationArgs)                                     | -                                                                                                                                                                                                                  |
| [UseSignTypedDataResult](/wallets/reference/account-kit/react/type-aliases/UseSignTypedDataResult)                                                 | -                                                                                                                                                                                                                  |
| [UseSmartAccountClientProps](/wallets/reference/account-kit/react/type-aliases/UseSmartAccountClientProps)                                         | -                                                                                                                                                                                                                  |
| [UseSmartAccountClientResult](/wallets/reference/account-kit/react/type-aliases/UseSmartAccountClientResult)                                       | -                                                                                                                                                                                                                  |
| [UseUserResult](/wallets/reference/account-kit/react/type-aliases/UseUserResult)                                                                   | -                                                                                                                                                                                                                  |
| [UseWaitForCallsStatusResult](/wallets/reference/account-kit/react/type-aliases/UseWaitForCallsStatusResult)                                       | -                                                                                                                                                                                                                  |
| [UseWaitForUserOperationTransactionArgs](/wallets/reference/account-kit/react/type-aliases/UseWaitForUserOperationTransactionArgs)                 | -                                                                                                                                                                                                                  |
| [UseWaitForUserOperationTransactionMutationArgs](/wallets/reference/account-kit/react/type-aliases/UseWaitForUserOperationTransactionMutationArgs) | -                                                                                                                                                                                                                  |
| [UseWaitForUserOperationTransactionResult](/wallets/reference/account-kit/react/type-aliases/UseWaitForUserOperationTransactionResult)             | -                                                                                                                                                                                                                  |

## Variables

| Variable                                                                                      | Description |
| :-------------------------------------------------------------------------------------------- | :---------- |
| [AlchemyAccountContext](/wallets/reference/account-kit/react/variables/AlchemyAccountContext) | -           |
| [DEFAULT_UI_CONFIG](/wallets/reference/account-kit/react/variables/DEFAULT_UI_CONFIG)         | -           |

## Functions

| Function                                                                                                            | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| :------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [AlchemyAccountProvider](/wallets/reference/account-kit/react/components/AlchemyAccountProvider)                    | Provider for Alchemy accounts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [AuthCard](/wallets/reference/account-kit/react/components/AuthCard)                                                | React component containing an Auth view with configured auth methods and options based on the config passed to the AlchemyAccountProvider                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [configForExternalWallets](/wallets/reference/account-kit/react/functions/configForExternalWallets)                 | Configure external wallets for Account Kit with simplified wallet name-based configuration Handles both EVM connectors and Solana adapters, returns config for core and UI                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [createConfig](/wallets/reference/account-kit/react/functions/createConfig)                                         | Wraps the `createConfig` that is exported from `@aa-sdk/core` to allow passing an additional argument, the configuration object for the Auth Components UI (the modal and AuthCard).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| [createUiConfigStore](/wallets/reference/account-kit/react/functions/createUiConfigStore)                           | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [Dialog](/wallets/reference/account-kit/react/components/Dialog)                                                    | Dialog component that renders a modal dialog.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [getListAuthMethodsQueryKey](/wallets/reference/account-kit/react/functions/getListAuthMethodsQueryKey)             | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [getSocialProviderDisplayName](/wallets/reference/account-kit/react/functions/getSocialProviderDisplayName)         | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [Hydrate](/wallets/reference/account-kit/react/components/Hydrate)                                                  | A react component that can be used to hydrate the client store with the provided initial state. This method will use `hydrate` to hydrate the client store with the provided initial state if one is provided. If ssr is set on the account config, then it will run the onMount function within a useEffect hook. Otherwise, It will run onMount as soon as the component is rendered.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [UiConfigProvider](/wallets/reference/account-kit/react/components/UiConfigProvider)                                | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [useAccount](/wallets/reference/account-kit/react/hooks/useAccount)                                                 | [Hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useAccount.ts) to subscribe to account state and interactions, including creation, connection, and status monitoring. It synchronizes with external store updates and provides status-dependent results. The supported account types are: LightAccount, MultiOwnerLightAccount, MultiOwnerModularAccount, and ModularAccountV2. Primarily used to get the smart account address before deployment. Dependent on the signer: if the signer has not been initialized and authenticated, `address` and `isLoadingAccount` return null.                                                                                                                                                                                                                                                                                                                                                                                       |
| [useAddOauthProvider](/wallets/reference/account-kit/react/hooks/useAddOauthProvider)                               | A custom hook to handle adding an OAuth provider to an already authenticated account, which includes executing a mutation with optional parameters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [useAddPasskey](/wallets/reference/account-kit/react/hooks/useAddPasskey)                                           | A custom [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useAddPasskey.ts) to handle the addition of a passkey to an already authenticated account, which includes executing a mutation with optional parameters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [useAlchemyAccountContext](/wallets/reference/account-kit/react/hooks/useAlchemyAccountContext)                     | Internal Only hook used to access the alchemy account context. This hook is meant to be consumed by other hooks exported by this package.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [useAuthContext](/wallets/reference/account-kit/react/hooks/useAuthContext)                                         | A custom hook that provides the authentication context based on the specified authentication step type. It ensures that the hook is used within an `AuthModalProvider` and throws an error if the context is not available or if the current auth step type does not match the expected type.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [useAuthenticate](/wallets/reference/account-kit/react/hooks/useAuthenticate)                                       | [Hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useAuthenticate.ts) that provides functions and state for authenticating a user using a signer. It includes methods for both synchronous and asynchronous mutations. Useful if building your own UI components and want to control the authentication flow. For authenticate vs authenticateAsync, use authenticate when you want the hook the handle state changes for you, authenticateAsync when you need to wait for the result to finish processing.                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [useAuthError](/wallets/reference/account-kit/react/hooks/useAuthError)                                             | Returns the error returned from the current auth step, if it exists                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [useAuthModal](/wallets/reference/account-kit/react/hooks/useAuthModal)                                             | A [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useAuthModal.ts) that returns the open and close functions for the Auth Modal if uiConfig is enabled on the Account Provider                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [useBundlerClient](/wallets/reference/account-kit/react/hooks/useBundlerClient)                                     | Custom [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useBundlerClient.ts) to get a bundler client using the Alchemy account context. It uses `useSyncExternalStore` to watch for any changes in the bundler client configuration and provides the updated bundler client. React hooks don’t handle their own state management directly, so they rely on external stores, like `useSyncExternalStore`, to manage state. `useBundlerClient`’s only job is to call the bundler JSON RPC methods directly; it does not do additional processing, unlike `useSmartAccountClient`. For example, if you call `sendUserOperation`, it expects a fully formed user operation. It is an extension of [Viem’s Public Client](https://viem.sh/docs/clients/public) and provides access to public actions, talking to public RPC APIs like `getBlock`, `eth_call`, etc. It does not require an account as context. Use cases: connecting with a EOA or checking for gas eligibility. |
| [useCallsStatus](/wallets/reference/account-kit/react/hooks/useCallsStatus)                                         | Hook to retrieve the status of prepared calls from the Wallet API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [useChain](/wallets/reference/account-kit/react/hooks/useChain)                                                     | A [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useChain.ts) that returns the current chain as well as a function to set the chain. Note: when calling `setChain` the chain that's passed in must be defined in your initial `createConfig` call. Calling `setChain` causes the chain to change across the board. For example, if you use set chain then use `useSmartAccountClient`, the client will flip to the loading state and address for the account on the changed chain.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [useClientActions](/wallets/reference/account-kit/react/hooks/useClientActions)                                     | A [hook](https://github.com/alchemyplatform/aa-sdk/blob/4c3956c01ce5ae3c157f006bf58fffde758e5d1b/account-kit/react/src/hooks/useClientActions.ts) that allows you to leverage client decorators to execute actions and await them in your UX. This is particularly useful for using Plugins with Modular Accounts.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [useConnect](/wallets/reference/account-kit/react/hooks/useConnect)                                                 | Re-exported [wagmi hook](https://wagmi.sh/react/api/hooks/useConnect) for connecting an EOA. This hook uses the internal wagmi config though so that the state is in sync with the rest of the Alchemy Account hook state. Useful if you want to connect to an EOA.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [useConnectedUser](/wallets/reference/account-kit/react/hooks/useConnectedUser)                                     | A React hook that returns the currently connected user across external wallets (EVM or Solana) or the smart account user from the client store. It prioritizes the EVM wallet connection, then Solana, and finally the smart account user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [useConnection](/wallets/reference/account-kit/react/hooks/useConnection)                                           | A [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useConnection.ts) that returns the current connection including chain, policy, and transport that you’re currently using.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [useDropAndReplaceUserOperation](/wallets/reference/account-kit/react/hooks/useDropAndReplaceUserOperation)         | Custom [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useDropAndReplaceUserOperation.ts) that handles the drop and replace user operation for a given client and mutation arguments.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [useExportAccount](/wallets/reference/account-kit/react/hooks/useExportAccount)                                     | A [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useExportAccount.ts) used to export the private key for an account. It returns the mutation functions to kick off the export process, as well as a component to render the account recovery details in an iframe. What is returned is dependent on what you used most recently used to authenticate. If your session was initiated with a passkey, then a private key is returned. Otherwise, a seed phrase.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [useGrantPermissions](/wallets/reference/account-kit/react/hooks/useGrantPermissions)                               | React hook for granting permissions on the smart account to a given keypair This enables dapps to request specific permissions from smart accounts, such as spending limits or execution permissions. Returns an error if called with an EOA wallet connection.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [useListAuthMethods](/wallets/reference/account-kit/react/hooks/useListAuthMethods)                                 | A hook to list the authentication methods for a user.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [useLogout](/wallets/reference/account-kit/react/hooks/useLogout)                                                   | Provides a [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useLogout.ts) to log out a user, disconnecting the signer and triggering the disconnectAsync function. This will disconnect both EVM and Solana wallets.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [useMFA](/wallets/reference/account-kit/react/hooks/useMFA)                                                         | [Hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useMFA.ts) that provides functions and state for managing multi-factor authentication (MFA) operations. Handles adding, verifying, removing, and getting MFA factors for an authenticated account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [usePrepareCalls](/wallets/reference/account-kit/react/hooks/usePrepareCalls)                                       | Hook for preparing calls to a smart account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [usePrepareSwap](/wallets/reference/account-kit/react/hooks/usePrepareSwap)                                         | Hook for requesting swap quotes from a smart account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [useRemoveEmail](/wallets/reference/account-kit/react/hooks/useRemoveEmail)                                         | A custom hook to handle the removal of an email from an already authenticated account, which includes executing a mutation with optional parameters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| [useRemoveOauthProvider](/wallets/reference/account-kit/react/hooks/useRemoveOauthProvider)                         | A custom hook to handle removing an OAuth provider from an already authenticated account, which includes executing a mutation with optional parameters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [useRemovePasskey](/wallets/reference/account-kit/react/hooks/useRemovePasskey)                                     | A custom [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useAddPasskey.ts) to handle the addition of a passkey to an already authenticated account, which includes executing a mutation with optional parameters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [useSendCalls](/wallets/reference/account-kit/react/hooks/useSendCalls)                                             | Hook for sending calls to a smart account or EOA wallet.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [useSendPreparedCalls](/wallets/reference/account-kit/react/hooks/useSendPreparedCalls)                             | Hook for sending prepared calls to a smart account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [useSendUserOperation](/wallets/reference/account-kit/react/hooks/useSendUserOperation)                             | A [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useSendUserOperation.ts) that returns functions for sending user operations. You can also optionally wait for a user operation to be mined and get the transaction hash before returning using `waitForTx`. Like any method that takes a smart account client, throws an error if client undefined or is signer not authenticated.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [useSendVerificationCode](/wallets/reference/account-kit/react/hooks/useSendVerificationCode)                       | A custom hook to send OTP verification codes to email or SMS for account verification.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [useSetEmail](/wallets/reference/account-kit/react/hooks/useSetEmail)                                               | A custom hook to set an email address for an already authenticated account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [useSignAndSendPreparedCalls](/wallets/reference/account-kit/react/hooks/useSignAndSendPreparedCalls)               | Hook for signing and sending prepared calls from a smart account.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [useSigner](/wallets/reference/account-kit/react/hooks/useSigner)                                                   | [Hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useSigner.ts) for accessing the current Alchemy signer within a React component. It uses a synchronous external store for updates. This is a good use case if you want to use the signer as an EOA, giving you direct access to it. The signer returned from `useSigner` just does a `personal_sign` or `eth_signTypedData` without any additional logic, but a smart contract account might have additional logic for creating signatures for 1271 validation so `useSignMessage` or `useSignTypeData` instead.                                                                                                                                                                                                                                                                                                                                                                                                          |
| [useSignerStatus](/wallets/reference/account-kit/react/hooks/useSignerStatus)                                       | [Hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useSignerStatus.ts) to get the signer status, optionally using an override configuration, useful if you’re building your own login.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [useSignMessage](/wallets/reference/account-kit/react/hooks/useSignMessage)                                         | Custom [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useSignMessage.ts) to sign a message using the provided client. Provides a way to sign messages within the context of an account using Ethereum-specific signature in EIP-191 format. Uses `personal_sign` to sign arbitrary messages (usually strings). Accepts any plain message as input.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [useSignTypedData](/wallets/reference/account-kit/react/hooks/useSignTypedData)                                     | Similar to `useSignMessage`, [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useSignTypedData.ts) for signing typed data, supporting both connected accounts and clients in EIP 712 format.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [useSmartAccountClient](/wallets/reference/account-kit/react/hooks/useSmartAccountClient)                           | [Hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useSmartAccountClient.ts) that uses the provided smart account client parameters to create or retrieve an existing smart account client, handling different types of accounts including LightAccount, MultiOwnerLightAccount, and MultiOwnerModularAccount. Under the hood, Smart Account Client takes care of all the necessary middleware operations needed to populate a user operation such as gas estimation and paymaster data.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [useSmartWalletClient](/wallets/reference/account-kit/react/hooks/useSmartWalletClient)                             | React hook that provides a Smart Wallet Client instance. Returns undefined if an EOA wallet is connected via wagmi, as Smart Wallet Clients are only for smart accounts. The hook automatically subscribes to changes in signer status and chain configuration.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [useSolanaConnection](/wallets/reference/account-kit/react/hooks/useSolanaConnection)                               | This hook is used for establishing a connection to Solana and returns the connection object and the signer object.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [useSolanaSignMessage](/wallets/reference/account-kit/react/hooks/useSolanaSignMessage)                             | This is the hook that will be used to sign a message. It will prioritize external connected Solana wallets, falling back to the internal signer when not connected.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [useSolanaTransaction](/wallets/reference/account-kit/react/hooks/useSolanaTransaction)                             | This is the hook that will be used to send a transaction. It will prioritize external connected Solana wallets, falling back to the internal signer when not connected. Supports sponsorship for both external wallets and internal signers.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [useSolanaWallet](/wallets/reference/account-kit/react/hooks/useSolanaWallet)                                       | A React hook that mirrors the behavior and return type of `useWallet` from `@solana/wallet-adapter-react`, but safely degrades when Solana is not enabled for your application.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [useUiConfig](/wallets/reference/account-kit/react/hooks/useUiConfig)                                               | A custom [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useUiConfig.tsx) for accessing UI configuration from the `UiConfigContext`. Allows optional selection of specific parts of the UI config state using a selector function. For editing and updating the underlying UI config on the fly.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [useUser](/wallets/reference/account-kit/react/hooks/useUser)                                                       | A React [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useUser.ts) that returns the current user information, either from an External Owned Account (EOA) or from the client store. It uses the Alchemy account context and synchronizes with external store updates. The best way to check if user is logged in for both smart account contract users and EOA.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [useWaitForCallsStatus](/wallets/reference/account-kit/react/hooks/useWaitForCallsStatus)                           | Hook to wait for calls status to be confirmed. It will poll until the calls reach the desired status or until a timeout occurs.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [useWaitForUserOperationTransaction](/wallets/reference/account-kit/react/hooks/useWaitForUserOperationTransaction) | Custom [hook](https://github.com/alchemyplatform/aa-sdk/blob/main/account-kit/react/src/hooks/useWaitForUserOperationTransaction.ts) to wait for a user operation transaction and manage its state (pending, error, result).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |