import React from 'react';
export type TableStackableBreakpoint = 'sm' | 'md' | 'lg';
interface BaseTableProps {
    /**
     * Applies the borderless variation of the table.
     */
    borderless?: boolean;
    /**
     * The table contents, usually `TableCaption`, `TableHead` and `TableBody`.
     */
    children: React.ReactNode;
    /**
     * Additional classes to be added to the root table element.
     */
    className?: string;
    /**
     * Applies the compact variation of the table.
     */
    compact?: boolean;
    /**
     * A unique ID prefix for all the table caption elements.
     */
    id?: string;
    /**
     * Applies a horizontal scrollbar and scrollable notice on `TableCaption` when the `Table`'s contents exceed the container width.
     */
    scrollable?: boolean;
    /**
     * Additional text or content to display when the horizontal scrollbar is visible to give the user notice of the scroll behavior.
     * This prop will only be used when the `Table` `scrollable` prop is set and the table width is wider than the viewport.
     */
    scrollableNotice?: React.ReactNode;
    /**
     * A stackable variation of the table.
     * When `stackable` is set, `id` or `headers` prop is required in `Table`
     */
    stackable?: boolean;
    /**
     * Applies responsive styles to vertically stacked rows at different viewport sizes.
     */
    stackableBreakpoint?: TableStackableBreakpoint;
    /**
     * A striped variation of the table.
     */
    striped?: boolean;
    /**
     * Disables the warning message on development console when a responsive stackable table cell does not contain an `id` or `headers`.
     * It's recommended that accessibility with screen readers is tested to ensure the stacked table meets the requirement.
     */
    warningDisabled?: boolean;
}
type OmitProps = 'children' | 'className';
export type TableProps = Omit<React.ComponentPropsWithoutRef<'table'>, OmitProps> & BaseTableProps;
/**
 * `Table` is a container component that contains `TableCaption`, `TableHead`
 * and `TableBody` as children, as well as `TableRow` and `TableCell` for the
 * table content. These components mostly follow ordinary HTML table semantics,
 * but also include some additional responsive features including horizontal
 * scrolling and vertically stacked rows.
 *
 * For information about how and when to use this component,
 * [refer to its full documentation page](https://design.cms.gov/components/table/).
 */
export declare const Table: {
    ({ borderless, className, compact, stackable, stackableBreakpoint, striped, scrollable, scrollableNotice, warningDisabled, children, id, ...tableProps }: TableProps): React.JSX.Element;
    defaultProps: {
        scrollableNotice: React.JSX.Element;
        stackableBreakpoint: string;
    };
};
export default Table;
