rubic-sdk-next
Version:
Simplify dApp creation
43 lines (42 loc) • 2.08 kB
TypeScript
import { QuoteRequestInterface, QuoteResponseInterface } from '@cryptorubic/core';
import BigNumber from 'bignumber.js';
import { PriceTokenAmount } from '../../../../../../common/tokens';
import { BitcoinBlockchainName } from '../../../../../../core/blockchain/models/blockchain-name';
import { BitcoinCrossChainTrade } from '../../common/bitcoin-cross-chain-trade/bitcoin-cross-chain-trade';
import { GasData } from '../../common/evm-cross-chain-trade/models/gas-data';
import { FeeInfo } from '../../common/models/fee-info';
import { OnChainSubtype } from '../../common/models/on-chain-subtype';
import { RubicStep } from '../../common/models/rubicStep';
import { TradeInfo } from '../../common/models/trade-info';
import { SymbiosisbitcoinCrossChainTradeConstructor } from '../models/symbiosis-cross-chain-trade-constructor';
/**
* Calculated Symbiosis cross-chain trade.
*/
export declare class SymbiosisCcrBitcoinTrade extends BitcoinCrossChainTrade {
private readonly swappingParams;
readonly type: "symbiosis";
readonly isAggregator = false;
readonly onChainSubtype: OnChainSubtype;
readonly bridgeType: "symbiosis";
readonly from: PriceTokenAmount<BitcoinBlockchainName>;
readonly to: PriceTokenAmount;
readonly toTokenAmountMin: BigNumber;
/** @internal */
readonly transitAmount: BigNumber;
readonly feeInfo: FeeInfo;
/**
* Overall price impact, fetched from symbiosis api.
*/
readonly priceImpact: number | null;
readonly gasData: GasData | null;
private readonly slippage;
private readonly contractAddresses;
private get fromBlockchain();
protected get fromContractAddress(): string;
protected get methodName(): string;
readonly memo = "";
protected readonly needProvidePubKey = false;
constructor(crossChainTrade: SymbiosisbitcoinCrossChainTradeConstructor, providerAddress: string, routePath: RubicStep[], apiQuote: QuoteRequestInterface, apiResponse: QuoteResponseInterface);
getTradeAmountRatio(fromUsd: BigNumber): BigNumber;
getTradeInfo(): TradeInfo;
}