import { Unary } from '../core/types'; /** * @short * Get *min* yielded value, guided *by* a comparison function. * * @categories * static mapped * * @description * The function finds the minimum value among the yielded values. The values * are compared after being mapped via the provided function `project`. * * This is a generalization of {@link Min}. * * @parameter * project * (t: T) => number * * @returns * T * * @example * j.MinBy( * [2, 3, 9, 6], * x => Math.abs(5 - x), * ) * // => 6 * * @example * j.MinBy( * 'jupiter', * x => x.charAt(0), * ) * // => 'e' */ export declare function MinBy(iterable: Iterable, project: Unary): T; /** * @short * Get *max* yielded value, guided *by* a comparison function. * * @categories * static mapped * * @description * The operator finds the maximum value among the yielded values. The values * are compared after being mapped via the provided function. * * This is a generalization of {@link Max}. * * @parameter * map * (t: T) => number * * @returns * T * * @example * j.pipe( * [2, 3, 9, 6], * j.MaxBy(x => Math.abs(5 - x)) * ) * // => 9 * * @example * j.pipe( * 'jupiter', * j.MaxBy(x => x.charAt(0)), * ) * // => 't' */ export declare function MaxBy(iterable: Iterable, map: Unary): T; /** * @short * Get *min* yielded value * * @categories * static * * @description * The function finds the minimum value among the yielded values. * * This is a specialization of {@link MinBy}. * * @parameter * project * (t: T) => number * * @returns * T * * @example * j.MinBy( * [2, 3, 9, 6], * x => Math.abs(5 - x), * ) * // => 6 * * @example * j.MinBy( * 'jupiter', * x => x.charAt(0), * ) * // => 'e' */ export declare function Min(iterable: Iterable): number; /** * @short * Get *max* yielded value. * * @categories * static * * @description * The operator finds the maximum value among the yielded values. * * This is a specialization of {@link MaxBy}. * * @parameter * map * (t: T) => number * * @returns * T * * @example * j.pipe( * [2, 3, 9, 6], * j.MaxBy(x => Math.abs(5 - x)) * ) * // => 9 * * @example * j.pipe( * 'jupiter', * j.MaxBy(x => x.charAt(0)), * ) * // => 't' */ export declare function Max(iterable: Iterable): number;