import { ComponentPropsWithoutRef, ElementType, ReactNode } from 'react';
export type DataListTopCellProps = {
    children: ReactNode;
    className?: string;
    /**
     * HTML element rendered for the top cell. Defaults to `span`. Use `'label'`
     * when the cell wraps a labelable control (e.g. a select-all Checkbox).
     */
    as?: ElementType;
} & Omit<ComponentPropsWithoutRef<'div'>, 'children' | 'className' | 'ref'>;
export declare const DataListTopCell: import('react').ForwardRefExoticComponent<{
    children: ReactNode;
    className?: string;
    /**
     * HTML element rendered for the top cell. Defaults to `span`. Use `'label'`
     * when the cell wraps a labelable control (e.g. a select-all Checkbox).
     */
    as?: ElementType;
} & Omit<Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref">, "className" | "children" | "ref"> & import('react').RefAttributes<HTMLSpanElement>>;
export type DataListTopCellWithTooltipProps = {
    children: ReactNode;
    tooltip: ReactNode;
    className?: string;
};
export declare function DataListTopCellWithTooltip({ children, tooltip, className }: DataListTopCellWithTooltipProps): import("react/jsx-runtime").JSX.Element;
export type DataListTopCellSmartProps = {
    long: ReactNode;
    short: ReactNode;
    tooltip?: string;
    breakpoint?: 'sm' | 'md' | 'lg' | 'xl' | '2xl';
    className?: string;
};
export declare function DataListTopCellSmart({ long, short, tooltip, breakpoint, className, }: DataListTopCellSmartProps): import("react/jsx-runtime").JSX.Element;
export interface DataListTopSelectCellProps {
    /** Pass `'indeterminate'` when some — but not all — rows are selected. */
    checked: boolean | 'indeterminate';
    /** Toggles the global selection. Typically clears when fully selected, otherwise selects all. */
    onToggle: () => void;
    'aria-label'?: string;
}
export declare function DataListTopSelectCell({ checked, onToggle, ...rest }: DataListTopSelectCellProps): import("react/jsx-runtime").JSX.Element;
