import { findIndex, groupBy } from 'remeda';
declare const ArrayUtils: {
    groupBy: typeof groupBy;
    orderBy: <T>(array: T[], key: keyof T, direction?: "asc" | "desc") => T[];
    isArray: (arg: any) => arg is any[];
    filter: <T>(arr: T[], fn: (item: T) => boolean) => T[];
    find: <T>(arr: T[], fn: (item: T) => boolean) => T | undefined;
    differenceWith: <T>(arr1: T[], arr2: T[], comparator: (a: T, b: T) => boolean) => T[];
    combine: <T = any>(arr1: T[], arr2: T[]) => T[];
    xor: <T>(arr1: T[], arr2: T[]) => T[];
    replaceByKey: <T = any>(arr: T[], newValue: T, keyName: keyof T) => T[];
    replaceWhere: <T = any>(arr: T[], condition: (params: T) => boolean, newValue: T) => T[];
    toggleAdd: <T = any>(array: T[], element: T, predicate: (item: T) => any) => T[];
    keyBy<T, K extends keyof T>(array: T[], key: K): Record<string, T>;
    uniq: <T>(array: T[]) => T[];
    uniqBy<T, K>(array: T[], keyFn: (item: T) => K): T[];
    findIndex: typeof findIndex;
    concat: <T = any>(array: T[], ...rest: T[][]) => T[];
    filterLike: (arr1: any[], fieldName: string, like: string) => any[];
};
export default ArrayUtils;
