import React, { PropsWithChildren } from 'react';
import { ButtonProps } from '../../atoms/Button/Button';
export interface TabsProps<T extends string> {
    /**
     * className prop forwarded to the main root element
     */
    className?: string;
    /**
     * Array of T that will define the tabs value and the number of panels.
     */
    tabs: T[];
    /**
     * A T that will match the tab name from the tabs array to set the Initial Tab, or update the tab value.
     */
    value: T;
    /**
     * Color variation that will switch between styles for the Select .
     */
    variation?: 'initial' | 'default' | 'primary' | 'secondary';
    /**
     * Extend the props to the Button component inside the Tab
     */
    buttonProps?: ButtonProps;
    /**
     * Extend the props to the Button component inside the Tab
     */
    onChange?: (value: React.SetStateAction<T>) => void;
}
export interface TabProps {
    label: string;
}
export interface PanelProps {
    children: React.ReactNode;
}
declare const Tabs: {
    <T extends string>(props: React.PropsWithChildren<TabsProps<T>>): JSX.Element;
    defaultProps: {
        variation: string;
    };
    displayName: string;
};
export default Tabs;
