// @flow
import PropTypes from 'prop-types';
import { type FocusProps, focusPropTypes } from '../../../mixins/focus';

export type UnstyledButtonProps = {
  type?: 'submit' | 'button',
  insetFocus?: boolean,
  borderRadius?: number,
  hasTransition?: boolean,
  onClick: (event: SyntheticEvent<HTMLButtonElement>) => void,
} & FocusProps;

export const unstyledButtonPropTypes = {
  type: PropTypes.oneOf(['submit', 'button']),
  insetFocus: PropTypes.bool,
  borderRadius: PropTypes.number,
  hasTransition: PropTypes.bool,
  onClick: PropTypes.func.isRequired,
  ...focusPropTypes,
};
