// @flow
import type { Element } from 'react';
import type { SpaceProps } from '../../../mixins/spacing';
import type { StackeeProps } from '../../../mixins/stackee';
import type { StackedProps } from '../../../mixins/stacking';
import type { StylableProps } from '../../../mixins/themes';
import type { TestingProps } from '../../../mixins/testing';
import type { FocusEvents } from '../../../mixins/focus';
import type { AriaProps } from '../../../mixins/aria';
import type { ContainerProps } from '../../../mixins/container';

export type RadioButtonProps = {|
  ...TestingProps,
  ...StylableProps,
  ...SpaceProps,
  ...StackeeProps,
  ...FocusEvents,
  ...AriaProps,
  ...ContainerProps,
  ...StackedProps,
  id: string,
  name?: string,
  selected?: boolean,
  text?: string | Element<*>,
  onClick: (string) => void,
  direction?: 'left' | 'right',
|};
