import { default as React } from 'react'; import { Direction } from '@wix/editor-react-types'; import { TransitionType, TransitionDirection } from './constants'; import { SdkFunctionClickableProps, SdkFunctionMouseHoverProps, SdkFunctionFocusableProps } from '../../../utils/functions/sdkFunctionCallbackProps'; type TabsViewerProps = { /** DOM `id` on the root `
`. */ id: string; /** Appended to the root. Use this for CSS-variable and per-element overrides. */ className?: string; }; type TabsDataProps = SdkFunctionClickableProps & SdkFunctionMouseHoverProps & SdkFunctionFocusableProps & { /** Animation applied when switching tabs. Default `'none'`. */ transitionType: TransitionType; /** Transition length in seconds. Written to `--transition-duration` on the root. Default `0.3`. */ transitionDuration?: number; /** Direction of the slide-in animation when `transitionType="slide"`. Default `'down'`. */ transitionDirection?: TransitionDirection; /** Headers + bodies. `content` accepts any React node. In the editor it's a container slot managed via the "Manage tabs" action. */ tabs?: Array<{ name: string; content: React.ReactNode; }>; /** Index of the active tab. Drives the editor's array-items display group and the initial selection on mount. */ activeTab: number; /** Sets the writing direction on the menu. Defaults to the resolved environment direction. */ direction?: Direction; /** Fires after the active tab changes. */ onChange?: (event?: React.SyntheticEvent) => void; /** Fires on each tab-header click before the active tab updates. */ onTabItemClicked?: () => void; }; export type TabsProps = TabsDataProps & TabsViewerProps; declare const Tabs: (props: TabsProps) => React.JSX.Element; export default Tabs;