import { ReactNode } from 'react';
export type TableViewTogglesViewType = 'SINGLE_CARD' | 'MULTI_CARDS' | 'TABLE';
export type TableViewTogglesProps = {
    /**
     * The current viewType for controlling the TablesViewToggles component.
     *
     * Possible values are:
     *
     * - `'SINGLE_CARD'`
     * - `'MULTI_CARDS'`
     * - `'TABLE'`
     * - `TableViewToggles.VIEW_TYPE_TABLE`
     * - `TableViewToggles.VIEW_TYPE_SINGLE_CARD`
     * - `TableViewToggles.VIEW_TYPE_MULTI_CARDS`
     */
    viewType?: TableViewTogglesViewType;
    /**
     * Defines the initial viewType (when viewType is not controlled from the outside).
     *
     * Possible values are:
     *
     * - `'SINGLE_CARD'`
     * - `'MULTI_CARDS'`
     * - `'TABLE'`
     * - `TableViewToggles.VIEW_TYPE_TABLE`
     * - `TableViewToggles.VIEW_TYPE_SINGLE_CARD`
     * - `TableViewToggles.VIEW_TYPE_MULTI_CARDS`
     *
     * @default TableViewToggles.VIEW_TYPE_TABLE
     */
    initialViewType?: TableViewTogglesViewType;
    /**
     * Defines the view types which shall not be supported and are omitted.
     *
     * @default []
     */
    disabledViewTypes?: TableViewTogglesViewType[];
    /**
     * Callback function for when the user wants to change the viewType.
     *
     * Receives the new type as an argument.
     *
     * @param viewType The new viewType selected by the user.
     */
    onViewTypeChange: (viewType: TableViewTogglesViewType) => void;
    /**
     * Optional tooltip content for table view button.
     *
     * @deprecated Use `tableViewLabel` instead.
     */
    tableViewTooltipContent?: string | ReactNode;
    /**
     * Optional label content for the table view select item.
     */
    tableViewLabel?: string | ReactNode;
    /**
     * Optional tooltip content for single card view button.
     *
     * @deprecated Use `singleCardViewLabel` instead.
     */
    singleCardViewTooltipContent?: string | ReactNode;
    /**
     * Optional label content for the single card view select item.
     */
    singleCardViewLabel?: string | ReactNode;
    /**
     * Optional tooltip content for multi card view button.
     *
     * @deprecated Use `multiCardsViewLabel` instead.
     */
    multiCardsViewTooltipContent?: string | ReactNode;
    /**
     * Optional label content for the multi cards view select item.
     */
    multiCardsViewLabel?: string | ReactNode;
    /**
     * Disables all buttons.
     *
     * This means the buttons cannot be clicked. Used when disabling toolbar buttons during loading state or when the
     * corresponding table is empty.
     *
     * @default false
     */
    disabled?: boolean;
    /**
     * Optional class names for the wrapper element.
     */
    className?: string;
};
declare const TableViewToggles: {
    (props: TableViewTogglesProps): import("react/jsx-runtime").JSX.Element;
    VIEW_TYPE_TABLE: TableViewTogglesViewType;
    VIEW_TYPE_SINGLE_CARD: TableViewTogglesViewType;
    VIEW_TYPE_MULTI_CARDS: TableViewTogglesViewType;
};
export default TableViewToggles;
