openapi-typesafe 1.0.0-rc.2 → 1.0.0-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/CHANGELOG.md +1831 -0
  2. package/dist/adapters/node-deprecations/node-deprecations.cjs +14 -0
  3. package/dist/adapters/node-deprecations/node-deprecations.cjs.map +1 -0
  4. package/dist/adapters/node-deprecations/node-deprecations.mjs +12 -0
  5. package/dist/adapters/node-deprecations/node-deprecations.mjs.map +1 -0
  6. package/dist/adapters/node-file-system/file-claims.cjs +105 -0
  7. package/dist/adapters/node-file-system/file-claims.cjs.map +1 -0
  8. package/dist/adapters/node-file-system/file-claims.mjs +95 -0
  9. package/dist/adapters/node-file-system/file-claims.mjs.map +1 -0
  10. package/dist/adapters/node-file-system/file-identity.cjs +82 -0
  11. package/dist/adapters/node-file-system/file-identity.cjs.map +1 -0
  12. package/dist/adapters/node-file-system/file-identity.mjs +74 -0
  13. package/dist/adapters/node-file-system/file-identity.mjs.map +1 -0
  14. package/dist/adapters/node-file-system/node-file-system.cjs +90 -14
  15. package/dist/adapters/node-file-system/node-file-system.cjs.map +1 -1
  16. package/dist/adapters/node-file-system/node-file-system.mjs +90 -14
  17. package/dist/adapters/node-file-system/node-file-system.mjs.map +1 -1
  18. package/dist/adapters/redocly-loader/bundled-mapping-copies.cjs +75 -0
  19. package/dist/adapters/redocly-loader/bundled-mapping-copies.cjs.map +1 -0
  20. package/dist/adapters/redocly-loader/bundled-mapping-copies.mjs +72 -0
  21. package/dist/adapters/redocly-loader/bundled-mapping-copies.mjs.map +1 -0
  22. package/dist/adapters/redocly-loader/bundled-ref-repair.cjs +1 -1
  23. package/dist/adapters/redocly-loader/bundled-ref-repair.cjs.map +1 -1
  24. package/dist/adapters/redocly-loader/bundled-ref-repair.mjs +2 -2
  25. package/dist/adapters/redocly-loader/bundled-ref-repair.mjs.map +1 -1
  26. package/dist/adapters/redocly-loader/loaded-documents.cjs +28 -0
  27. package/dist/adapters/redocly-loader/loaded-documents.cjs.map +1 -0
  28. package/dist/adapters/redocly-loader/loaded-documents.mjs +21 -0
  29. package/dist/adapters/redocly-loader/loaded-documents.mjs.map +1 -0
  30. package/dist/adapters/redocly-loader/redocly-schema-loader.cjs +14 -15
  31. package/dist/adapters/redocly-loader/redocly-schema-loader.cjs.map +1 -1
  32. package/dist/adapters/redocly-loader/redocly-schema-loader.mjs +12 -13
  33. package/dist/adapters/redocly-loader/redocly-schema-loader.mjs.map +1 -1
  34. package/dist/adapters/redocly-loader/ref-access.cjs +31 -3
  35. package/dist/adapters/redocly-loader/ref-access.cjs.map +1 -1
  36. package/dist/adapters/redocly-loader/ref-access.mjs +31 -3
  37. package/dist/adapters/redocly-loader/ref-access.mjs.map +1 -1
  38. package/dist/adapters/redocly-loader/ref-holders.cjs +2 -2
  39. package/dist/adapters/redocly-loader/ref-holders.cjs.map +1 -1
  40. package/dist/adapters/redocly-loader/ref-holders.mjs +3 -3
  41. package/dist/adapters/redocly-loader/ref-holders.mjs.map +1 -1
  42. package/dist/adapters/redocly-loader/remote-body-limit.cjs +50 -0
  43. package/dist/adapters/redocly-loader/remote-body-limit.cjs.map +1 -0
  44. package/dist/adapters/redocly-loader/remote-body-limit.mjs +48 -0
  45. package/dist/adapters/redocly-loader/remote-body-limit.mjs.map +1 -0
  46. package/dist/adapters/redocly-loader/remote-fetch.cjs +35 -6
  47. package/dist/adapters/redocly-loader/remote-fetch.cjs.map +1 -1
  48. package/dist/adapters/redocly-loader/remote-fetch.mjs +35 -6
  49. package/dist/adapters/redocly-loader/remote-fetch.mjs.map +1 -1
  50. package/dist/adapters/redocly-loader/remote-node-limit.cjs +47 -0
  51. package/dist/adapters/redocly-loader/remote-node-limit.cjs.map +1 -0
  52. package/dist/adapters/redocly-loader/remote-node-limit.mjs +44 -0
  53. package/dist/adapters/redocly-loader/remote-node-limit.mjs.map +1 -0
  54. package/dist/adapters/redocly-loader/schema-load-errors.cjs +32 -8
  55. package/dist/adapters/redocly-loader/schema-load-errors.cjs.map +1 -1
  56. package/dist/adapters/redocly-loader/schema-load-errors.mjs +32 -9
  57. package/dist/adapters/redocly-loader/schema-load-errors.mjs.map +1 -1
  58. package/dist/adapters/redocly-loader/schema-source.cjs +11 -7
  59. package/dist/adapters/redocly-loader/schema-source.cjs.map +1 -1
  60. package/dist/adapters/redocly-loader/schema-source.mjs +12 -8
  61. package/dist/adapters/redocly-loader/schema-source.mjs.map +1 -1
  62. package/dist/adapters/redocly-loader/unsupported-keys.cjs +3 -5
  63. package/dist/adapters/redocly-loader/unsupported-keys.cjs.map +1 -1
  64. package/dist/adapters/redocly-loader/unsupported-keys.mjs +3 -5
  65. package/dist/adapters/redocly-loader/unsupported-keys.mjs.map +1 -1
  66. package/dist/adapters/terminal-logger/terminal-logger.cjs +6 -4
  67. package/dist/adapters/terminal-logger/terminal-logger.cjs.map +1 -1
  68. package/dist/adapters/terminal-logger/terminal-logger.mjs +6 -4
  69. package/dist/adapters/terminal-logger/terminal-logger.mjs.map +1 -1
  70. package/dist/api/default-ports.cjs +19 -2
  71. package/dist/api/default-ports.cjs.map +1 -1
  72. package/dist/api/default-ports.mjs +19 -3
  73. package/dist/api/default-ports.mjs.map +1 -1
  74. package/dist/api/discriminator-conflict-warnings.cjs +1 -1
  75. package/dist/api/discriminator-conflict-warnings.cjs.map +1 -1
  76. package/dist/api/discriminator-conflict-warnings.mjs +2 -2
  77. package/dist/api/discriminator-conflict-warnings.mjs.map +1 -1
  78. package/dist/api/discriminator-enum-parent.cjs +2 -2
  79. package/dist/api/discriminator-enum-parent.cjs.map +1 -1
  80. package/dist/api/discriminator-enum-parent.mjs +3 -3
  81. package/dist/api/discriminator-enum-parent.mjs.map +1 -1
  82. package/dist/api/discriminator-other-owners.cjs +5 -3
  83. package/dist/api/discriminator-other-owners.cjs.map +1 -1
  84. package/dist/api/discriminator-other-owners.mjs +5 -3
  85. package/dist/api/discriminator-other-owners.mjs.map +1 -1
  86. package/dist/api/discriminator-patch.cjs +8 -4
  87. package/dist/api/discriminator-patch.cjs.map +1 -1
  88. package/dist/api/discriminator-patch.mjs +9 -5
  89. package/dist/api/discriminator-patch.mjs.map +1 -1
  90. package/dist/api/discriminator-scan.cjs +17 -10
  91. package/dist/api/discriminator-scan.cjs.map +1 -1
  92. package/dist/api/discriminator-scan.mjs +18 -11
  93. package/dist/api/discriminator-scan.mjs.map +1 -1
  94. package/dist/api/document-run.cjs +4 -3
  95. package/dist/api/document-run.cjs.map +1 -1
  96. package/dist/api/document-run.mjs +4 -3
  97. package/dist/api/document-run.mjs.map +1 -1
  98. package/dist/api/legacy-callback-warning.cjs +7 -4
  99. package/dist/api/legacy-callback-warning.cjs.map +1 -1
  100. package/dist/api/legacy-callback-warning.mjs +8 -5
  101. package/dist/api/legacy-callback-warning.mjs.map +1 -1
  102. package/dist/api/legacy-utils.cjs.map +1 -1
  103. package/dist/api/legacy-utils.mjs.map +1 -1
  104. package/dist/api/openapi-ts.cjs +9 -5
  105. package/dist/api/openapi-ts.cjs.map +1 -1
  106. package/dist/api/openapi-ts.mjs +10 -7
  107. package/dist/api/openapi-ts.mjs.map +1 -1
  108. package/dist/api/schema-callbacks.cjs +36 -12
  109. package/dist/api/schema-callbacks.cjs.map +1 -1
  110. package/dist/api/schema-callbacks.mjs +36 -12
  111. package/dist/api/schema-callbacks.mjs.map +1 -1
  112. package/dist/api/string-to-ast.cjs +7 -9
  113. package/dist/api/string-to-ast.cjs.map +1 -1
  114. package/dist/api/string-to-ast.mjs +8 -9
  115. package/dist/api/string-to-ast.mjs.map +1 -1
  116. package/dist/api/transform-context.cjs +7 -3
  117. package/dist/api/transform-context.cjs.map +1 -1
  118. package/dist/api/transform-context.mjs +7 -3
  119. package/dist/api/transform-context.mjs.map +1 -1
  120. package/dist/api/transform-schema.cjs +42 -12
  121. package/dist/api/transform-schema.cjs.map +1 -1
  122. package/dist/api/transform-schema.mjs +44 -14
  123. package/dist/api/transform-schema.mjs.map +1 -1
  124. package/dist/application/print/text-writer.cjs +10 -3
  125. package/dist/application/print/text-writer.cjs.map +1 -1
  126. package/dist/application/print/text-writer.mjs +10 -3
  127. package/dist/application/print/text-writer.mjs.map +1 -1
  128. package/dist/application/stack-overflow.cjs +2 -1
  129. package/dist/application/stack-overflow.cjs.map +1 -1
  130. package/dist/application/stack-overflow.mjs +2 -1
  131. package/dist/application/stack-overflow.mjs.map +1 -1
  132. package/dist/application/transform/document/components.cjs +2 -2
  133. package/dist/application/transform/document/components.cjs.map +1 -1
  134. package/dist/application/transform/document/components.mjs +4 -4
  135. package/dist/application/transform/document/components.mjs.map +1 -1
  136. package/dist/application/transform/document/declared-type-names.cjs +23 -0
  137. package/dist/application/transform/document/declared-type-names.cjs.map +1 -0
  138. package/dist/application/transform/document/declared-type-names.mjs +20 -0
  139. package/dist/application/transform/document/declared-type-names.mjs.map +1 -0
  140. package/dist/application/transform/document/defs-root.cjs +1 -1
  141. package/dist/application/transform/document/defs-root.cjs.map +1 -1
  142. package/dist/application/transform/document/defs-root.mjs +2 -2
  143. package/dist/application/transform/document/defs-root.mjs.map +1 -1
  144. package/dist/application/transform/document/document.cjs +4 -1
  145. package/dist/application/transform/document/document.cjs.map +1 -1
  146. package/dist/application/transform/document/document.mjs +3 -2
  147. package/dist/application/transform/document/document.mjs.map +1 -1
  148. package/dist/application/transform/document/enum-names-given-back.cjs +62 -0
  149. package/dist/application/transform/document/enum-names-given-back.cjs.map +1 -0
  150. package/dist/application/transform/document/enum-names-given-back.mjs +58 -0
  151. package/dist/application/transform/document/enum-names-given-back.mjs.map +1 -0
  152. package/dist/application/transform/document/global-type-references.cjs +1 -0
  153. package/dist/application/transform/document/global-type-references.cjs.map +1 -1
  154. package/dist/application/transform/document/global-type-references.mjs +1 -1
  155. package/dist/application/transform/document/global-type-references.mjs.map +1 -1
  156. package/dist/application/transform/document/media-type.cjs +2 -2
  157. package/dist/application/transform/document/media-type.cjs.map +1 -1
  158. package/dist/application/transform/document/media-type.mjs +3 -3
  159. package/dist/application/transform/document/media-type.mjs.map +1 -1
  160. package/dist/application/transform/document/operation-keys-written.cjs +26 -0
  161. package/dist/application/transform/document/operation-keys-written.cjs.map +1 -0
  162. package/dist/application/transform/document/operation-keys-written.mjs +24 -0
  163. package/dist/application/transform/document/operation-keys-written.mjs.map +1 -0
  164. package/dist/application/transform/document/operation.cjs +1 -1
  165. package/dist/application/transform/document/operation.cjs.map +1 -1
  166. package/dist/application/transform/document/operation.mjs +2 -2
  167. package/dist/application/transform/document/operation.mjs.map +1 -1
  168. package/dist/application/transform/document/parameter-entries.cjs +34 -0
  169. package/dist/application/transform/document/parameter-entries.cjs.map +1 -0
  170. package/dist/application/transform/document/parameter-entries.mjs +30 -0
  171. package/dist/application/transform/document/parameter-entries.mjs.map +1 -0
  172. package/dist/application/transform/document/parameter.cjs +12 -4
  173. package/dist/application/transform/document/parameter.cjs.map +1 -1
  174. package/dist/application/transform/document/parameter.mjs +13 -5
  175. package/dist/application/transform/document/parameter.mjs.map +1 -1
  176. package/dist/application/transform/document/parameters.cjs +7 -30
  177. package/dist/application/transform/document/parameters.cjs.map +1 -1
  178. package/dist/application/transform/document/parameters.mjs +8 -31
  179. package/dist/application/transform/document/parameters.mjs.map +1 -1
  180. package/dist/application/transform/document/path-item.cjs +11 -14
  181. package/dist/application/transform/document/path-item.cjs.map +1 -1
  182. package/dist/application/transform/document/path-item.mjs +12 -16
  183. package/dist/application/transform/document/path-item.mjs.map +1 -1
  184. package/dist/application/transform/document/paths-enum.cjs +1 -0
  185. package/dist/application/transform/document/paths-enum.cjs.map +1 -1
  186. package/dist/application/transform/document/paths-enum.mjs +1 -1
  187. package/dist/application/transform/document/paths-enum.mjs.map +1 -1
  188. package/dist/application/transform/document/paths.cjs +6 -2
  189. package/dist/application/transform/document/paths.cjs.map +1 -1
  190. package/dist/application/transform/document/paths.mjs +8 -4
  191. package/dist/application/transform/document/paths.mjs.map +1 -1
  192. package/dist/application/transform/document/referenced-parameter.cjs +80 -0
  193. package/dist/application/transform/document/referenced-parameter.cjs.map +1 -0
  194. package/dist/application/transform/document/referenced-parameter.mjs +78 -0
  195. package/dist/application/transform/document/referenced-parameter.mjs.map +1 -0
  196. package/dist/application/transform/document/request-body.cjs +1 -1
  197. package/dist/application/transform/document/request-body.cjs.map +1 -1
  198. package/dist/application/transform/document/request-body.mjs +2 -2
  199. package/dist/application/transform/document/request-body.mjs.map +1 -1
  200. package/dist/application/transform/document/response.cjs +2 -2
  201. package/dist/application/transform/document/response.cjs.map +1 -1
  202. package/dist/application/transform/document/response.mjs +3 -3
  203. package/dist/application/transform/document/response.mjs.map +1 -1
  204. package/dist/application/transform/document/responses.cjs +1 -1
  205. package/dist/application/transform/document/responses.cjs.map +1 -1
  206. package/dist/application/transform/document/responses.mjs +2 -2
  207. package/dist/application/transform/document/responses.mjs.map +1 -1
  208. package/dist/application/transform/document/root-type-aliases.cjs +8 -23
  209. package/dist/application/transform/document/root-type-aliases.cjs.map +1 -1
  210. package/dist/application/transform/document/root-type-aliases.mjs +8 -24
  211. package/dist/application/transform/document/root-type-aliases.mjs.map +1 -1
  212. package/dist/application/transform/document/type-resolution.cjs +3 -1
  213. package/dist/application/transform/document/type-resolution.cjs.map +1 -1
  214. package/dist/application/transform/document/type-resolution.mjs +3 -1
  215. package/dist/application/transform/document/type-resolution.mjs.map +1 -1
  216. package/dist/application/transform/document/webhooks.cjs +1 -1
  217. package/dist/application/transform/document/webhooks.cjs.map +1 -1
  218. package/dist/application/transform/document/webhooks.mjs +2 -2
  219. package/dist/application/transform/document/webhooks.mjs.map +1 -1
  220. package/dist/application/transform/footer/document-footer.cjs +10 -2
  221. package/dist/application/transform/footer/document-footer.cjs.map +1 -1
  222. package/dist/application/transform/footer/document-footer.mjs +10 -2
  223. package/dist/application/transform/footer/document-footer.mjs.map +1 -1
  224. package/dist/application/transform/footer/enum-name-claims.cjs +48 -0
  225. package/dist/application/transform/footer/enum-name-claims.cjs.map +1 -0
  226. package/dist/application/transform/footer/enum-name-claims.mjs +46 -0
  227. package/dist/application/transform/footer/enum-name-claims.mjs.map +1 -0
  228. package/dist/application/transform/footer/operation-keys.cjs +23 -0
  229. package/dist/application/transform/footer/operation-keys.cjs.map +1 -0
  230. package/dist/application/transform/footer/operation-keys.mjs +21 -0
  231. package/dist/application/transform/footer/operation-keys.mjs.map +1 -0
  232. package/dist/application/transform/footer/type-evaluation.cjs +4 -4
  233. package/dist/application/transform/footer/type-evaluation.cjs.map +1 -1
  234. package/dist/application/transform/footer/type-evaluation.mjs +4 -4
  235. package/dist/application/transform/footer/type-evaluation.mjs.map +1 -1
  236. package/dist/application/transform/helper-types.cjs +1 -1
  237. package/dist/application/transform/helper-types.cjs.map +1 -1
  238. package/dist/application/transform/helper-types.mjs +1 -1
  239. package/dist/application/transform/helper-types.mjs.map +1 -1
  240. package/dist/application/transform/numbered-names.cjs +9 -0
  241. package/dist/application/transform/numbered-names.cjs.map +1 -1
  242. package/dist/application/transform/numbered-names.mjs +9 -1
  243. package/dist/application/transform/numbered-names.mjs.map +1 -1
  244. package/dist/application/transform/ref-pointer/generated-location.cjs +1 -1
  245. package/dist/application/transform/ref-pointer/generated-location.cjs.map +1 -1
  246. package/dist/application/transform/ref-pointer/generated-location.mjs +2 -2
  247. package/dist/application/transform/ref-pointer/generated-location.mjs.map +1 -1
  248. package/dist/application/transform/ref-pointer/pointer-type.cjs +1 -1
  249. package/dist/application/transform/ref-pointer/pointer-type.cjs.map +1 -1
  250. package/dist/application/transform/ref-pointer/pointer-type.mjs +2 -2
  251. package/dist/application/transform/ref-pointer/pointer-type.mjs.map +1 -1
  252. package/dist/application/transform/ref-type.cjs +2 -1
  253. package/dist/application/transform/ref-type.cjs.map +1 -1
  254. package/dist/application/transform/ref-type.mjs +2 -1
  255. package/dist/application/transform/ref-type.mjs.map +1 -1
  256. package/dist/application/transform/schema/access-flags.cjs +1 -1
  257. package/dist/application/transform/schema/access-flags.cjs.map +1 -1
  258. package/dist/application/transform/schema/access-flags.mjs +2 -2
  259. package/dist/application/transform/schema/access-flags.mjs.map +1 -1
  260. package/dist/application/transform/schema/array-type.cjs +2 -2
  261. package/dist/application/transform/schema/array-type.cjs.map +1 -1
  262. package/dist/application/transform/schema/array-type.mjs +3 -3
  263. package/dist/application/transform/schema/array-type.mjs.map +1 -1
  264. package/dist/application/transform/schema/composition-type.cjs +4 -4
  265. package/dist/application/transform/schema/composition-type.cjs.map +1 -1
  266. package/dist/application/transform/schema/composition-type.mjs +6 -6
  267. package/dist/application/transform/schema/composition-type.mjs.map +1 -1
  268. package/dist/application/transform/schema/enum-rule.cjs +4 -6
  269. package/dist/application/transform/schema/enum-rule.cjs.map +1 -1
  270. package/dist/application/transform/schema/enum-rule.mjs +6 -8
  271. package/dist/application/transform/schema/enum-rule.mjs.map +1 -1
  272. package/dist/application/transform/schema/object-type.cjs +3 -3
  273. package/dist/application/transform/schema/object-type.cjs.map +1 -1
  274. package/dist/application/transform/schema/object-type.mjs +4 -4
  275. package/dist/application/transform/schema/object-type.mjs.map +1 -1
  276. package/dist/application/transform/schema/presence-members.cjs +1 -1
  277. package/dist/application/transform/schema/presence-members.cjs.map +1 -1
  278. package/dist/application/transform/schema/presence-members.mjs +2 -2
  279. package/dist/application/transform/schema/presence-members.mjs.map +1 -1
  280. package/dist/application/transform/schema/ref-siblings.cjs +47 -0
  281. package/dist/application/transform/schema/ref-siblings.cjs.map +1 -0
  282. package/dist/application/transform/schema/ref-siblings.mjs +45 -0
  283. package/dist/application/transform/schema/ref-siblings.mjs.map +1 -0
  284. package/dist/application/transform/schema/required-variants.cjs +2 -2
  285. package/dist/application/transform/schema/required-variants.cjs.map +1 -1
  286. package/dist/application/transform/schema/required-variants.mjs +3 -3
  287. package/dist/application/transform/schema/required-variants.mjs.map +1 -1
  288. package/dist/application/transform/schema/schema-transform.cjs +4 -2
  289. package/dist/application/transform/schema/schema-transform.cjs.map +1 -1
  290. package/dist/application/transform/schema/schema-transform.mjs +4 -2
  291. package/dist/application/transform/schema/schema-transform.mjs.map +1 -1
  292. package/dist/application/transform/schema/unevaluated-properties.cjs +1 -1
  293. package/dist/application/transform/schema/unevaluated-properties.cjs.map +1 -1
  294. package/dist/application/transform/schema/unevaluated-properties.mjs +2 -2
  295. package/dist/application/transform/schema/unevaluated-properties.mjs.map +1 -1
  296. package/dist/application/transform/schema-comment.cjs +6 -2
  297. package/dist/application/transform/schema-comment.cjs.map +1 -1
  298. package/dist/application/transform/schema-comment.mjs +7 -3
  299. package/dist/application/transform/schema-comment.mjs.map +1 -1
  300. package/dist/cli/api-settings.cjs +62 -6
  301. package/dist/cli/api-settings.cjs.map +1 -1
  302. package/dist/cli/api-settings.mjs +60 -7
  303. package/dist/cli/api-settings.mjs.map +1 -1
  304. package/dist/cli/api-writes.cjs +72 -0
  305. package/dist/cli/api-writes.cjs.map +1 -0
  306. package/dist/cli/api-writes.mjs +69 -0
  307. package/dist/cli/api-writes.mjs.map +1 -0
  308. package/dist/cli/cli-errors.cjs +12 -1
  309. package/dist/cli/cli-errors.cjs.map +1 -1
  310. package/dist/cli/cli-errors.mjs +12 -1
  311. package/dist/cli/cli-errors.mjs.map +1 -1
  312. package/dist/cli/cli-output.cjs +106 -1
  313. package/dist/cli/cli-output.cjs.map +1 -1
  314. package/dist/cli/cli-output.mjs +99 -2
  315. package/dist/cli/cli-output.mjs.map +1 -1
  316. package/dist/cli/main.cjs +5 -1
  317. package/dist/cli/main.cjs.map +1 -1
  318. package/dist/cli/main.mjs +6 -2
  319. package/dist/cli/main.mjs.map +1 -1
  320. package/dist/cli/redocly-apis.cjs +82 -36
  321. package/dist/cli/redocly-apis.cjs.map +1 -1
  322. package/dist/cli/redocly-apis.mjs +85 -39
  323. package/dist/cli/redocly-apis.mjs.map +1 -1
  324. package/dist/cli/run-cli.cjs +13 -7
  325. package/dist/cli/run-cli.cjs.map +1 -1
  326. package/dist/cli/run-cli.mjs +14 -8
  327. package/dist/cli/run-cli.mjs.map +1 -1
  328. package/dist/domain/append-all.cjs +10 -0
  329. package/dist/domain/append-all.cjs.map +1 -0
  330. package/dist/domain/append-all.mjs +8 -0
  331. package/dist/domain/append-all.mjs.map +1 -0
  332. package/dist/domain/cause-secrets.cjs +37 -0
  333. package/dist/domain/cause-secrets.cjs.map +1 -0
  334. package/dist/domain/cause-secrets.mjs +35 -0
  335. package/dist/domain/cause-secrets.mjs.map +1 -0
  336. package/dist/domain/deprecations.cjs +11 -0
  337. package/dist/domain/deprecations.cjs.map +1 -0
  338. package/dist/domain/deprecations.mjs +9 -0
  339. package/dist/domain/deprecations.mjs.map +1 -0
  340. package/dist/domain/errors.cjs +9 -3
  341. package/dist/domain/errors.cjs.map +1 -1
  342. package/dist/domain/errors.mjs +9 -3
  343. package/dist/domain/errors.mjs.map +1 -1
  344. package/dist/domain/ir/identifier-text.cjs.map +1 -1
  345. package/dist/domain/ir/identifier-text.mjs +1 -1
  346. package/dist/domain/ir/identifier-text.mjs.map +1 -1
  347. package/dist/domain/ir/ir-shape.cjs +187 -0
  348. package/dist/domain/ir/ir-shape.cjs.map +1 -0
  349. package/dist/domain/ir/ir-shape.mjs +184 -0
  350. package/dist/domain/ir/ir-shape.mjs.map +1 -0
  351. package/dist/domain/ir/newer-identifier-ranges.cjs +182 -29
  352. package/dist/domain/ir/newer-identifier-ranges.cjs.map +1 -1
  353. package/dist/domain/ir/newer-identifier-ranges.mjs +182 -29
  354. package/dist/domain/ir/newer-identifier-ranges.mjs.map +1 -1
  355. package/dist/domain/openapi/alias-expansion.cjs +3 -1
  356. package/dist/domain/openapi/alias-expansion.cjs.map +1 -1
  357. package/dist/domain/openapi/alias-expansion.mjs +3 -1
  358. package/dist/domain/openapi/alias-expansion.mjs.map +1 -1
  359. package/dist/domain/openapi/discriminated-union.cjs +3 -3
  360. package/dist/domain/openapi/discriminated-union.cjs.map +1 -1
  361. package/dist/domain/openapi/discriminated-union.mjs +4 -4
  362. package/dist/domain/openapi/discriminated-union.mjs.map +1 -1
  363. package/dist/domain/openapi/discriminator-conflicts.cjs +10 -6
  364. package/dist/domain/openapi/discriminator-conflicts.cjs.map +1 -1
  365. package/dist/domain/openapi/discriminator-conflicts.mjs +11 -7
  366. package/dist/domain/openapi/discriminator-conflicts.mjs.map +1 -1
  367. package/dist/domain/openapi/json-pointer.cjs +43 -1
  368. package/dist/domain/openapi/json-pointer.cjs.map +1 -1
  369. package/dist/domain/openapi/json-pointer.mjs +40 -2
  370. package/dist/domain/openapi/json-pointer.mjs.map +1 -1
  371. package/dist/domain/openapi/schema-dialect.cjs +15 -0
  372. package/dist/domain/openapi/schema-dialect.cjs.map +1 -0
  373. package/dist/domain/openapi/schema-dialect.mjs +12 -0
  374. package/dist/domain/openapi/schema-dialect.mjs.map +1 -0
  375. package/dist/domain/openapi/unsupported-features.cjs +1 -1
  376. package/dist/domain/openapi/unsupported-features.cjs.map +1 -1
  377. package/dist/domain/openapi/unsupported-features.mjs +2 -2
  378. package/dist/domain/openapi/unsupported-features.mjs.map +1 -1
  379. package/dist/domain/output-fixes.cjs +25 -14
  380. package/dist/domain/output-fixes.cjs.map +1 -1
  381. package/dist/domain/output-fixes.mjs +25 -13
  382. package/dist/domain/output-fixes.mjs.map +1 -1
  383. package/dist/domain/url-secrets.cjs +48 -0
  384. package/dist/domain/url-secrets.cjs.map +1 -0
  385. package/dist/domain/url-secrets.mjs +45 -0
  386. package/dist/domain/url-secrets.mjs.map +1 -0
  387. package/dist/domain/warnings.cjs +0 -1
  388. package/dist/domain/warnings.cjs.map +1 -1
  389. package/dist/domain/warnings.mjs +0 -1
  390. package/dist/domain/warnings.mjs.map +1 -1
  391. package/dist/index.cjs +2 -3
  392. package/dist/index.cjs.map +1 -1
  393. package/dist/index.d.cts +57 -20
  394. package/dist/index.d.mts +57 -20
  395. package/dist/index.d.ts +57 -20
  396. package/dist/index.mjs +3 -2
  397. package/dist/index.mjs.map +1 -1
  398. package/package.json +5 -6
  399. package/src/adapters/node-deprecations/node-deprecations.ts +14 -0
  400. package/src/adapters/node-file-system/file-claims.ts +138 -0
  401. package/src/adapters/node-file-system/file-identity.ts +137 -0
  402. package/src/adapters/node-file-system/node-file-system.ts +145 -18
  403. package/src/adapters/redocly-loader/bundled-mapping-copies.ts +95 -0
  404. package/src/adapters/redocly-loader/bundled-ref-repair.ts +2 -2
  405. package/src/adapters/redocly-loader/loaded-documents.ts +46 -0
  406. package/src/adapters/redocly-loader/redocly-schema-loader.ts +18 -24
  407. package/src/adapters/redocly-loader/ref-access.ts +37 -3
  408. package/src/adapters/redocly-loader/ref-holders.ts +3 -3
  409. package/src/adapters/redocly-loader/remote-body-limit.ts +66 -0
  410. package/src/adapters/redocly-loader/remote-fetch.ts +74 -11
  411. package/src/adapters/redocly-loader/remote-node-limit.ts +62 -0
  412. package/src/adapters/redocly-loader/schema-load-errors.ts +52 -13
  413. package/src/adapters/redocly-loader/schema-source.ts +20 -8
  414. package/src/adapters/redocly-loader/unsupported-keys.ts +3 -7
  415. package/src/adapters/terminal-logger/terminal-logger.ts +10 -5
  416. package/src/api/default-ports.ts +40 -4
  417. package/src/api/discriminator-conflict-warnings.ts +2 -2
  418. package/src/api/discriminator-enum-parent.ts +3 -3
  419. package/src/api/discriminator-other-owners.ts +5 -3
  420. package/src/api/discriminator-patch.ts +9 -6
  421. package/src/api/discriminator-scan.ts +19 -11
  422. package/src/api/document-run.ts +9 -3
  423. package/src/api/legacy-callback-warning.ts +13 -6
  424. package/src/api/legacy-utils.ts +5 -1
  425. package/src/api/openapi-ts.ts +26 -7
  426. package/src/api/run-context.ts +6 -0
  427. package/src/api/schema-callbacks.ts +60 -17
  428. package/src/api/string-to-ast.ts +11 -15
  429. package/src/api/transform-context.ts +7 -3
  430. package/src/api/transform-schema.ts +67 -15
  431. package/src/application/ports/deprecation-reporter.ts +9 -0
  432. package/src/application/ports/file-system.ts +39 -0
  433. package/src/application/ports/schema-loader.ts +11 -1
  434. package/src/application/print/text-writer.ts +10 -3
  435. package/src/application/stack-overflow.ts +9 -5
  436. package/src/application/transform/document/components.ts +4 -4
  437. package/src/application/transform/document/declared-type-names.ts +36 -0
  438. package/src/application/transform/document/defs-root.ts +2 -2
  439. package/src/application/transform/document/document.ts +4 -3
  440. package/src/application/transform/document/enum-names-given-back.ts +91 -0
  441. package/src/application/transform/document/global-type-references.ts +1 -1
  442. package/src/application/transform/document/media-type.ts +4 -3
  443. package/src/application/transform/document/operation-keys-written.ts +27 -0
  444. package/src/application/transform/document/operation.ts +2 -2
  445. package/src/application/transform/document/parameter-entries.ts +70 -0
  446. package/src/application/transform/document/parameter.ts +21 -9
  447. package/src/application/transform/document/parameters.ts +13 -58
  448. package/src/application/transform/document/path-item.ts +13 -31
  449. package/src/application/transform/document/paths-enum.ts +1 -1
  450. package/src/application/transform/document/paths.ts +8 -4
  451. package/src/application/transform/document/referenced-parameter.ts +146 -0
  452. package/src/application/transform/document/request-body.ts +2 -2
  453. package/src/application/transform/document/response.ts +3 -3
  454. package/src/application/transform/document/responses.ts +2 -2
  455. package/src/application/transform/document/root-type-aliases.ts +17 -38
  456. package/src/application/transform/document/type-resolution.ts +2 -1
  457. package/src/application/transform/document/webhooks.ts +2 -2
  458. package/src/application/transform/footer/document-footer.ts +18 -1
  459. package/src/application/transform/footer/enum-name-claims.ts +62 -0
  460. package/src/application/transform/footer/operation-keys.ts +28 -0
  461. package/src/application/transform/footer/type-evaluation.ts +4 -4
  462. package/src/application/transform/helper-types.ts +6 -5
  463. package/src/application/transform/numbered-names.ts +15 -0
  464. package/src/application/transform/ref-pointer/generated-location.ts +2 -2
  465. package/src/application/transform/ref-pointer/pointer-type.ts +2 -4
  466. package/src/application/transform/ref-type.ts +2 -1
  467. package/src/application/transform/schema/access-flags.ts +2 -2
  468. package/src/application/transform/schema/array-type.ts +3 -5
  469. package/src/application/transform/schema/composition-type.ts +6 -6
  470. package/src/application/transform/schema/enum-rule.ts +10 -8
  471. package/src/application/transform/schema/object-type.ts +4 -4
  472. package/src/application/transform/schema/presence-members.ts +2 -2
  473. package/src/application/transform/schema/ref-siblings.ts +76 -0
  474. package/src/application/transform/schema/required-variants.ts +3 -3
  475. package/src/application/transform/schema/schema-context.ts +3 -0
  476. package/src/application/transform/schema/schema-transform.ts +4 -2
  477. package/src/application/transform/schema/unevaluated-properties.ts +2 -2
  478. package/src/application/transform/schema-comment.ts +7 -3
  479. package/src/application/transform/transform-context.ts +5 -0
  480. package/src/cli/api-settings.ts +82 -7
  481. package/src/cli/api-writes.ts +117 -0
  482. package/src/cli/cli-dependencies.ts +21 -4
  483. package/src/cli/cli-errors.ts +20 -1
  484. package/src/cli/cli-output.ts +186 -7
  485. package/src/cli/main.ts +6 -3
  486. package/src/cli/redocly-apis.ts +153 -48
  487. package/src/cli/run-cli.ts +37 -8
  488. package/src/domain/append-all.ts +10 -0
  489. package/src/domain/cause-secrets.ts +52 -0
  490. package/src/domain/deprecations.ts +15 -0
  491. package/src/domain/errors.ts +22 -7
  492. package/src/domain/ir/identifier-text.ts +6 -5
  493. package/src/domain/ir/ir-shape.ts +299 -0
  494. package/src/domain/ir/newer-identifier-ranges.ts +183 -30
  495. package/src/domain/openapi/alias-expansion.ts +4 -1
  496. package/src/domain/openapi/discriminated-union.ts +6 -4
  497. package/src/domain/openapi/discriminator-conflicts.ts +21 -7
  498. package/src/domain/openapi/document-object.ts +2 -0
  499. package/src/domain/openapi/json-pointer.ts +96 -7
  500. package/src/domain/openapi/schema-dialect.ts +22 -0
  501. package/src/domain/openapi/unsupported-features.ts +2 -2
  502. package/src/domain/output-fixes.ts +37 -18
  503. package/src/domain/url-secrets.ts +72 -0
  504. package/src/domain/warnings.ts +0 -1
  505. package/src/index.ts +2 -6
  506. package/src/types/generator-options.ts +1 -1
  507. package/dist/cli/main.d.cts +0 -2
  508. package/dist/cli/main.d.mts +0 -2
  509. package/dist/cli/main.d.ts +0 -2
  510. package/dist/domain/url-credentials.cjs +0 -10
  511. package/dist/domain/url-credentials.cjs.map +0 -1
  512. package/dist/domain/url-credentials.mjs +0 -8
  513. package/dist/domain/url-credentials.mjs.map +0 -1
  514. package/src/domain/url-credentials.ts +0 -18
package/dist/index.d.cts CHANGED
@@ -250,9 +250,10 @@ type FooterEntry = IrDeclaration | ts.Node;
250
250
  /**
251
251
  * Opt-in fixes of the output of valid schemas (ADR-021). Each one changes only the cases it names;
252
252
  * without any, the output is the same as openapi-typescript 7.13 gives. In 2.0 they become the
253
- * default.
253
+ * default. The object names the fixes for this package's code; the public API is the `OutputFix`
254
+ * union and the `OUTPUT_FIXES` list (ADR-021, amendment 1).
254
255
  */
255
- declare const OutputFix: {
256
+ declare const FIX: {
256
257
  /** An `allOf` `$ref` to a discriminated union is the union, without `Omit` or a schema name. */
257
258
  readonly ALLOF_DISCRIMINATED_UNION: "allof-discriminated-union";
258
259
  /** An `allOf` member with only `required` makes those properties of the others required. */
@@ -279,6 +280,8 @@ declare const OutputFix: {
279
280
  readonly EXPLODED_QUERY_OBJECTS: "exploded-query-objects";
280
281
  /** `--enum` declares an enum that lists `null` without it, and the type adds `| null`. */
281
282
  readonly NULLABLE_ENUMS: "nullable-enums";
283
+ /** A parameter with `content` instead of `schema` is typed by the schema of its media type. */
284
+ readonly PARAMETER_CONTENT: "parameter-content";
282
285
  /** `--path-params-as-types` gives each `{name}` its placeholder, `{number}` included. */
283
286
  readonly PATH_PARAM_TYPE_NAMES: "path-param-type-names";
284
287
  /** A `prefixItems` tuple is open unless `items` or `unevaluatedItems` closes it (2020-12). */
@@ -290,18 +293,24 @@ declare const OutputFix: {
290
293
  * points at, also where the original type compiles through an index signature.
291
294
  */
292
295
  readonly REF_POINTERS: "ref-pointers";
296
+ /**
297
+ * OpenAPI 3.1 and 3.2: keywords next to a `$ref` (`required`, `properties`) apply too, so the
298
+ * type is the reference intersected with them. OpenAPI 3.0 ignores them, as its spec says.
299
+ */
300
+ readonly REF_SIBLINGS: "ref-siblings";
293
301
  /** Schemas of one root type name without the prefix each get an alias, the earlier numbered. */
294
302
  readonly ROOT_TYPE_NUMBERING: "root-type-numbering";
295
303
  /** `unevaluatedProperties` types the keys no other keyword declares (an index signature). */
296
304
  readonly UNEVALUATED_PROPERTIES: "unevaluated-properties";
297
305
  };
298
- type OutputFix = (typeof OutputFix)[keyof typeof OutputFix];
306
+ /** The name of one opt-in output fix. */
307
+ type OutputFix = (typeof FIX)[keyof typeof FIX];
299
308
  /** Every fix of this version, in the order the docs list them. */
300
309
  declare const OUTPUT_FIXES: readonly OutputFix[];
301
310
  /** The name that turns on every fix of the installed version. */
302
- declare const ALL_OUTPUT_FIXES = "all";
303
- /** A name the `fix` option accepts: one fix, or `all`. */
304
- type OutputFixName = OutputFix | typeof ALL_OUTPUT_FIXES;
311
+ declare const ALL_FIXES = "all";
312
+ /** A name the `fix` option accepts: one fix, or `"all"`. */
313
+ type OutputFixName = OutputFix | typeof ALL_FIXES;
305
314
 
306
315
  interface Extensable {
307
316
  [key: `x-${string}`]: any;
@@ -1296,7 +1305,7 @@ interface OpenAPITSBaseOptions {
1296
1305
  * still fail the run.
1297
1306
  */
1298
1307
  lint?: boolean;
1299
- /** (optional) Should logging be suppressed? (necessary for STDOUT) */
1308
+ /** Hide warnings (default: false). Every line of the logger goes to stderr, never to stdout. */
1300
1309
  silent?: boolean;
1301
1310
  /** Accepted for compatibility with openapi-typescript; not read. */
1302
1311
  version?: number;
@@ -1451,6 +1460,20 @@ interface TransformNodeOptions {
1451
1460
  ctx: GlobalContext;
1452
1461
  }
1453
1462
 
1463
+ /**
1464
+ * Deprecations of what 2.0 removes. Each one is a Node.js `DeprecationWarning` with one of these
1465
+ * codes, so `--no-deprecation`, `--throw-deprecation`, `--trace-deprecation` and
1466
+ * `process.on("warning")` work on it as on Node's own (ADR-004, amendment of 2026-11-08).
1467
+ */
1468
+ /** Every deprecation code. */
1469
+ declare const DEPRECATION_CODES: {
1470
+ readonly OPENAPI_TYPESAFE_DEP_STRING_TO_AST: "OPENAPI_TYPESAFE_DEP_STRING_TO_AST";
1471
+ readonly OPENAPI_TYPESAFE_DEP_TS_TRANSFORM: "OPENAPI_TYPESAFE_DEP_TS_TRANSFORM";
1472
+ readonly OPENAPI_TYPESAFE_DEP_TS_POST_TRANSFORM: "OPENAPI_TYPESAFE_DEP_TS_POST_TRANSFORM";
1473
+ readonly OPENAPI_TYPESAFE_DEP_TS_TRANSFORM_PROPERTY: "OPENAPI_TYPESAFE_DEP_TS_TRANSFORM_PROPERTY";
1474
+ };
1475
+ type DeprecationCode = (typeof DEPRECATION_CODES)[keyof typeof DEPRECATION_CODES];
1476
+
1454
1477
  /** The debug groups of the original `DEBUG=openapi-ts:<group>` output. */
1455
1478
  type DebugGroup = "redoc" | "lint" | "bundle" | "ts";
1456
1479
  /**
@@ -1483,7 +1506,10 @@ declare function openapiTS(source: SchemaSource, options?: GeneratorOptions): Pr
1483
1506
  * `message` is English text for people; programs and the CLI decide by `code`. A bug (a broken
1484
1507
  * invariant) is a plain `Error`, not one of these.
1485
1508
  */
1486
- /** Every error code. The set is closed: a new code must be handled by the CLI exit-code table. */
1509
+ /**
1510
+ * Every error code. A minor release may add codes (ADR-034); each one needs a row in the CLI's
1511
+ * exit-code table, which the compiler checks.
1512
+ */
1487
1513
  declare const ERROR_CODES: {
1488
1514
  readonly SCHEMA_SOURCE_EMPTY: "SCHEMA_SOURCE_EMPTY";
1489
1515
  readonly SCHEMA_SOURCE_INVALID: "SCHEMA_SOURCE_INVALID";
@@ -1508,23 +1534,33 @@ declare const ERROR_CODES: {
1508
1534
  readonly CLI_CONFIG_OUTPUT_MISSING: "CLI_CONFIG_OUTPUT_MISSING";
1509
1535
  readonly CLI_CHECK_OUTPUT_MISSING: "CLI_CHECK_OUTPUT_MISSING";
1510
1536
  readonly CLI_INPUT_MISSING: "CLI_INPUT_MISSING";
1537
+ readonly CLI_OUTPUT_IS_INPUT: "CLI_OUTPUT_IS_INPUT";
1538
+ readonly CLI_OUTPUT_DUPLICATE: "CLI_OUTPUT_DUPLICATE";
1539
+ readonly CLI_OUTPUT_INVALID: "CLI_OUTPUT_INVALID";
1540
+ readonly CLI_LOCATION_INVALID: "CLI_LOCATION_INVALID";
1511
1541
  readonly OUTPUT_STALE: "OUTPUT_STALE";
1512
1542
  readonly OUTPUT_READ_FAILED: "OUTPUT_READ_FAILED";
1513
1543
  readonly OUTPUT_WRITE_FAILED: "OUTPUT_WRITE_FAILED";
1514
1544
  };
1515
1545
  type ErrorCode = (typeof ERROR_CODES)[keyof typeof ERROR_CODES];
1516
- /** Structured, JSON-serializable facts about a failure, for programs and logs. */
1546
+ /**
1547
+ * Structured, JSON-serializable facts about a failure, for programs and logs. Only the keys that
1548
+ * docs/node.md (Errors) lists are stable (ADR-034, amendment of 2026-11-08).
1549
+ */
1517
1550
  type ErrorDetails = Readonly<Record<string, unknown>>;
1518
1551
  interface OpenAPITypesafeErrorInit {
1519
1552
  readonly code: ErrorCode;
1520
1553
  readonly message: string;
1521
1554
  readonly details?: ErrorDetails;
1522
- /** The lower-level error this one reports, if any (kept as the standard `cause`). */
1555
+ /**
1556
+ * The lower-level error this one reports, if any (kept as the standard `cause`; a copy with URL
1557
+ * secrets hidden when its chain names one, see cause-secrets.ts).
1558
+ */
1523
1559
  readonly cause?: unknown;
1524
1560
  }
1525
1561
  /**
1526
1562
  * The base of every expected failure; check `code`, not the class or the message. The message
1527
- * never shows the user info of a URL (`url-credentials.ts`).
1563
+ * and the `cause` chain never show the user info or the query of a URL (`url-secrets.ts`).
1528
1564
  */
1529
1565
  declare class OpenAPITypesafeError extends Error {
1530
1566
  readonly code: ErrorCode;
@@ -1751,7 +1787,11 @@ declare function createDiscriminatorProperty(discriminator: DiscriminatorObject,
1751
1787
  path: string;
1752
1788
  readonly?: boolean;
1753
1789
  }): IrPropertySignature;
1754
- /** Create a $ref pointer (even from other $refs) */
1790
+ /**
1791
+ * Create a $ref pointer (even from other $refs). A part that contains `#/` is read as a `$ref`
1792
+ * and contributes its decoded segments, so it throws URIError for a malformed percent escape; any
1793
+ * other part is one segment. To append raw document keys, escape each one instead.
1794
+ */
1755
1795
  declare function createRef(parts: (number | string | undefined | null)[]): string;
1756
1796
  /**
1757
1797
  * Print debug message (cribbed from the `debug` package, but without all the bells & whistles
@@ -1787,15 +1827,13 @@ declare function walk(obj: unknown, cb: (value: Record<string, unknown>, path: (
1787
1827
  */
1788
1828
  declare function warn(msg: string, silent?: boolean): void;
1789
1829
 
1790
- /** Node's deprecation code for `stringToAST`, so users can filter or trace the warning. */
1791
- declare const STRING_TO_AST_DEPRECATION_CODE = "OPENAPI_TYPESAFE_DEP_STRING_TO_AST";
1792
1830
  /**
1793
1831
  * Convert an arbitrary string to TS (assuming it’s valid). Parses with the TypeScript bridge, so
1794
- * it needs TypeScript 6 or earlier (or `@typescript/typescript6`). Node's `util.deprecate` warns
1795
- * on the first call only.
1832
+ * it needs TypeScript 6 or earlier (or `@typescript/typescript6`). Emits a Node.js
1833
+ * `DeprecationWarning` (`OPENAPI_TYPESAFE_DEP_STRING_TO_AST`) on the first call only.
1796
1834
  * @deprecated Kept for 1.x; removed in 2.0 (ADR-004, decision 7). Use type text in IR callbacks.
1797
1835
  */
1798
- declare const stringToAST: (source: string) => unknown[];
1836
+ declare function stringToAST(source: string): unknown[];
1799
1837
 
1800
1838
  /**
1801
1839
  * The whole document as IR declarations (ENGINEERING_PLAN 6.1–6.2); `openapiTS` returns the same
@@ -1816,7 +1854,6 @@ declare const WARNING_CODES: {
1816
1854
  readonly DISCRIMINATOR_VALUE_NOT_ALLOWED: "DISCRIMINATOR_VALUE_NOT_ALLOWED";
1817
1855
  readonly ENUM_VALUES_EXCLUDED: "ENUM_VALUES_EXCLUDED";
1818
1856
  readonly FIX_NEEDS_OPTION: "FIX_NEEDS_OPTION";
1819
- readonly LEGACY_CALLBACK_DEPRECATED: "LEGACY_CALLBACK_DEPRECATED";
1820
1857
  readonly LINT_PROBLEM: "LINT_PROBLEM";
1821
1858
  readonly PATH_TEMPLATES_IDENTICAL: "PATH_TEMPLATES_IDENTICAL";
1822
1859
  readonly QUERYSTRING_NEXT_TO_QUERY: "QUERYSTRING_NEXT_TO_QUERY";
@@ -1944,5 +1981,5 @@ declare function transformSchemaObject(schemaObject: SchemaObject | ReferenceObj
1944
1981
  /** Transform SchemaObjects without the `postTransform` callback at the top level. */
1945
1982
  declare function transformSchemaObjectWithComposition(schemaObject: SchemaObject | ReferenceObject, options: TransformNodeOptions, fromAdditionalProperties?: boolean): IrType;
1946
1983
 
1947
- export { ALL_OUTPUT_FIXES, BOOLEAN, COMMENT_HEADER, ERROR_CODES, FALSE, JS_ENUM_INVALID_CHARS_RE, JS_PROPERTY_INDEX_INVALID_CHARS_RE, JS_PROPERTY_INDEX_RE, NEVER, NULL, NUMBER, OUTPUT_FIXES, OpenAPITypesafeError, OutputFix, QUESTION_TOKEN, SPECIAL_CHARACTER_MAP, STRING, STRING_TO_AST_DEPRECATION_CODE, TRUE, UNDEFINED, UNKNOWN, WARNING_CODES, addJSDocComment, astToString, c, createDiscriminatorProperty, createRef, debug, openapiTS as default, enumCache, error, formatTime, getEntries, injectOperationObject, isOpenAPITypesafeError, oapiRef, resolveRef, scanDiscriminators, stringToAST, transformComponentsObject, transformHeaderObject, transformMediaTypeObject, transformOperationObject, transformParameterObject, transformPathItemObject, transformPathsObject, transformRequestBodyObject, transformResponseObject, transformResponsesObject, transformSchema, transformSchemaObject, transformSchemaObjectWithComposition, tsArrayLiteralExpression, tsDedupe, tsEnum, tsEnumMember, tsIntersection, tsIsPrimitive, tsLiteral, tsModifiers, tsNullable, tsOmit, tsPropertyIndex, tsReadonlyArray, tsRecord, tsUnion, tsWithRequired, walk, warn };
1948
- export type { $defs, AnnotatedSchemaObject, ArraySubtype, AstToStringInput, AstToStringOptions, BooleanSubtype, CallbackObject, ComponentsObject, ContactObject, DiscriminatorObject, EncodingObject, ErrorCode, ErrorDetails, ExampleObject, Extensable, ExternalDocumentationObject, FooterEntry, GeneratorOptions, GlobalContext, HeaderObject, InfoObject, IntegerSubtype, IrArrayType, IrBooleanLiteralType, IrCallbackOptions, IrCallbackType, IrComment, IrConstArrayDeclaration, IrDeclaration, IrEnumDeclaration, IrEnumMember, IrIndexSignature, IrIndexedAccessType, IrInterfaceDeclaration, IrIntersectionType, IrKeyword, IrKeywordType, IrMember, IrNumberLiteralType, IrObjectType, IrPostTransform, IrPropertyName, IrPropertySignature, IrRawDeclaration, IrRawType, IrReadonlyType, IrReferenceType, IrStringEncoding, IrStringLiteralType, IrTransform, IrTransformObject, IrTransformProperty, IrTupleElement, IrTupleType, IrType, IrTypeAliasDeclaration, IrUnionType, LegacyCallbackName, LegacyCallbackOptions, LicenseObject, LinkObject, MediaTypeObject, Method, NullSubtype, NumberSubtype, OAuthFlowObject, OAuthFlowsObject, OapiRefOptions, ObjectSubtype, OpenAPI3, OpenAPITSBaseOptions, OpenAPITSIrOptions, OpenAPITSOptions, OperationObject, OutputFixName, ParameterObject, PathItemObject, PathsObject, ReferenceObject, RequestBodyObject, ResolveRefOptions, ResponseObject, ResponsesObject, SchemaObject, SchemaSource, SecurityRequirementObject, SecuritySchemeObject, ServerObject, ServerVariableObject, StringSubtype, TagObject, TransformNodeOptions, TransformObject, TypeInput, WarningCode, WebhooksObject, XMLObject };
1984
+ export { BOOLEAN, COMMENT_HEADER, DEPRECATION_CODES, ERROR_CODES, FALSE, JS_ENUM_INVALID_CHARS_RE, JS_PROPERTY_INDEX_INVALID_CHARS_RE, JS_PROPERTY_INDEX_RE, NEVER, NULL, NUMBER, OUTPUT_FIXES, OpenAPITypesafeError, QUESTION_TOKEN, SPECIAL_CHARACTER_MAP, STRING, TRUE, UNDEFINED, UNKNOWN, WARNING_CODES, addJSDocComment, astToString, c, createDiscriminatorProperty, createRef, debug, openapiTS as default, enumCache, error, formatTime, getEntries, injectOperationObject, isOpenAPITypesafeError, oapiRef, resolveRef, scanDiscriminators, stringToAST, transformComponentsObject, transformHeaderObject, transformMediaTypeObject, transformOperationObject, transformParameterObject, transformPathItemObject, transformPathsObject, transformRequestBodyObject, transformResponseObject, transformResponsesObject, transformSchema, transformSchemaObject, transformSchemaObjectWithComposition, tsArrayLiteralExpression, tsDedupe, tsEnum, tsEnumMember, tsIntersection, tsIsPrimitive, tsLiteral, tsModifiers, tsNullable, tsOmit, tsPropertyIndex, tsReadonlyArray, tsRecord, tsUnion, tsWithRequired, walk, warn };
1985
+ export type { $defs, AnnotatedSchemaObject, ArraySubtype, AstToStringInput, AstToStringOptions, BooleanSubtype, CallbackObject, ComponentsObject, ContactObject, DeprecationCode, DiscriminatorObject, EncodingObject, ErrorCode, ErrorDetails, ExampleObject, Extensable, ExternalDocumentationObject, FooterEntry, GeneratorOptions, GlobalContext, HeaderObject, InfoObject, IntegerSubtype, IrArrayType, IrBooleanLiteralType, IrCallbackOptions, IrCallbackType, IrComment, IrConstArrayDeclaration, IrDeclaration, IrEnumDeclaration, IrEnumMember, IrIndexSignature, IrIndexedAccessType, IrInterfaceDeclaration, IrIntersectionType, IrKeyword, IrKeywordType, IrMember, IrNumberLiteralType, IrObjectType, IrPostTransform, IrPropertyName, IrPropertySignature, IrRawDeclaration, IrRawType, IrReadonlyType, IrReferenceType, IrStringEncoding, IrStringLiteralType, IrTransform, IrTransformObject, IrTransformProperty, IrTupleElement, IrTupleType, IrType, IrTypeAliasDeclaration, IrUnionType, LegacyCallbackName, LegacyCallbackOptions, LicenseObject, LinkObject, MediaTypeObject, Method, NullSubtype, NumberSubtype, OAuthFlowObject, OAuthFlowsObject, OapiRefOptions, ObjectSubtype, OpenAPI3, OpenAPITSBaseOptions, OpenAPITSIrOptions, OpenAPITSOptions, OperationObject, OutputFix, OutputFixName, ParameterObject, PathItemObject, PathsObject, ReferenceObject, RequestBodyObject, ResolveRefOptions, ResponseObject, ResponsesObject, SchemaObject, SchemaSource, SecurityRequirementObject, SecuritySchemeObject, ServerObject, ServerVariableObject, StringSubtype, TagObject, TransformNodeOptions, TransformObject, TypeInput, WarningCode, WebhooksObject, XMLObject };
package/dist/index.d.mts CHANGED
@@ -250,9 +250,10 @@ type FooterEntry = IrDeclaration | ts.Node;
250
250
  /**
251
251
  * Opt-in fixes of the output of valid schemas (ADR-021). Each one changes only the cases it names;
252
252
  * without any, the output is the same as openapi-typescript 7.13 gives. In 2.0 they become the
253
- * default.
253
+ * default. The object names the fixes for this package's code; the public API is the `OutputFix`
254
+ * union and the `OUTPUT_FIXES` list (ADR-021, amendment 1).
254
255
  */
255
- declare const OutputFix: {
256
+ declare const FIX: {
256
257
  /** An `allOf` `$ref` to a discriminated union is the union, without `Omit` or a schema name. */
257
258
  readonly ALLOF_DISCRIMINATED_UNION: "allof-discriminated-union";
258
259
  /** An `allOf` member with only `required` makes those properties of the others required. */
@@ -279,6 +280,8 @@ declare const OutputFix: {
279
280
  readonly EXPLODED_QUERY_OBJECTS: "exploded-query-objects";
280
281
  /** `--enum` declares an enum that lists `null` without it, and the type adds `| null`. */
281
282
  readonly NULLABLE_ENUMS: "nullable-enums";
283
+ /** A parameter with `content` instead of `schema` is typed by the schema of its media type. */
284
+ readonly PARAMETER_CONTENT: "parameter-content";
282
285
  /** `--path-params-as-types` gives each `{name}` its placeholder, `{number}` included. */
283
286
  readonly PATH_PARAM_TYPE_NAMES: "path-param-type-names";
284
287
  /** A `prefixItems` tuple is open unless `items` or `unevaluatedItems` closes it (2020-12). */
@@ -290,18 +293,24 @@ declare const OutputFix: {
290
293
  * points at, also where the original type compiles through an index signature.
291
294
  */
292
295
  readonly REF_POINTERS: "ref-pointers";
296
+ /**
297
+ * OpenAPI 3.1 and 3.2: keywords next to a `$ref` (`required`, `properties`) apply too, so the
298
+ * type is the reference intersected with them. OpenAPI 3.0 ignores them, as its spec says.
299
+ */
300
+ readonly REF_SIBLINGS: "ref-siblings";
293
301
  /** Schemas of one root type name without the prefix each get an alias, the earlier numbered. */
294
302
  readonly ROOT_TYPE_NUMBERING: "root-type-numbering";
295
303
  /** `unevaluatedProperties` types the keys no other keyword declares (an index signature). */
296
304
  readonly UNEVALUATED_PROPERTIES: "unevaluated-properties";
297
305
  };
298
- type OutputFix = (typeof OutputFix)[keyof typeof OutputFix];
306
+ /** The name of one opt-in output fix. */
307
+ type OutputFix = (typeof FIX)[keyof typeof FIX];
299
308
  /** Every fix of this version, in the order the docs list them. */
300
309
  declare const OUTPUT_FIXES: readonly OutputFix[];
301
310
  /** The name that turns on every fix of the installed version. */
302
- declare const ALL_OUTPUT_FIXES = "all";
303
- /** A name the `fix` option accepts: one fix, or `all`. */
304
- type OutputFixName = OutputFix | typeof ALL_OUTPUT_FIXES;
311
+ declare const ALL_FIXES = "all";
312
+ /** A name the `fix` option accepts: one fix, or `"all"`. */
313
+ type OutputFixName = OutputFix | typeof ALL_FIXES;
305
314
 
306
315
  interface Extensable {
307
316
  [key: `x-${string}`]: any;
@@ -1296,7 +1305,7 @@ interface OpenAPITSBaseOptions {
1296
1305
  * still fail the run.
1297
1306
  */
1298
1307
  lint?: boolean;
1299
- /** (optional) Should logging be suppressed? (necessary for STDOUT) */
1308
+ /** Hide warnings (default: false). Every line of the logger goes to stderr, never to stdout. */
1300
1309
  silent?: boolean;
1301
1310
  /** Accepted for compatibility with openapi-typescript; not read. */
1302
1311
  version?: number;
@@ -1451,6 +1460,20 @@ interface TransformNodeOptions {
1451
1460
  ctx: GlobalContext;
1452
1461
  }
1453
1462
 
1463
+ /**
1464
+ * Deprecations of what 2.0 removes. Each one is a Node.js `DeprecationWarning` with one of these
1465
+ * codes, so `--no-deprecation`, `--throw-deprecation`, `--trace-deprecation` and
1466
+ * `process.on("warning")` work on it as on Node's own (ADR-004, amendment of 2026-11-08).
1467
+ */
1468
+ /** Every deprecation code. */
1469
+ declare const DEPRECATION_CODES: {
1470
+ readonly OPENAPI_TYPESAFE_DEP_STRING_TO_AST: "OPENAPI_TYPESAFE_DEP_STRING_TO_AST";
1471
+ readonly OPENAPI_TYPESAFE_DEP_TS_TRANSFORM: "OPENAPI_TYPESAFE_DEP_TS_TRANSFORM";
1472
+ readonly OPENAPI_TYPESAFE_DEP_TS_POST_TRANSFORM: "OPENAPI_TYPESAFE_DEP_TS_POST_TRANSFORM";
1473
+ readonly OPENAPI_TYPESAFE_DEP_TS_TRANSFORM_PROPERTY: "OPENAPI_TYPESAFE_DEP_TS_TRANSFORM_PROPERTY";
1474
+ };
1475
+ type DeprecationCode = (typeof DEPRECATION_CODES)[keyof typeof DEPRECATION_CODES];
1476
+
1454
1477
  /** The debug groups of the original `DEBUG=openapi-ts:<group>` output. */
1455
1478
  type DebugGroup = "redoc" | "lint" | "bundle" | "ts";
1456
1479
  /**
@@ -1483,7 +1506,10 @@ declare function openapiTS(source: SchemaSource, options?: GeneratorOptions): Pr
1483
1506
  * `message` is English text for people; programs and the CLI decide by `code`. A bug (a broken
1484
1507
  * invariant) is a plain `Error`, not one of these.
1485
1508
  */
1486
- /** Every error code. The set is closed: a new code must be handled by the CLI exit-code table. */
1509
+ /**
1510
+ * Every error code. A minor release may add codes (ADR-034); each one needs a row in the CLI's
1511
+ * exit-code table, which the compiler checks.
1512
+ */
1487
1513
  declare const ERROR_CODES: {
1488
1514
  readonly SCHEMA_SOURCE_EMPTY: "SCHEMA_SOURCE_EMPTY";
1489
1515
  readonly SCHEMA_SOURCE_INVALID: "SCHEMA_SOURCE_INVALID";
@@ -1508,23 +1534,33 @@ declare const ERROR_CODES: {
1508
1534
  readonly CLI_CONFIG_OUTPUT_MISSING: "CLI_CONFIG_OUTPUT_MISSING";
1509
1535
  readonly CLI_CHECK_OUTPUT_MISSING: "CLI_CHECK_OUTPUT_MISSING";
1510
1536
  readonly CLI_INPUT_MISSING: "CLI_INPUT_MISSING";
1537
+ readonly CLI_OUTPUT_IS_INPUT: "CLI_OUTPUT_IS_INPUT";
1538
+ readonly CLI_OUTPUT_DUPLICATE: "CLI_OUTPUT_DUPLICATE";
1539
+ readonly CLI_OUTPUT_INVALID: "CLI_OUTPUT_INVALID";
1540
+ readonly CLI_LOCATION_INVALID: "CLI_LOCATION_INVALID";
1511
1541
  readonly OUTPUT_STALE: "OUTPUT_STALE";
1512
1542
  readonly OUTPUT_READ_FAILED: "OUTPUT_READ_FAILED";
1513
1543
  readonly OUTPUT_WRITE_FAILED: "OUTPUT_WRITE_FAILED";
1514
1544
  };
1515
1545
  type ErrorCode = (typeof ERROR_CODES)[keyof typeof ERROR_CODES];
1516
- /** Structured, JSON-serializable facts about a failure, for programs and logs. */
1546
+ /**
1547
+ * Structured, JSON-serializable facts about a failure, for programs and logs. Only the keys that
1548
+ * docs/node.md (Errors) lists are stable (ADR-034, amendment of 2026-11-08).
1549
+ */
1517
1550
  type ErrorDetails = Readonly<Record<string, unknown>>;
1518
1551
  interface OpenAPITypesafeErrorInit {
1519
1552
  readonly code: ErrorCode;
1520
1553
  readonly message: string;
1521
1554
  readonly details?: ErrorDetails;
1522
- /** The lower-level error this one reports, if any (kept as the standard `cause`). */
1555
+ /**
1556
+ * The lower-level error this one reports, if any (kept as the standard `cause`; a copy with URL
1557
+ * secrets hidden when its chain names one, see cause-secrets.ts).
1558
+ */
1523
1559
  readonly cause?: unknown;
1524
1560
  }
1525
1561
  /**
1526
1562
  * The base of every expected failure; check `code`, not the class or the message. The message
1527
- * never shows the user info of a URL (`url-credentials.ts`).
1563
+ * and the `cause` chain never show the user info or the query of a URL (`url-secrets.ts`).
1528
1564
  */
1529
1565
  declare class OpenAPITypesafeError extends Error {
1530
1566
  readonly code: ErrorCode;
@@ -1751,7 +1787,11 @@ declare function createDiscriminatorProperty(discriminator: DiscriminatorObject,
1751
1787
  path: string;
1752
1788
  readonly?: boolean;
1753
1789
  }): IrPropertySignature;
1754
- /** Create a $ref pointer (even from other $refs) */
1790
+ /**
1791
+ * Create a $ref pointer (even from other $refs). A part that contains `#/` is read as a `$ref`
1792
+ * and contributes its decoded segments, so it throws URIError for a malformed percent escape; any
1793
+ * other part is one segment. To append raw document keys, escape each one instead.
1794
+ */
1755
1795
  declare function createRef(parts: (number | string | undefined | null)[]): string;
1756
1796
  /**
1757
1797
  * Print debug message (cribbed from the `debug` package, but without all the bells & whistles
@@ -1787,15 +1827,13 @@ declare function walk(obj: unknown, cb: (value: Record<string, unknown>, path: (
1787
1827
  */
1788
1828
  declare function warn(msg: string, silent?: boolean): void;
1789
1829
 
1790
- /** Node's deprecation code for `stringToAST`, so users can filter or trace the warning. */
1791
- declare const STRING_TO_AST_DEPRECATION_CODE = "OPENAPI_TYPESAFE_DEP_STRING_TO_AST";
1792
1830
  /**
1793
1831
  * Convert an arbitrary string to TS (assuming it’s valid). Parses with the TypeScript bridge, so
1794
- * it needs TypeScript 6 or earlier (or `@typescript/typescript6`). Node's `util.deprecate` warns
1795
- * on the first call only.
1832
+ * it needs TypeScript 6 or earlier (or `@typescript/typescript6`). Emits a Node.js
1833
+ * `DeprecationWarning` (`OPENAPI_TYPESAFE_DEP_STRING_TO_AST`) on the first call only.
1796
1834
  * @deprecated Kept for 1.x; removed in 2.0 (ADR-004, decision 7). Use type text in IR callbacks.
1797
1835
  */
1798
- declare const stringToAST: (source: string) => unknown[];
1836
+ declare function stringToAST(source: string): unknown[];
1799
1837
 
1800
1838
  /**
1801
1839
  * The whole document as IR declarations (ENGINEERING_PLAN 6.1–6.2); `openapiTS` returns the same
@@ -1816,7 +1854,6 @@ declare const WARNING_CODES: {
1816
1854
  readonly DISCRIMINATOR_VALUE_NOT_ALLOWED: "DISCRIMINATOR_VALUE_NOT_ALLOWED";
1817
1855
  readonly ENUM_VALUES_EXCLUDED: "ENUM_VALUES_EXCLUDED";
1818
1856
  readonly FIX_NEEDS_OPTION: "FIX_NEEDS_OPTION";
1819
- readonly LEGACY_CALLBACK_DEPRECATED: "LEGACY_CALLBACK_DEPRECATED";
1820
1857
  readonly LINT_PROBLEM: "LINT_PROBLEM";
1821
1858
  readonly PATH_TEMPLATES_IDENTICAL: "PATH_TEMPLATES_IDENTICAL";
1822
1859
  readonly QUERYSTRING_NEXT_TO_QUERY: "QUERYSTRING_NEXT_TO_QUERY";
@@ -1944,5 +1981,5 @@ declare function transformSchemaObject(schemaObject: SchemaObject | ReferenceObj
1944
1981
  /** Transform SchemaObjects without the `postTransform` callback at the top level. */
1945
1982
  declare function transformSchemaObjectWithComposition(schemaObject: SchemaObject | ReferenceObject, options: TransformNodeOptions, fromAdditionalProperties?: boolean): IrType;
1946
1983
 
1947
- export { ALL_OUTPUT_FIXES, BOOLEAN, COMMENT_HEADER, ERROR_CODES, FALSE, JS_ENUM_INVALID_CHARS_RE, JS_PROPERTY_INDEX_INVALID_CHARS_RE, JS_PROPERTY_INDEX_RE, NEVER, NULL, NUMBER, OUTPUT_FIXES, OpenAPITypesafeError, OutputFix, QUESTION_TOKEN, SPECIAL_CHARACTER_MAP, STRING, STRING_TO_AST_DEPRECATION_CODE, TRUE, UNDEFINED, UNKNOWN, WARNING_CODES, addJSDocComment, astToString, c, createDiscriminatorProperty, createRef, debug, openapiTS as default, enumCache, error, formatTime, getEntries, injectOperationObject, isOpenAPITypesafeError, oapiRef, resolveRef, scanDiscriminators, stringToAST, transformComponentsObject, transformHeaderObject, transformMediaTypeObject, transformOperationObject, transformParameterObject, transformPathItemObject, transformPathsObject, transformRequestBodyObject, transformResponseObject, transformResponsesObject, transformSchema, transformSchemaObject, transformSchemaObjectWithComposition, tsArrayLiteralExpression, tsDedupe, tsEnum, tsEnumMember, tsIntersection, tsIsPrimitive, tsLiteral, tsModifiers, tsNullable, tsOmit, tsPropertyIndex, tsReadonlyArray, tsRecord, tsUnion, tsWithRequired, walk, warn };
1948
- export type { $defs, AnnotatedSchemaObject, ArraySubtype, AstToStringInput, AstToStringOptions, BooleanSubtype, CallbackObject, ComponentsObject, ContactObject, DiscriminatorObject, EncodingObject, ErrorCode, ErrorDetails, ExampleObject, Extensable, ExternalDocumentationObject, FooterEntry, GeneratorOptions, GlobalContext, HeaderObject, InfoObject, IntegerSubtype, IrArrayType, IrBooleanLiteralType, IrCallbackOptions, IrCallbackType, IrComment, IrConstArrayDeclaration, IrDeclaration, IrEnumDeclaration, IrEnumMember, IrIndexSignature, IrIndexedAccessType, IrInterfaceDeclaration, IrIntersectionType, IrKeyword, IrKeywordType, IrMember, IrNumberLiteralType, IrObjectType, IrPostTransform, IrPropertyName, IrPropertySignature, IrRawDeclaration, IrRawType, IrReadonlyType, IrReferenceType, IrStringEncoding, IrStringLiteralType, IrTransform, IrTransformObject, IrTransformProperty, IrTupleElement, IrTupleType, IrType, IrTypeAliasDeclaration, IrUnionType, LegacyCallbackName, LegacyCallbackOptions, LicenseObject, LinkObject, MediaTypeObject, Method, NullSubtype, NumberSubtype, OAuthFlowObject, OAuthFlowsObject, OapiRefOptions, ObjectSubtype, OpenAPI3, OpenAPITSBaseOptions, OpenAPITSIrOptions, OpenAPITSOptions, OperationObject, OutputFixName, ParameterObject, PathItemObject, PathsObject, ReferenceObject, RequestBodyObject, ResolveRefOptions, ResponseObject, ResponsesObject, SchemaObject, SchemaSource, SecurityRequirementObject, SecuritySchemeObject, ServerObject, ServerVariableObject, StringSubtype, TagObject, TransformNodeOptions, TransformObject, TypeInput, WarningCode, WebhooksObject, XMLObject };
1984
+ export { BOOLEAN, COMMENT_HEADER, DEPRECATION_CODES, ERROR_CODES, FALSE, JS_ENUM_INVALID_CHARS_RE, JS_PROPERTY_INDEX_INVALID_CHARS_RE, JS_PROPERTY_INDEX_RE, NEVER, NULL, NUMBER, OUTPUT_FIXES, OpenAPITypesafeError, QUESTION_TOKEN, SPECIAL_CHARACTER_MAP, STRING, TRUE, UNDEFINED, UNKNOWN, WARNING_CODES, addJSDocComment, astToString, c, createDiscriminatorProperty, createRef, debug, openapiTS as default, enumCache, error, formatTime, getEntries, injectOperationObject, isOpenAPITypesafeError, oapiRef, resolveRef, scanDiscriminators, stringToAST, transformComponentsObject, transformHeaderObject, transformMediaTypeObject, transformOperationObject, transformParameterObject, transformPathItemObject, transformPathsObject, transformRequestBodyObject, transformResponseObject, transformResponsesObject, transformSchema, transformSchemaObject, transformSchemaObjectWithComposition, tsArrayLiteralExpression, tsDedupe, tsEnum, tsEnumMember, tsIntersection, tsIsPrimitive, tsLiteral, tsModifiers, tsNullable, tsOmit, tsPropertyIndex, tsReadonlyArray, tsRecord, tsUnion, tsWithRequired, walk, warn };
1985
+ export type { $defs, AnnotatedSchemaObject, ArraySubtype, AstToStringInput, AstToStringOptions, BooleanSubtype, CallbackObject, ComponentsObject, ContactObject, DeprecationCode, DiscriminatorObject, EncodingObject, ErrorCode, ErrorDetails, ExampleObject, Extensable, ExternalDocumentationObject, FooterEntry, GeneratorOptions, GlobalContext, HeaderObject, InfoObject, IntegerSubtype, IrArrayType, IrBooleanLiteralType, IrCallbackOptions, IrCallbackType, IrComment, IrConstArrayDeclaration, IrDeclaration, IrEnumDeclaration, IrEnumMember, IrIndexSignature, IrIndexedAccessType, IrInterfaceDeclaration, IrIntersectionType, IrKeyword, IrKeywordType, IrMember, IrNumberLiteralType, IrObjectType, IrPostTransform, IrPropertyName, IrPropertySignature, IrRawDeclaration, IrRawType, IrReadonlyType, IrReferenceType, IrStringEncoding, IrStringLiteralType, IrTransform, IrTransformObject, IrTransformProperty, IrTupleElement, IrTupleType, IrType, IrTypeAliasDeclaration, IrUnionType, LegacyCallbackName, LegacyCallbackOptions, LicenseObject, LinkObject, MediaTypeObject, Method, NullSubtype, NumberSubtype, OAuthFlowObject, OAuthFlowsObject, OapiRefOptions, ObjectSubtype, OpenAPI3, OpenAPITSBaseOptions, OpenAPITSIrOptions, OpenAPITSOptions, OperationObject, OutputFix, OutputFixName, ParameterObject, PathItemObject, PathsObject, ReferenceObject, RequestBodyObject, ResolveRefOptions, ResponseObject, ResponsesObject, SchemaObject, SchemaSource, SecurityRequirementObject, SecuritySchemeObject, ServerObject, ServerVariableObject, StringSubtype, TagObject, TransformNodeOptions, TransformObject, TypeInput, WarningCode, WebhooksObject, XMLObject };
package/dist/index.d.ts CHANGED
@@ -250,9 +250,10 @@ type FooterEntry = IrDeclaration | ts.Node;
250
250
  /**
251
251
  * Opt-in fixes of the output of valid schemas (ADR-021). Each one changes only the cases it names;
252
252
  * without any, the output is the same as openapi-typescript 7.13 gives. In 2.0 they become the
253
- * default.
253
+ * default. The object names the fixes for this package's code; the public API is the `OutputFix`
254
+ * union and the `OUTPUT_FIXES` list (ADR-021, amendment 1).
254
255
  */
255
- declare const OutputFix: {
256
+ declare const FIX: {
256
257
  /** An `allOf` `$ref` to a discriminated union is the union, without `Omit` or a schema name. */
257
258
  readonly ALLOF_DISCRIMINATED_UNION: "allof-discriminated-union";
258
259
  /** An `allOf` member with only `required` makes those properties of the others required. */
@@ -279,6 +280,8 @@ declare const OutputFix: {
279
280
  readonly EXPLODED_QUERY_OBJECTS: "exploded-query-objects";
280
281
  /** `--enum` declares an enum that lists `null` without it, and the type adds `| null`. */
281
282
  readonly NULLABLE_ENUMS: "nullable-enums";
283
+ /** A parameter with `content` instead of `schema` is typed by the schema of its media type. */
284
+ readonly PARAMETER_CONTENT: "parameter-content";
282
285
  /** `--path-params-as-types` gives each `{name}` its placeholder, `{number}` included. */
283
286
  readonly PATH_PARAM_TYPE_NAMES: "path-param-type-names";
284
287
  /** A `prefixItems` tuple is open unless `items` or `unevaluatedItems` closes it (2020-12). */
@@ -290,18 +293,24 @@ declare const OutputFix: {
290
293
  * points at, also where the original type compiles through an index signature.
291
294
  */
292
295
  readonly REF_POINTERS: "ref-pointers";
296
+ /**
297
+ * OpenAPI 3.1 and 3.2: keywords next to a `$ref` (`required`, `properties`) apply too, so the
298
+ * type is the reference intersected with them. OpenAPI 3.0 ignores them, as its spec says.
299
+ */
300
+ readonly REF_SIBLINGS: "ref-siblings";
293
301
  /** Schemas of one root type name without the prefix each get an alias, the earlier numbered. */
294
302
  readonly ROOT_TYPE_NUMBERING: "root-type-numbering";
295
303
  /** `unevaluatedProperties` types the keys no other keyword declares (an index signature). */
296
304
  readonly UNEVALUATED_PROPERTIES: "unevaluated-properties";
297
305
  };
298
- type OutputFix = (typeof OutputFix)[keyof typeof OutputFix];
306
+ /** The name of one opt-in output fix. */
307
+ type OutputFix = (typeof FIX)[keyof typeof FIX];
299
308
  /** Every fix of this version, in the order the docs list them. */
300
309
  declare const OUTPUT_FIXES: readonly OutputFix[];
301
310
  /** The name that turns on every fix of the installed version. */
302
- declare const ALL_OUTPUT_FIXES = "all";
303
- /** A name the `fix` option accepts: one fix, or `all`. */
304
- type OutputFixName = OutputFix | typeof ALL_OUTPUT_FIXES;
311
+ declare const ALL_FIXES = "all";
312
+ /** A name the `fix` option accepts: one fix, or `"all"`. */
313
+ type OutputFixName = OutputFix | typeof ALL_FIXES;
305
314
 
306
315
  interface Extensable {
307
316
  [key: `x-${string}`]: any;
@@ -1296,7 +1305,7 @@ interface OpenAPITSBaseOptions {
1296
1305
  * still fail the run.
1297
1306
  */
1298
1307
  lint?: boolean;
1299
- /** (optional) Should logging be suppressed? (necessary for STDOUT) */
1308
+ /** Hide warnings (default: false). Every line of the logger goes to stderr, never to stdout. */
1300
1309
  silent?: boolean;
1301
1310
  /** Accepted for compatibility with openapi-typescript; not read. */
1302
1311
  version?: number;
@@ -1451,6 +1460,20 @@ interface TransformNodeOptions {
1451
1460
  ctx: GlobalContext;
1452
1461
  }
1453
1462
 
1463
+ /**
1464
+ * Deprecations of what 2.0 removes. Each one is a Node.js `DeprecationWarning` with one of these
1465
+ * codes, so `--no-deprecation`, `--throw-deprecation`, `--trace-deprecation` and
1466
+ * `process.on("warning")` work on it as on Node's own (ADR-004, amendment of 2026-11-08).
1467
+ */
1468
+ /** Every deprecation code. */
1469
+ declare const DEPRECATION_CODES: {
1470
+ readonly OPENAPI_TYPESAFE_DEP_STRING_TO_AST: "OPENAPI_TYPESAFE_DEP_STRING_TO_AST";
1471
+ readonly OPENAPI_TYPESAFE_DEP_TS_TRANSFORM: "OPENAPI_TYPESAFE_DEP_TS_TRANSFORM";
1472
+ readonly OPENAPI_TYPESAFE_DEP_TS_POST_TRANSFORM: "OPENAPI_TYPESAFE_DEP_TS_POST_TRANSFORM";
1473
+ readonly OPENAPI_TYPESAFE_DEP_TS_TRANSFORM_PROPERTY: "OPENAPI_TYPESAFE_DEP_TS_TRANSFORM_PROPERTY";
1474
+ };
1475
+ type DeprecationCode = (typeof DEPRECATION_CODES)[keyof typeof DEPRECATION_CODES];
1476
+
1454
1477
  /** The debug groups of the original `DEBUG=openapi-ts:<group>` output. */
1455
1478
  type DebugGroup = "redoc" | "lint" | "bundle" | "ts";
1456
1479
  /**
@@ -1483,7 +1506,10 @@ declare function openapiTS(source: SchemaSource, options?: GeneratorOptions): Pr
1483
1506
  * `message` is English text for people; programs and the CLI decide by `code`. A bug (a broken
1484
1507
  * invariant) is a plain `Error`, not one of these.
1485
1508
  */
1486
- /** Every error code. The set is closed: a new code must be handled by the CLI exit-code table. */
1509
+ /**
1510
+ * Every error code. A minor release may add codes (ADR-034); each one needs a row in the CLI's
1511
+ * exit-code table, which the compiler checks.
1512
+ */
1487
1513
  declare const ERROR_CODES: {
1488
1514
  readonly SCHEMA_SOURCE_EMPTY: "SCHEMA_SOURCE_EMPTY";
1489
1515
  readonly SCHEMA_SOURCE_INVALID: "SCHEMA_SOURCE_INVALID";
@@ -1508,23 +1534,33 @@ declare const ERROR_CODES: {
1508
1534
  readonly CLI_CONFIG_OUTPUT_MISSING: "CLI_CONFIG_OUTPUT_MISSING";
1509
1535
  readonly CLI_CHECK_OUTPUT_MISSING: "CLI_CHECK_OUTPUT_MISSING";
1510
1536
  readonly CLI_INPUT_MISSING: "CLI_INPUT_MISSING";
1537
+ readonly CLI_OUTPUT_IS_INPUT: "CLI_OUTPUT_IS_INPUT";
1538
+ readonly CLI_OUTPUT_DUPLICATE: "CLI_OUTPUT_DUPLICATE";
1539
+ readonly CLI_OUTPUT_INVALID: "CLI_OUTPUT_INVALID";
1540
+ readonly CLI_LOCATION_INVALID: "CLI_LOCATION_INVALID";
1511
1541
  readonly OUTPUT_STALE: "OUTPUT_STALE";
1512
1542
  readonly OUTPUT_READ_FAILED: "OUTPUT_READ_FAILED";
1513
1543
  readonly OUTPUT_WRITE_FAILED: "OUTPUT_WRITE_FAILED";
1514
1544
  };
1515
1545
  type ErrorCode = (typeof ERROR_CODES)[keyof typeof ERROR_CODES];
1516
- /** Structured, JSON-serializable facts about a failure, for programs and logs. */
1546
+ /**
1547
+ * Structured, JSON-serializable facts about a failure, for programs and logs. Only the keys that
1548
+ * docs/node.md (Errors) lists are stable (ADR-034, amendment of 2026-11-08).
1549
+ */
1517
1550
  type ErrorDetails = Readonly<Record<string, unknown>>;
1518
1551
  interface OpenAPITypesafeErrorInit {
1519
1552
  readonly code: ErrorCode;
1520
1553
  readonly message: string;
1521
1554
  readonly details?: ErrorDetails;
1522
- /** The lower-level error this one reports, if any (kept as the standard `cause`). */
1555
+ /**
1556
+ * The lower-level error this one reports, if any (kept as the standard `cause`; a copy with URL
1557
+ * secrets hidden when its chain names one, see cause-secrets.ts).
1558
+ */
1523
1559
  readonly cause?: unknown;
1524
1560
  }
1525
1561
  /**
1526
1562
  * The base of every expected failure; check `code`, not the class or the message. The message
1527
- * never shows the user info of a URL (`url-credentials.ts`).
1563
+ * and the `cause` chain never show the user info or the query of a URL (`url-secrets.ts`).
1528
1564
  */
1529
1565
  declare class OpenAPITypesafeError extends Error {
1530
1566
  readonly code: ErrorCode;
@@ -1751,7 +1787,11 @@ declare function createDiscriminatorProperty(discriminator: DiscriminatorObject,
1751
1787
  path: string;
1752
1788
  readonly?: boolean;
1753
1789
  }): IrPropertySignature;
1754
- /** Create a $ref pointer (even from other $refs) */
1790
+ /**
1791
+ * Create a $ref pointer (even from other $refs). A part that contains `#/` is read as a `$ref`
1792
+ * and contributes its decoded segments, so it throws URIError for a malformed percent escape; any
1793
+ * other part is one segment. To append raw document keys, escape each one instead.
1794
+ */
1755
1795
  declare function createRef(parts: (number | string | undefined | null)[]): string;
1756
1796
  /**
1757
1797
  * Print debug message (cribbed from the `debug` package, but without all the bells & whistles
@@ -1787,15 +1827,13 @@ declare function walk(obj: unknown, cb: (value: Record<string, unknown>, path: (
1787
1827
  */
1788
1828
  declare function warn(msg: string, silent?: boolean): void;
1789
1829
 
1790
- /** Node's deprecation code for `stringToAST`, so users can filter or trace the warning. */
1791
- declare const STRING_TO_AST_DEPRECATION_CODE = "OPENAPI_TYPESAFE_DEP_STRING_TO_AST";
1792
1830
  /**
1793
1831
  * Convert an arbitrary string to TS (assuming it’s valid). Parses with the TypeScript bridge, so
1794
- * it needs TypeScript 6 or earlier (or `@typescript/typescript6`). Node's `util.deprecate` warns
1795
- * on the first call only.
1832
+ * it needs TypeScript 6 or earlier (or `@typescript/typescript6`). Emits a Node.js
1833
+ * `DeprecationWarning` (`OPENAPI_TYPESAFE_DEP_STRING_TO_AST`) on the first call only.
1796
1834
  * @deprecated Kept for 1.x; removed in 2.0 (ADR-004, decision 7). Use type text in IR callbacks.
1797
1835
  */
1798
- declare const stringToAST: (source: string) => unknown[];
1836
+ declare function stringToAST(source: string): unknown[];
1799
1837
 
1800
1838
  /**
1801
1839
  * The whole document as IR declarations (ENGINEERING_PLAN 6.1–6.2); `openapiTS` returns the same
@@ -1816,7 +1854,6 @@ declare const WARNING_CODES: {
1816
1854
  readonly DISCRIMINATOR_VALUE_NOT_ALLOWED: "DISCRIMINATOR_VALUE_NOT_ALLOWED";
1817
1855
  readonly ENUM_VALUES_EXCLUDED: "ENUM_VALUES_EXCLUDED";
1818
1856
  readonly FIX_NEEDS_OPTION: "FIX_NEEDS_OPTION";
1819
- readonly LEGACY_CALLBACK_DEPRECATED: "LEGACY_CALLBACK_DEPRECATED";
1820
1857
  readonly LINT_PROBLEM: "LINT_PROBLEM";
1821
1858
  readonly PATH_TEMPLATES_IDENTICAL: "PATH_TEMPLATES_IDENTICAL";
1822
1859
  readonly QUERYSTRING_NEXT_TO_QUERY: "QUERYSTRING_NEXT_TO_QUERY";
@@ -1944,5 +1981,5 @@ declare function transformSchemaObject(schemaObject: SchemaObject | ReferenceObj
1944
1981
  /** Transform SchemaObjects without the `postTransform` callback at the top level. */
1945
1982
  declare function transformSchemaObjectWithComposition(schemaObject: SchemaObject | ReferenceObject, options: TransformNodeOptions, fromAdditionalProperties?: boolean): IrType;
1946
1983
 
1947
- export { ALL_OUTPUT_FIXES, BOOLEAN, COMMENT_HEADER, ERROR_CODES, FALSE, JS_ENUM_INVALID_CHARS_RE, JS_PROPERTY_INDEX_INVALID_CHARS_RE, JS_PROPERTY_INDEX_RE, NEVER, NULL, NUMBER, OUTPUT_FIXES, OpenAPITypesafeError, OutputFix, QUESTION_TOKEN, SPECIAL_CHARACTER_MAP, STRING, STRING_TO_AST_DEPRECATION_CODE, TRUE, UNDEFINED, UNKNOWN, WARNING_CODES, addJSDocComment, astToString, c, createDiscriminatorProperty, createRef, debug, openapiTS as default, enumCache, error, formatTime, getEntries, injectOperationObject, isOpenAPITypesafeError, oapiRef, resolveRef, scanDiscriminators, stringToAST, transformComponentsObject, transformHeaderObject, transformMediaTypeObject, transformOperationObject, transformParameterObject, transformPathItemObject, transformPathsObject, transformRequestBodyObject, transformResponseObject, transformResponsesObject, transformSchema, transformSchemaObject, transformSchemaObjectWithComposition, tsArrayLiteralExpression, tsDedupe, tsEnum, tsEnumMember, tsIntersection, tsIsPrimitive, tsLiteral, tsModifiers, tsNullable, tsOmit, tsPropertyIndex, tsReadonlyArray, tsRecord, tsUnion, tsWithRequired, walk, warn };
1948
- export type { $defs, AnnotatedSchemaObject, ArraySubtype, AstToStringInput, AstToStringOptions, BooleanSubtype, CallbackObject, ComponentsObject, ContactObject, DiscriminatorObject, EncodingObject, ErrorCode, ErrorDetails, ExampleObject, Extensable, ExternalDocumentationObject, FooterEntry, GeneratorOptions, GlobalContext, HeaderObject, InfoObject, IntegerSubtype, IrArrayType, IrBooleanLiteralType, IrCallbackOptions, IrCallbackType, IrComment, IrConstArrayDeclaration, IrDeclaration, IrEnumDeclaration, IrEnumMember, IrIndexSignature, IrIndexedAccessType, IrInterfaceDeclaration, IrIntersectionType, IrKeyword, IrKeywordType, IrMember, IrNumberLiteralType, IrObjectType, IrPostTransform, IrPropertyName, IrPropertySignature, IrRawDeclaration, IrRawType, IrReadonlyType, IrReferenceType, IrStringEncoding, IrStringLiteralType, IrTransform, IrTransformObject, IrTransformProperty, IrTupleElement, IrTupleType, IrType, IrTypeAliasDeclaration, IrUnionType, LegacyCallbackName, LegacyCallbackOptions, LicenseObject, LinkObject, MediaTypeObject, Method, NullSubtype, NumberSubtype, OAuthFlowObject, OAuthFlowsObject, OapiRefOptions, ObjectSubtype, OpenAPI3, OpenAPITSBaseOptions, OpenAPITSIrOptions, OpenAPITSOptions, OperationObject, OutputFixName, ParameterObject, PathItemObject, PathsObject, ReferenceObject, RequestBodyObject, ResolveRefOptions, ResponseObject, ResponsesObject, SchemaObject, SchemaSource, SecurityRequirementObject, SecuritySchemeObject, ServerObject, ServerVariableObject, StringSubtype, TagObject, TransformNodeOptions, TransformObject, TypeInput, WarningCode, WebhooksObject, XMLObject };
1984
+ export { BOOLEAN, COMMENT_HEADER, DEPRECATION_CODES, ERROR_CODES, FALSE, JS_ENUM_INVALID_CHARS_RE, JS_PROPERTY_INDEX_INVALID_CHARS_RE, JS_PROPERTY_INDEX_RE, NEVER, NULL, NUMBER, OUTPUT_FIXES, OpenAPITypesafeError, QUESTION_TOKEN, SPECIAL_CHARACTER_MAP, STRING, TRUE, UNDEFINED, UNKNOWN, WARNING_CODES, addJSDocComment, astToString, c, createDiscriminatorProperty, createRef, debug, openapiTS as default, enumCache, error, formatTime, getEntries, injectOperationObject, isOpenAPITypesafeError, oapiRef, resolveRef, scanDiscriminators, stringToAST, transformComponentsObject, transformHeaderObject, transformMediaTypeObject, transformOperationObject, transformParameterObject, transformPathItemObject, transformPathsObject, transformRequestBodyObject, transformResponseObject, transformResponsesObject, transformSchema, transformSchemaObject, transformSchemaObjectWithComposition, tsArrayLiteralExpression, tsDedupe, tsEnum, tsEnumMember, tsIntersection, tsIsPrimitive, tsLiteral, tsModifiers, tsNullable, tsOmit, tsPropertyIndex, tsReadonlyArray, tsRecord, tsUnion, tsWithRequired, walk, warn };
1985
+ export type { $defs, AnnotatedSchemaObject, ArraySubtype, AstToStringInput, AstToStringOptions, BooleanSubtype, CallbackObject, ComponentsObject, ContactObject, DeprecationCode, DiscriminatorObject, EncodingObject, ErrorCode, ErrorDetails, ExampleObject, Extensable, ExternalDocumentationObject, FooterEntry, GeneratorOptions, GlobalContext, HeaderObject, InfoObject, IntegerSubtype, IrArrayType, IrBooleanLiteralType, IrCallbackOptions, IrCallbackType, IrComment, IrConstArrayDeclaration, IrDeclaration, IrEnumDeclaration, IrEnumMember, IrIndexSignature, IrIndexedAccessType, IrInterfaceDeclaration, IrIntersectionType, IrKeyword, IrKeywordType, IrMember, IrNumberLiteralType, IrObjectType, IrPostTransform, IrPropertyName, IrPropertySignature, IrRawDeclaration, IrRawType, IrReadonlyType, IrReferenceType, IrStringEncoding, IrStringLiteralType, IrTransform, IrTransformObject, IrTransformProperty, IrTupleElement, IrTupleType, IrType, IrTypeAliasDeclaration, IrUnionType, LegacyCallbackName, LegacyCallbackOptions, LicenseObject, LinkObject, MediaTypeObject, Method, NullSubtype, NumberSubtype, OAuthFlowObject, OAuthFlowsObject, OapiRefOptions, ObjectSubtype, OpenAPI3, OpenAPITSBaseOptions, OpenAPITSIrOptions, OpenAPITSOptions, OperationObject, OutputFix, OutputFixName, ParameterObject, PathItemObject, PathsObject, ReferenceObject, RequestBodyObject, ResolveRefOptions, ResponseObject, ResponsesObject, SchemaObject, SchemaSource, SecurityRequirementObject, SecuritySchemeObject, ServerObject, ServerVariableObject, StringSubtype, TagObject, TransformNodeOptions, TransformObject, TypeInput, WarningCode, WebhooksObject, XMLObject };
package/dist/index.mjs CHANGED
@@ -4,11 +4,12 @@ export { COMMENT_HEADER } from './api/comment-header.mjs';
4
4
  export { scanDiscriminators } from './api/discriminator-scan.mjs';
5
5
  export { JS_ENUM_INVALID_CHARS_RE, JS_PROPERTY_INDEX_INVALID_CHARS_RE, JS_PROPERTY_INDEX_RE, QUESTION_TOKEN, SPECIAL_CHARACTER_MAP, addJSDocComment, enumCache, tsArrayLiteralExpression, tsDedupe, tsEnum, tsEnumMember, tsIsPrimitive, tsModifiers, tsPropertyIndex, tsReadonlyArray } from './api/legacy-ts-helpers.mjs';
6
6
  export { c, createDiscriminatorProperty, createRef, debug, error, formatTime, getEntries, resolveRef, walk, warn } from './api/legacy-utils.mjs';
7
- export { STRING_TO_AST_DEPRECATION_CODE, stringToAST } from './api/string-to-ast.mjs';
7
+ export { stringToAST } from './api/string-to-ast.mjs';
8
8
  export { default as transformSchema } from './api/transform-schema.mjs';
9
9
  export { BOOLEAN, FALSE, NEVER, NULL, NUMBER, STRING, TRUE, UNDEFINED, UNKNOWN, oapiRef, tsIntersection, tsLiteral, tsNullable, tsOmit, tsRecord, tsUnion, tsWithRequired } from './api/type-helpers.mjs';
10
+ export { DEPRECATION_CODES } from './domain/deprecations.mjs';
10
11
  export { ERROR_CODES, OpenAPITypesafeError, isOpenAPITypesafeError } from './domain/errors.mjs';
11
- export { ALL_OUTPUT_FIXES, OUTPUT_FIXES, OutputFix } from './domain/output-fixes.mjs';
12
+ export { OUTPUT_FIXES } from './domain/output-fixes.mjs';
12
13
  export { WARNING_CODES } from './domain/warnings.mjs';
13
14
  export { default as transformComponentsObject } from './transform/components-object.mjs';
14
15
  export { default as transformHeaderObject } from './transform/header-object.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "openapi-typesafe",
3
3
  "description": "Convert OpenAPI 3.0, 3.1 & 3.2 schemas to TypeScript",
4
- "version": "1.0.0-rc.2",
4
+ "version": "1.0.0-rc.4",
5
5
  "author": {
6
6
  "name": "Fedor Chishchin",
7
7
  "url": "https://github.com/fedorello"
@@ -35,6 +35,7 @@
35
35
  "./*": "./*"
36
36
  },
37
37
  "files": [
38
+ "CHANGELOG.md",
38
39
  "bin",
39
40
  "dist",
40
41
  "src"
@@ -61,7 +62,7 @@
61
62
  },
62
63
  "peerDependencies": {
63
64
  "@typescript/typescript6": "^6.0.0",
64
- "typescript": ">=5.0.0"
65
+ "typescript": ">=5.4.0"
65
66
  },
66
67
  "peerDependenciesMeta": {
67
68
  "@typescript/typescript6": {
@@ -72,7 +73,7 @@
72
73
  }
73
74
  },
74
75
  "dependencies": {
75
- "@redocly/openapi-core": "^1.34.23",
76
+ "@redocly/openapi-core": "^1.34.22",
76
77
  "ansi-colors": "^4.1.3",
77
78
  "change-case": "^5.4.4",
78
79
  "parse-json": "^8.3.0",
@@ -106,11 +107,9 @@
106
107
  "lint:ts": "tsc --noEmit && tsc -p tsconfig.strict.json",
107
108
  "test": "pnpm run test:js && pnpm run test:examples && pnpm run test:exports",
108
109
  "test:js": "vitest run",
109
- "test:exports": "pnpm run build && ../../scripts/check-exports.sh",
110
+ "test:exports": "../../scripts/check-exports.sh",
110
111
  "test:examples": "tsc -p tsconfig.examples.json --noEmit",
111
112
  "update:examples": "pnpm run build && pnpm run download:schemas && vite-node ./scripts/update-examples.ts",
112
- "prepublish": "pnpm run build",
113
- "version": "pnpm run build",
114
113
  "lint:deps": "depcruise src --config .dependency-cruiser.cjs",
115
114
  "test:coverage": "vitest run --coverage",
116
115
  "lint:sizes": "vite-node scripts/size-rules/check-sizes.ts src"
@@ -0,0 +1,14 @@
1
+ import { deprecate } from "node:util";
2
+ import type { DeprecationReporter } from "../../application/ports/deprecation-reporter.js";
3
+
4
+ /**
5
+ * Deprecations as Node.js `DeprecationWarning`s. `util.deprecate` warns once per process for each
6
+ * code, also across wrappers, and honours `--no-deprecation` and `--throw-deprecation`.
7
+ */
8
+ export function createNodeDeprecationReporter(): DeprecationReporter {
9
+ return {
10
+ report(code, message) {
11
+ deprecate(() => undefined, message, code)();
12
+ },
13
+ };
14
+ }