import { FnArgsWithoutOverrides, QNonPayableTx, QPayableTx, TxOptions } from "../types"; import { BaseContract, ContractInterface, ContractTransaction, Signer, Event, ContractReceipt, providers } from "ethers"; /** * Base contract instance for all instances */ export declare class BaseContractInstance { readonly address: string; /** * @field contract interface */ instance: T; /** * @field default to estimate - 1.3 would mean 30% above estimate * @example BaseContractInstance.DEFAULT_GASBUFFER = 1.3 */ static DEFAULT_GASBUFFER: number; static MAX_GAS_BLOCK_LIMIT: number; /** * Constructor * @param signer ethers signer * @param abi abi object * @param address contract address */ constructor(signer: Signer | providers.Provider, abi: ContractInterface, address: string); connectSigner(signer: Signer): Promise; submitTransaction(method: K, args: FnArgsWithoutOverrides, txOptions?: TxOptions): Promise; getPayableTxOptions(txOptions: QPayableTx): QNonPayableTx | QPayableTx; /** * Parses transaction events from the logs in a transaction receipt * @param {ContractReceipt} receipt Transaction receipt containing the events in the logs * @returns {{[eventName: string]: Event}} */ getTransactionEvents(receipt: ContractReceipt): { [eventName: string]: Event; }; refreshTxDefaultOptions(options: QNonPayableTx | QPayableTx): Promise; }