/**
 * 数组转Map
 * @param data
 * @param prop
 * @returns
 */
export declare function arrayToMap<T>(data: T[], prop: keyof T): Map<any, T>;
/**
 * Map转键值对
 * @param map
 * @returns
 */
export declare function mapToObject<V = any>(map: Map<any, V>): Record<any, V>;
/**
 * 数组转键值对
 * @param data
 * @param key
 * @param value
 * @returns
 */
export declare function arrayToKv(data?: Record<string, any>[], key?: string, value?: string): Record<string, any>;
/**
 * 键值对转数组
 * @param data
 * @param key
 * @param value
 * @returns
 */
export declare function kvToArray(data?: Record<string, any>, key?: string, value?: string): {
    [key]: string;
    [value]: any;
}[];
/**
 * 数组去重
 * @param array
 * @param prop
 * @returns
 */
export declare function dedupArray<T = any>(array: T[], prop?: keyof T): T[];
/**
 * 转换数组
 * @param maybeArray
 * @returns
 */
export declare function toArray<T = any>(maybeArray?: T | T[]): T[];
/**
 * 压缩对称，清除值为undefined或null的属性
 * @param obj
 * @returns
 */
export declare function zipObject(obj: Record<string, any>): Record<string, any>;
/**
 * 对象排除属性
 * @param target 需要处理的对象
 * @param keys 需要排除的属性名称
 * @returns
 */
export declare function omit<T extends Record<string, any>, K extends Record<string, any>>(target: T, keys: string[] | ((k: string, v: any) => boolean)): K;
/**
 * 对象提取属性
 * @param target
 * @param keys
 * @returns
 */
export declare function pick<T extends Record<string, any>, K extends Record<string, any>>(target: T, keys: string[] | ((k: string, v: any) => boolean)): K;
/**
 * 递归对象或数组清除文本类型值的两边空格
 * @param {Object|Array} obj
 * @return {Object|Array}
 */
export declare function trim(obj: any): any;
/**
 * 求合计
 * @param list
 * @param field
 * @returns
 */
export declare function sum<T = any>(list?: T[], field?: keyof T): number;
/**
 * 求平均值
 * @param list
 * @param field
 * @returns
 */
export declare function avg<T = any>(list?: T[], field?: keyof T): number;
/**
 * 字符串分隔转换成数组
 * @param val
 * @param flag
 * @returns
 */
export declare function splitParser(val?: string, flag?: string): string[];
/**
 * 数组转换为字符串分隔
 * @param val
 * @param flag
 * @returns
 */
export declare function splitStringify(val?: string[], flag?: string): string;
/**
 * 数组转换为树结构
 * @param array
 * @param id
 * @param parentId
 * @returns
 */
export declare function arrayToTree<T extends Record<string, any>>(array: T[], id?: keyof T, parentId?: keyof T, children?: string, root?: string | number): T[];
/**
 * 树结构扁平化
 * @param array
 * @returns
 */
export declare function flatChildren(array?: any[]): any[];
