import { ReactNode } from "react";
import { Color } from "@/types/colors";
export interface ButtonProps {
  dataTestId?: string;
  element?: null | HTMLButtonElement;
  ref?: React.Ref<HTMLButtonElement>;
  children?: ReactNode;
  disabled?: boolean;
  fillMode?: null | "link" | "flat" | "outline" | "solid";
  icon?: string;
  iconClass?: string;
  imageAlt?: string;
  imageUrl?: string;
  rounded?: null | "small" | "medium" | "full" | "large";
  selected?: boolean;
  size?: null | "small" | "medium" | "large";
  themeColor?: Color;
  togglable?: boolean;
  className?: string;
  onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
  onMouseDown?: (
    event: React.MouseEvent<HTMLButtonElement, MouseEvent>
  ) => void;
  onMouseUp?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
  onFocus?: (event: React.FocusEvent<HTMLButtonElement>) => void;
  onBlur?: (event: React.FocusEvent<HTMLButtonElement>) => void;
}
