UNPKG

@q-dev/gdk-sdk

Version:

Typescript Library to interact with GDK Contracts

38 lines (37 loc) 1.59 kB
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<T extends BaseContract> { 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<void>; submitTransaction<K extends keyof T, U extends BaseContract = T>(method: K, args: FnArgsWithoutOverrides<U[K]>, txOptions?: TxOptions): Promise<ContractTransaction>; 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<void>; }