// @flow
import type { BrandProps } from '../../mixins/branding';
import type { SpaceProps } from '../../mixins/spacing';
import type { StackedProps } from '../../mixins/stacking';
import type { StackeeProps } from '../../mixins/stackee';
import type { ContainerProps } from '../../mixins/container';
import type { HideProps } from '../../mixins/hide';
import type { TestingProps } from '../../mixins/testing';
import type { StylableProps } from '../../mixins/themes';
import type { AriaProps } from '../../mixins/aria';

export type BoxProps = {|
  ...ContainerProps,
  ...StackedProps,
  ...StackeeProps,
  ...SpaceProps,
  ...BrandProps,
  ...HideProps,
  ...TestingProps,
  ...StylableProps,
  ...AriaProps,
  onBlur?: FocusEventListener,
  onFocus?: FocusEventListener,
  onKeyDown?: KeyboardEventListener,
  onKeyUp?: KeyboardEventListener,
|};
