import { HardwareWalletEnum } from '@dynamic-labs/sdk-api-core'; import { Chain, GetAddressOpts, WalletConnector } from '@dynamic-labs/wallet-connector-core'; import { SetShowAuthFlow } from '../../../context/DynamicContext/hooks'; import { ConnectWalletResult } from '../../../context/DynamicContext/types'; import { HandleConnectedWallet, Wallet, WalletOption } from '../../../shared'; export type ConnectedWalletConnectorType = { id: string; walletChain?: Chain; walletConnectorKey: string; provider: string; hardwareWallet: HardwareWalletEnum | undefined; }; export type UseConnectWalletProps = { enableVisitTrackingOnConnectOnly: boolean; environmentId: string; primaryWalletId: string | undefined; walletConnectorOptions: WalletOption[]; handleConnectedWallet: HandleConnectedWallet | undefined; setShowAuthFlow: SetShowAuthFlow; isBridgeFlow: boolean; }; export type ConnectWalletOptions = { /** Whether to call handleConnectedWallet */ applyHandleConnectedWallet?: boolean; }; type UseConnectWalletValue = { connectWallet: (walletConnector: WalletConnector, getAddressOpts?: GetAddressOpts, options?: ConnectWalletOptions) => Promise; connectedWallets: Wallet[]; connectedWalletsInfo: ConnectedWalletConnectorType[]; getConnectedWalletById: (walletId: string) => Wallet | undefined; refreshConnectedWallet: (walletId: string, walletConnector: WalletConnector) => Promise; disconnectWallet: (walletId: string) => Promise; }; export declare const useConnectWallet: ({ enableVisitTrackingOnConnectOnly, environmentId, primaryWalletId, walletConnectorOptions, handleConnectedWallet, setShowAuthFlow, isBridgeFlow, }: UseConnectWalletProps) => UseConnectWalletValue; export {};