import { type FC, ReactNode } from 'react'; import { IconName } from '../icon'; import { TabSize } from './types'; export interface Tab { id: string; title: string; leftIcon?: IconName; rightIcon?: IconName; panelContent: ReactNode; onBeforeUnload?(): Promise; } export interface AddButtonProps { label?: string; disabled?: boolean; loading?: boolean; tooltipContent?: string; onClick(): void; } export interface TabsProps { className?: string; forceRenderTabPanels?: boolean; size?: TabSize; tabs: Tab[]; defaultSelectedId?: string; addButton?: AddButtonProps; onRemove?(tabId: string): void; /** * If provided, Tabs is controlled. */ activeTabId?: string; /** * Callback when the active tab changes. Called only in controlled mode. */ onTabChange?(tabId: string): void; } export declare const Tabs: FC;