import { SigningCosmWasmClient, SigningCosmWasmClientOptions } from "@cosmjs/cosmwasm-stargate"; import { OfflineSigner } from "@cosmjs/proto-signing"; import { SigningStargateClient, SigningStargateClientOptions } from "@cosmjs/stargate"; import { ChainInfo, Keplr } from "@keplr-wallet/types"; import WalletConnect from "@walletconnect/client"; export interface IKeplrWalletConnectV1 extends Keplr { dontOpenAppOnEnable: boolean; } export declare type WalletClient = Keplr | IKeplrWalletConnectV1; export declare enum WalletType { Keplr = "keplr", WalletConnectKeplr = "walletconnect_keplr" } export interface Wallet { type: WalletType; name: string; description: string; imageUrl: string; getClient: (chainInfo: ChainInfo, walletConnect?: WalletConnect) => Promise; getOfflineSignerFunction: (client: WalletClient) => (chainId: string) => OfflineSigner | Promise; } export interface ConnectedWallet { wallet: Wallet; walletClient: WalletClient; chainInfo: ChainInfo; offlineSigner: OfflineSigner; name: string; address: string; signingCosmWasmClient: SigningCosmWasmClient; signingStargateClient: SigningStargateClient; } export declare type SigningClientGetter = (chainInfo: ChainInfo) => T | Promise | undefined; export declare type ChainInfoOverrides = ChainInfo[] | (() => undefined | ChainInfo[] | Promise); export interface IWalletManagerContext { connect: () => void; disconnect: () => Promise; connectedWallet?: ConnectedWallet; status: WalletConnectionStatus; error?: unknown; isEmbeddedKeplrMobileWeb: boolean; chainInfoOverrides?: ChainInfoOverrides; getSigningCosmWasmClientOptions?: SigningClientGetter; getSigningStargateClientOptions?: SigningClientGetter; } export interface ModalClassNames { modalContent?: string; modalOverlay?: string; modalHeader?: string; modalSubheader?: string; modalCloseButton?: string; walletList?: string; wallet?: string; walletImage?: string; walletInfo?: string; walletName?: string; walletDescription?: string; textContent?: string; } export declare enum WalletConnectionStatus { Initializing = 0, AttemptingAutoConnection = 1, ReadyForConnection = 2, Connecting = 3, Connected = 4, Resetting = 5, Errored = 6 } export declare type UseWalletResponse = Partial & Pick; //# sourceMappingURL=types.d.ts.map