@linenext/dapp-portal-sdk
Version:
Dapp Portal SDK
48 lines (47 loc) • 2.16 kB
TypeScript
import { EventEmitter } from 'eventemitter3';
import { DappPortalSDKConfig } from '../config/config';
import { WalletType } from '../enum/WalletType';
import { RpcSuccessResponse } from '../message/RpcMessage';
import NoticeService from '../service/NoticeService';
import { RequestArguments } from './interface';
import { InternalEventProvider } from './InternalEventProvider';
import { WalletProvider } from './WalletProvider';
export declare class SdkWalletProvider extends EventEmitter implements WalletProvider {
private readonly config;
private handler;
private readonly chainNodeRpcClient;
private readonly metricApiClient;
private readonly balanceApiClient;
private readonly sdkLocalStorage;
private isProcessingRequestToWallet;
private readonly trackingId;
private readonly internalEventProvider;
private readonly noticeService;
host: string;
connected: boolean;
timeout: number;
initializePromise: Promise<void>;
constructor(config: DappPortalSDKConfig, trackingId: string, internalEventProvider: InternalEventProvider, noticeService: NoticeService);
private initialize;
private initializeHandler;
getWalletType(): WalletType | null;
disconnectWallet(): Promise<void>;
request(requestArgs: RequestArguments): Promise<unknown>;
getErc20TokenBalance(contractAddress: string, walletAddress: string): Promise<string>;
getErc20TokenBalanceWithDepositedBalance(contractAddress: string, walletAddress: string): Promise<string>;
private requestToWallet;
private connectWallet;
private connectAndSign;
private initializeWalletType;
private selectProviderType;
private getLatestWalletTypeFromStorage;
private getLatestProviderTypeFromStorage;
private validateTxType;
private validateSignTransaction;
send(payload: object, callback?: (error: Error | null, result: RpcSuccessResponse | undefined) => void): Promise<void>;
supportsSubscriptions(): boolean;
disconnect(): boolean;
private sendWalletConnectMetric;
setProviderConfig(_dappPortalApiBaseUrl: string, _isLiff: boolean): void;
}
export default SdkWalletProvider;