import { TabsProps as TabsProps$1, TabProps, TabListProps, TabPanelProps } from 'react-aria-components';
import * as react_jsx_runtime from 'react/jsx-runtime';
import * as react from 'react';
import { TabsVariantProps, SlotsToClasses, TabsSlots, TabsReturnType } from '@alice-ui/theme';

interface TabsProps extends TabsProps$1, TabsVariantProps {
    indicator?: React.ReactNode;
    /**
     * Classes object to style the tabs and its children.
     */
    classNames?: SlotsToClasses<TabsSlots>;
}
interface InternalTabsContextValue {
    indicator?: React.ReactNode;
    slots: TabsReturnType;
    classNames?: SlotsToClasses<TabsSlots>;
}
declare const InternalTabsContext: react.Context<InternalTabsContextValue>;
declare function Tabs(props: TabsProps): react_jsx_runtime.JSX.Element;
declare function TabList<T extends object>(props: TabListProps<T>): react_jsx_runtime.JSX.Element;
declare function Tab(props: TabProps): react_jsx_runtime.JSX.Element;
declare function TabPanel(props: TabPanelProps): react_jsx_runtime.JSX.Element;

export { InternalTabsContext, Tab, TabList, TabPanel, Tabs, type TabsProps };
