@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
TypeScript
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;