@keplr-ewallet/ewallet-sdk-eth
Version:
28 lines (27 loc) • 1.72 kB
TypeScript
import type { Address, AddEthereumChainParameter as RpcChain } from "viem";
import type { EthSigner } from "../types";
import type { RpcMethod, RpcRequestArgs, RpcResponseData, PublicRpcMethod, WalletRpcMethod } from "../rpc";
import { ProviderEventEmitter } from "./emitter";
import type { EIP1193Provider, EWalletEIP1193ProviderOptions, ProviderConnectInfo, RpcChainWithStatus } from "./types";
import { EthereumRpcError } from "./error";
export declare class EWalletEIP1193Provider extends ProviderEventEmitter implements EIP1193Provider {
protected signer: EthSigner | null;
protected activeChain: RpcChain;
protected addedChains: RpcChainWithStatus[];
private lastConnectedEmittedEvent;
readonly version: string;
readonly name: string;
constructor(options: EWalletEIP1193ProviderOptions);
get chainId(): string;
get isConnected(): boolean;
request<M extends RpcMethod>(args: RpcRequestArgs<M>): Promise<RpcResponseData<M>>;
protected handleRequest<M extends RpcMethod>(args: RpcRequestArgs<M>): Promise<RpcResponseData<M>>;
protected handlePublicRpcRequest<M extends PublicRpcMethod>(args: RpcRequestArgs<M>): Promise<RpcResponseData<M>>;
protected handleWalletRpcRequest<M extends WalletRpcMethod>(args: RpcRequestArgs<M>): Promise<RpcResponseData<M>>;
private _getAuthenticatedSigner;
protected validateRequestArgs<M extends RpcMethod>(args: RpcRequestArgs<M>): void;
protected _handleConnected(connected: boolean, data: ProviderConnectInfo | EthereumRpcError): void;
protected isConnectionError(error: any): boolean;
protected _handleChainChanged(chainId: string): void;
protected _handleAccountsChanged(newAddress: Address[]): void;
}