UNPKG

contract-helper

Version:

A contract helper for tron and eth network

21 lines 1.66 kB
import { AggregateCall, AggregateContractResponse, ContractCallArgs, MultiCallArgs as MultiCallArgs, SimpleTransactionResult, TransactionOption, SendTransaction, ChainType, ContractSendArgs, EvmTransactionRequest, TronTransactionRequest, SendOptions } from "./types"; export interface Contract { multicall(calls: AggregateCall[]): AggregateContractResponse; } export declare abstract class ContractHelperBase<Chain extends ChainType> { protected multicallAddress: string; /** * @param multicallAddress MulticallV2 contract address */ constructor(multicallAddress: string); abstract call<T>(contractOption: ContractCallArgs): Promise<T>; abstract multicall<T>(calls: MultiCallArgs[]): Promise<T>; abstract createTransaction(from: string, args: ContractSendArgs<Chain>, options?: SendOptions): Promise<Chain extends "evm" ? EvmTransactionRequest : TronTransactionRequest>; abstract sendTransaction(transaction: Chain extends "evm" ? EvmTransactionRequest : TronTransactionRequest, sendTransaction: SendTransaction<Chain>): Promise<string>; abstract send(from: string, sendFn: SendTransaction<Chain>, args: ContractSendArgs<Chain>, options?: SendOptions): Promise<string>; abstract fastCheckTransactionResult(txID: string, timeoutMs?: number): Promise<SimpleTransactionResult>; abstract finalCheckTransactionResult(txID: string, timeoutMs?: number): Promise<SimpleTransactionResult>; protected getEstimatedFeeRequired(options?: SendOptions): boolean; checkTransactionResult(txID: string, options?: TransactionOption): Promise<SimpleTransactionResult>; } //# sourceMappingURL=contract-helper-base.d.ts.map