@web3modal/base
Version:
#### 🔗 [Website](https://web3modal.com)
87 lines (86 loc) • 5.29 kB
TypeScript
import type { EventsControllerState, PublicStateControllerState, ThemeControllerState, ModalControllerState, ConnectedWalletInfo, RouterControllerState, ChainAdapter, CaipNetwork } from '@web3modal/core';
import { AccountController, BlockchainApiController, ConnectionController, ConnectorController, EnsController, OptionsController, NetworkController, AssetUtil } from '@web3modal/core';
import type { AppKitOptions } from '../utils/TypesUtil.js';
export interface OpenOptions {
view: 'Account' | 'Connect' | 'Networks' | 'ApproveTransaction' | 'OnRampProviders';
}
export declare class AppKit<AdapterStoreState = unknown, SwitchNetworkParam = unknown> {
private static instance?;
adapter?: ChainAdapter<AdapterStoreState, SwitchNetworkParam>;
adapters?: ChainAdapter<AdapterStoreState, SwitchNetworkParam>[];
private initPromise?;
constructor(options: AppKitOptions & {
adapters?: ChainAdapter<AdapterStoreState, SwitchNetworkParam>[];
});
static getInstance(): AppKit<unknown, unknown> | undefined;
open(options?: OpenOptions): Promise<void>;
close(): Promise<void>;
setLoading(loading: ModalControllerState['loading']): void;
getError(): unknown;
getChainId(): string | number | undefined;
getAddress(): string | undefined;
switchNetwork(chainId: SwitchNetworkParam): void | undefined;
getIsConnected(): boolean | undefined;
getWalletProvider(): unknown;
getWalletProviderType(): string | undefined;
subscribeProvider(callback: (newState: AdapterStoreState) => void): void | undefined;
getThemeMode(): import("@web3modal/core").ThemeMode;
getThemeVariables(): import("@web3modal/core").ThemeVariables;
setThemeMode(themeMode: ThemeControllerState['themeMode']): void;
setThemeVariables(themeVariables: ThemeControllerState['themeVariables']): void;
subscribeTheme(callback: (newState: ThemeControllerState) => void): () => void;
getWalletInfo(): ConnectedWalletInfo;
subscribeWalletInfo(callback: (newState: ConnectedWalletInfo) => void): () => void;
subscribeShouldUpdateToAddress(callback: (newState?: string) => void): void;
subscribeCaipNetworkChange(callback: (newState?: CaipNetwork) => void): void;
getState(): PublicStateControllerState;
subscribeState(callback: (newState: PublicStateControllerState) => void): () => void;
showErrorMessage(message: string): void;
showSuccessMessage(message: string): void;
getEvent(): {
timestamp: number;
data: import("@web3modal/core").Event;
};
subscribeEvents(callback: (newEvent: EventsControllerState) => void): () => void;
replace(route: RouterControllerState['view']): void;
redirect(route: RouterControllerState['view']): void;
popTransactionStack(cancel?: boolean): void;
isOpen(): boolean;
isTransactionStackEmpty(): boolean;
isTransactionShouldReplaceView(): boolean | undefined;
setIsConnected: (typeof AccountController)['setIsConnected'];
getIsConnectedState: () => boolean;
setAllAccounts: (typeof AccountController)['setAllAccounts'];
addAddressLabel: (typeof AccountController)['addAddressLabel'];
removeAddressLabel: (typeof AccountController)['removeAddressLabel'];
getCaipAddress: () => `${string}:${string}:${string}` | undefined;
setCaipAddress: (typeof AccountController)['setCaipAddress'];
setBalance: (typeof AccountController)['setBalance'];
setProfileName: (typeof AccountController)['setProfileName'];
setProfileImage: (typeof AccountController)['setProfileImage'];
resetAccount: (typeof AccountController)['resetAccount'];
setCaipNetwork: (typeof NetworkController)['setCaipNetwork'];
getCaipNetwork: () => CaipNetwork | undefined;
setRequestedCaipNetworks: (typeof NetworkController)['setRequestedCaipNetworks'];
getApprovedCaipNetworkIds: (typeof NetworkController)['getApprovedCaipNetworkIds'];
setApprovedCaipNetworksData: (typeof NetworkController)['setApprovedCaipNetworksData'];
resetNetwork: (typeof NetworkController)['resetNetwork'];
setConnectors: (typeof ConnectorController)['setConnectors'];
addConnector: (typeof ConnectorController)['addConnector'];
getConnectors: (typeof ConnectorController)['getConnectors'];
resetWcConnection: (typeof ConnectionController)['resetWcConnection'];
fetchIdentity: (typeof BlockchainApiController)['fetchIdentity'];
setAddressExplorerUrl: (typeof AccountController)['setAddressExplorerUrl'];
setSmartAccountDeployed: (typeof AccountController)['setSmartAccountDeployed'];
setConnectedWalletInfo: (typeof AccountController)['setConnectedWalletInfo'];
setSmartAccountEnabledNetworks: (typeof NetworkController)['setSmartAccountEnabledNetworks'];
setPreferredAccountType: (typeof AccountController)['setPreferredAccountType'];
getWalletConnectName: (typeof EnsController)['getNamesForAddress'];
resolveWalletConnectName: (name: string) => Promise<string | false>;
setEIP6963Enabled: (typeof OptionsController)['setEIP6963Enabled'];
setClientId: (typeof BlockchainApiController)['setClientId'];
getConnectorImage: (typeof AssetUtil)['getConnectorImage'];
handleUnsafeRPCRequest: () => void;
private initControllers;
private initOrContinue;
}