types-kit.uniontointersection.md
September 4, 2023 ยท View on GitHub
Home > types-kit > UnionToIntersection
UnionToIntersection type
Convert union type to Intersection type.
Signature:
export type UnionToIntersection<U> = (
U extends any ? (k: U) => void : never
) extends (k: infer I) => void
? I
: never
Example
// Expect: { a: number } & { b: number }
type Props = UnionToIntersection<{ a: number } | { b: number }>