import { Sort } from '../array/sort';
import { Getter } from '../types';
/**
 * @ignore
 * @internal
 */
export declare function sortByConditions<T, R>(...conditions: Sort.SortingCondition<T, R>[]): (a: T, b: T) => 0 | 1 | -1;
/**
 * @ignore
 */
export declare function sortByPropertyAndPriority<T, K extends keyof T>(key: K, values: T[K][]): (a: T, b: T) => 0 | 1 | -1;
/**
 * @ignore
 */
export declare function sortByGetters(numbers: Sort.IfAHigherB): <T>(...mappersArr: Getter<T, string | number>[]) => (a: T, b: T) => number;
/**
 * @ignore
 */
export declare function sortByKeyValues(numbers: Sort.IfAHigherB): <T, K extends keyof T>(...keys: K[]) => (a: T, b: T) => number;
