/**
 * 删除数组中指定的元素,返回数组本身
 * @param {Array<any>} arr 需要操作的数组
 * @param {*} el 需要移除的元素
 */
export declare function arrayRemove<T>(arr: Array<T>, el: T): Array<T>;
export declare function arrayRemoveOnce<T>(arr: Array<T>, el: T): Array<T>;
/**
 * 删除通过函数校验的元素
 * @param {(e: T) => boolean} checkFuntion 校验函数
 */
export declare function arrayRemoveIf<T>(arr: Array<T>, checkFuntion: (e: T) => boolean): Array<T>;
export declare function arrayFirst<T>(arr: Array<T>): T;
export declare function arrayLast<T>(arr: {
    [key: number]: T;
    length: number;
}): T;
/**
 * 根据数值从小到大排序数组
 * @param {Array<T>} arr
 * @returns {Array<T>} 返回自身
 */
export declare function arraySortByNumber<T>(arr: Array<T>): Array<T>;
/**
 * 对排序好的数组进行去重操作
 * @param {(e1, e2) => boolean} [checkFuction] 校验对象相等函数
 * @returns {Array<T>} 返回自身
 */
export declare function arrayRemoveDuplicateBySort<T>(arr: Array<T>, checkFuction?: (e1: T, e2: T) => boolean): Array<T>;
export declare function arrayMap<T>(arr: Array<T>, mapFunc: (v: T) => T): Array<T>;
declare function checkEqual(e1: any, e2: any): boolean;
/**
 * 改变数组的值顺序
 * @param arr 需要改变初始值位置的数组
 * @param index  //将index位置以后的值放到起始位置
 */
export declare function changeArrayStartIndex<T>(arr: T[], index: number): T[];
export declare function equalArray<T>(a: T[], b: T[], checkF?: typeof checkEqual): boolean;
export declare function arrayClone<T>(arr: T[]): T[];
export declare function arrayPushArray<T>(arr1: T[], arr2: T[]): T[];
export declare function arraySum(arr: number[]): number;
export declare function FilterSet<T>(s: Set<T>, fn: (el: T) => boolean): Set<T>;
export {};
//# sourceMappingURL=ArrayExt.d.ts.map