import { ReactNode } from 'react';
import { TouchableOpacityProps, ViewProps } from 'react-native';
import { XmlProps } from 'react-native-svg';
type TabsContextType<T> = {
    variant: 'chip' | 'underline' | 'icon';
    activeTab: T;
    onChangeTab: (val: T) => void;
};
type TabsProps<T extends string> = TabsContextType<T> & {
    children: ReactNode;
};
declare function Tabs<T extends string>({ variant, activeTab, onChangeTab, children, }: TabsProps<T>): import("react/jsx-runtime").JSX.Element;
declare namespace Tabs {
    var Tab: <T>({ value, children, type, iconProps, ...props }: TabProps<T>) => import("react/jsx-runtime").JSX.Element;
    var List: typeof TabList;
    var Content: typeof TabContent;
}
type TabListProps = ViewProps;
declare function TabList({ children, style, ...props }: TabListProps): import("react/jsx-runtime").JSX.Element;
type TabProps<T> = TouchableOpacityProps & {
    value: T;
    type?: 'title' | 'body';
    iconProps?: Pick<XmlProps, 'width' | 'height' | 'xml'>;
};
type TabContentProps<T> = {
    value: T;
    children: ReactNode;
};
declare function TabContent<T>({ value, children }: TabContentProps<T>): ReactNode;
export default Tabs;
//# sourceMappingURL=Tabs.d.ts.map