import * as React from 'react'; import { OverrideProps } from '@mui/types'; import { CreateSlotsAndSlotProps, SlotProps } from '../../types/slot'; import { SxProps } from '../../types/theme'; export type TabsSlot = 'root'; export interface TabsSlots { /** * The component that renders the root. * @default 'div' */ root?: React.ElementType; } export type TabsSlotsAndSlotProps = CreateSlotsAndSlotProps; }>; export interface TabsOwnProps { /** * The content of the component. */ children?: React.ReactNode; /** * The value of the currently selected `Tab`. * If you don't want any selected `Tab`, you can set this prop to `null`. */ value?: string | number | null; /** * The default value. Use when the component is not controlled. */ defaultValue?: string | number | null; /** * The component orientation (layout flow direction). * @default 'horizontal' */ orientation?: 'horizontal' | 'vertical'; /** * Callback invoked when new value is being set. */ onChange?: (event: React.SyntheticEvent | null, value: number | string | null) => void; } export interface TabsTypeMap

{ props: P & TabsOwnProps & { /** * The system prop that allows defining system overrides as well as additional CSS styles. */ sx?: SxProps; } & TabsSlotsAndSlotProps; defaultComponent: D; } export type TabsRootProps = OverrideProps, D>; export interface TabsOwnerState extends TabsRootProps { }