SuperAPI AI 工具集

openapi-to-typescript

编程与开发

查看项目

更新于 10-15 17:30

技能介绍

用途:把 OpenAPI 3.0 规范文件(JSON 或 YAML)转换为 TypeScript 文件,输出接口、请求/响应类型和类型守卫,适用于需要从 API 规范生成前端类型或接口的场景。

主要能力:校验规范必须含 openapi(以 3.0 开头)、paths 与 components.schemas;从 components/schemas 提取模型,从 paths 提取端点请求与响应类型;按映射规则生成类型:string/number/integer/boolean/null 分别映射到 TypeScript 的 string/number/number/boolean/null,uuid、date、date-time、email、uri 等 format 保留为 string 并以注释标注;对象按 required 决定可选属性(未在 required 中加 ?);数组生成 T[];枚举生成字符串字面量联合类型;oneOf 生成联合,allOf 生成接口继承;$ref 直接引用类型而非内联展开;为每个主接口生成类型守卫 isXxx,校验对象非空、必填字段存在、原始类型、数组用 Array.isArray、枚举用 includes;始终包含 ApiError 及其类型守卫。

使用方式:先询问或接收 OpenAPI 文件路径,读取并校验,提取 schema 与端点,生成 TypeScript,询问保存位置(默认当前目录 types/api.ts),然后写出文件。生成文件带自动生成头注释,提示不要手工编辑。命名约定为 {Method}{Path}Request 与 {Method}{Path}Response。

限制:仅支持 OpenAPI 3.0.x,版本不符应报错并停止;$ref 找不到会列出缺失引用;未知类型用 unknown 并警告;循环引用用惰性类型别名;规范不合法时应报告错误并停止。资料未提供安装命令、平台、收费与价格信息。