import BN from 'bn.js'; import { Tx } from 'web3/eth/types'; import { TransactionReceipt, Log, EventLog } from 'web3/types'; export declare type address = string; export declare type Integer = BN | string; export declare enum ConfirmationType { Hash = 0, Confirmed = 1, Both = 2, Simulate = 3 } export declare const Networks: { MAINNET: number; KOVAN: number; }; export interface Options { defaultAccount?: address; confirmationType?: ConfirmationType; defaultConfirmations?: number; autoGasMultiplier?: number; testing?: boolean; defaultGas?: number | string; defaultGasPrice?: number | string; accounts?: EthereumAccount[]; apiEndpoint?: string; apiTimeout?: number; ethereumNodeTimeout?: number; wsOrigin?: string; wsEndpoint?: string; wsTimeout?: number; } export interface EthereumAccount { address?: string; privateKey: string; } export interface ContractCallOptions extends Tx { confirmations?: number; confirmationType?: ConfirmationType; autoGasMultiplier?: number; } export interface ContractConstantCallOptions extends Tx { blockNumber?: number; } export interface TxResult { transactionHash?: string; transactionIndex?: number; blockHash?: string; blockNumber?: number; from?: string; to?: string; contractAddress?: string; cumulativeGasUsed?: number; gasUsed?: number; logs?: Log[]; events?: { [eventName: string]: EventLog; }; status?: boolean; confirmation?: Promise; gasEstimate?: number; gas?: number; }