该技能名为 TypeScript Operations,是一套围绕 TypeScript 类型系统、泛型与生产实践的技能资料。资料中声明生态事实核验时间为 2026-08-08,对应 TypeScript 7、Zod 4、Valibot 1。
用途 主要用于处理 TypeScript 类型层面的设计与排错,包括类型收窄、联合类型建模、工具类型选用、泛型与条件类型编写,以及 tsconfig 严格模式配置。
主要能力
- 类型收窄决策树:给出 typeof、instanceof、in、可辨识联合 switch、真值检查、类型谓词、as 断言的适用选择,并附类型守卫(function isDog(pet: Dog | Cat): pet is Dog)示例。
- 可辨识联合:以 Result<T>(success / error / loading)为例,展示 switch 分支内类型收窄与 never 穷尽性检查。
- 工具类型速查:Partial、Required、Readonly、Pick、Omit、Record、Exclude、Extract、NonNullable、ReturnType、Parameters、Awaited,含用途与示例。
- 泛型模式:约束泛型(K extends keyof T)、多约束、默认泛型、条件类型与 infer、分布式条件类型及其抑制写法、映射类型(键重映射、按值类型过滤键)。
- 现代语言特性表:satisfies(4.9)、标准装饰器(5.0)、const 类型参数(5.0)、using 声明(5.2)、推断类型谓词(5.5)、verbatimModuleSyntax(5.0),并给出 const 类型参数、using、推断类型谓词的代码片段。
- TypeScript 6.0 与 7 的迁移信息:6.0 作为桥接版本将 strict: true、module: esnext、target: es2025 等设为默认,移除部分旧选项,并新增 --stableTypeOrdering;7 为 Go 原生编译器,同语义下类型检查更快,但仅提供 bin/tsc shim,require('typescript') 在 7.0.x 会抛 MODULE_NOT_FOUND(API 在 7.1+ 回归),因此依赖 TS 编程式 API 的工具与类型检查嵌入语言(vue-tsc、svelte-check、Astro、MDX)需暂留 TS 6。
- tsconfig 快速参考:给出 strict、noUncheckedIndexedAccess、module、moduleResolution、target、outDir、declaration、sourceMap、paths 等配置,并注明 TS 7 中 baseUrl 为硬错误(TS5102)。
- 常见陷阱表:any 泄漏、as 断言、enum 怪癖、object 与 Record 与 {}、数组索引访问、可选属性与 undefined、非空断言 !、结构化类型意外兼容,并给出对应修法。
- 品牌/名义类型:通过 string & { readonly __brand: "UserId" } 区分结构相同的类型,并给出构造函数与调用示例。
- 运行时校验(Zod 4):schema 定义、z.infer、parse 与 safeParse,以及 Zod 4 相对 Zod 3 的变化(字符串格式提升为顶层 z.email()、z.uuid()、z.url();错误定制统一到单一 error 参数;解析更快;提供可 tree-shake 的 zod/mini)。
使用方式 资料以技能说明与代码片段形式组织,并列出按主题加载的参考文件:./references/type-system.md、./references/generics-patterns.md、./references/utility-types.md、./references/config-strict.md、./references/ts7-native-compiler.md、./references/ecosystem.md。另有脚本用于事实陈旧检查:python scripts/check-typescript-facts.py --offline,可加 --live 核对 npm 主版本,目录文件为 assets/typescript-facts.json。相关技能参见 testing-ops 与 ci-cd-ops。
适用场景 TypeScript 项目的类型建模、泛型与工具类型编写、严格模式与 tsconfig 调整、品牌类型引入、Zod 运行时校验接入,以及从 TS 6 向 TS 7 原生编译器迁移前的评估。
限制 资料未提供与该技能绑定的收费、价格或平台支持信息;TS 7 的版本状态、性能倍数与发布时间以资料所述为准;具体工具的兼容性需按资料所述的 TS 6/7 API 情况判断。