找出 UserId 谓词里的 bug

来自 品牌类型
TypeScript 6 高级 4分钟 找出 1处问题

找出这个生成的 UserId 类型谓词提供的错误证明。

TypeScript
declare const brandKey: unique symbol;
type UserId = number & { readonly [brandKey]: "UserId" };

function isUserId(value: unknown): value is UserId {
  return typeof value === "number";
}

const input: unknown = JSON.parse("-2");
if (isUserId(input)) {
  console.log(`loading user ${input}`);
}
在试验场中打开
报告错误