import { Orientations, Positions, Sizes, Variants } from "./Tabs.constants.js";
import { AllHTMLAttributes, ReactNode } from "react";

//#region src/components/Tabs/Tabs.types.d.ts
interface TabsProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'defaultValue' | 'dir' | 'value'> {
  children: ReactNode;
  tabs: ReactNode;
  barClassName?: string;
  defaultTab?: string;
  dir?: 'ltr' | 'rtl';
  disabled?: boolean;
  fullWidth?: boolean;
  label?: string;
  large?: boolean;
  orientation?: `${Orientations}`;
  tab?: string;
  tabsPosition?: `${Positions}`;
  tabsSize?: `${Sizes}`;
  variant?: `${Variants}`;
  withIndicator?: boolean;
  withSeparator?: boolean;
  onTabChange?: (newTab: string) => void;
}
interface TabProps extends Omit<AllHTMLAttributes<HTMLButtonElement>, 'label' | 'size' | 'type' | 'value'> {
  name: string;
  children?: ReactNode;
  disabled?: boolean;
  icon?: ReactNode;
  iconOnly?: boolean;
  label?: ReactNode;
  large?: boolean;
  orientation?: `${Orientations}`;
  size?: `${Sizes}`;
  tabsPosition?: `${Positions}`;
  withIndicator?: boolean;
}
interface TabContentProps extends Omit<AllHTMLAttributes<HTMLDivElement>, 'value'> {
  children: ReactNode;
  name: string;
  forceMount?: boolean;
}
//#endregion
export { TabContentProps, TabProps, TabsProps };
//# sourceMappingURL=Tabs.types.d.ts.map