Type Alias StringToBigint<S, Fail>

StringToBigint<S, Fail>: S extends "-0n"
    ? 0n
    : S extends `${infer N extends bigint}n`
        ? N
        : Fail

Cast a string to a bigint literal type if possible.

StringToBigint<'1n'> // 1n
StringToBigint<'-1n'> // -1n

Type Parameters

  • S extends string
  • Fail = never