import { ChainType, IWalletInfo, WalletType } from '../wallets/client/IWallet'; import { IActiveChainAddressParams, ILinkTargetChainParams, ILoginParams } from '../events/emitter'; export interface IUserInfo { userId?: string; email?: string; username?: string; ethereumAddress?: string; hasPassword?: boolean; flowAddress?: string; bnbAddress?: string; opbnbAddress?: string; nervosAddress?: string; skaleAddress?: string; suiAddress?: string; soneiumAddress?: string; mantleAddress?: string; b2Address?: string; baseAddress?: string; tonAddress?: string; bitcoinAddressP2wpkh?: string; bitcoinAddressP2sh?: string; bitcoinAddressP2pkh?: string; bitcoinAddressP2Tr?: string; avatar?: string; createdAt?: string; twitterId?: string; twitterUsername?: string; discordId?: string; discordUsername?: string; telegramId?: string; telegramUsername?: string; authAgentWhiteList?: boolean; googleEmail?: string; } export type UserModalType = "login" | "sign_up" | "add_wallet" | "link_target_chain" | "edit_profile" | "replace_email" | "world3_welcome" | "world3_collect_task_addresses" | "world3_mint_wallet_select" | "active_chain_address" | "stake" | "set_password" | "bind_email" | "none"; export type StakeType = "land" | "egg"; export interface ICollectAddressesConfig { taskGroupId?: number; supportedChains?: ChainType[]; supportedWallets?: WalletType[]; } export interface IBindEmailParams { walletInfo: IWalletInfo; activeChainId: ChainType; activeWalletId: WalletType; msg: string; signature: string; originAddress: string; referralCode?: string; isNewAddress?: boolean; } export interface AuthContextType { userModal: UserModalType; setUserModal: (modal?: UserModalType) => void; userInfo?: IUserInfo; setUserInfo: (user?: IUserInfo) => void; isUserInfoLoading: boolean; setUserInfoLoading: (value: boolean) => void; refreshUserInfo: () => void; connectMap: { [address: string]: boolean; }; walletInfos: IWalletInfo[]; setWalletInfos: React.Dispatch>; loginModalParams?: ILoginParams; setLoginModalParams: (params?: ILoginParams) => void; addWalletModalParams: { chainType: ChainType; single: boolean; }; setAddWalletModalParams: (data: { chainType: ChainType; single: boolean; }) => void; referralCode?: string; setReferralCode: (referralCode: string) => void; collectAddressesConfig?: ICollectAddressesConfig; setCollectAddressesConfig: (data?: ICollectAddressesConfig) => void; onPathChange?: (path: string, openInBlank?: boolean) => void; isLight: boolean; activeChainAddressParams?: IActiveChainAddressParams; setActiveChainAddressParams: (data: IActiveChainAddressParams) => void; linkTargetChainParams?: ILinkTargetChainParams; setLinkTargetChainParams: (data: ILinkTargetChainParams) => void; stakeType?: StakeType; setStakeType: (data?: StakeType) => void; bindEmailParams?: IBindEmailParams; setBindEmailParams: (data?: IBindEmailParams) => void; isTurnstileVerified: boolean; setTurnstileVerified: (data: boolean) => void; } export declare const defaultAuthContext: AuthContextType; export declare const AuthContext: import('react').Context;