UNPKG

rubic-sdk

Version:
47 lines (46 loc) 2.49 kB
import BigNumber from 'bignumber.js'; import { Web3PrimitiveType } from "../../../models/web3-primitive-type"; import { ContractMulticallResponse } from "../models/contract-multicall-response"; import { MethodData } from "../models/method-data"; import { SupportedTokenField } from "../models/supported-token-field"; import { TxStatus } from "../models/tx-status"; import { TronBlock } from "./models/tron-block"; import { TronWebProvider } from "./models/tron-web-provider"; import { Web3Public } from "../web3-public"; import { TronWeb } from 'tronweb'; import { TransactionInfo } from 'tronweb/lib/esm/types'; import { AbiItem } from 'web3-utils'; export declare class TronWeb3Public extends Web3Public { private readonly tronWeb; protected readonly tokenContractAbi: AbiItem[]; constructor(tronWeb: TronWeb); setProvider(_provider: TronWebProvider): void; convertTronAddressToHex(address: string): Promise<string>; healthCheck(timeoutMs?: number): Promise<boolean>; getBalance(userAddress: string, tokenAddress?: string): Promise<BigNumber>; getTokenBalance(userAddress: string, tokenAddress: string): Promise<BigNumber>; getAllowance(tokenAddress: string, ownerAddress: string, spenderAddress: string): Promise<BigNumber>; multicallContractsMethods<Output extends Web3PrimitiveType>(contractAbi: AbiItem[], contractsData: { contractAddress: string; methodsData: MethodData[]; }[]): Promise<ContractMulticallResponse<Output>[][]>; /** * Executes multiple calls in the single contract call. * @param calls Multicall calls data list. * @returns Result of calls execution. */ private multicall; callContractMethod<T extends Web3PrimitiveType = string>(contractAddress: string, contractAbi: AbiItem[], methodName: string, methodArguments?: unknown[]): Promise<T>; /** * Gets mined transaction info. * @param hash Transaction hash. */ getTransactionInfo(hash: string): Promise<TransactionInfo>; getTransactionStatus(hash: string): Promise<TxStatus>; getBlock(): Promise<TronBlock>; getBlockNumber(): Promise<number>; private multicallContractsMethodsByOne; getTokensBalances(userAddress: string, tokensAddresses: string[]): Promise<BigNumber[]>; callForTokensInfo(tokenAddresses: string[] | ReadonlyArray<string>, tokenFields?: SupportedTokenField[]): Promise<Partial<Record<SupportedTokenField, string>>[]>; private batchMulticallTokenBalance; }