import type { Reduction, SummarizedSlicerStats, TimePerToken } from '../data';
import type { SummarizedMeasurement } from '../../../util/summarizer';
import type { PerSliceStats, SlicerStats } from '../../stats/stats';
import type { SlicingCriteria } from '../../../slicing/criterion/parse';
import type { RShellEngineConfig } from '../../../config';
/**
 * Summarizes the given stats by calculating the min, max, median, mean, and the standard deviation for each measurement.
 * @see Slicer
 */
export declare function summarizeSlicerStats(stats: SlicerStats, report?: (criteria: SlicingCriteria, stats: PerSliceStats) => void, engineConf?: RShellEngineConfig): Promise<Readonly<SummarizedSlicerStats>>;
export declare function summarizeSummarizedMeasurement(data: SummarizedMeasurement[]): SummarizedMeasurement;
export declare function summarizeSummarizedReductions(reductions: Reduction<SummarizedMeasurement>[]): Reduction<SummarizedMeasurement>;
export declare function summarizeSummarizedTimePerToken(times: TimePerToken[]): TimePerToken;
export declare function summarizeTimePerToken(times: TimePerToken<number>[]): TimePerToken;
