///
import EventEmitter from 'events';
import { Logger } from '@walletconnect/logger';
import SignClient from '@walletconnect/sign-client';
import { SessionTypes } from '@walletconnect/types';
import { Web3Modal } from '@web3modal/standalone';
import { ProviderAccounts } from 'eip1193-provider';
import { IUniversalProvider, RpcProviderMap, ConnectParams, RequestArguments, UniversalProviderOpts, NamespaceConfig, PairingsCleanupOpts } from './types';
export declare class UniversalProvider implements IUniversalProvider {
client: SignClient;
namespaces: NamespaceConfig;
optionalNamespaces?: NamespaceConfig;
sessionProperties?: Record;
events: EventEmitter;
rpcProviders: RpcProviderMap;
session?: SessionTypes.Struct;
providerOpts: UniversalProviderOpts;
logger: Logger;
uri: string | undefined;
modal?: Web3Modal;
private shouldAbortPairingAttempt;
private maxPairingAttempts;
static init(opts: UniversalProviderOpts): Promise;
constructor(opts: UniversalProviderOpts);
request(args: RequestArguments, chain?: string | undefined): Promise;
sendAsync(args: RequestArguments, callback: (error: Error | null, response: any) => void, chain?: string | undefined): void;
enable(): Promise;
disconnect(): Promise;
connect(opts: ConnectParams): Promise;
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;
setDefaultChain(chain: string, rpcUrl?: string | undefined): void;
cleanupPendingPairings(opts?: PairingsCleanupOpts): Promise;
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 onConnect;
private cleanup;
private persist;
private getFromStore;
}
export default UniversalProvider;
//# sourceMappingURL=UniversalProvider.d.ts.map