import { ReactElement } from 'react';
import { TabsAction } from './TabsAction';
import type { CubeTabListProps, CubeTabPanelProps, CubeTabProps, CubeTabsProps } from './types';
declare function Tab(_props: CubeTabProps): ReactElement | null;
declare namespace Tab {
    var displayName: string;
}
declare function TabPanel(_props: CubeTabPanelProps): ReactElement | null;
declare namespace TabPanel {
    var displayName: string;
}
declare function TabList(_props: CubeTabListProps): ReactElement | null;
declare namespace TabList {
    var displayName: string;
}
/**
 * Tabs component for organizing content into multiple panels.
 * Built with React Aria for full accessibility support.
 *
 * **Note:** Tab keys are internally converted to strings for React Aria compatibility.
 *
 * @example
 * // Simple usage
 * <Tabs defaultActiveKey="tab1">
 *   <Tab key="tab1" title="Tab 1">Content 1</Tab>
 *   <Tab key="tab2" title="Tab 2">Content 2</Tab>
 * </Tabs>
 *
 * @example
 * // Tabs-only (no panels)
 * <Tabs activeKey={activeTab} onChange={setActiveTab}>
 *   <Tab key="overview" title="Overview" />
 *   <Tab key="settings" title="Settings" />
 * </Tabs>
 *
 * @example
 * // Explicit panels
 * <Tabs defaultActiveKey="tab1">
 *   <Tabs.List>
 *     <Tab key="tab1" title="Tab 1" />
 *     <Tab key="tab2" title="Tab 2" />
 *   </Tabs.List>
 *   <Tabs.Panel key="tab1">Content 1</Tabs.Panel>
 *   <Tabs.Panel key="tab2">Content 2</Tabs.Panel>
 * </Tabs>
 */
export declare const Tabs: import("react").ForwardRefExoticComponent<CubeTabsProps & import("react").RefAttributes<HTMLDivElement>> & {
    Tab: typeof Tab;
    List: typeof TabList;
    Panel: typeof TabPanel;
    Action: import("react").ForwardRefExoticComponent<Omit<import("./TabsAction").CubeTabsActionProps, "ref"> & import("react").RefAttributes<import("@react-types/shared").FocusableRefValue<HTMLElement, HTMLElement>>>;
};
export { Tab, TabList, TabPanel, TabsAction };
