API reference › @evolu/common › Types › WidenLiteral

type WidenLiteral<T extends Literal> = T extends string
  ? string
  : T extends number
    ? number
    : T extends boolean
      ? boolean
      : T extends bigint
        ? bigint
        : T;

Defined in: packages/common/src/Types.ts:314

Infers a broader type from a specific literal value type.

Examples:

  • "foo" -> string
  • 42 -> number
  • 42n -> bigint
  • True -> boolean