@bandz/protocol-js
Version:
Bandz protocol data aggregation tool
15 lines (14 loc) • 923 B
TypeScript
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;
}