@walletconnect/universal-provider
Version:
Universal Provider for WalletConnect Protocol
59 lines • 2.81 kB
TypeScript
import { SignClient } from "@walletconnect/sign-client";
import { SessionTypes } from "@walletconnect/types";
import { JsonRpcResult } from "@walletconnect/jsonrpc-types";
import { Logger } from "@walletconnect/logger";
import { IUniversalProvider, RpcProviderMap, ConnectParams, RequestArguments, UniversalProviderOpts, NamespaceConfig, PairingsCleanupOpts, ProviderAccounts, AuthenticateParams } from "./types/index.js";
import EventEmitter from "events";
export declare class UniversalProvider implements IUniversalProvider {
client: InstanceType<typeof SignClient>;
namespaces?: NamespaceConfig;
optionalNamespaces?: NamespaceConfig;
sessionProperties?: SessionTypes.SessionProperties;
scopedProperties?: SessionTypes.ScopedProperties;
events: EventEmitter;
rpcProviders: RpcProviderMap;
session?: SessionTypes.Struct;
providerOpts: UniversalProviderOpts;
logger: Logger;
uri: string | undefined;
private disableProviderPing;
private connectParams?;
static init(opts: UniversalProviderOpts): Promise<UniversalProvider>;
constructor(opts: UniversalProviderOpts);
request<T = unknown>(args: RequestArguments, chain?: string | undefined, expiry?: number | undefined): Promise<T>;
sendAsync(args: RequestArguments, callback: (error: Error | null, response: JsonRpcResult) => void, chain?: string | undefined, expiry?: number | undefined): void;
enable(): Promise<ProviderAccounts>;
disconnect(): Promise<void>;
connect(opts: ConnectParams): Promise<SessionTypes.Struct | undefined>;
authenticate(opts: AuthenticateParams, walletUniversalLink?: string): Promise<import("@walletconnect/types").AuthTypes.AuthenticateResponseResult>;
on(event: any, listener: any): void;
once(event: string, listener: any): void;
removeListener(event: string, listener: any): void;
off(event: string, listener: any): void;
get isWalletConnect(): boolean;
pair(pairingTopic: string | undefined): Promise<SessionTypes.Struct>;
setDefaultChain(chain: string, rpcUrl?: string | undefined): void;
cleanupPendingPairings(opts?: PairingsCleanupOpts): Promise<void>;
abortPairingAttempt(): void;
private checkStorage;
private initialize;
private createClient;
private createProviders;
private registerEventListeners;
private getProvider;
private onSessionUpdate;
private setNamespaces;
private validateChain;
private requestAccounts;
private onChainChanged;
private emitAccountsChangedOnChainChange;
private updateNamespaceChain;
private onConnect;
private cleanup;
private persist;
private getFromStore;
private deleteFromStore;
private cleanupStorage;
}
export default UniversalProvider;
//# sourceMappingURL=UniversalProvider.d.ts.map