UNPKG

@web3auth/no-modal

Version:
80 lines (79 loc) 4.11 kB
import { SafeEventEmitter } from "@web3auth/auth"; import { Analytics, type ChainNamespaceType, type CONNECTOR_STATUS_TYPE, type CustomChainConfig, type IConnector, type IdentityTokenInfo, type IPlugin, type IProvider, type IWeb3Auth, type IWeb3AuthCoreOptions, IWeb3AuthState, LoginModeType, type LoginParamMap, type ProjectConfig, type UserInfo, type WALLET_CONNECTOR_TYPE, type Web3AuthNoModalEvents } from "./base"; import { type AccountAbstractionProvider } from "./providers/account-abstraction-provider"; import { CommonJRPCProvider } from "./providers/base-provider"; export declare class Web3AuthNoModal extends SafeEventEmitter<Web3AuthNoModalEvents> implements IWeb3Auth { readonly coreOptions: IWeb3AuthCoreOptions; status: CONNECTOR_STATUS_TYPE; protected aaProvider: AccountAbstractionProvider | null; protected connectors: IConnector<unknown>[]; protected commonJRPCProvider: CommonJRPCProvider | null; protected analytics: Analytics; protected plugins: Record<string, IPlugin>; private storage; private state; private loginMode; constructor(options: IWeb3AuthCoreOptions, initialState?: IWeb3AuthState); get currentChain(): CustomChainConfig | undefined; get connected(): boolean; get provider(): IProvider | null; get connectedConnectorName(): WALLET_CONNECTOR_TYPE | null; get cachedConnector(): string | null; get currentChainId(): string | null; get connectedConnector(): IConnector<unknown> | null; get accountAbstractionProvider(): AccountAbstractionProvider | null; get idToken(): string | null; set provider(_: IProvider | null); init(options?: { signal?: AbortSignal; }): Promise<void>; getConnector(connectorName: WALLET_CONNECTOR_TYPE, chainNamespace?: ChainNamespaceType): IConnector<unknown> | null; clearCache(): void; cleanup(): Promise<void>; switchChain(params: { chainId: string; }): Promise<void>; /** * Connect to a specific wallet connector * @param connectorName - Key of the wallet connector to use. */ connectTo<T extends WALLET_CONNECTOR_TYPE>(connectorName: T, loginParams?: LoginParamMap[T], loginMode?: LoginModeType): Promise<IProvider | null>; logout(options?: { cleanup: boolean; }): Promise<void>; getUserInfo(): Promise<Partial<UserInfo>>; enableMFA<T>(loginParams?: T): Promise<void>; manageMFA<T>(loginParams?: T): Promise<void>; getIdentityToken(): Promise<IdentityTokenInfo>; getPlugin(name: string): IPlugin | null; setAnalyticsProperties(properties: Record<string, unknown>): void; protected initChainsConfig(projectConfig: ProjectConfig): void; protected initAccountAbstractionConfig(projectConfig?: ProjectConfig): void; protected initUIConfig(projectConfig: ProjectConfig): void; protected initSessionTimeConfig(projectConfig: ProjectConfig): void; protected initCachedConnectorAndChainId(): void; protected initWalletServicesConfig(projectConfig: ProjectConfig): void; protected getInitializationTrackData(): {}; protected setupCommonJRPCProvider(): Promise<void>; protected setupConnector(connector: IConnector<unknown>): Promise<void>; protected loadConnectors({ projectConfig, modalMode }: { projectConfig: ProjectConfig; modalMode?: boolean; }): Promise<void>; protected initPlugins(): Promise<void>; protected setConnectors(connectors: IConnector<unknown>[]): void; protected subscribeToConnectorEvents(connector: IConnector<unknown>): void; protected checkInitRequirements(): void; protected checkIfAutoConnect(connector: IConnector<unknown>): boolean; /** * Gets the initial chain configuration for a connector * @throws WalletInitializationError If no chain is found for the connector's namespace */ protected getInitialChainIdForConnector(connector: IConnector<unknown>): CustomChainConfig; private cacheWallet; private setCurrentChain; private connectToPlugins; private setState; private loadState; private getStorageMethod; }