UNPKG

@bandz/protocol-js

Version:

Bandz protocol data aggregation tool

15 lines (14 loc) 923 B
import { Contract } from 'ethers'; import { Configuration, tSmartBCHAddress, TransactionGenerationMethod, transactionType, GasResponse, SmartBCHTransactionTypeExtended } from '../types'; import { ContractsFactory } from '../interfaces/ContractsFactory'; export default class BaseService<T extends Contract> { readonly contractInstances: { [address: string]: T; }; readonly contractFactory: ContractsFactory; readonly config: Configuration; constructor(config: Configuration, contractFactory: ContractsFactory); getContractInstance: (address: tSmartBCHAddress) => T; readonly generateTxCallback: ({ rawTxMethod, from, value, gasSurplus, action, }: TransactionGenerationMethod) => (() => Promise<transactionType>); readonly generateTxPriceEstimation: (txs: SmartBCHTransactionTypeExtended[], txCallback: () => Promise<transactionType>, action?: string) => GasResponse; }