UNPKG

@faast/tron-payments

Version:

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

31 lines (30 loc) 2.04 kB
import TronWeb from 'tronweb'; import { BalanceResult, BasePayments, FeeOption, ResolvedFeeOption, Payport, FromTo, ResolveablePayport } from '@faast/payments-common'; import { TronTransactionInfo, TronUnsignedTransaction, TronSignedTransaction, TronBroadcastResult, CreateTransactionOptions, GetPayportOptions, BaseTronPaymentsConfig } from './types'; import { TronPaymentsUtils } from './TronPaymentsUtils'; export declare abstract class BaseTronPayments<Config extends BaseTronPaymentsConfig> extends TronPaymentsUtils implements BasePayments<Config, TronUnsignedTransaction, TronSignedTransaction, TronBroadcastResult, TronTransactionInfo> { fullNode: string; solidityNode: string; eventServer: string; tronweb: TronWeb; constructor(config: Config); abstract getFullConfig(): Config; abstract getPublicConfig(): Config; abstract getAccountId(index: number): string; abstract getAccountIds(): string[]; abstract getPayport(index: number, options?: GetPayportOptions): Promise<Payport>; abstract getPrivateKey(index: number): Promise<string>; requiresBalanceMonitor(): boolean; getBalance(resolveablePayport: ResolveablePayport): Promise<BalanceResult>; resolveFeeOption(feeOption: FeeOption): Promise<ResolvedFeeOption>; createSweepTransaction(from: number, to: ResolveablePayport, options?: CreateTransactionOptions): Promise<TronUnsignedTransaction>; createTransaction(from: number, to: ResolveablePayport, amountTrx: string, options?: CreateTransactionOptions): Promise<TronUnsignedTransaction>; signTransaction(unsignedTx: TronUnsignedTransaction): Promise<TronSignedTransaction>; broadcastTransaction(tx: TronSignedTransaction): Promise<TronBroadcastResult>; getTransactionInfo(txid: string): Promise<TronTransactionInfo>; private canSweepBalance; private extractTxFields; resolvePayport(payport: ResolveablePayport): Promise<Payport>; resolveFromTo(from: number, to: ResolveablePayport): Promise<FromTo>; } export default BaseTronPayments;