import { default as React } from 'react'; import { TabsKind } from './context'; interface TabsProps { /** * Direct children of `Tabs` should be one of: * `Tabs.List` or `Tabs.Panel` */ children: React.ReactNode; /** Sets _default_ tab selection by index in source order */ defaultSelectedIndex?: number; /** * Sets selected tab by index, making Tabs **fully controlled**. * When using this prop, you must use the `onTabChange` callback * to update the value of this prop to update the selected tab. */ selectedIndex?: number; /** Callback invoked with the index of the tab the user is moving selection to */ onTabChange?: (index: number) => void; /** * Shows bottom border when `true`. * Only applies to `kind="default"`. * @deprecated Will be removed in a future release. */ hasBorder?: boolean; /** Visual style variant of the tabs */ kind?: TabsKind; /** Optional value for `data-testid` attribute */ testId?: string; } /** * Component that handles tabs and tab panels based on WAI-ARIA [best practices](https://www.w3.org/TR/wai-aria-practices/#tabpanel) * for the "tabs" design pattern. * * The `Tabs` component manages its own state, changing the visible tab panel based * on user events. Use the `onTabChange` callback to add any custom behaviors. */ declare const Tabs: { ({ children, defaultSelectedIndex, selectedIndex, onTabChange, hasBorder, kind, testId, }: TabsProps): React.JSX.Element; List: ({ children, xPadding }: import('./TabsList').TabsListProps) => React.JSX.Element; Tab: ({ label, tabId, testId, hasStatusIndicator, }: import('./TabsTab').TabsTabProps) => React.JSX.Element; Panel: ({ children, tabId, testId }: import('./TabsPanel').TabsPanelProps) => React.JSX.Element; }; export default Tabs; //# sourceMappingURL=index.d.ts.map