UNPKG

@faast/tron-payments

Version:

Library to assist in processing tron payments, such as deriving addresses and sweeping funds

43 lines (42 loc) 2 kB
import { PaymentsUtils, NetworkType, Payport, AutoFeeLevels, FeeRate, BalanceResult } from '@faast/payments-common'; import { Logger, Numeric } from '@faast/ts-common'; import TronWeb from 'tronweb'; import { isValidXprv, isValidXpub, isValidPrivateKey, privateKeyToAddress } from './helpers'; import { BaseTronPaymentsConfig, TronTransactionInfo } from './types'; export declare class TronPaymentsUtils implements PaymentsUtils { readonly coinSymbol = "TRX"; readonly coinName = "Tron"; readonly coinDecimals = 6; readonly networkType: NetworkType; logger: Logger; fullNode: string; solidityNode: string; eventServer: string; tronweb: TronWeb; constructor(config?: BaseTronPaymentsConfig); init(): Promise<void>; destroy(): Promise<void>; isValidExtraId(extraId: string): boolean; isValidAddress(address: string): boolean; standardizeAddress(address: string): string | null; private _getPayportValidationMessage; getPayportValidationMessage(payport: Payport): Promise<string | undefined>; validatePayport(payport: Payport): Promise<void>; isValidPayport(payport: Payport): Promise<boolean>; toMainDenomination(amount: string | number): string; toBaseDenomination(amount: string | number): string; isValidXprv: typeof isValidXprv; isValidXpub: typeof isValidXpub; isValidPrivateKey: typeof isValidPrivateKey; privateKeyToAddress: typeof privateKeyToAddress; getFeeRateRecommendation(level: AutoFeeLevels): FeeRate; _retryDced<T>(fn: () => Promise<T>): Promise<T>; getCurrentBlockNumber(): Promise<number>; getAddressUtxos(): Promise<never[]>; getAddressNextSequenceNumber(): Promise<null>; protected canSweepBalanceSun(balanceSun: number): boolean; isAddressBalanceSweepable(balanceTrx: Numeric): boolean; getAddressBalance(address: string): Promise<BalanceResult>; private extractTxFields; getTransactionInfo(txid: string): Promise<TronTransactionInfo>; }