types-kit.isobject.md

September 4, 2023 ยท View on GitHub

Home > types-kit > IsObject

IsObject type

If T is object, return true, else return false.

Signature:

export type IsObject<T> = IfExtends<
  [T, never],
  false,
  IfExtends<[T, object], IfExtends<[IsAny<T>, true], false, true>, false>
>

References: IfExtends, IsAny

Example

// Expect: true
type Foo = IsObject<{ foo: 'foo' }>