///
import { EventEmitter } from 'events';
import React from 'react';
import { WalletHookInterface } from './types';
import { WebLoginProviderProps } from './types';
import { WalletType, WebLoginState } from './constants';
export declare enum LogoutConfirmResult {
default = 0,
cancel = 1,
ok = 2
}
export type WebLoginInterface = WalletHookInterface & {
loginId: number;
loginState: WebLoginState;
loginError: any | unknown;
eventEmitter: EventEmitter;
walletType: WalletType;
version: string;
};
export type WebLoginInternalInterface = {
_api: {
nigthElf: WalletHookInterface;
portkey: WalletHookInterface;
discover: WalletHookInterface;
};
_multiWallets: {
current: WalletType;
switchingWallet: WalletType;
switching: boolean;
setSwitingWallet: (walletType: WalletType) => void;
};
};
export type WebLoginContextType = WebLoginInterface & WebLoginInternalInterface;
export declare const WebLoginContext: React.Context;
export declare const useWebLoginContext: () => WebLoginContextType;
export declare const useWebLogin: () => WebLoginInterface;
export type ExtraWalletProviderProps = Omit;
export declare const ExtraWalletContext: React.Context;
export declare const PortkeyProvider: ({ children, ...props }: any) => import("react/jsx-runtime").JSX.Element;
export declare const PortkeyAssetProvider: ({ children, ...props }: any) => import("react/jsx-runtime").JSX.Element;
export declare function removeOtherKey(type: WalletType): void;
export default function Provider({ children, ...props }: WebLoginProviderProps): import("react/jsx-runtime").JSX.Element | null;