import JSBI from 'jsbi';
export declare type BigintIsh = JSBI | bigint | string;
export declare enum ChainId {
    MAINNET = 1,
    ROPSTEN = 3,
    RINKEBY = 4,
    GÖRLI = 5,
    KOVAN = 42,
    MATIC = 137,
    BSC = 56,
    BSC_TEST = 97
}
export declare enum LiquidityProvider {
    PLASMA = 0,
    UNISWAP = 1,
    SUSHISWAP = 2,
    PANCAKESWAP = 3,
    QUICKSWAP = 4
}
export declare enum Trade0xLiquiditySource {
    Native = "Native",
    Uniswap = "Uniswap",
    UniswapV2 = "Uniswap_V2",
    Eth2Dai = "Eth2Dai",
    Kyber = "Kyber",
    Curve = "Curve",
    LiquidityProvider = "LiquidityProvider",
    MultiBridge = "MultiBridge",
    Balancer = "Balancer",
    BalancerV2 = "Balancer_V2",
    Cream = "CREAM",
    Bancor = "Bancor",
    MakerPsm = "MakerPsm",
    MStable = "mStable",
    Mooniswap = "Mooniswap",
    MultiHop = "MultiHop",
    Shell = "Shell",
    Swerve = "Swerve",
    SnowSwap = "SnowSwap",
    SushiSwap = "SushiSwap",
    Dodo = "DODO",
    DodoV2 = "DODO_V2",
    CryptoCom = "CryptoCom",
    Linkswap = "Linkswap",
    KyberDmm = "KyberDMM",
    Smoothy = "Smoothy",
    Component = "Component",
    Saddle = "Saddle",
    XSigma = "xSigma",
    UniswapV3 = "Uniswap_V3",
    CurveV2 = "Curve_V2",
    Lido = "Lido",
    ShibaSwap = "ShibaSwap",
    Clipper = "Clipper",
    /**
     * BSC only
     */
    PancakeSwap = "PancakeSwap",
    PancakeSwapV2 = "PancakeSwap_V2",
    BakerySwap = "BakerySwap",
    Nerve = "Nerve",
    Belt = "Belt",
    Ellipsis = "Ellipsis",
    ApeSwap = "ApeSwap",
    CafeSwap = "CafeSwap",
    CheeseSwap = "CheeseSwap",
    JulSwap = "JulSwap",
    ACryptos = "ACryptoS",
    /**
     * Polygon only
     */
    QuickSwap = "QuickSwap",
    ComethSwap = "ComethSwap",
    Dfyn = "Dfyn",
    WaultSwap = "WaultSwap",
    Polydex = "Polydex",
    FirebirdOneSwap = "FirebirdOneSwap",
    JetSwap = "JetSwap",
    IronSwap = "IronSwap"
}
export declare enum TradeType {
    LIMIT = 0,
    EXACT_INPUT = 1,
    EXACT_OUTPUT = 2
}
export declare enum Rounding {
    ROUND_DOWN = 0,
    ROUND_HALF_UP = 1,
    ROUND_UP = 2
}
export declare const NULL_BYTES = "0x";
export declare const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
export declare const ZERO_WORD = "0x0000000000000000000000000000000000000000000000000000000000000000";
export declare const NATIVE_ADDRESSES: string[];
export declare const NETWORK_LABEL: {
    [chainId in ChainId]: string;
};
export declare const NETWORK_NAME: {
    [chainId in ChainId]: string;
};
export declare const ZERO_EX_PROXY_ADDRESS: {
    [chainId in ChainId]?: string;
};
export declare const HYPER_DEX_ROUTER_ADDRESS: {
    [chainId in ChainId]?: string;
};
export interface LpConfiguration {
    factory: string;
    router: string;
    initCodeHash: string;
    createdTimestamp: number;
    createdBlockNumber: number;
    graphUrl?: string;
    graphWs?: string;
}
export declare const LP_CONFIGURATIONS: {
    [chainId in ChainId]: {
        [lpProvider in LiquidityProvider]?: LpConfiguration;
    };
};
export declare const MINIMUM_LIQUIDITY: JSBI;
/**
 * The name of the LP token affects the signature, DO NOT CHANGE IT!!!
 */
export declare const LIQUIDITY_TOKEN_NAME: {
    [provider in LiquidityProvider]: string;
};
export declare const LIQUIDITY_TOKEN_SYMBOL: {
    [provider in LiquidityProvider]: string;
};
export declare const LIQUIDITY_PROVIDER_SYMBOL: {
    [provider in LiquidityProvider]: string;
};
export declare const LIQUIDITY_PROVIDER_NAME: {
    [provider in LiquidityProvider]: string;
};
export declare const SUPPORTED_0X_CHAINS: ChainId[];
export declare const TRADE_0X_LIQUIDITY_SOURCE_NAME: {
    [provider in Trade0xLiquiditySource]: string;
};
export declare const ZERO: JSBI;
export declare const ONE: JSBI;
export declare const TWO: JSBI;
export declare const THREE: JSBI;
export declare const FIVE: JSBI;
export declare const TEN: JSBI;
export declare const _100: JSBI;
export declare const _997: JSBI;
export declare const _1000: JSBI;
export declare enum SolidityType {
    uint8 = "uint8",
    uint256 = "uint256"
}
export declare const SOLIDITY_TYPE_MAXIMA: {
    uint8: JSBI;
    uint256: JSBI;
};
