核心结论
模板字面量类型可以描述有限的字符串协议,条件类型配合infer能够匹配并提取路径片段、事件名前缀或资源键组成,再把结果转换为联合类型或参数对象。它适用于编译期已经保留为字符串字面量的输入,不能把任意运行时string自动变成经过验证的数据。工程实现必须规定合法格式、失败结果、重复键和可选片段的语义,同时控制递归深度;运行时解析器也应遵循相同规则,否则静态类型承诺与真实行为会发生偏差。
底层机制
条件类型可以使用模板匹配语法拆分字符串,并让infer接收匹配片段。例如提取路径中的参数名:
type PathParams<Path extends string> =
Path