import { default as React, JSX, ReactNode } from 'react'; export interface TabsProps { /** * Used for accessability */ id?: string; className?: string; /** * Event that fires every time a tab is activated. Note that this also fires on first render. */ onTabSwitch?: (tabIndex: number) => void; /** * Children can only be components * Example: * ``` * * My content * Another content * * ``` */ children: Array | null>; /** * This controls whether the content of inactive tabs should be un-mounted or kept mounted but hidden. */ keepAlive?: boolean; /** * Optional prop to define which tab needs to be activated at component mount by providing its numerical index. First tab has index 0. */ defaultTab?: number; } declare function Tabs({ id, children, onTabSwitch, className, keepAlive, defaultTab, ...rest }: TabsProps): JSX.Element; declare namespace Tabs { var displayName: string; } export interface TabProps { /** * This is the tab name used to render the Tab Navigation on top */ name: string; /** * Tab Panel content */ children: ReactNode; } declare function Tab({ children }: TabProps): React.ReactElement; declare namespace Tab { var displayName: string; } export { Tab, Tabs };