@venly/web3-provider
Version:
Venly enabled Web3 Provider for the web
43 lines (42 loc) • 1.65 kB
TypeScript
import SafeEventEmitter from '@metamask/safe-event-emitter';
import type { JsonRpcEngine } from '@metamask/json-rpc-engine';
import type { JsonRpcRequest } from '@metamask/utils';
/**
* Construct an Ethereum provider from the given JSON-RPC engine.
*
* @param engine - The JSON-RPC engine to construct a provider from.
* @returns An Ethereum provider.
*/
export default function providerFromEngine(engine: JsonRpcEngine): SafeEventEmitterProvider;
declare class SafeEventEmitterProvider extends SafeEventEmitter {
engine: JsonRpcEngine;
/**
* Construct a SafeEventEmitterProvider from a JSON-RPC engine.
*
* @param options - Options.
* @param options.engine - The JSON-RPC engine used to process requests.
*/
constructor({ engine }: {
engine: JsonRpcEngine;
});
request: (req: JsonRpcRequest) => Promise<unknown>;
/**
* Send a provider request asynchronously.
*
* @param req - The request to send.
* @param callback - A function that is called upon the success or failure of the request.
*/
sendAsync: (req: JsonRpcRequest, callback: (error: unknown, providerRes?: any) => void) => void;
/**
* Send a provider request asynchronously.
*
* This method serves the same purpose as `sendAsync`. It only exists for
* legacy reasons.
*
* @deprecated Use `sendAsync` instead.
* @param req - The request to send.
* @param callback - A function that is called upon the success or failure of the request.
*/
send: (req: JsonRpcRequest, callback: (error: unknown, providerRes?: any) => void) => void;
}
export {};