import { EvmTypes } from '@chainify/evm'; import { Transaction } from '@chainify/types'; import { Order, Step } from '@lifi/sdk'; import BN from 'bignumber.js'; import { ActionContext } from '../../store'; import { EvmSwapHistoryItem, EvmSwapProvider, EvmSwapProviderConfig } from '../EvmSwapProvider'; import { EstimateFeeRequest, EstimateFeeResponse, NextSwapActionRequest, QuoteRequest, SwapRequest, SwapStatus } from '../types'; export interface LifiSwapProviderConfig extends EvmSwapProviderConfig { apiURL: string; slippage?: number; order?: Order; } export interface LifiSwapHistoryItem extends EvmSwapHistoryItem { fromFundHash: string; fromFundTx: Transaction; } export { Action as LifiToolAction, QuoteRequest as LifiQuoteRequest } from '@lifi/sdk'; declare class LifiSwapProvider extends EvmSwapProvider { readonly config: LifiSwapProviderConfig; readonly nativeAssetAddress = "0x0000000000000000000000000000000000000000"; private readonly _lifiClient; private readonly _httpClient; constructor(config: LifiSwapProviderConfig); getSupportedPairs(): Promise; getQuote({ network, from, to, amount, fromAccountId, toAccountId, walletId }: QuoteRequest): Promise<{ from: string; to: string; fromAmount: string; toAmount: string; lifiRoute: Step; } | null>; newSwap(swap: SwapRequest): Promise<{ status: string; approveTx: Transaction; approveTxHash: string; id: string; } | { status: string; approveTx?: undefined; approveTxHash?: undefined; id: string; } | { status: string; fromFundTx: Transaction; fromFundHash: string; id: string; }>; private initiateSwap; estimateFees(feeRequest: EstimateFeeRequest): Promise; getMin(_quoteRequest: QuoteRequest): Promise; private getCrossChainSwapStatus; private getChainNameByChainID; private isCrossSwap; private getRoute; waitForInitiationConfirmations({ swap, network, walletId }: NextSwapActionRequest): Promise<{ endTime: number; status: string; } | undefined>; waitForReceiveConfirmations({ swap, network, walletId }: NextSwapActionRequest): Promise<{ endTime: number; status: string; } | undefined>; performNextSwapAction(store: ActionContext, { network, walletId, swap }: NextSwapActionRequest): Promise | undefined>; protected _getStatuses(): Record; protected _txTypes(): { SWAP: string; }; protected _fromTxType(): string | null; protected _toTxType(): string | null; protected _timelineDiagramSteps(): string[]; protected _totalSteps(): number; } export { LifiSwapProvider };