///
import { JsonRpcProvider } from "@ethersproject/providers";
import BigNumber from "bignumber.js";
import type { Signer } from "arbundles";
import type { TokenConfig, Tx } from "../../common/types.js";
import { BaseNodeToken } from "./base.js";
export default class EthereumConfig extends BaseNodeToken {
protected providerInstance: JsonRpcProvider;
constructor(config: TokenConfig);
protected getProvider(): Promise;
getTx(txId: string): Promise;
ownerToAddress(owner: any): string;
sign(data: Uint8Array): Promise;
getSigner(): Signer;
verify(pub: any, data: Uint8Array, signature: Uint8Array): Promise;
getCurrentHeight(): Promise;
getFee(amount: BigNumber.Value, to?: string): Promise;
sendTx(data: any): Promise;
createTx(amount: BigNumber.Value, to: string, fee?: string): Promise<{
txId: string | undefined;
tx: any;
}>;
getPublicKey(): Buffer;
}