/* eslint-disable flowtype/require-exact-type */ /* we disable it because the RefType does not need to be exact or is incompatible with the React ref */ // @flow import * as React from "react"; export type Globals = {| +dataTest?: string, +id?: string, |}; export type DataAttrs = {| +dataAttrs?: { [key: string]: ?string | ?boolean }, |}; export type RefType = ?{ current: null | HTMLElement } | ((null | HTMLElement) => mixed); export type Ref = {| +ref?: RefType, |}; export type Translation = React.Element> | string; export type TranslationString = React.Node; export type Component = string | (() => React.Element); export type ObjectProperty = {| top?: string | number, right?: string | number, bottom?: string | number, left?: string | number, |};