UNPKG

rubic-sdk-next

Version:
32 lines (31 loc) 2.31 kB
import BigNumber from 'bignumber.js'; import { PriceTokenAmount } from '../../../../../../common/tokens'; import { TronBlockchainName } from '../../../../../../core/blockchain/models/blockchain-name'; import { TronTransactionOptions } from '../../../../../../core/blockchain/web3-private-service/web3-private/tron-web3-private/models/tron-transaction-options'; import { TronWeb3Private } from '../../../../../../core/blockchain/web3-private-service/web3-private/tron-web3-private/tron-web3-private'; import { TronWeb3Public } from '../../../../../../core/blockchain/web3-public-service/web3-public/tron-web3-public/tron-web3-public'; import { TronTransactionConfig } from '../../../../../../core/blockchain/web3-pure/typed-web3-pure/tron-web3-pure/models/tron-transaction-config'; import { EncodeTransactionOptions } from '../../../../../common/models/encode-transaction-options'; import { SwapTransactionOptions } from '../../../../../common/models/swap-transaction-options'; import { CrossChainTrade } from '../cross-chain-trade'; import { MarkRequired } from 'ts-essentials'; export declare abstract class TronCrossChainTrade extends CrossChainTrade<TronTransactionConfig> { abstract readonly from: PriceTokenAmount<TronBlockchainName>; protected get fromWeb3Public(): TronWeb3Public; protected get web3Private(): TronWeb3Private; /** * Returns true, if allowance is not enough. */ needApprove(): Promise<boolean>; approve(options: TronTransactionOptions, checkNeedApprove?: boolean, amount?: BigNumber | 'infinity'): Promise<string>; protected checkAllowanceAndApprove(options?: Omit<SwapTransactionOptions, 'onConfirm' | 'feeLimit'>): Promise<void>; swap(options: MarkRequired<SwapTransactionOptions, 'receiverAddress'>): Promise<string | never>; encode(options: MarkRequired<EncodeTransactionOptions, 'receiverAddress'>): Promise<TronTransactionConfig>; encodeApprove(tokenAddress: string, spenderAddress: string, value: BigNumber | 'infinity', options?: TronTransactionOptions): Promise<TronTransactionConfig>; getUsdPrice(): BigNumber; protected getTransactionConfigAndAmount(testMode?: boolean, receiverAddress?: string): Promise<{ config: TronTransactionConfig; amount: string; }>; authWallet(): Promise<string>; }