hector-rubic-sdk
Version:
Simplify dApp creation
24 lines (23 loc) • 2.27 kB
TypeScript
import { UniswapV2AbstractTrade } from '../dexes/common/uniswap-v2-abstract/uniswap-v2-abstract-trade';
import { OneinchTrade } from '../dexes/common/oneinch-common/oneinch-trade';
import { ZrxTrade } from '../dexes/common/zrx-common/zrx-trade';
import { InstantTrade } from '../instant-trade';
import { UniswapV3AbstractTrade } from '../dexes/common/uniswap-v3-abstract/uniswap-v3-abstract-trade';
import { AlgebraTrade } from '../dexes/polygon/algebra/algebra-trade';
import { OneinchAbstractProvider, UniswapV2AbstractProvider } from '../..';
import { UniswapV3AbstractProvider } from '../dexes/common/uniswap-v3-abstract/uniswap-v3-abstract-provider';
import { AlgebraProvider } from '../dexes/polygon/algebra/algebra-provider';
import { CrossChainSupportedInstantTradeProvider } from '../../cross-chain/providers/common/celer-rubic/models/cross-chain-supported-instant-trade';
export declare function isUniswapV2LikeTrade(trade: InstantTrade): trade is UniswapV2AbstractTrade;
export declare function isUniswapV3LikeTrade(trade: InstantTrade): trade is UniswapV3AbstractTrade;
export declare function isOneInchLikeTrade(trade: InstantTrade): trade is OneinchTrade;
export declare function isZrxLikeTradeLikeTrade(trade: InstantTrade): trade is ZrxTrade;
export declare function isAlgebraTrade(trade: InstantTrade): trade is AlgebraTrade;
export declare function isUniswapV2LikeProvider(provider: CrossChainSupportedInstantTradeProvider): provider is UniswapV2AbstractProvider;
export declare function isUniswapV3LikeProvider(provider: CrossChainSupportedInstantTradeProvider): provider is UniswapV3AbstractProvider;
export declare function isOneInchLikeProvider(provider: CrossChainSupportedInstantTradeProvider): provider is OneinchAbstractProvider;
export declare function isAlgebraProvider(provider: CrossChainSupportedInstantTradeProvider): provider is AlgebraProvider;
declare type Indices<L extends number, T extends number[] = []> = T['length'] extends L ? T[number] : Indices<L, [T['length'], ...T]>;
declare type LengthAtLeast<T extends readonly unknown[], L extends number> = Pick<Required<T>, Indices<L>>;
export declare function hasLengthAtLeast<T extends readonly unknown[], L extends number>(arr: T, len: L): arr is T & LengthAtLeast<T, L>;
export {};