import { ButtonHTMLAttributes } from 'react';
import { IconProps } from '../Icon';
import { Box } from '../Box';

type BoxProps = React.ComponentProps<typeof Box>;

export type variants = 'primary' | 'raw';

export type IconButtonProps = {
  /**
   * Specify the variant of Button you want to create
   */
  variant?: variants;
  onClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
  IconComponent?: React.ComponentType;
  buttonProps?: BoxProps & ButtonHTMLAttributes<HTMLButtonElement>;
  style?: any;
  children?: React.ReactNode;
} & IconProps;

export const IconButtonDefaultProps = {
  variant: 'raw' as variants,
};
