/// import '@polkadot/types-augment'; import { _ApiOptions } from '@soul-wallet/extension-base/services/chain-service/handler/types'; import { _ChainConnectionStatus, _EvmApi } from '@soul-wallet/extension-base/services/chain-service/types'; import { PromiseHandler } from '@soul-wallet/extension-base/utils/promise'; import { BehaviorSubject } from 'rxjs'; import Web3 from 'web3'; import { HttpProvider, WebsocketProvider } from 'web3-core'; export declare class EvmApi implements _EvmApi { chainSlug: string; api: Web3; apiUrl: string; provider: HttpProvider | WebsocketProvider; apiError?: string; apiRetry: number; readonly isApiConnectedSubject: BehaviorSubject; readonly connectionStatusSubject: BehaviorSubject<_ChainConnectionStatus>; isApiReady: boolean; isApiReadyOnce: boolean; isReadyHandler: PromiseHandler<_EvmApi>; intervalCheckApi: NodeJS.Timer; providerName: string; get isApiConnected(): boolean; get connectionStatus(): _ChainConnectionStatus; private updateConnectionStatus; get isReady(): Promise<_EvmApi>; updateApiUrl(apiUrl: string): Promise; recoverConnect(): Promise; private createProvider; constructor(chainSlug: string, apiUrl: string, { providerName }?: _ApiOptions); createIntervalCheckApi(): NodeJS.Timer; clearIntervalCheckApi(): void; connect(): void; disconnect(): Promise; destroy(): Promise; onConnect(): void; onDisconnect(): void; }