@dapplets/dapplet-extension
Version:
The Bridge to the Augmented Web.
35 lines (34 loc) • 1.27 kB
TypeScript
import { TransactionRequest } from '@ethersproject/providers';
import { ethers } from 'ethers';
import { EthereumWallet } from './interface';
export default class extends ethers.Signer implements EthereumWallet {
provider: ethers.providers.StaticJsonRpcProvider;
private _metamaskProviderPromise;
constructor(config: {
providerUrl: string;
chainId: number;
ensAddress?: string;
name?: string;
});
getAddress(): Promise<string>;
signMessage(message: string | ethers.Bytes): Promise<string>;
signTransaction(): Promise<string>;
sendTransaction(transaction: TransactionRequest): Promise<ethers.providers.TransactionResponse>;
sendTransactionOutHash(transaction: TransactionRequest): Promise<string>;
sendCustomRequest(method: string, params: any[]): Promise<any>;
connect(): ethers.Signer;
isAvailable(): Promise<boolean>;
isConnected(): Promise<boolean>;
connectWallet(): Promise<void>;
disconnectWallet(): Promise<void>;
getMeta(): Promise<{
name: string;
description: string;
icon: any;
}>;
getLastUsage(): Promise<any>;
private _prepareNetwork;
private _getWalletChainId;
private _getMetamaskProvider;
private _getMetaMaskId;
}