import type { RefObject } from 'react'; import type { ViewProps } from 'react-native'; import type { IBoxProps } from '../../primitives'; export type ITabsProps = IBoxProps & { align?: 'center' | 'end' | 'start'; id?: string; colorScheme?: string; index?: number; defaultIndex?: number; isFitted?: boolean; isLazy?: boolean; isManual?: boolean; orientation?: 'horizontal' | 'vertical'; size?: 'sm' | 'md' | 'lg'; variant?: string; onChange?: (index: number) => void; }; export type ITabBarProps = IBoxProps & { align?: 'center' | 'end' | 'start'; isFitted?: boolean; size?: 'sm' | 'md' | 'lg'; tablistRef?: RefObject; tabListProps?: ViewProps; }; export type ITabProps = IBoxProps & { isDisabled?: boolean; _active?: any; _disabled?: any; _hover?: any; item?: any; }; export type ITabViewsProps = IBoxProps; export type ITabViewProps = IBoxProps & { index?: number; }; export type ITabsContextProps = { activeTabStyle?: any; inactiveTabStyle?: any; tabBarStyle?: any; isFitted?: boolean; align?: 'start' | 'center' | 'end'; state?: any; }; export type ITabsComponentType = ((props: ITabsProps) => JSX.Element) & { Bar: React.MemoExoticComponent<(props: ITabBarProps) => JSX.Element>; Tab: React.MemoExoticComponent<(props: ITabProps) => JSX.Element>; Views: React.MemoExoticComponent<(props: ITabViewsProps) => JSX.Element>; View: React.MemoExoticComponent<(props: ITabViewProps) => JSX.Element>; };