import { default as React } from 'react';
import { TabListProps } from '../TabList/TabList.component';
import { TabPanelProps } from '../TabPanel/TabPanel.component';
/**
Main Tabs are used at the top of the content area when using the tabs to switch the complete content area content. If you only want to have tabs for parts of the content use 'Tabs' instead and place them in the part of the content where the tabbed content should live. You will probably want to use a 'Container' inside the TabPanels to get nice padding.
 */
export declare const MainTabs: React.FC<MainTabsProps>;
export type OnSelectHander = (value: number) => void;
export type MainTabElement = React.ReactElement<TabListProps> | React.ReactElement<TabPanelProps> | MainTabElement[] | null | undefined;
export interface MainTabsProps extends Omit<React.HTMLAttributes<HTMLElement>, "onSelect"> {
    /** All the child elements of MainTabs: Tab(s) inside a TabList and TabPanel(s) */
    children?: MainTabElement;
    /** The index of the Tab to be selected by default in "Uncontrolled Mode" (default) where Tabs handle their state internally. Do not use in "Controlled Mode".*/
    defaultIndex?: number;
    /** The index of the Tab to be selected by default. This enables "Controlled Mode" where the developer takes over control of the Tabs state and behaviour. Requires onSelect to be set.*/
    selectedIndex?: number;
    /** Handler required in "Controlled Mode" */
    onSelect?: OnSelectHander;
    /** Add a custom className to the whole Tabs construct */
    className?: string;
}
//# sourceMappingURL=MainTabs.component.d.ts.map