export type Prettify = { [K in keyof T]: T[K]; } & {}; export type UnionToIntersection = (T extends any ? (x: T) => any : never) extends ( x: infer R, ) => any ? R : never; export type NonEmptyArray = [T, ...T[]];