/** * Configuration object for a tab within a tab group. */ export type TabConfig = { /** * Display label for the tab. */ label: string; /** * Target id or selector for the tab panel. */ dataTarget: string; /** * Optional icon name shown before the label. */ prefixIcon?: string; /** * Optional counter badge configuration. */ counterBadge?: VegaTabGroupCounterBadgeProps; /** * Whether the tab is disabled. */ disabled?: boolean; }; /** * Event payload indicating a panel was added or removed from a tab group. */ export type PanelUpdatePayload = { /** * Host panel element reference. */ host: HTMLVegaTabGroupPanelElement; /** * The update action type. */ type: 'ADD' | 'DEL'; }; /** * Visual variant options for tab groups. */ export type TabGroupVariant = 'primary' | 'secondary'; /** * Props forwarded to a counter badge used in a tab group. */ export type VegaTabGroupCounterBadgeProps = Partial>; /** * Overflow handling strategies for tab groups. */ export type TabGroupOverflowType = 'menu' | 'scroll';