import type { Arr } from '@toolbox-ts/types/defs/array';
/**
* Returns the a reference to the longer array.
*
* @example
* ```ts
* longer([1, 2, 3], ['a', 'b']) // [1, 2, 3]
* longer([1], ['a', 'b', 'c']) // ['a', 'b', 'c']
* longer([], []) // []
* ```
*/
export declare const longer: (a: A, b: B) => A | B;
/**
* Returns a reference to the shorter array.
*
* @example
* ```ts
* shorter([1, 2, 3], ['a', 'b']) // ['a', 'b']
* shorter([1], ['a', 'b', 'c']) // [1]
* shorter([], []) // []
* ```
*/
export declare const shorter: (a: A, b: B) => A | B;
/**
* Returns a reference to the longest array among the provided arrays.
* @example
* ```ts
* longest([1, 2], ['a', 'b', 'c'], [true])
* // ['a', 'b', 'c']
* ```
*/
export declare const longest: (...[f, ...rest]: A) => A[number];
/**
* Returns a reference to the shortest array among the provided arrays.
*
* @example
* ```ts
* shortest([1, 2], ['a', 'b', 'c'], [true])
* // [true]
* ```
*/
export declare const shortest: (...[f, ...r]: A) => Arr;