import { Dispatch, PropsWithChildren, SetStateAction } from "react"; import { DevInspectResults, SuiTransactionBlockResponse } from "@mysten/sui/client"; import { Transaction } from "@mysten/sui/transactions"; import { WalletAccount, WalletIcon, WalletWithRequiredFeatures } from "@mysten/wallet-standard"; export declare enum WalletType { EXTENSION = "extension", WEB = "web" } type WalletPlatform = "iOS" | "android" | "extension"; export type Wallet = { name: string; isInstalled?: boolean; iconUrl?: WalletIcon; type: WalletType; downloadUrls?: Record; raw?: WalletWithRequiredFeatures; }; declare enum WalletName { SLUSH = "Slush", BACKPACK = "Backpack", PHANTOM = "Phantom", NIGHTLY = "Nightly", SUIET = "Suiet", BYBIT_WALLET = "Bybit Wallet", GATE_WALLET = "Gate Wallet", OKX_WALLET = "OKX Wallet", MSAFE_WALLET = "MSafe Wallet" } export declare const DEFAULT_EXTENSION_WALLET_NAMES: WalletName[]; export declare enum WalletContextQueryParams { WALLET = "wallet" } export interface WalletContext { isImpersonating?: boolean; isConnectWalletDropdownOpen: boolean; setIsConnectWalletDropdownOpen: Dispatch>; wallets: Wallet[]; wallet?: Wallet; connectWallet: (wallet: Wallet) => void; disconnectWallet: () => void; accounts: readonly WalletAccount[]; account?: WalletAccount; switchAccount: (account: WalletAccount, addressNameServiceName?: string) => void; address?: string; dryRunTransaction: (transaction: Transaction, setGasBudget?: boolean) => Promise; signExecuteAndWaitForTransaction: (transaction: Transaction, options?: { auction?: boolean; }) => Promise; } export declare const useWalletContext: () => WalletContext; interface WalletContextProviderProps extends PropsWithChildren { appName: string; } export declare function WalletContextProvider({ appName, children, }: WalletContextProviderProps): import("react").JSX.Element; export {};