import { default as React } from 'react'; import { groupAccordionType, GroupColorType, RowStylingProps } from './StandardTable.models'; import { TooltipProps } from '../Tooltip/Tooltip'; export declare const getRowStylingProperty: (data: T, property: keyof RowStylingProps) => string | React.CSSProperties | undefined; export declare const getRowStyle: (data: T) => React.CSSProperties; export declare const getCellStyle: (data: T, cellStyle?: StyleGeneric) => React.CSSProperties; export declare const getMergedCellStyle: (data: T, cellStyle?: StyleGeneric) => React.CSSProperties; type Groups = Array<{ /** The string value or react node to display in the group Header row */ groupHeader: string | ((count: number) => string) | React.ReactNode; /** Custom JSX to display info icon in the group Header row (groupHeader) */ tooltipContent?: TooltipProps['tooltipContent']; /** Determines the background color of the row (Default: grey) */ type?: GroupColorType; /** Method to determine if a data set belongs to the group */ check: (dataItem: DataItem, checkedBoxes?: DataItem[]) => boolean; /** boolean to add Clear button in the selection */ includeClearButton?: boolean; /** Function to perform the required action after clearing the selections */ clearCallout?: () => void; /** Custom JSX at the last column of the group header to replace clearButton */ customClearButton?: React.ReactNode; /** Adds an expand/collapse functionality to entire groups */ groupAccordion?: groupAccordionType; /** Override: Always show this group regardless of checkbox state */ alwaysShowGroups?: boolean; }>; export declare const getDataGroups: (data: DataItem[], groups: Groups, checkBoxes: { hasCheckboxes?: boolean; checkedBoxes?: Array; }, totalRowKey?: keyof DataItem) => DataItem[]; export declare const useShowStickyClasses: ({ innerTableWidth, tableContainerWidth, }: { innerTableWidth: number; tableContainerWidth: number; }) => boolean; type FlattenDataProps = { data?: DataItem; nestedDataKey?: keyof DataItem; level?: number; nestedRowProps?: { nestedData: { [key: string]: DataItem[]; }; subRowDataKey?: keyof DataItem; }; }; export declare const useFlattenNestedData: ({ nestedRowProps, nestedDataKey, data, }: FlattenDataProps) => { [key: string]: DataItem[]; } | undefined; export {};