soulswap-rubik-sdk
Version:
Simplify dApp creation
51 lines (50 loc) • 2.33 kB
TypeScript
import { CrossChainContractTrade } from '@features/cross-chain/cross-chain-contract-trade/cross-chain-contract-trade';
import { PriceTokenAmount } from '@core/blockchain/tokens/price-token-amount';
import { GasData } from '@features/cross-chain/models/gas-data';
import { SwapTransactionOptions } from '@features/instant-trades/models/swap-transaction-options';
import BigNumber from 'bignumber.js';
import { TransactionReceipt } from 'web3-eth';
import { BasicTransactionOptions } from 'src/core';
import { EncodeTransactionOptions } from 'src/features';
import { TransactionConfig } from 'web3-core';
export declare class CrossChainTrade {
private readonly providerAddress;
static getGasData(fromTrade: CrossChainContractTrade, toTrade: CrossChainContractTrade, cryptoFeeToken: PriceTokenAmount): Promise<GasData | null>;
private readonly fromTrade;
private readonly toTrade;
readonly cryptoFeeToken: PriceTokenAmount;
readonly transitFeeToken: PriceTokenAmount;
private readonly gasData;
private readonly fromWeb3Public;
private readonly toWeb3Public;
readonly from: PriceTokenAmount;
readonly to: PriceTokenAmount;
readonly toTokenAmountMin: BigNumber;
private get walletAddress();
get estimatedGas(): BigNumber | null;
get priceImpactData(): {
priceImpactFrom: number | null;
priceImpactTo: number | null;
};
constructor(crossChainTrade: {
fromTrade: CrossChainContractTrade;
toTrade: CrossChainContractTrade;
cryptoFeeToken: PriceTokenAmount;
transitFeeToken: PriceTokenAmount;
gasData: GasData | null;
}, providerAddress: string);
needApprove(): Promise<boolean>;
approve(options: BasicTransactionOptions): Promise<TransactionReceipt>;
protected checkAllowanceAndApprove(options?: Omit<SwapTransactionOptions, 'onConfirm'>): Promise<void>;
private checkWalletConnected;
private checkBlockchainCorrect;
private checkContractsState;
private checkToBlockchainGasPrice;
private checkToContractBalance;
private checkUserBalance;
private checkTradeErrors;
private getContractParams;
swap(options?: SwapTransactionOptions): Promise<string | never>;
private parseSwapErrors;
encode(options?: EncodeTransactionOptions): Promise<TransactionConfig>;
}