walletlink-e
Version:
WalletLink JavaScript SDK
76 lines (75 loc) • 2.84 kB
TypeScript
import { WalletLinkRelay } from "../relay/WalletLinkRelay";
import { AddressString, Callback } from "../types";
import { JSONRPCRequest, JSONRPCResponse } from "./JSONRPC";
import { Web3Provider } from "./Web3Provider";
export interface WalletLinkProviderOptions {
relay: WalletLinkRelay;
jsonRpcUrl: string;
chainId?: number;
}
export declare class WalletLinkProvider implements Web3Provider {
private readonly _filterPolyfill;
private readonly _relay;
private readonly _chainId;
private readonly _jsonRpcUrl;
private _addresses;
constructor(options: Readonly<WalletLinkProviderOptions>);
get selectedAddress(): AddressString | undefined;
get networkVersion(): string;
get isWalletLink(): boolean;
get host(): string;
get connected(): boolean;
isConnected(): boolean;
enable(): Promise<AddressString[]>;
close(): void;
send(request: JSONRPCRequest): JSONRPCResponse;
send(request: JSONRPCRequest[]): JSONRPCResponse[];
send(request: JSONRPCRequest, callback: Callback<JSONRPCResponse>): void;
send(request: JSONRPCRequest[], callback: Callback<JSONRPCResponse[]>): void;
send<T = any>(method: string, params?: any[] | any): Promise<T>;
sendAsync(request: JSONRPCRequest, callback: Callback<JSONRPCResponse>): void;
sendAsync(request: JSONRPCRequest[], callback: Callback<JSONRPCResponse[]>): void;
scanQRCode(match?: RegExp): Promise<string>;
arbitraryRequest(data: string): Promise<string>;
supportsSubscriptions(): boolean;
subscribe(): void;
unsubscribe(): void;
disconnect(): boolean;
private _send;
private _sendAsync;
private _sendRequest;
private _setAddresses;
private _sendRequestAsync;
private _sendMultipleRequestsAsync;
private _handleSynchronousMethods;
private _handleAsynchronousMethods;
private _handleAsynchronousFilterMethods;
private _isKnownAddress;
private _ensureKnownAddress;
private _prepareTransactionParams;
private _requireAuthorization;
private _throwUnsupportedMethodError;
private _signEthereumMessage;
private _ethereumAddressFromSignedMessage;
private _eth_accounts;
private _eth_coinbase;
private _net_version;
private _eth_requestAccounts;
private _eth_sign;
private _eth_ecRecover;
private _personal_sign;
private _personal_ecRecover;
private _eth_signTransaction;
private _eth_sendRawTransaction;
private _eth_sendTransaction;
private _eth_signTypedData_v1;
private _eth_signTypedData_v3;
private _eth_signTypedData_v4;
private _walletlink_arbitrary;
private _eth_uninstallFilter;
private _eth_newFilter;
private _eth_newBlockFilter;
private _eth_newPendingTransactionFilter;
private _eth_getFilterChanges;
private _eth_getFilterLogs;
}