import { ComponentPropsWithoutRef, ReactNode } from 'react'; import { SkeletonVariant } from '../Skeleton/skeleton.tokens'; import * as TabsPrimitive from '@radix-ui/react-tabs'; export declare enum TabsVariant { BOXED = "boxed", FLOATING = "floating", UNDERLINE = "underline", PILLS = "pills" } export declare enum TabsSize { SM = "sm", MD = "md", LG = "lg" } export type TabItem = { value: string; label: string; content: ReactNode; disable?: boolean; showSkeleton?: boolean; skeletonVariant?: SkeletonVariant; leftSlot?: ReactNode; rightSlot?: ReactNode; newItem?: boolean; }; export type TabsProps = ComponentPropsWithoutRef & { variant?: TabsVariant; size?: TabsSize; expanded?: boolean; fitContent?: boolean; items?: TabItem[]; onTabClose?: (value: string) => void; onTabAdd?: () => void; showDropdown?: boolean; showAddButton?: boolean; dropdownTooltip?: string; addButtonTooltip?: string; disable?: boolean; showSkeleton?: boolean; skeletonVariant?: SkeletonVariant; stickyHeader?: boolean; offsetTop?: number; }; export type TabsListProps = ComponentPropsWithoutRef & { variant?: TabsVariant; size?: TabsSize; expanded?: boolean; fitContent?: boolean; items?: TabItem[]; originalItems?: TabItem[]; onTabClose?: (value: string) => void; onTabAdd?: () => void; showDropdown?: boolean; showAddButton?: boolean; dropdownTooltip?: string; addButtonTooltip?: string; onTabChange?: (value: string) => void; activeTab?: string; disable?: boolean; showSkeleton?: boolean; skeletonVariant?: SkeletonVariant; stickyHeader?: boolean; offsetTop?: number; }; export type TabsTriggerProps = ComponentPropsWithoutRef & { value: string; variant?: TabsVariant; size?: TabsSize; leftSlot?: ReactNode; rightSlot?: ReactNode; children: string | number; closable?: boolean; onClose?: () => void; disable?: boolean; isActive?: boolean; isOverlay?: boolean; tabsGroupId?: string; showSkeleton?: boolean; skeletonVariant?: SkeletonVariant; }; export type TabsContentProps = ComponentPropsWithoutRef; export type TabsStyles = { list: string; trigger: string; };