/// <reference types="node" />
import BN from 'bn.js';
import BigNumber from 'bignumber.js';
import { AmmPoolInfoV3, LoopringMap, MarketInfo, TokenInfo, TOKENMAPLIST, TokenRelatedInfo } from '../defs';
import * as loopring_defs from '../defs/loopring_defs';
/**
 * Returns hex string with '0x' prefix
 * @param input
 * @returns {string}
 */
export declare function addHexPrefix(input: any): string;
/**
 *
 * @param mixed Buffer|number|string (hex string must be with '0x' prefix)
 * @returns {Buffer}
 */
export declare function toBuffer(mixed: any): Buffer;
/**
 *
 * @param num number|string (hex string must be with '0x' prefix)
 * @param places number of zeros to pad
 * @returns {Buffer}
 */
export declare function zeroPad(num: any, places: any): Buffer;
/**
 *
 * @param mixed number | BigNumber |  BN  | Buffer | string | Uint8Array
 * @returns {string}
 */
export declare function toHex(mixed: number | BigNumber | BN | Buffer | string | Uint8Array | BigInt): string;
/**
 *
 * @param mixed number | BigNumber |  BN  | Buffer | string | Uint8Array
 * @returns {number}
 */
export declare function toNumber(mixed: number | BigNumber | BN | Buffer | string | Uint8Array): number;
/**
 *
 * @param mixed number | BigNumber |  BN  | Buffer | string | Uint8Array
 * @returns {BigNumber}
 */
export declare function toBig(mixed: number | BigNumber | BN | Buffer | string | Uint8Array): BigNumber;
/**
 *
 * @param mixed number | BigNumber |  BN  | Buffer | string
 * @returns {BN}
 */
export declare function toBN(mixed: any): BN;
/**
 *
 * @param value number | BigNumber | Buffer | string
 * @returns {BN}
 */
export declare function fromGWEI(value: any): BigNumber;
/**
 *
 * @param value number | BigNumber | Buffer | string
 * @returns {BN}
 */
export declare function toGWEI(value: any): BigNumber;
/**
 * Returns formatted hex string of a given private key
 * @param mixed Buffer | string | Uint8Array
 * @returns {string}
 */
export declare function formatKey(mixed: Buffer | string | Uint8Array): string;
/**
 * Returns hex string of a given address
 * @param mixed Buffer | string |Uint8Array
 * @returns {string}
 */
export declare function formatAddress(mixed: Buffer | string | Uint8Array): string;
/**
 * Returns hex string without '0x' prefix
 * @param input string
 * @returns {string}
 */
export declare function clearHexPrefix(input: any): string;
/**
 *
 * @param hex
 * @returns {string}
 */
export declare function padLeftEven(hex: any): any;
/**
 * Returns symbol of a given kind of currency
 * @param settingsCurrency
 * @returns {*}
 */
export declare function getDisplaySymbol(settingsCurrency: any): "￥" | "$" | "";
/**
 * Returns number in string with a given precision
 * @param number number | BigNumber
 * @param precision number
 * @param ceil bool  round up
 * @returns {string}
 */
export declare function toFixed(number: any, precision: any, ceil: any): string;
export declare function formatEddsaKey(key: any): string;
/**
 * Returns a number with commas as thousands separators
 * @param number number
 * @returns {*}
 */
export declare function numberWithCommas(number: any): any;
export declare function sortObjDictionary(obj: {
    [key: string]: any;
}): Map<string, any>;
export declare function makeMarket<R extends TokenInfo = TokenInfo>(raw_data: R[]): TOKENMAPLIST;
export declare function makeAmmPool<R>(raw_data: any): {
    ammpools: LoopringMap<AmmPoolInfoV3>;
    pairs: LoopringMap<TokenRelatedInfo>;
};
export declare function makeMarkets<R, C extends MarketInfo>(raw_data: any, url?: string): {
    markets: LoopringMap<C>;
    pairs: LoopringMap<TokenRelatedInfo>;
    tokenArr: string[];
    tokenArrStr: string;
    marketArr: string[];
    marketArrStr: string;
};
export declare function makeMarketsWithIdIndex<C extends MarketInfo>(raw_data: any, url: string | undefined, idIndex: any): {
    markets: LoopringMap<C>;
    pairs: LoopringMap<TokenRelatedInfo>;
    tokenArr: string[];
    tokenArrStr: string;
    marketArr: string[];
    marketArrStr: string;
};
export declare function makeInvestMarkets<C extends loopring_defs.DefiMarketInfo>(raw_data: any, types?: string[]): {
    markets: LoopringMap<C>;
    pairs: LoopringMap<TokenRelatedInfo>;
    tokenArr: string[];
    tokenArrStr: string;
    marketArr: string[];
    marketArrStr: string;
};
//# sourceMappingURL=formatter.d.ts.map