[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Types](https://evolu.dev/docs/api-reference/common/Types) › IsUnion

```ts
type IsUnion<T, Whole> = [T] extends [never]
  ? false
  : T extends Whole
    ? [Whole] extends [T]
      ? false
      : true
    : never;
```

Defined in: [packages/common/src/Types.ts:458](https://github.com/evoluhq/evolu/blob/dd96d79f1dbe9a49fa12ce8e0aa7d3d0177795ca/packages/common/src/Types.ts#L458)

Returns whether a type is a union.