@web3auth/wallet-connect-v2-adapter
Version:
wallet connect v2 adapter for web3auth
40 lines (39 loc) • 1.54 kB
TypeScript
import type { ISignClient } from "@walletconnect/types";
import { CustomChainConfig } from "@web3auth/base";
import { BaseProvider, BaseProviderConfig, BaseProviderState } from "@web3auth/base-provider";
export interface WalletConnectV2ProviderConfig extends BaseProviderConfig {
chainConfig: CustomChainConfig;
}
export interface WalletConnectV2ProviderState extends BaseProviderState {
accounts: string[];
}
export declare class WalletConnectV2Provider extends BaseProvider<BaseProviderConfig, WalletConnectV2ProviderState, ISignClient> {
private connector;
private clientId;
constructor({ clientId, config, state, connector, }: {
config: WalletConnectV2ProviderConfig;
clientId: string;
state?: BaseProviderState;
connector?: ISignClient;
});
static getProviderInstance: (params: {
clientId: string;
connector: ISignClient;
chainConfig: CustomChainConfig;
skipLookupNetwork: boolean;
}) => Promise<WalletConnectV2Provider>;
enable(): Promise<string[]>;
setupProvider(connector: ISignClient): Promise<void>;
switchChain({ chainId }: {
chainId: string;
}): Promise<void>;
addChain(chainConfig: CustomChainConfig): Promise<void>;
protected lookupNetwork(_: ISignClient): Promise<string>;
private setupEngine;
private setupEthEngine;
private setupSolEngine;
private getEthChainSwitchMiddleware;
private connectedTopic;
private checkIfAccountAllowed;
private onConnectorStateUpdate;
}