import { default as React } from 'react'; import { IconContent } from '../types/icon.types.js'; import { SlotClassNames, SlotStyles, HtmlProps } from '../types/slots.types.js'; export type TabHeaderSlots = 'root' | 'tab' | 'icon' | 'labels' | 'title' | 'subtitle' | 'endContent'; export interface TabHeaderTab { id: string; icon: IconContent; title?: React.ReactNode; subtitle?: React.ReactNode; /** After the labels. Stays visible when a narrow screen collapses the tab, so keep it small: a `Badge`, a dot. */ endContent?: React.ReactNode; disabled?: boolean; } export interface TabHeaderProps extends Omit { tabs: TabHeaderTab[]; currentTab: string; onChange: (id: string) => void; className?: string; style?: React.CSSProperties; classNames?: SlotClassNames; styles?: SlotStyles; }