Skip to content

Overview

Structural type guards check whether a value has a particular object shape. These helpers validate structure rather than primitive type, returning simple booleans with no side effects.

  • isArray: Checks whether a value is an array.
  • isNonEmptyArray: Checks whether a value is a non‑empty array.
  • isNonEmptyRecord: Checks whether a value is a non‑null object with at least one own enumerable property.
  • isObject: Checks whether a value is a non‑null object.
  • isPlainObject: Checks whether a value is a plain object with Object.prototype.
  • isRecord: Checks whether a value is a record‑like object (non‑null, non‑array).
  • isTuple: Checks whether a value is a tuple of a specific length.

All structural guards are pure, predictable, and safe to use before normalization or validation.