import type { Datum } from "../charts/shared/datumTypes";
/**
 * Data transform helpers for common data shapes.
 * Import from "semiotic/data"
 */
/**
 * Bin continuous data into histogram-ready format.
 * Returns array of { category, value } objects suitable for BarChart.
 */
export declare function bin<T extends Datum>(data: T[], options: {
    field: string;
    bins?: number;
    domain?: [number, number];
}): {
    category: string;
    value: number;
}[];
/**
 * Group and aggregate data.
 * Returns array of { [groupBy]: string, value: number } objects.
 */
export declare function rollup<T extends Datum>(data: T[], options: {
    groupBy: string;
    value: string;
    agg?: "sum" | "mean" | "count" | "min" | "max";
}): Datum[];
/**
 * Group flat rows into line-chart-ready nested format.
 * Returns array of { id, coordinates } objects for LineChart with lineBy.
 */
export declare function groupBy<T extends Datum>(data: T[], options: {
    key: string;
    fields?: string[];
}): {
    id: string;
    coordinates: Datum[];
}[];
/**
 * Pivot wide data to long format.
 * Converts column-per-variable to row-per-variable.
 */
export declare function pivot<T extends Datum>(data: T[], options: {
    columns: string[];
    nameField?: string;
    valueField?: string;
}): Datum[];
