import { CenterProps } from "../../Flex/type.mjs";
import "../../Flex/index.mjs";
import { IconProps, IconSizeConfig, IconSizeType, LucideIconProps } from "../../Icon/type.mjs";
import "../../Icon/index.mjs";
import { TooltipProps } from "../Tooltip/type.mjs";
import "../Tooltip/index.mjs";
import { CSSProperties, ReactNode, Ref } from "react";
//#region src/base-ui/ActionIcon/type.d.ts
interface ActionIconSizeConfig extends IconSizeConfig {
  blockSize?: number | string;
  borderRadius?: number | string;
}
type ActionIconSize = number | IconSizeType | ActionIconSizeConfig;
interface ActionIconClassNames {
  icon?: string;
  root?: string;
}
interface ActionIconStyles {
  icon?: CSSProperties;
  root?: CSSProperties;
}
interface ActionIconProps extends Partial<LucideIconProps>, Omit<CenterProps, 'title' | 'children'> {
  active?: boolean;
  classNames?: ActionIconClassNames;
  danger?: boolean;
  disabled?: boolean;
  glass?: boolean;
  icon?: IconProps['icon'] | ReactNode;
  loading?: boolean;
  ref?: Ref<HTMLButtonElement>;
  shadow?: boolean;
  size?: ActionIconSize;
  spin?: boolean;
  styles?: ActionIconStyles;
  title?: TooltipProps['title'];
  tooltipProps?: Omit<TooltipProps, 'children' | 'title'>;
  variant?: 'borderless' | 'filled' | 'outlined';
}
//#endregion
export { ActionIconClassNames, ActionIconProps, ActionIconSize, ActionIconStyles };
//# sourceMappingURL=type.d.mts.map