import { z } from 'zod';
import type { ParseResult } from './types.js';
export interface StatsRow {
    fileType: string;
    fileName?: string;
    filePath?: string;
    files: number;
    size: number;
    words: number;
    pages: number;
    paragraphs: number;
    sheets: number;
    rows: number;
    cells: number;
    slides: number;
    confidence?: Record<string, 'exact' | 'estimated'>;
    [key: string]: string | number | boolean | Record<string, 'exact' | 'estimated'> | undefined;
}
export interface ColumnVisibility {
    [key: string]: boolean;
}
export interface AggregateResult {
    rows: StatsRow[];
    totals: StatsRow;
    columns: ColumnVisibility;
    mode: string;
    showConfidence: boolean;
}
export declare const AggregateOptionsSchema: z.ZodObject<{
    byFile: z.ZodOptional<z.ZodBoolean>;
    sort: z.ZodOptional<z.ZodString>;
    showConfidence: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export type AggregateOptions = z.infer<typeof AggregateOptionsSchema>;
export declare function aggregate(results: ParseResult[], options?: AggregateOptions): AggregateResult;
