UNPKG

@dynamic-labs/sdk-react-core

Version:

A React SDK for implementing wallet web3 authentication and authorization to your website.

39 lines (38 loc) 1.7 kB
import { WalletConnector } from '@dynamic-labs/wallet-connector-core'; import { Wallet } from '../shared/types/wallets'; export type UserWalletsUpdateType = { updateType: 'walletAdded'; addedWallet: Wallet; } | { updateType: 'walletRemoved'; removedWallet: Wallet; } | { updateType: 'primaryWalletChanged'; } | { updateType: 'primaryWalletNetworkChanged'; newNetwork: string | number; } | { updateType: 'nonPrimaryWalletNetworkChanged'; newNetwork: string | number; affectedWallets: Wallet[]; }; export type UserWalletsChangedParams = { userWallets: Wallet[]; primaryWallet: Wallet | undefined; } & UserWalletsUpdateType; export type WalletEvents = { /** Triggered when a new wallet is added to user wallets list */ walletAdded: (wallet: Wallet, userWallets: Wallet[]) => void; /** Triggered when a wallet is removed from user wallets list */ walletRemoved: (wallet: Wallet, userWallets: Wallet[]) => void; /** Triggered when the primary wallet changes (a different wallet is selected) */ primaryWalletChanged: (newPrimaryWallet: Wallet) => void; /** Triggered when the network changes in primary wallet */ primaryWalletNetworkChanged: (newNetwork: string | number) => void; /** Triggered when the network changes in non-primary wallet */ nonPrimaryWalletNetworkChanged: (newNetwork: string | number, connector: WalletConnector) => void; /** Triggered when there is a change in user wallets */ userWalletsChanged: (params: UserWalletsChangedParams) => void; /** Triggered when user wallets changes from an empty array to a non-empty array */ userWalletsPopulated: (userWallets: Wallet[]) => void; };