import { OverridesStyleRules } from '@mui/material/styles/overrides';
import { TabsProps as MuiTabProps } from '@mui/material/Tabs';
import { TabsSlots } from './slots/TabsEnum';
import { TABS_KEY_COMPONENT } from './constants';
import { Theme } from '@mui/material';
import { Sizes } from '@m4l/styles';
/**
 * Props for the Tabs component. Extends MUI Tabs props with size and variantComponent.
 */
export type TabsProps = MuiTabProps & {
    /** Visual size of the scroll buttons and tab area; affects child Tab sizing when `variantComponent` is `contained`. */
    size?: Extract<Sizes, 'small' | 'medium'>;
    /** Visual variant of the tab bar: `outlined` (default) or `contained`. Must match the `variant` prop of child Tab components. */
    variantComponent?: 'outlined' | 'contained';
};
/**
 * Internal owner state passed to styled slots (e.g. for variant-dependent styles).
 */
export type TabsOwnerState = TabsProps;
/**
 * Slot names used for CSS customization (theme overrides). Currently only `root` is defined.
 */
export type TabsSlotsType = typeof TabsSlots;
/**
 * Style overrides for the Tabs component slots.
 */
export type TabsStyles = OverridesStyleRules<TabsSlots, typeof TABS_KEY_COMPONENT, Theme>;
//# sourceMappingURL=types.d.ts.map