import { Breakpoint } from '../../hooks/useBreakpoint'; import { ModeType, ResponsiveTableVariant } from './constants'; export interface BreakpointConfig { /** Breakpoint at which responsive behaviour will be applied. The table component uses a "desktop first" approach. */ breakpoint: keyof typeof Breakpoint; /** Desired behaviour on this breakpoint and all smaller screens. */ variant: keyof typeof ResponsiveTableVariant; /** If variant is horizontallscroll, use a fallback instead of device is not a touch device. */ fallbackVariant?: keyof typeof ResponsiveTableVariant; } export interface Props extends Omit, 'style'> { /** Unique ID */ id?: string; /** Id used for testing */ testId?: string; /** Customize how the table behaves on various screen widths */ breakpointConfig?: BreakpointConfig | BreakpointConfig[]; /** Adds custom classes to the element. */ className?: string; /** Sets the content of the table. Use TableHead and TableBody */ children: React.ReactNode; /** For display with less space. Discouraged to use together with interactive elements. */ mode?: ModeType; /** Sets aria-label of the horizontal scroll container. scrollAriaLabel or scrollAriaLabelledById MUST be set if horizontal scrolling is enabled! */ scrollAriaLabel?: string; /** Sets aria-labelledby of the horizontal scroll container. scrollAriaLabel or scrollAriaLabelledById MUST be set if horizontal scrolling is enabled! */ scrollAriaLabelledById?: string; } export declare const Table: React.FC; export default Table;