export interface Stats {
    min: number;
    max: number;
    arithmetic_mean: number;
    median: number;
    geometric_mean: number;
    middle: number;
    quadratic_mean: number;
    sum: number;
}
/**
 * Calculate objet numeric statistics
 * @param data - Array of data
 * @param fn - Function that maps to numeric data
 * @signature
 *    P.stats(data, fn)
 * @signature
 *    P.pipe(data,P.stats(fn))
 * @example
 *    P.stats([{ data: 1 }, { data: 2 }, { data: 3 }], (q) => q.data) // => { sum: 6, middle: 2, min: 1, max: 3, arithmetic_mean: 2, geometric_mean: 6, median: 2, quadratic_mean: 14 }
 *    P.pipe([1, 2, 3], P.stats((q) => q)) // => { sum: 6, middle: 2, min: 1, max: 3, arithmetic_mean: 2, geometric_mean: 6, median: 2, quadratic_mean: 14 }
 * @category Number, Pipe
 */
export declare function stats<T>(data: readonly T[], fn: (item: T) => number): Stats;
export declare function stats(data: readonly number[]): Stats;
export declare function stats<T>(fn: (item: T) => number): (array: readonly T[]) => Stats;
//# sourceMappingURL=stats.d.ts.map