import BigNumber from 'bignumber.js'; import { PriceTokenAmount } from "../../../../../../common/tokens"; import { BlockchainName, EvmBlockchainName, SolanaBlockchainName } from "../../../../../../core/blockchain/models/blockchain-name"; import { GasData } from "../../common/evm-cross-chain-trade/models/gas-data"; import { FeeInfo } from "../../common/models/fee-info"; import { TransactionRequest } from "./transaction-request"; import { EvmOnChainTrade } from "../../../../../on-chain/calculation-manager/providers/common/on-chain-trade/evm-on-chain-trade/evm-on-chain-trade"; export interface DebridgeCrossChainTradeConstructor { from: PriceTokenAmount; to: PriceTokenAmount; priceImpact: number | null; slippage: number; feeInfo: FeeInfo; transitAmount: BigNumber; toTokenAmountMin: BigNumber; cryptoFeeToken: PriceTokenAmount; transactionRequest?: TransactionRequest; gasData?: GasData | null; allowanceTarget?: string; onChainTrade?: EvmOnChainTrade | null; } export type DebridgeEvmCrossChainTradeConstructor = Required>; export interface DebridgeSolanaCrossChainTradeConstructor extends DebridgeCrossChainTradeConstructor { transactionRequest: TransactionRequest; }