import React, { CSSProperties, FunctionComponent, ReactNode } from 'react';
import { ListStyleProps } from './Tab.styles';
import { VizzlyTheming } from '../../types';
export declare const Button: FunctionComponent<{
    children: ReactNode;
    tabsStyleOverride?: VizzlyTheming.Tabs;
}>;
export declare const Group: FunctionComponent<{
    defaultIndex?: number;
    children: ReactNode;
    onChange?: (index: number) => void;
    className?: string;
}>;
export declare const List: FunctionComponent<{
    children: ReactNode;
    padding?: CSSProperties['padding'];
    tabsStyleOverride?: VizzlyTheming.Tabs;
} & ListStyleProps>;
export declare const Panel: FunctionComponent<{
    children: ReactNode;
    paddingLeft?: CSSProperties['paddingLeft'];
    paddingRight?: CSSProperties['paddingRight'];
    className?: string;
}>;
export declare const Panels: (props: {
    children: ReactNode;
    className?: string;
}) => JSX.Element;
export declare const Tab: (() => null) & {
    Group: React.FunctionComponent<{
        defaultIndex?: number | undefined;
        children: ReactNode;
        onChange?: ((index: number) => void) | undefined;
        className?: string | undefined;
    }>;
    Button: React.FunctionComponent<{
        children: ReactNode;
        tabsStyleOverride?: VizzlyTheming.Tabs | undefined;
    }>;
    Panel: React.FunctionComponent<{
        children: ReactNode;
        paddingLeft?: CSSProperties['paddingLeft'];
        paddingRight?: CSSProperties['paddingRight'];
        className?: string | undefined;
    }>;
    Panels: (props: {
        children: ReactNode;
        className?: string;
    }) => JSX.Element;
    List: React.FunctionComponent<{
        children: ReactNode;
        padding?: CSSProperties['padding'];
        tabsStyleOverride?: VizzlyTheming.Tabs | undefined;
    } & ListStyleProps>;
};
