import { default as React } from 'react';
export type TabbedPanelTab = {
    /**
     * Unique key of the tab.
     */
    key: string;
    /**
     * Title rendered inside the panel header navigation.
     */
    title: React.ReactNode;
    /**
     * Whether the tab can be selected.
     *
     * @default false
     */
    disabled?: boolean;
    /**
     * Additional classes to be set on the tab list item.
     */
    className?: string;
    /**
     * Additional classes to be set on this tab's content wrapper.
     */
    contentClassName?: string;
    /**
     * Content rendered inside the panel body when the tab is active.
     */
    content: React.ReactNode;
};
export type TabbedPanelProps = {
    /**
     * The selected tab key for controlled usage.
     */
    activeKey?: string;
    /**
     * The initially selected tab key for uncontrolled usage.
     */
    defaultActiveKey?: string;
    /**
     * Available tabs and their panel body content.
     */
    tabs: TabbedPanelTab[];
    /**
     * Panel style variant. TabbedPanel supports the default bordered panel and the blank panel only.
     *
     * @default 'default'
     */
    bsStyle?: 'blank' | 'default';
    /**
     * Body transition used when switching tabs.
     *
     * @default 'height-fade'
     */
    bodyTransition?: 'none' | 'fade' | 'height-fade';
    /**
     * Animation duration in seconds.
     *
     * @default 0.16
     */
    duration?: number;
    /**
     * Optional content rendered on the right side of the panel header.
     */
    headerRight?: React.ReactNode | ((activeTab: TabbedPanelTab) => React.ReactNode);
    /**
     * Callback called when a tab is selected.
     */
    onSelectTab?: (tabKey: string) => void;
    /**
     * Additional classes to be set on the wrapper element.
     */
    className?: string;
    /**
     * Additional classes to be set on the panel header.
     */
    headerClassName?: string;
    /**
     * Additional classes to be set on the tab navigation.
     */
    navClassName?: string;
    /**
     * Additional classes to be set on each tab link.
     */
    tabLinkClassName?: string;
    /**
     * Additional classes to be set on the panel body.
     */
    bodyClassName?: string;
    /**
     * Additional classes to be set on the active tab content wrapper.
     */
    activeContentClassName?: string;
    /**
     * Additional classes to be set on the header-right wrapper.
     */
    headerRightClassName?: string;
};
declare const TabbedPanel: (props: TabbedPanelProps) => import("react/jsx-runtime").JSX.Element;
export default TabbedPanel;
