/**
 * 获取数组中的计算后的最大值
 * @param array - 原数组
 * @param iterator - 计算方法
 * @param needResult - 是否需要计算结果
 * @returns 如果需要计算结果 直接返回最大值的 item, 不然 返回 [item, 以及这个item 调用 iterator 的结果]
 */
export declare function arrayMax<T, N extends false>(array: readonly T[], iterator: (item: T) => number, needResult: N): T | undefined;
export declare function arrayMax<T, Y extends true>(array: readonly T[], iterator: (item: T) => number, needResult: Y): [T | undefined, number];
/**
 * 获取数组中的计算后的最小值
 * @param array - 原数组
 * @param iterator - 计算方法
 * @param needResult - 是否需要计算结果
 * @returns 如果需要计算结果 直接返回最小值的 item, 不然 返回 [item, 以及这个item 调用 iterator 的结果]
 */
export declare function arrayMin<T>(array: readonly T[], iterator: (item: T) => number): T | undefined;
export declare function arrayMin<T, N extends false>(array: readonly T[], iterator: (item: T) => number, needResult: N): T | undefined;
export declare function arrayMin<T, Y extends true>(array: readonly T[], iterator: (item: T) => number, needResult: Y): [T | undefined, number];
/**
 * 判定两个数字内容相同
 * @param array0 - 数组
 * @param array1 - 数组
 * @param equalFn - 比较函数，默认 ===
 * @returns
 */
export declare function arrayEqual(array0: readonly any[], array1: readonly any[], equalFn?: (value0: any, value1: any) => boolean): boolean;
/**
 * 数组去重
 */
export declare function arrayUnique<T>(array: T[]): T[];
