@exodus/address-provider
This module derives addresses for assets from different wallet accounts. Addresses for software wallet accounts are encoded public keys that are derived from the seed using Keychain, whereas hardware wallet accounts use the public keys stored in the PublicKeyStore.
flowchart LR
A[Wallet] -->|getReceiveAddress\ngetChangeAddress\n...| B(AddressProvider)
B --> C[PublicKeyProvider]
C -->|software| D[Keychain]
C -->|hardware| E[PublicKeyStore]
Install
yarn add @exodus/address-provider
Usage
import addressProvider from '@exodus/address-provider'
exodus.use(addressProvider())
const defaultAddress = await exodus.addressProvider.getAddress({
purpose,
assetName,
walletAccount: walletAccountInstance,
chainIndex: 0,
addressIndex: 0,
})