UNPKG

@arrows/array

Version:
31 lines (30 loc) 1.21 kB
declare type CompareFn<T> = (a: T, b: T) => number; declare type _Sort = <T>(compareFn: CompareFn<T>, arr: T[]) => T[]; declare type _Sort2 = <T>(compareFn: CompareFn<T>) => (arr: T[]) => T[]; declare type CurriedSort = _Sort & _Sort2; declare type Sort = CurriedSort & { num(a: number[]): number[]; numDesc(a: number[]): number[]; str(a: string[]): string[]; strDesc(a: string[]): string[]; locale(a: string[]): string[]; localeDesc(a: string[]): string[]; }; /** * Creates a new, sorted array. * Have built-in methods for sorting numerical and string arrays. * * @param compareFn Compare function * @param arr Initial array * @returns New array * * @method num Sorts numerical arrays in an ascending order * @method numDesc Sorts numerical arrays in a descending order * @method str Sorts string arrays in an ascending order using comparison operators * @method strDesc Sorts string arrays in a descending order using comparison operators * @method locale Sorts string arrays in an ascending order using localeCompare * @method localeDesc Sorts string arrays in a descending order using localeCompare */ declare const sort: Sort; export { sort }; export default sort;