/** * Copied from chakra-ui, license MIT * Accessed 2021-12-26 * See also: https://github.com/chakra-ui/chakra-ui/blob/8d69cef/packages/utils/src/types.ts */ export type Merge = P & Omit; export type UnionStringArray> = T[number]; export type Omit = Pick>; export type LiteralUnion = T | (U & { _?: never; }); export type AnyFunction = (...args: T[]) => any; export type FunctionArguments = T extends (...args: infer R) => any ? R : never; export type Dict = Record; export type Booleanish = boolean | "true" | "false"; export type StringOrNumber = string | number; export type EventKeys = "ArrowDown" | "ArrowUp" | "ArrowLeft" | "ArrowRight" | "Enter" | "Space" | "Tab" | "Backspace" | "Control" | "Meta" | "Home" | "End" | "PageDown" | "PageUp" | "Delete" | "Escape" | " " | "Shift";