@linenext/dapp-portal-sdk
Version:
Dapp Portal SDK
37 lines (36 loc) • 1.42 kB
TypeScript
import { EIP1193Provider, RequestArguments } from "./interface";
import { WalletType } from "../enum/WalletType";
import { DappPortalSDKConfig } from "../config/config";
import { EventEmitter } from "eventemitter3";
import { RpcSuccessResponse } from "../message/RpcMessage";
import { ProviderType } from "../enum/ProviderType";
export declare class WalletProvider extends EventEmitter implements EIP1193Provider {
private readonly config;
private walletType;
private providerType;
private handler;
private readonly chainNodeRpcClient;
private readonly metricApiClient;
private readonly sdkLocalStorage;
host: string;
connected: boolean;
timeout: number;
private initializePromise;
constructor(config: DappPortalSDKConfig);
private initialize;
private initializeHandler;
getWalletType(): WalletType | null;
getProviderType(): ProviderType | null;
disconnectWallet(): void;
request(requestArgs: RequestArguments): Promise<unknown>;
private requestToWallet;
private initializeWalletType;
private selectWalletType;
private validateTxType;
private validateSignTransaction;
send(payload: object, callback?: (error: Error | null, result: RpcSuccessResponse | undefined) => void): Promise<void>;
supportsSubscriptions(): boolean;
disconnect(): boolean;
private sendWalletConnectMetric;
}
export default WalletProvider;