import React from 'react';
import { TableHeadProps, TableRowProps } from '@mui/material';
import { StartonTableOrder } from '../starton-table.helpers';
export declare type StartonTableHeadCells<Value> = Array<StartonTableHeadCell<Value>>;
export interface StartonTableHeadCell<Value> {
    disablePadding: boolean;
    id: keyof Value | string;
    numeric: boolean;
    label?: string;
    width?: number | string;
}
export interface StartonTableHeadProps<Value> {
    label: string;
    numSelected: number;
    onRequestSort: (event: React.MouseEvent<unknown>, property: keyof Value | string) => void;
    onSelectAllClick: (event: React.ChangeEvent<HTMLInputElement>) => void;
    order: StartonTableOrder;
    orderBy: keyof Value | string;
    rowCount: number;
    headCells: Array<StartonTableHeadCell<Value>>;
    isSelectable: boolean;
    collapseChildren?: React.FC<{
        row: Value;
        rowKey: string;
        index: number;
    }>;
    tableHeadProps?: TableHeadProps;
    tableHeadRowProps?: TableRowProps;
}
export declare function StartonTableHead<Value>(props: StartonTableHeadProps<Value>): JSX.Element;
