import BN from 'bignumber.js'; import { ActionContext } from '../../../store'; import { Asset, Network, SwapHistoryItem, SwapProviderType } from '../../../store/types'; import { SwapProvider } from '../../SwapProvider'; import { EstimateFeeRequest, EstimateFeeResponse, LiqualityBoostSwapProviderConfig, NextSwapActionRequest, QuoteRequest, SwapQuote, SwapRequest, SwapStatus } from '../../types'; import { BoostHistoryItem, BoostNextSwapActionRequest } from '../types'; export interface BoostNativeToERC20SwapQuote extends SwapQuote { fromTokenAddress: string; } declare class LiqualityBoostNativeToERC20 extends SwapProvider { private liqualitySwapProvider; private sovrynSwapProvider; private oneinchSwapProvider; private astroportSwapProvider; config: LiqualityBoostSwapProviderConfig; bridgeAssetToAutomatedMarketMaker: { [key: string]: SwapProvider; }; supportedBridgeAssets: Asset[]; constructor(config: LiqualityBoostSwapProviderConfig); getSupportedPairs(): Promise; getQuote({ network, from, to, amount }: QuoteRequest): Promise<{ from: string; to: string; fromAmount: string; toAmount: string; min: BN; max: BN; bridgeAsset: string; bridgeAssetAmount: string; path: string[] | null | undefined; fromTokenAddress: string; } | null>; newSwap({ network, walletId, quote: _quote }: SwapRequest): Promise<{ slippage: number; bridgeAssetAmount: string; approveTxHash: string; swapTxHash: string; approveTx: import("@chainify/types").Transaction; swapTx: import("@chainify/types").Transaction; bridgeAsset: string; orderId: string; fromAddress: string; toAddress: string; fromCounterPartyAddress: string; toCounterPartyAddress: string; secretHash: string; secret: string; expiresAt: number; swapExpiration: number; nodeSwapExpiration: number; fromFundHash: string; fromFundTx: import("@chainify/types").Transaction; refundTx: import("@chainify/types").Transaction; refundHash: string; toClaimTx: import("@chainify/types").Transaction; toClaimHash: string; toFundHash: string; type: import("../../../store/types").TransactionType.Swap; claimFeeLabel: import("../../../store/types").FeeLabel; claimFee: number; fromAmount: string; fromAccountId: string; provider: SwapProviderType; toAccountId: string; toAmount: string; path?: string[] | undefined; lifiRoute?: import("@lifi/types").Step | undefined; swapProviderError?: import("../../types").SwapProviderError | undefined; fee: number; feeLabel: import("../../../store/types").FeeLabel; from: string; id: string; network: Network; startTime: number; endTime?: number | undefined; status: string; to: string; walletId: string; error?: import("@chainify/types").Nullable | undefined; waitingForLock?: boolean | undefined; } | { slippage: number; bridgeAssetAmount: string; approveTxHash: string; swapTxHash: string; approveTx: import("@chainify/types").Transaction; swapTx: import("@chainify/types").Transaction; bridgeAsset: string; orderId: string; fromAddress: string; toAddress: string; fromCounterPartyAddress: string; toCounterPartyAddress: string; secretHash: string; secret: string; expiresAt: number; swapExpiration: number; nodeSwapExpiration: number; fromFundHash: string; fromFundTx: import("@chainify/types").Transaction; refundTx: import("@chainify/types").Transaction; refundHash: string; toClaimTx: import("@chainify/types").Transaction; toClaimHash: string; toFundHash: string; type: import("../../../store/types").TransactionType.Swap; claimFeeLabel: import("../../../store/types").FeeLabel; claimFee: number; fromAmount: string; fromAccountId: string; provider: SwapProviderType; toAccountId: string; toAmount: string; path?: string[] | undefined; lifiRoute?: import("@lifi/types").Step | undefined; swapProviderError?: import("../../types").SwapProviderError | undefined; fee: number; feeLabel: import("../../../store/types").FeeLabel; from: string; id: string; network: Network; startTime: number; endTime?: number | undefined; status: string; to: string; walletId: string; error?: import("@chainify/types").Nullable | undefined; waitingForLock?: boolean | undefined; }>; updateOrder(order: BoostHistoryItem): Promise; estimateFees({ network, walletId, asset, txType, quote, feePrices, max, }: EstimateFeeRequest): Promise; getMin(quoteRequest: QuoteRequest): Promise; finalizeLiqualitySwapAndStartAutomatedMarketMaker({ swapLSP, network, walletId }: BoostNextSwapActionRequest): Promise<{ endTime: number; status: string; } | undefined>; performNextSwapAction(store: ActionContext, { network, walletId, swap }: NextSwapActionRequest): Promise | undefined>; protected _getStatuses(): Record; protected _txTypes(): Record; protected _fromTxType(): string | null; protected _toTxType(): string | null; protected _timelineDiagramSteps(): string[]; protected _totalSteps(): number; private swapLiqualityFormat; private swapAutomatedMarketMakerFormat; } export { LiqualityBoostNativeToERC20 };