/** * Import React libraries. */ import * as React from 'react'; import { Size } from '../types'; export interface HorizontalTabProps extends React.HTMLAttributes { /** Required. Size of the Tabs */ size: Size.XSmall | Size.Small | Size.Medium | Size.Large; /** Required: Array of Tabs to show */ tabs: HorizontalTab[]; /** Optional. For 'default' variant of tabs if this flag is set, then white background will be added to the tabs */ sideFill?: boolean; /** Optional. If set, then whole width of the parent container will be equally split between Tabs, otherwise each tab will take width * required for its content. */ fullWidth?: boolean; /** Required. Handler to be called when user tries to change the tab */ onTabChange: (to: string) => void; /** Optional. Display variant of the tabs. If not set, then 'default' is used */ variant?: 'default' | 'floating'; } export interface HorizontalTab extends Omit, 'value' | 'tabIndex' | 'onMouseDown' | 'onClick' | 'style'> { /** Required. Value of the tab */ value: string | React.ReactNode; /** Required. State of the tab, selected or not. Use it to set initial state of the tabs. */ selected: boolean; /** Required. URL related with the Tab */ to: string; } declare const HorizontalTabs: ({ size, tabs, sideFill, fullWidth, onTabChange, variant, ...rest }: HorizontalTabProps) => React.JSX.Element; export default HorizontalTabs;