import { type ECharts } from 'echarts';
export declare const BUILTIN_OBJECT: {
    '[object Function]': boolean;
    '[object RegExp]': boolean;
    '[object Date]': boolean;
    '[object Error]': boolean;
    '[object CanvasGradient]': boolean;
    '[object CanvasPattern]': boolean;
    '[object Image]': boolean;
    '[object Canvas]': boolean;
};
export declare function normalizeToArray<T>(value?: T | T[]): T[];
export declare function isObject<T = unknown>(value: T): value is object & T;
export declare function isEffectObject(value: unknown): boolean;
export declare function isStateContainEffectStyle(state: unknown): boolean;
export declare function isArray(value: unknown): value is unknown[];
export declare function isBuiltInObject(value: unknown): boolean;
export declare function getRange(arr: Array<number>): Array<number>;
export declare function getURLParam(name: string): string | null;
export declare function measureTextWidth(text: string, fontSize: number, fontFamily?: string, fontWeight?: string | number): number;
export declare function getComponentModelsByName(ecIns: ECharts, name: string): any[];
export declare function getComponentViewsByModels(ecIns: ECharts, model: any): any[];
/**
 * 比较两个数组内容是否一致
 * @param arr1
 * @param arr2
 * @returns
 */
export declare function equalsArray(arr1: Array<unknown>, arr2: Array<unknown>): boolean;
export declare function isMobile(): boolean;
export declare function summation(params: Array<number>): number;
/**
 * 加法运算，避免数据相加小数点后产生多位数和计算精度损失。
 *
 * @param num1加数1 | num2加数2
 */
export declare function numAdd(num1: any, num2: any): any;
/**
 * 减法运算，避免数据相减小数点后产生多位数和计算精度损失。
 *
 * @param num1被减数  |  num2减数
 */
export declare function numSub(num1: any, num2: any): any;
/**
 * 统计对象中相同属性的属性值出现的次数
 * @param opts 源数据
 * @param name 筛选属性
 * @returns
 */
export declare function handleElementNumber(opts: any, name: any): any;
/**
 * 排序
 * @param params 排序属性
 * @returns
 */
export declare function arrayObjectSort(params: any): (a: any, b: any) => number;
export declare function merge(obj1: any, obj2: any, overwrite?: boolean): any;
