UNPKG

@q-dev/q-js-sdk

Version:

Typescript Library to interact with Q System Contracts

30 lines (29 loc) 1.24 kB
import { FnArgsWithoutOverrides, QNonPayableTx, QPayableTx, SignerOrProvider } from '../types'; import { BaseContract, ContractInterface, ContractTransaction, CallOverrides } from 'ethers'; import { Web3Adapter } from '../utils/web3-adapter'; /** * Base contract instance for all instances */ export declare class BaseContractInstance<T extends BaseContract> { readonly address: string; /** * @field contract interface */ instance: T; protected adapter: Web3Adapter; /** * @field default to estimate - 1.3 would mean 30% above estimate * @example BaseContractInstance.DEFAULT_GASBUFFER = 1.3 */ static DEFAULT_GASBUFFER: number; /** * Constructor * @param signerOrProvider signer or provider * @param abi abi object * @param address contract address */ constructor(signerOrProvider: SignerOrProvider, abi: ContractInterface, address: string); getBalance(convertToQ?: boolean): Promise<string>; submitTransaction<K extends keyof T, U extends BaseContract = T>(method: K, args: FnArgsWithoutOverrides<U[K]>, txOptions?: QNonPayableTx | QPayableTx): Promise<ContractTransaction>; populateTxOptions(txOptions: QPayableTx): Promise<CallOverrides>; }