@azure-tools/typespec-ts 0.55.0-dev.1 → 0.55.0-dev.11

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 (940) hide show
  1. package/README.md +68 -105
  2. package/dist/src/context-manager.d.ts +75 -0
  3. package/dist/src/context-manager.d.ts.map +1 -0
  4. package/dist/src/context-manager.js +59 -0
  5. package/dist/src/context-manager.js.map +1 -0
  6. package/dist/src/framework/hooks/binder.d.ts +1 -1
  7. package/dist/src/framework/hooks/binder.d.ts.map +1 -1
  8. package/dist/src/framework/hooks/binder.js +6 -7
  9. package/dist/src/framework/hooks/binder.js.map +1 -1
  10. package/dist/src/framework/hooks/sdk-types.d.ts +26 -0
  11. package/dist/src/framework/hooks/sdk-types.d.ts.map +1 -0
  12. package/dist/src/framework/hooks/sdk-types.js +157 -0
  13. package/dist/src/framework/hooks/sdk-types.js.map +1 -0
  14. package/dist/src/framework/hooks/use-dependencies.d.ts +4 -0
  15. package/dist/src/framework/hooks/use-dependencies.d.ts.map +1 -0
  16. package/dist/src/framework/hooks/use-dependencies.js +13 -0
  17. package/dist/src/framework/hooks/use-dependencies.js.map +1 -0
  18. package/dist/src/framework/load-static-helpers.d.ts +4 -1
  19. package/dist/src/framework/load-static-helpers.d.ts.map +1 -1
  20. package/dist/src/framework/load-static-helpers.js +26 -34
  21. package/dist/src/framework/load-static-helpers.js.map +1 -1
  22. package/dist/src/framework/sample.js +1 -1
  23. package/dist/src/framework/sample.js.map +1 -1
  24. package/dist/src/index.d.ts.map +1 -1
  25. package/dist/src/index.js +126 -192
  26. package/dist/src/index.js.map +1 -1
  27. package/dist/src/lib.d.ts +2 -18
  28. package/dist/src/lib.d.ts.map +1 -1
  29. package/dist/src/lib.js +30 -124
  30. package/dist/src/lib.js.map +1 -1
  31. package/dist/src/meta-tree.d.ts +7 -0
  32. package/dist/src/meta-tree.d.ts.map +1 -0
  33. package/dist/src/meta-tree.js +2 -0
  34. package/dist/src/meta-tree.js.map +1 -0
  35. package/dist/src/modular/build-classical-client.d.ts +6 -0
  36. package/dist/src/modular/build-classical-client.d.ts.map +1 -0
  37. package/dist/src/modular/build-classical-client.js +345 -0
  38. package/dist/src/modular/build-classical-client.js.map +1 -0
  39. package/dist/src/modular/build-classical-operation-groups.d.ts +6 -0
  40. package/dist/src/modular/build-classical-operation-groups.d.ts.map +1 -0
  41. package/dist/src/modular/build-classical-operation-groups.js +48 -0
  42. package/dist/src/modular/build-classical-operation-groups.js.map +1 -0
  43. package/dist/src/modular/build-client-context.d.ts +13 -0
  44. package/dist/src/modular/build-client-context.d.ts.map +1 -0
  45. package/dist/src/modular/build-client-context.js +237 -0
  46. package/dist/src/modular/build-client-context.js.map +1 -0
  47. package/dist/src/modular/build-modular-options.d.ts +6 -0
  48. package/dist/src/modular/build-modular-options.d.ts.map +1 -0
  49. package/dist/src/modular/build-modular-options.js +14 -0
  50. package/dist/src/modular/build-modular-options.js.map +1 -0
  51. package/dist/src/modular/build-operations.d.ts +21 -0
  52. package/dist/src/modular/build-operations.d.ts.map +1 -0
  53. package/dist/src/modular/build-operations.js +172 -0
  54. package/dist/src/modular/build-operations.js.map +1 -0
  55. package/dist/src/modular/build-project-files.d.ts +4 -0
  56. package/dist/src/modular/build-project-files.d.ts.map +1 -0
  57. package/dist/src/modular/build-project-files.js +91 -0
  58. package/dist/src/modular/build-project-files.js.map +1 -0
  59. package/dist/src/modular/build-restore-poller.d.ts +5 -0
  60. package/dist/src/modular/build-restore-poller.d.ts.map +1 -0
  61. package/dist/src/modular/build-restore-poller.js +216 -0
  62. package/dist/src/modular/build-restore-poller.js.map +1 -0
  63. package/dist/src/modular/build-root-index.d.ts +13 -0
  64. package/dist/src/modular/build-root-index.d.ts.map +1 -0
  65. package/dist/src/modular/build-root-index.js +275 -0
  66. package/dist/src/modular/build-root-index.js.map +1 -0
  67. package/dist/src/modular/build-subpath-index.d.ts +16 -0
  68. package/dist/src/modular/build-subpath-index.d.ts.map +1 -0
  69. package/dist/src/modular/build-subpath-index.js +119 -0
  70. package/dist/src/modular/build-subpath-index.js.map +1 -0
  71. package/dist/src/modular/emit-logger-file.d.ts +3 -0
  72. package/dist/src/modular/emit-logger-file.d.ts.map +1 -0
  73. package/dist/src/modular/emit-logger-file.js +15 -0
  74. package/dist/src/modular/emit-logger-file.js.map +1 -0
  75. package/dist/src/modular/emit-models-options.d.ts +5 -0
  76. package/dist/src/modular/emit-models-options.d.ts.map +1 -0
  77. package/dist/src/modular/emit-models-options.js +35 -0
  78. package/dist/src/modular/emit-models-options.js.map +1 -0
  79. package/dist/src/modular/emit-models.d.ts +23 -0
  80. package/dist/src/modular/emit-models.d.ts.map +1 -0
  81. package/dist/src/modular/emit-models.js +849 -0
  82. package/dist/src/modular/emit-models.js.map +1 -0
  83. package/dist/src/modular/emit-samples.d.ts +7 -0
  84. package/dist/src/modular/emit-samples.d.ts.map +1 -0
  85. package/dist/src/modular/emit-samples.js +555 -0
  86. package/dist/src/modular/emit-samples.js.map +1 -0
  87. package/dist/src/modular/emit-tests.d.ts +8 -0
  88. package/dist/src/modular/emit-tests.d.ts.map +1 -0
  89. package/dist/src/modular/emit-tests.js +165 -0
  90. package/dist/src/modular/emit-tests.js.map +1 -0
  91. package/dist/src/modular/helpers/classical-operation-helpers.d.ts +7 -0
  92. package/dist/src/modular/helpers/classical-operation-helpers.d.ts.map +1 -0
  93. package/dist/src/modular/helpers/classical-operation-helpers.js +258 -0
  94. package/dist/src/modular/helpers/classical-operation-helpers.js.map +1 -0
  95. package/dist/src/modular/helpers/client-helpers.d.ts +34 -0
  96. package/dist/src/modular/helpers/client-helpers.d.ts.map +1 -0
  97. package/dist/src/modular/helpers/client-helpers.js +249 -0
  98. package/dist/src/modular/helpers/client-helpers.js.map +1 -0
  99. package/dist/src/modular/helpers/client-option-helpers.d.ts +43 -0
  100. package/dist/src/modular/helpers/client-option-helpers.d.ts.map +1 -0
  101. package/dist/src/modular/helpers/client-option-helpers.js +103 -0
  102. package/dist/src/modular/helpers/client-option-helpers.js.map +1 -0
  103. package/dist/src/modular/helpers/docs-helpers.d.ts +3 -0
  104. package/dist/src/modular/helpers/docs-helpers.d.ts.map +1 -0
  105. package/dist/src/modular/helpers/docs-helpers.js +10 -0
  106. package/dist/src/modular/helpers/docs-helpers.js.map +1 -0
  107. package/dist/src/modular/helpers/example-value-helpers.d.ts +83 -0
  108. package/dist/src/modular/helpers/example-value-helpers.d.ts.map +1 -0
  109. package/dist/src/modular/helpers/example-value-helpers.js +622 -0
  110. package/dist/src/modular/helpers/example-value-helpers.js.map +1 -0
  111. package/dist/src/modular/helpers/naming-helpers.d.ts +22 -0
  112. package/dist/src/modular/helpers/naming-helpers.d.ts.map +1 -0
  113. package/dist/src/modular/helpers/naming-helpers.js +59 -0
  114. package/dist/src/modular/helpers/naming-helpers.js.map +1 -0
  115. package/dist/src/modular/helpers/operation-helpers.d.ts +105 -0
  116. package/dist/src/modular/helpers/operation-helpers.d.ts.map +1 -0
  117. package/dist/src/modular/helpers/operation-helpers.js +2328 -0
  118. package/dist/src/modular/helpers/operation-helpers.js.map +1 -0
  119. package/dist/src/modular/helpers/type-helpers.d.ts +22 -0
  120. package/dist/src/modular/helpers/type-helpers.d.ts.map +1 -0
  121. package/dist/src/modular/helpers/type-helpers.js +94 -0
  122. package/dist/src/modular/helpers/type-helpers.js.map +1 -0
  123. package/dist/src/modular/serialization/build-deserializer-function.d.ts +7 -0
  124. package/dist/src/modular/serialization/build-deserializer-function.d.ts.map +1 -0
  125. package/dist/src/modular/serialization/build-deserializer-function.js +401 -0
  126. package/dist/src/modular/serialization/build-deserializer-function.js.map +1 -0
  127. package/dist/src/modular/serialization/build-serializer-function.d.ts +7 -0
  128. package/dist/src/modular/serialization/build-serializer-function.d.ts.map +1 -0
  129. package/dist/src/modular/serialization/build-serializer-function.js +442 -0
  130. package/dist/src/modular/serialization/build-serializer-function.js.map +1 -0
  131. package/dist/src/modular/serialization/build-xml-serializer-function.d.ts +44 -0
  132. package/dist/src/modular/serialization/build-xml-serializer-function.d.ts.map +1 -0
  133. package/dist/src/modular/serialization/build-xml-serializer-function.js +729 -0
  134. package/dist/src/modular/serialization/build-xml-serializer-function.js.map +1 -0
  135. package/dist/src/modular/serialization/serialize-utils.d.ts +37 -0
  136. package/dist/src/modular/serialization/serialize-utils.d.ts.map +1 -0
  137. package/dist/src/modular/serialization/serialize-utils.js +145 -0
  138. package/dist/src/modular/serialization/serialize-utils.js.map +1 -0
  139. package/dist/src/modular/type-expressions/get-credential-expression.js +1 -1
  140. package/dist/src/modular/type-expressions/get-credential-expression.js.map +1 -1
  141. package/dist/src/modular/type-expressions/get-model-expression.js +1 -1
  142. package/dist/src/modular/type-expressions/get-model-expression.js.map +1 -1
  143. package/dist/src/rlc-common/helpers/api-version-util.d.ts +17 -0
  144. package/dist/src/rlc-common/helpers/api-version-util.d.ts.map +1 -0
  145. package/dist/src/rlc-common/helpers/api-version-util.js +43 -0
  146. package/dist/src/rlc-common/helpers/api-version-util.js.map +1 -0
  147. package/dist/src/rlc-common/helpers/imports-util.d.ts +17 -0
  148. package/dist/src/rlc-common/helpers/imports-util.d.ts.map +1 -0
  149. package/dist/src/rlc-common/helpers/imports-util.js +151 -0
  150. package/dist/src/rlc-common/helpers/imports-util.js.map +1 -0
  151. package/dist/src/rlc-common/helpers/name-constructors.d.ts +33 -0
  152. package/dist/src/rlc-common/helpers/name-constructors.d.ts.map +1 -0
  153. package/dist/src/rlc-common/helpers/name-constructors.js +45 -0
  154. package/dist/src/rlc-common/helpers/name-constructors.js.map +1 -0
  155. package/dist/src/rlc-common/helpers/name-utils.d.ts +37 -0
  156. package/dist/src/rlc-common/helpers/name-utils.d.ts.map +1 -0
  157. package/dist/src/rlc-common/helpers/name-utils.js +240 -0
  158. package/dist/src/rlc-common/helpers/name-utils.js.map +1 -0
  159. package/dist/src/rlc-common/helpers/operation-helpers.d.ts +16 -0
  160. package/dist/src/rlc-common/helpers/operation-helpers.d.ts.map +1 -0
  161. package/dist/src/rlc-common/helpers/operation-helpers.js +104 -0
  162. package/dist/src/rlc-common/helpers/operation-helpers.js.map +1 -0
  163. package/dist/src/rlc-common/helpers/schema-helpers.d.ts +10 -0
  164. package/dist/src/rlc-common/helpers/schema-helpers.d.ts.map +1 -0
  165. package/dist/src/rlc-common/helpers/schema-helpers.js +37 -0
  166. package/dist/src/rlc-common/helpers/schema-helpers.js.map +1 -0
  167. package/dist/src/rlc-common/helpers/type-util.d.ts +32 -0
  168. package/dist/src/rlc-common/helpers/type-util.d.ts.map +1 -0
  169. package/dist/src/rlc-common/helpers/type-util.js +162 -0
  170. package/dist/src/rlc-common/helpers/type-util.js.map +1 -0
  171. package/dist/src/rlc-common/index.d.ts +21 -39
  172. package/dist/src/rlc-common/index.d.ts.map +1 -1
  173. package/dist/src/rlc-common/index.js +21 -39
  174. package/dist/src/rlc-common/index.js.map +1 -1
  175. package/dist/src/rlc-common/interfaces.d.ts +2 -20
  176. package/dist/src/rlc-common/interfaces.d.ts.map +1 -1
  177. package/dist/src/rlc-common/interfaces.js.map +1 -1
  178. package/dist/src/rlc-common/metadata/build-api-extractor-config.d.ts +6 -0
  179. package/dist/src/rlc-common/metadata/build-api-extractor-config.d.ts.map +1 -0
  180. package/dist/src/rlc-common/metadata/build-api-extractor-config.js +18 -0
  181. package/dist/src/rlc-common/metadata/build-api-extractor-config.js.map +1 -0
  182. package/dist/src/rlc-common/metadata/build-changelog-file.d.ts +6 -0
  183. package/dist/src/rlc-common/metadata/build-changelog-file.d.ts.map +1 -0
  184. package/dist/src/rlc-common/metadata/build-changelog-file.js +25 -0
  185. package/dist/src/rlc-common/metadata/build-changelog-file.js.map +1 -0
  186. package/dist/src/rlc-common/metadata/build-es-lint-config.d.ts +6 -0
  187. package/dist/src/rlc-common/metadata/build-es-lint-config.d.ts.map +1 -0
  188. package/dist/src/rlc-common/metadata/build-es-lint-config.js +41 -0
  189. package/dist/src/rlc-common/metadata/build-es-lint-config.js.map +1 -0
  190. package/dist/src/rlc-common/metadata/build-license-file.d.ts +5 -0
  191. package/dist/src/rlc-common/metadata/build-license-file.d.ts.map +1 -0
  192. package/dist/src/rlc-common/metadata/build-license-file.js +32 -0
  193. package/dist/src/rlc-common/metadata/build-license-file.js.map +1 -0
  194. package/dist/src/rlc-common/metadata/build-package-file.d.ts +25 -0
  195. package/dist/src/rlc-common/metadata/build-package-file.d.ts.map +1 -0
  196. package/dist/src/rlc-common/metadata/build-package-file.js +149 -0
  197. package/dist/src/rlc-common/metadata/build-package-file.js.map +1 -0
  198. package/dist/src/rlc-common/metadata/build-readme-file.d.ts +11 -0
  199. package/dist/src/rlc-common/metadata/build-readme-file.d.ts.map +1 -0
  200. package/dist/src/rlc-common/metadata/build-readme-file.js +328 -0
  201. package/dist/src/rlc-common/metadata/build-readme-file.js.map +1 -0
  202. package/dist/src/rlc-common/metadata/build-sample-env-file.d.ts +6 -0
  203. package/dist/src/rlc-common/metadata/build-sample-env-file.d.ts.map +1 -0
  204. package/dist/src/rlc-common/metadata/build-sample-env-file.js +14 -0
  205. package/dist/src/rlc-common/metadata/build-sample-env-file.js.map +1 -0
  206. package/dist/src/rlc-common/metadata/build-test-config.d.ts +16 -0
  207. package/dist/src/rlc-common/metadata/build-test-config.d.ts.map +1 -0
  208. package/dist/src/rlc-common/metadata/build-test-config.js +51 -0
  209. package/dist/src/rlc-common/metadata/build-test-config.js.map +1 -0
  210. package/dist/src/rlc-common/metadata/build-ts-config.d.ts +61 -0
  211. package/dist/src/rlc-common/metadata/build-ts-config.d.ts.map +1 -0
  212. package/dist/src/rlc-common/metadata/build-ts-config.js +129 -0
  213. package/dist/src/rlc-common/metadata/build-ts-config.js.map +1 -0
  214. package/dist/src/rlc-common/metadata/build-vitest-config.d.ts +6 -0
  215. package/dist/src/rlc-common/metadata/build-vitest-config.d.ts.map +1 -0
  216. package/dist/src/rlc-common/metadata/build-vitest-config.js +26 -0
  217. package/dist/src/rlc-common/metadata/build-vitest-config.js.map +1 -0
  218. package/dist/src/rlc-common/metadata/build-warp-config.d.ts +20 -0
  219. package/dist/src/rlc-common/metadata/build-warp-config.d.ts.map +1 -0
  220. package/dist/src/rlc-common/metadata/build-warp-config.js +73 -0
  221. package/dist/src/rlc-common/metadata/build-warp-config.js.map +1 -0
  222. package/dist/src/rlc-common/metadata/package-json/azure-package-common.d.ts +14 -0
  223. package/dist/src/rlc-common/metadata/package-json/azure-package-common.d.ts.map +1 -0
  224. package/dist/src/rlc-common/metadata/package-json/azure-package-common.js +14 -0
  225. package/dist/src/rlc-common/metadata/package-json/azure-package-common.js.map +1 -0
  226. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.d.ts +203 -0
  227. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.d.ts.map +1 -0
  228. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.js +155 -0
  229. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.js.map +1 -0
  230. package/dist/src/rlc-common/metadata/package-json/package-common.d.ts +43 -0
  231. package/dist/src/rlc-common/metadata/package-json/package-common.d.ts.map +1 -0
  232. package/dist/src/rlc-common/metadata/package-json/package-common.js +103 -0
  233. package/dist/src/rlc-common/metadata/package-json/package-common.js.map +1 -0
  234. package/dist/src/rlc-common/static/paginate-content.d.ts +2 -0
  235. package/dist/src/rlc-common/static/paginate-content.d.ts.map +1 -0
  236. package/dist/src/rlc-common/static/paginate-content.js +345 -0
  237. package/dist/src/rlc-common/static/paginate-content.js.map +1 -0
  238. package/dist/src/rlc-common/static/polling-content.d.ts +2 -0
  239. package/dist/src/rlc-common/static/polling-content.d.ts.map +1 -0
  240. package/dist/src/rlc-common/static/polling-content.js +225 -0
  241. package/dist/src/rlc-common/static/polling-content.js.map +1 -0
  242. package/dist/src/rlc-common/static/sample-template.d.ts +2 -0
  243. package/dist/src/rlc-common/static/sample-template.d.ts.map +1 -0
  244. package/dist/src/rlc-common/static/sample-template.js +56 -0
  245. package/dist/src/rlc-common/static/sample-template.js.map +1 -0
  246. package/dist/src/rlc-common/static/serialize-helper.d.ts +6 -0
  247. package/dist/src/rlc-common/static/serialize-helper.d.ts.map +1 -0
  248. package/dist/src/rlc-common/static/serialize-helper.js +31 -0
  249. package/dist/src/rlc-common/static/serialize-helper.js.map +1 -0
  250. package/dist/src/rlc-common/test/build-karma-config.d.ts +6 -0
  251. package/dist/src/rlc-common/test/build-karma-config.d.ts.map +1 -0
  252. package/dist/src/rlc-common/test/build-karma-config.js +11 -0
  253. package/dist/src/rlc-common/test/build-karma-config.js.map +1 -0
  254. package/dist/src/rlc-common/test/build-recorded-client.d.ts +6 -0
  255. package/dist/src/rlc-common/test/build-recorded-client.d.ts.map +1 -0
  256. package/dist/src/rlc-common/test/build-recorded-client.js +14 -0
  257. package/dist/src/rlc-common/test/build-recorded-client.js.map +1 -0
  258. package/dist/src/rlc-common/test/build-sample-test.d.ts +6 -0
  259. package/dist/src/rlc-common/test/build-sample-test.d.ts.map +1 -0
  260. package/dist/src/rlc-common/test/build-sample-test.js +11 -0
  261. package/dist/src/rlc-common/test/build-sample-test.js.map +1 -0
  262. package/dist/src/rlc-common/test/build-snippets.d.ts +6 -0
  263. package/dist/src/rlc-common/test/build-snippets.d.ts.map +1 -0
  264. package/dist/src/rlc-common/test/build-snippets.js +22 -0
  265. package/dist/src/rlc-common/test/build-snippets.js.map +1 -0
  266. package/dist/src/rlc-common/test/template.d.ts +3 -3
  267. package/dist/src/rlc-common/test/template.d.ts.map +1 -1
  268. package/dist/src/rlc-common/test/template.js +1 -35
  269. package/dist/src/rlc-common/test/template.js.map +1 -1
  270. package/dist/src/transform/transform-api-version-info.d.ts +6 -0
  271. package/dist/src/transform/transform-api-version-info.d.ts.map +1 -0
  272. package/dist/src/transform/transform-api-version-info.js +78 -0
  273. package/dist/src/transform/transform-api-version-info.js.map +1 -0
  274. package/dist/src/transform/transform-helper-function-details.d.ts +5 -0
  275. package/dist/src/transform/transform-helper-function-details.d.ts.map +1 -0
  276. package/dist/src/transform/transform-helper-function-details.js +66 -0
  277. package/dist/src/transform/transform-helper-function-details.js.map +1 -0
  278. package/dist/src/transform/transform-parameters.d.ts +14 -0
  279. package/dist/src/transform/transform-parameters.d.ts.map +1 -0
  280. package/dist/src/transform/transform-parameters.js +201 -0
  281. package/dist/src/transform/transform-parameters.js.map +1 -0
  282. package/dist/src/transform/transform-paths.d.ts +5 -0
  283. package/dist/src/transform/transform-paths.d.ts.map +1 -0
  284. package/dist/src/transform/transform-paths.js +102 -0
  285. package/dist/src/transform/transform-paths.js.map +1 -0
  286. package/dist/src/transform/transform-responses.d.ts +5 -0
  287. package/dist/src/transform/transform-responses.d.ts.map +1 -0
  288. package/dist/src/transform/transform-responses.js +171 -0
  289. package/dist/src/transform/transform-responses.js.map +1 -0
  290. package/dist/src/transform/transform-schemas.d.ts +4 -0
  291. package/dist/src/transform/transform-schemas.d.ts.map +1 -0
  292. package/dist/src/transform/transform-schemas.js +191 -0
  293. package/dist/src/transform/transform-schemas.js.map +1 -0
  294. package/dist/src/transform/transform-telemetry-info.d.ts +4 -0
  295. package/dist/src/transform/transform-telemetry-info.d.ts.map +1 -0
  296. package/dist/src/transform/transform-telemetry-info.js +22 -0
  297. package/dist/src/transform/transform-telemetry-info.js.map +1 -0
  298. package/dist/src/transform/transform.d.ts.map +1 -1
  299. package/dist/src/transform/transform.js +19 -26
  300. package/dist/src/transform/transform.js.map +1 -1
  301. package/dist/src/transform/transfrom-rlc-options.d.ts +14 -0
  302. package/dist/src/transform/transfrom-rlc-options.d.ts.map +1 -0
  303. package/dist/src/transform/transfrom-rlc-options.js +304 -0
  304. package/dist/src/transform/transfrom-rlc-options.js.map +1 -0
  305. package/dist/src/utils/client-utils.d.ts +10 -0
  306. package/dist/src/utils/client-utils.d.ts.map +1 -0
  307. package/dist/src/utils/client-utils.js +123 -0
  308. package/dist/src/utils/client-utils.js.map +1 -0
  309. package/dist/src/utils/credential-utils.d.ts +15 -0
  310. package/dist/src/utils/credential-utils.d.ts.map +1 -0
  311. package/dist/src/utils/credential-utils.js +68 -0
  312. package/dist/src/utils/credential-utils.js.map +1 -0
  313. package/dist/src/utils/cross-language-def.d.ts +6 -0
  314. package/dist/src/utils/cross-language-def.d.ts.map +1 -0
  315. package/dist/src/utils/cross-language-def.js +59 -0
  316. package/dist/src/utils/cross-language-def.js.map +1 -0
  317. package/dist/src/utils/emit-util.d.ts +4 -0
  318. package/dist/src/utils/emit-util.d.ts.map +1 -0
  319. package/dist/src/utils/emit-util.js +60 -0
  320. package/dist/src/utils/emit-util.js.map +1 -0
  321. package/dist/src/utils/file-system-utils.d.ts +5 -0
  322. package/dist/src/utils/file-system-utils.d.ts.map +1 -0
  323. package/dist/src/utils/file-system-utils.js +57 -0
  324. package/dist/src/utils/file-system-utils.js.map +1 -0
  325. package/dist/src/utils/import-helper.d.ts +10 -0
  326. package/dist/src/utils/import-helper.d.ts.map +1 -0
  327. package/dist/src/utils/import-helper.js +51 -0
  328. package/dist/src/utils/import-helper.js.map +1 -0
  329. package/dist/src/utils/interfaces.d.ts +1 -1
  330. package/dist/src/utils/interfaces.d.ts.map +1 -1
  331. package/dist/src/utils/media-types.d.ts +28 -0
  332. package/dist/src/utils/media-types.d.ts.map +1 -0
  333. package/dist/src/utils/media-types.js +124 -0
  334. package/dist/src/utils/media-types.js.map +1 -0
  335. package/dist/src/utils/model-utils.d.ts +60 -0
  336. package/dist/src/utils/model-utils.d.ts.map +1 -0
  337. package/dist/src/utils/model-utils.js +1473 -0
  338. package/dist/src/utils/model-utils.js.map +1 -0
  339. package/dist/src/utils/namespace-utils.d.ts +6 -0
  340. package/dist/src/utils/namespace-utils.d.ts.map +1 -0
  341. package/dist/src/utils/namespace-utils.js +69 -0
  342. package/dist/src/utils/namespace-utils.js.map +1 -0
  343. package/dist/src/utils/operation-util.d.ts +97 -0
  344. package/dist/src/utils/operation-util.d.ts.map +1 -0
  345. package/dist/src/utils/operation-util.js +547 -0
  346. package/dist/src/utils/operation-util.js.map +1 -0
  347. package/dist/src/utils/parameter-utils.d.ts +9 -0
  348. package/dist/src/utils/parameter-utils.d.ts.map +1 -0
  349. package/dist/src/utils/parameter-utils.js +147 -0
  350. package/dist/src/utils/parameter-utils.js.map +1 -0
  351. package/dist/src/utils/resolve-project-root.d.ts +6 -4
  352. package/dist/src/utils/resolve-project-root.d.ts.map +1 -1
  353. package/dist/src/utils/resolve-project-root.js +11 -18
  354. package/dist/src/utils/resolve-project-root.js.map +1 -1
  355. package/dist/tsconfig.tsbuildinfo +1 -1
  356. package/package.json +45 -64
  357. package/src/context-manager.ts +101 -0
  358. package/src/framework/hooks/binder.ts +7 -8
  359. package/src/framework/hooks/sdk-types.ts +218 -0
  360. package/src/framework/hooks/use-dependencies.ts +16 -0
  361. package/src/framework/load-static-helpers.ts +38 -41
  362. package/src/framework/sample.ts +1 -1
  363. package/src/index.ts +148 -226
  364. package/src/lib.ts +32 -143
  365. package/src/modular/build-classical-client.ts +434 -0
  366. package/src/modular/build-classical-operation-groups.ts +69 -0
  367. package/src/modular/build-client-context.ts +317 -0
  368. package/src/modular/build-operations.ts +248 -0
  369. package/src/modular/build-project-files.ts +118 -0
  370. package/src/modular/build-restore-poller.ts +242 -0
  371. package/src/modular/build-root-index.ts +403 -0
  372. package/src/modular/build-subpath-index.ts +152 -0
  373. package/src/modular/emit-logger-file.ts +20 -0
  374. package/src/modular/emit-models-options.ts +56 -0
  375. package/src/modular/emit-models.ts +1080 -0
  376. package/src/modular/emit-samples.ts +740 -0
  377. package/src/modular/emit-tests.ts +211 -0
  378. package/src/modular/helpers/classical-operation-helpers.ts +375 -0
  379. package/src/modular/helpers/client-helpers.ts +352 -0
  380. package/src/modular/helpers/example-value-helpers.ts +836 -0
  381. package/src/modular/helpers/naming-helpers.ts +84 -0
  382. package/src/modular/helpers/operation-helpers.ts +3035 -0
  383. package/src/modular/helpers/type-helpers.ts +134 -0
  384. package/src/modular/serialization/build-deserializer-function.ts +564 -0
  385. package/src/modular/serialization/build-serializer-function.ts +614 -0
  386. package/src/modular/serialization/build-xml-serializer-function.ts +951 -0
  387. package/src/modular/serialization/serialize-utils.ts +217 -0
  388. package/src/modular/type-expressions/get-credential-expression.ts +1 -1
  389. package/src/modular/type-expressions/get-model-expression.ts +1 -1
  390. package/src/rlc-common/helpers/imports-util.ts +172 -0
  391. package/src/rlc-common/helpers/name-constructors.ts +88 -0
  392. package/src/rlc-common/helpers/operation-helpers.ts +138 -0
  393. package/src/rlc-common/index.ts +21 -39
  394. package/src/rlc-common/interfaces.ts +2 -23
  395. package/src/rlc-common/metadata/build-api-extractor-config.ts +22 -0
  396. package/src/rlc-common/metadata/build-es-lint-config.ts +45 -0
  397. package/src/rlc-common/metadata/build-package-file.ts +180 -0
  398. package/src/rlc-common/metadata/build-readme-file.ts +413 -0
  399. package/src/rlc-common/metadata/build-sample-env-file.ts +18 -0
  400. package/src/rlc-common/metadata/build-test-config.ts +67 -0
  401. package/src/rlc-common/metadata/build-ts-config.ts +177 -0
  402. package/src/rlc-common/metadata/build-warp-config.ts +87 -0
  403. package/src/rlc-common/metadata/package-json/azure-package-common.ts +20 -0
  404. package/src/rlc-common/metadata/package-json/build-azure-monorepo-package.ts +179 -0
  405. package/src/rlc-common/metadata/package-json/package-common.ts +137 -0
  406. package/src/rlc-common/static/polling-content.ts +225 -0
  407. package/src/rlc-common/test/build-recorded-client.ts +15 -0
  408. package/src/rlc-common/test/build-sample-test.ts +12 -0
  409. package/src/rlc-common/test/build-snippets.ts +25 -0
  410. package/src/rlc-common/test/template.ts +1 -35
  411. package/src/transform/transform-api-version-info.ts +103 -0
  412. package/src/transform/transform-helper-function-details.ts +79 -0
  413. package/src/transform/transform-parameters.ts +321 -0
  414. package/src/transform/transform-paths.ts +157 -0
  415. package/src/transform/transform-responses.ts +237 -0
  416. package/src/transform/transform-schemas.ts +212 -0
  417. package/src/transform/transform-telemetry-info.ts +33 -0
  418. package/src/transform/transform.ts +18 -29
  419. package/src/transform/transfrom-rlc-options.ts +363 -0
  420. package/src/utils/client-utils.ts +161 -0
  421. package/src/utils/cross-language-def.ts +66 -0
  422. package/src/utils/emit-util.ts +67 -0
  423. package/src/utils/file-system-utils.ts +68 -0
  424. package/src/utils/import-helper.ts +59 -0
  425. package/src/utils/interfaces.ts +1 -1
  426. package/src/utils/model-utils.ts +1714 -0
  427. package/src/utils/operation-util.ts +763 -0
  428. package/src/utils/parameter-utils.ts +192 -0
  429. package/src/utils/resolve-project-root.ts +11 -24
  430. package/static/static-helpers/serialization/serializers.ts +1 -0
  431. package/dist/src/contextManager.d.ts +0 -75
  432. package/dist/src/contextManager.d.ts.map +0 -1
  433. package/dist/src/contextManager.js +0 -59
  434. package/dist/src/contextManager.js.map +0 -1
  435. package/dist/src/framework/hooks/sdkTypes.d.ts +0 -26
  436. package/dist/src/framework/hooks/sdkTypes.d.ts.map +0 -1
  437. package/dist/src/framework/hooks/sdkTypes.js +0 -157
  438. package/dist/src/framework/hooks/sdkTypes.js.map +0 -1
  439. package/dist/src/framework/hooks/useDependencies.d.ts +0 -4
  440. package/dist/src/framework/hooks/useDependencies.d.ts.map +0 -1
  441. package/dist/src/framework/hooks/useDependencies.js +0 -13
  442. package/dist/src/framework/hooks/useDependencies.js.map +0 -1
  443. package/dist/src/metaTree.d.ts +0 -7
  444. package/dist/src/metaTree.d.ts.map +0 -1
  445. package/dist/src/metaTree.js +0 -2
  446. package/dist/src/metaTree.js.map +0 -1
  447. package/dist/src/modular/buildClassicalClient.d.ts +0 -6
  448. package/dist/src/modular/buildClassicalClient.d.ts.map +0 -1
  449. package/dist/src/modular/buildClassicalClient.js +0 -345
  450. package/dist/src/modular/buildClassicalClient.js.map +0 -1
  451. package/dist/src/modular/buildClassicalOperationGroups.d.ts +0 -6
  452. package/dist/src/modular/buildClassicalOperationGroups.d.ts.map +0 -1
  453. package/dist/src/modular/buildClassicalOperationGroups.js +0 -48
  454. package/dist/src/modular/buildClassicalOperationGroups.js.map +0 -1
  455. package/dist/src/modular/buildClientContext.d.ts +0 -13
  456. package/dist/src/modular/buildClientContext.d.ts.map +0 -1
  457. package/dist/src/modular/buildClientContext.js +0 -246
  458. package/dist/src/modular/buildClientContext.js.map +0 -1
  459. package/dist/src/modular/buildModularOptions.d.ts +0 -6
  460. package/dist/src/modular/buildModularOptions.d.ts.map +0 -1
  461. package/dist/src/modular/buildModularOptions.js +0 -14
  462. package/dist/src/modular/buildModularOptions.js.map +0 -1
  463. package/dist/src/modular/buildOperations.d.ts +0 -21
  464. package/dist/src/modular/buildOperations.d.ts.map +0 -1
  465. package/dist/src/modular/buildOperations.js +0 -172
  466. package/dist/src/modular/buildOperations.js.map +0 -1
  467. package/dist/src/modular/buildProjectFiles.d.ts +0 -4
  468. package/dist/src/modular/buildProjectFiles.d.ts.map +0 -1
  469. package/dist/src/modular/buildProjectFiles.js +0 -91
  470. package/dist/src/modular/buildProjectFiles.js.map +0 -1
  471. package/dist/src/modular/buildRestorePoller.d.ts +0 -5
  472. package/dist/src/modular/buildRestorePoller.d.ts.map +0 -1
  473. package/dist/src/modular/buildRestorePoller.js +0 -216
  474. package/dist/src/modular/buildRestorePoller.js.map +0 -1
  475. package/dist/src/modular/buildRootIndex.d.ts +0 -13
  476. package/dist/src/modular/buildRootIndex.d.ts.map +0 -1
  477. package/dist/src/modular/buildRootIndex.js +0 -279
  478. package/dist/src/modular/buildRootIndex.js.map +0 -1
  479. package/dist/src/modular/buildSubpathIndex.d.ts +0 -16
  480. package/dist/src/modular/buildSubpathIndex.d.ts.map +0 -1
  481. package/dist/src/modular/buildSubpathIndex.js +0 -119
  482. package/dist/src/modular/buildSubpathIndex.js.map +0 -1
  483. package/dist/src/modular/emitLoggerFile.d.ts +0 -3
  484. package/dist/src/modular/emitLoggerFile.d.ts.map +0 -1
  485. package/dist/src/modular/emitLoggerFile.js +0 -18
  486. package/dist/src/modular/emitLoggerFile.js.map +0 -1
  487. package/dist/src/modular/emitModels.d.ts +0 -23
  488. package/dist/src/modular/emitModels.d.ts.map +0 -1
  489. package/dist/src/modular/emitModels.js +0 -850
  490. package/dist/src/modular/emitModels.js.map +0 -1
  491. package/dist/src/modular/emitModelsOptions.d.ts +0 -5
  492. package/dist/src/modular/emitModelsOptions.d.ts.map +0 -1
  493. package/dist/src/modular/emitModelsOptions.js +0 -35
  494. package/dist/src/modular/emitModelsOptions.js.map +0 -1
  495. package/dist/src/modular/emitSamples.d.ts +0 -7
  496. package/dist/src/modular/emitSamples.d.ts.map +0 -1
  497. package/dist/src/modular/emitSamples.js +0 -500
  498. package/dist/src/modular/emitSamples.js.map +0 -1
  499. package/dist/src/modular/emitTests.d.ts +0 -7
  500. package/dist/src/modular/emitTests.d.ts.map +0 -1
  501. package/dist/src/modular/emitTests.js +0 -155
  502. package/dist/src/modular/emitTests.js.map +0 -1
  503. package/dist/src/modular/helpers/classicalOperationHelpers.d.ts +0 -7
  504. package/dist/src/modular/helpers/classicalOperationHelpers.d.ts.map +0 -1
  505. package/dist/src/modular/helpers/classicalOperationHelpers.js +0 -258
  506. package/dist/src/modular/helpers/classicalOperationHelpers.js.map +0 -1
  507. package/dist/src/modular/helpers/clientHelpers.d.ts +0 -34
  508. package/dist/src/modular/helpers/clientHelpers.d.ts.map +0 -1
  509. package/dist/src/modular/helpers/clientHelpers.js +0 -259
  510. package/dist/src/modular/helpers/clientHelpers.js.map +0 -1
  511. package/dist/src/modular/helpers/clientOptionHelpers.d.ts +0 -43
  512. package/dist/src/modular/helpers/clientOptionHelpers.d.ts.map +0 -1
  513. package/dist/src/modular/helpers/clientOptionHelpers.js +0 -103
  514. package/dist/src/modular/helpers/clientOptionHelpers.js.map +0 -1
  515. package/dist/src/modular/helpers/docsHelpers.d.ts +0 -3
  516. package/dist/src/modular/helpers/docsHelpers.d.ts.map +0 -1
  517. package/dist/src/modular/helpers/docsHelpers.js +0 -10
  518. package/dist/src/modular/helpers/docsHelpers.js.map +0 -1
  519. package/dist/src/modular/helpers/exampleValueHelpers.d.ts +0 -83
  520. package/dist/src/modular/helpers/exampleValueHelpers.d.ts.map +0 -1
  521. package/dist/src/modular/helpers/exampleValueHelpers.js +0 -639
  522. package/dist/src/modular/helpers/exampleValueHelpers.js.map +0 -1
  523. package/dist/src/modular/helpers/namingHelpers.d.ts +0 -22
  524. package/dist/src/modular/helpers/namingHelpers.d.ts.map +0 -1
  525. package/dist/src/modular/helpers/namingHelpers.js +0 -59
  526. package/dist/src/modular/helpers/namingHelpers.js.map +0 -1
  527. package/dist/src/modular/helpers/operationHelpers.d.ts +0 -105
  528. package/dist/src/modular/helpers/operationHelpers.d.ts.map +0 -1
  529. package/dist/src/modular/helpers/operationHelpers.js +0 -2328
  530. package/dist/src/modular/helpers/operationHelpers.js.map +0 -1
  531. package/dist/src/modular/helpers/typeHelpers.d.ts +0 -22
  532. package/dist/src/modular/helpers/typeHelpers.d.ts.map +0 -1
  533. package/dist/src/modular/helpers/typeHelpers.js +0 -94
  534. package/dist/src/modular/helpers/typeHelpers.js.map +0 -1
  535. package/dist/src/modular/serialization/buildDeserializerFunction.d.ts +0 -7
  536. package/dist/src/modular/serialization/buildDeserializerFunction.d.ts.map +0 -1
  537. package/dist/src/modular/serialization/buildDeserializerFunction.js +0 -401
  538. package/dist/src/modular/serialization/buildDeserializerFunction.js.map +0 -1
  539. package/dist/src/modular/serialization/buildSerializerFunction.d.ts +0 -7
  540. package/dist/src/modular/serialization/buildSerializerFunction.d.ts.map +0 -1
  541. package/dist/src/modular/serialization/buildSerializerFunction.js +0 -444
  542. package/dist/src/modular/serialization/buildSerializerFunction.js.map +0 -1
  543. package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts +0 -44
  544. package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts.map +0 -1
  545. package/dist/src/modular/serialization/buildXmlSerializerFunction.js +0 -729
  546. package/dist/src/modular/serialization/buildXmlSerializerFunction.js.map +0 -1
  547. package/dist/src/modular/serialization/serializeUtils.d.ts +0 -37
  548. package/dist/src/modular/serialization/serializeUtils.d.ts.map +0 -1
  549. package/dist/src/modular/serialization/serializeUtils.js +0 -145
  550. package/dist/src/modular/serialization/serializeUtils.js.map +0 -1
  551. package/dist/src/rlc-common/buildClient.d.ts +0 -9
  552. package/dist/src/rlc-common/buildClient.d.ts.map +0 -1
  553. package/dist/src/rlc-common/buildClient.js +0 -391
  554. package/dist/src/rlc-common/buildClient.js.map +0 -1
  555. package/dist/src/rlc-common/buildClientDefinitions.d.ts +0 -6
  556. package/dist/src/rlc-common/buildClientDefinitions.d.ts.map +0 -1
  557. package/dist/src/rlc-common/buildClientDefinitions.js +0 -157
  558. package/dist/src/rlc-common/buildClientDefinitions.js.map +0 -1
  559. package/dist/src/rlc-common/buildIndexFile.d.ts +0 -6
  560. package/dist/src/rlc-common/buildIndexFile.d.ts.map +0 -1
  561. package/dist/src/rlc-common/buildIndexFile.js +0 -241
  562. package/dist/src/rlc-common/buildIndexFile.js.map +0 -1
  563. package/dist/src/rlc-common/buildIsUnexpectedHelper.d.ts +0 -6
  564. package/dist/src/rlc-common/buildIsUnexpectedHelper.d.ts.map +0 -1
  565. package/dist/src/rlc-common/buildIsUnexpectedHelper.js +0 -223
  566. package/dist/src/rlc-common/buildIsUnexpectedHelper.js.map +0 -1
  567. package/dist/src/rlc-common/buildLogger.d.ts +0 -6
  568. package/dist/src/rlc-common/buildLogger.d.ts.map +0 -1
  569. package/dist/src/rlc-common/buildLogger.js +0 -31
  570. package/dist/src/rlc-common/buildLogger.js.map +0 -1
  571. package/dist/src/rlc-common/buildMethodShortcuts.d.ts +0 -5
  572. package/dist/src/rlc-common/buildMethodShortcuts.d.ts.map +0 -1
  573. package/dist/src/rlc-common/buildMethodShortcuts.js +0 -54
  574. package/dist/src/rlc-common/buildMethodShortcuts.js.map +0 -1
  575. package/dist/src/rlc-common/buildObjectTypes.d.ts +0 -29
  576. package/dist/src/rlc-common/buildObjectTypes.d.ts.map +0 -1
  577. package/dist/src/rlc-common/buildObjectTypes.js +0 -412
  578. package/dist/src/rlc-common/buildObjectTypes.js.map +0 -1
  579. package/dist/src/rlc-common/buildPaginateHelper.d.ts +0 -6
  580. package/dist/src/rlc-common/buildPaginateHelper.d.ts.map +0 -1
  581. package/dist/src/rlc-common/buildPaginateHelper.js +0 -27
  582. package/dist/src/rlc-common/buildPaginateHelper.js.map +0 -1
  583. package/dist/src/rlc-common/buildParameterTypes.d.ts +0 -14
  584. package/dist/src/rlc-common/buildParameterTypes.d.ts.map +0 -1
  585. package/dist/src/rlc-common/buildParameterTypes.js +0 -391
  586. package/dist/src/rlc-common/buildParameterTypes.js.map +0 -1
  587. package/dist/src/rlc-common/buildPollingHelper.d.ts +0 -6
  588. package/dist/src/rlc-common/buildPollingHelper.d.ts.map +0 -1
  589. package/dist/src/rlc-common/buildPollingHelper.js +0 -61
  590. package/dist/src/rlc-common/buildPollingHelper.js.map +0 -1
  591. package/dist/src/rlc-common/buildResponseTypes.d.ts +0 -6
  592. package/dist/src/rlc-common/buildResponseTypes.d.ts.map +0 -1
  593. package/dist/src/rlc-common/buildResponseTypes.js +0 -143
  594. package/dist/src/rlc-common/buildResponseTypes.js.map +0 -1
  595. package/dist/src/rlc-common/buildSamples.d.ts +0 -3
  596. package/dist/src/rlc-common/buildSamples.d.ts.map +0 -1
  597. package/dist/src/rlc-common/buildSamples.js +0 -30
  598. package/dist/src/rlc-common/buildSamples.js.map +0 -1
  599. package/dist/src/rlc-common/buildSchemaType.d.ts +0 -20
  600. package/dist/src/rlc-common/buildSchemaType.d.ts.map +0 -1
  601. package/dist/src/rlc-common/buildSchemaType.js +0 -71
  602. package/dist/src/rlc-common/buildSchemaType.js.map +0 -1
  603. package/dist/src/rlc-common/buildSerializeHelper.d.ts +0 -6
  604. package/dist/src/rlc-common/buildSerializeHelper.d.ts.map +0 -1
  605. package/dist/src/rlc-common/buildSerializeHelper.js +0 -36
  606. package/dist/src/rlc-common/buildSerializeHelper.js.map +0 -1
  607. package/dist/src/rlc-common/buildTopLevelIndexFile.d.ts +0 -6
  608. package/dist/src/rlc-common/buildTopLevelIndexFile.d.ts.map +0 -1
  609. package/dist/src/rlc-common/buildTopLevelIndexFile.js +0 -48
  610. package/dist/src/rlc-common/buildTopLevelIndexFile.js.map +0 -1
  611. package/dist/src/rlc-common/helpers/apiVersionUtil.d.ts +0 -17
  612. package/dist/src/rlc-common/helpers/apiVersionUtil.d.ts.map +0 -1
  613. package/dist/src/rlc-common/helpers/apiVersionUtil.js +0 -43
  614. package/dist/src/rlc-common/helpers/apiVersionUtil.js.map +0 -1
  615. package/dist/src/rlc-common/helpers/importsUtil.d.ts +0 -18
  616. package/dist/src/rlc-common/helpers/importsUtil.d.ts.map +0 -1
  617. package/dist/src/rlc-common/helpers/importsUtil.js +0 -164
  618. package/dist/src/rlc-common/helpers/importsUtil.js.map +0 -1
  619. package/dist/src/rlc-common/helpers/nameConstructors.d.ts +0 -42
  620. package/dist/src/rlc-common/helpers/nameConstructors.d.ts.map +0 -1
  621. package/dist/src/rlc-common/helpers/nameConstructors.js +0 -61
  622. package/dist/src/rlc-common/helpers/nameConstructors.js.map +0 -1
  623. package/dist/src/rlc-common/helpers/nameUtils.d.ts +0 -37
  624. package/dist/src/rlc-common/helpers/nameUtils.d.ts.map +0 -1
  625. package/dist/src/rlc-common/helpers/nameUtils.js +0 -240
  626. package/dist/src/rlc-common/helpers/nameUtils.js.map +0 -1
  627. package/dist/src/rlc-common/helpers/operationHelpers.d.ts +0 -16
  628. package/dist/src/rlc-common/helpers/operationHelpers.d.ts.map +0 -1
  629. package/dist/src/rlc-common/helpers/operationHelpers.js +0 -104
  630. package/dist/src/rlc-common/helpers/operationHelpers.js.map +0 -1
  631. package/dist/src/rlc-common/helpers/packageUtil.d.ts +0 -7
  632. package/dist/src/rlc-common/helpers/packageUtil.d.ts.map +0 -1
  633. package/dist/src/rlc-common/helpers/packageUtil.js +0 -10
  634. package/dist/src/rlc-common/helpers/packageUtil.js.map +0 -1
  635. package/dist/src/rlc-common/helpers/pathUtils.d.ts +0 -2
  636. package/dist/src/rlc-common/helpers/pathUtils.d.ts.map +0 -1
  637. package/dist/src/rlc-common/helpers/pathUtils.js +0 -10
  638. package/dist/src/rlc-common/helpers/pathUtils.js.map +0 -1
  639. package/dist/src/rlc-common/helpers/schemaHelpers.d.ts +0 -10
  640. package/dist/src/rlc-common/helpers/schemaHelpers.d.ts.map +0 -1
  641. package/dist/src/rlc-common/helpers/schemaHelpers.js +0 -37
  642. package/dist/src/rlc-common/helpers/schemaHelpers.js.map +0 -1
  643. package/dist/src/rlc-common/helpers/shortcutMethods.d.ts +0 -4
  644. package/dist/src/rlc-common/helpers/shortcutMethods.d.ts.map +0 -1
  645. package/dist/src/rlc-common/helpers/shortcutMethods.js +0 -49
  646. package/dist/src/rlc-common/helpers/shortcutMethods.js.map +0 -1
  647. package/dist/src/rlc-common/helpers/typeUtil.d.ts +0 -32
  648. package/dist/src/rlc-common/helpers/typeUtil.d.ts.map +0 -1
  649. package/dist/src/rlc-common/helpers/typeUtil.js +0 -162
  650. package/dist/src/rlc-common/helpers/typeUtil.js.map +0 -1
  651. package/dist/src/rlc-common/helpers/valueGenerationUtil.d.ts +0 -12
  652. package/dist/src/rlc-common/helpers/valueGenerationUtil.d.ts.map +0 -1
  653. package/dist/src/rlc-common/helpers/valueGenerationUtil.js +0 -161
  654. package/dist/src/rlc-common/helpers/valueGenerationUtil.js.map +0 -1
  655. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.d.ts +0 -6
  656. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.d.ts.map +0 -1
  657. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js +0 -55
  658. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js.map +0 -1
  659. package/dist/src/rlc-common/metadata/buildChangelogFile.d.ts +0 -6
  660. package/dist/src/rlc-common/metadata/buildChangelogFile.d.ts.map +0 -1
  661. package/dist/src/rlc-common/metadata/buildChangelogFile.js +0 -25
  662. package/dist/src/rlc-common/metadata/buildChangelogFile.js.map +0 -1
  663. package/dist/src/rlc-common/metadata/buildESLintConfig.d.ts +0 -6
  664. package/dist/src/rlc-common/metadata/buildESLintConfig.d.ts.map +0 -1
  665. package/dist/src/rlc-common/metadata/buildESLintConfig.js +0 -79
  666. package/dist/src/rlc-common/metadata/buildESLintConfig.js.map +0 -1
  667. package/dist/src/rlc-common/metadata/buildLicenseFile.d.ts +0 -5
  668. package/dist/src/rlc-common/metadata/buildLicenseFile.d.ts.map +0 -1
  669. package/dist/src/rlc-common/metadata/buildLicenseFile.js +0 -32
  670. package/dist/src/rlc-common/metadata/buildLicenseFile.js.map +0 -1
  671. package/dist/src/rlc-common/metadata/buildPackageFile.d.ts +0 -25
  672. package/dist/src/rlc-common/metadata/buildPackageFile.d.ts.map +0 -1
  673. package/dist/src/rlc-common/metadata/buildPackageFile.js +0 -197
  674. package/dist/src/rlc-common/metadata/buildPackageFile.js.map +0 -1
  675. package/dist/src/rlc-common/metadata/buildReadmeFile.d.ts +0 -11
  676. package/dist/src/rlc-common/metadata/buildReadmeFile.d.ts.map +0 -1
  677. package/dist/src/rlc-common/metadata/buildReadmeFile.js +0 -418
  678. package/dist/src/rlc-common/metadata/buildReadmeFile.js.map +0 -1
  679. package/dist/src/rlc-common/metadata/buildRollupConfig.d.ts +0 -6
  680. package/dist/src/rlc-common/metadata/buildRollupConfig.d.ts.map +0 -1
  681. package/dist/src/rlc-common/metadata/buildRollupConfig.js +0 -140
  682. package/dist/src/rlc-common/metadata/buildRollupConfig.js.map +0 -1
  683. package/dist/src/rlc-common/metadata/buildSampleEnvFile.d.ts +0 -6
  684. package/dist/src/rlc-common/metadata/buildSampleEnvFile.d.ts.map +0 -1
  685. package/dist/src/rlc-common/metadata/buildSampleEnvFile.js +0 -15
  686. package/dist/src/rlc-common/metadata/buildSampleEnvFile.js.map +0 -1
  687. package/dist/src/rlc-common/metadata/buildTestConfig.d.ts +0 -16
  688. package/dist/src/rlc-common/metadata/buildTestConfig.d.ts.map +0 -1
  689. package/dist/src/rlc-common/metadata/buildTestConfig.js +0 -54
  690. package/dist/src/rlc-common/metadata/buildTestConfig.js.map +0 -1
  691. package/dist/src/rlc-common/metadata/buildTsConfig.d.ts +0 -61
  692. package/dist/src/rlc-common/metadata/buildTsConfig.d.ts.map +0 -1
  693. package/dist/src/rlc-common/metadata/buildTsConfig.js +0 -170
  694. package/dist/src/rlc-common/metadata/buildTsConfig.js.map +0 -1
  695. package/dist/src/rlc-common/metadata/buildVitestConfig.d.ts +0 -6
  696. package/dist/src/rlc-common/metadata/buildVitestConfig.d.ts.map +0 -1
  697. package/dist/src/rlc-common/metadata/buildVitestConfig.js +0 -26
  698. package/dist/src/rlc-common/metadata/buildVitestConfig.js.map +0 -1
  699. package/dist/src/rlc-common/metadata/buildWarpConfig.d.ts +0 -20
  700. package/dist/src/rlc-common/metadata/buildWarpConfig.d.ts.map +0 -1
  701. package/dist/src/rlc-common/metadata/buildWarpConfig.js +0 -76
  702. package/dist/src/rlc-common/metadata/buildWarpConfig.js.map +0 -1
  703. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts +0 -51
  704. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts.map +0 -1
  705. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js +0 -121
  706. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js.map +0 -1
  707. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.d.ts +0 -242
  708. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.d.ts.map +0 -1
  709. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js +0 -171
  710. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js.map +0 -1
  711. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.d.ts +0 -8
  712. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.d.ts.map +0 -1
  713. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js +0 -101
  714. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js.map +0 -1
  715. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.d.ts +0 -57
  716. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.d.ts.map +0 -1
  717. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js +0 -53
  718. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js.map +0 -1
  719. package/dist/src/rlc-common/metadata/packageJson/packageCommon.d.ts +0 -64
  720. package/dist/src/rlc-common/metadata/packageJson/packageCommon.d.ts.map +0 -1
  721. package/dist/src/rlc-common/metadata/packageJson/packageCommon.js +0 -180
  722. package/dist/src/rlc-common/metadata/packageJson/packageCommon.js.map +0 -1
  723. package/dist/src/rlc-common/static/paginateContent.d.ts +0 -2
  724. package/dist/src/rlc-common/static/paginateContent.d.ts.map +0 -1
  725. package/dist/src/rlc-common/static/paginateContent.js +0 -345
  726. package/dist/src/rlc-common/static/paginateContent.js.map +0 -1
  727. package/dist/src/rlc-common/static/pollingContent.d.ts +0 -2
  728. package/dist/src/rlc-common/static/pollingContent.d.ts.map +0 -1
  729. package/dist/src/rlc-common/static/pollingContent.js +0 -225
  730. package/dist/src/rlc-common/static/pollingContent.js.map +0 -1
  731. package/dist/src/rlc-common/static/sampleTemplate.d.ts +0 -2
  732. package/dist/src/rlc-common/static/sampleTemplate.d.ts.map +0 -1
  733. package/dist/src/rlc-common/static/sampleTemplate.js +0 -56
  734. package/dist/src/rlc-common/static/sampleTemplate.js.map +0 -1
  735. package/dist/src/rlc-common/static/serializeHelper.d.ts +0 -6
  736. package/dist/src/rlc-common/static/serializeHelper.d.ts.map +0 -1
  737. package/dist/src/rlc-common/static/serializeHelper.js +0 -31
  738. package/dist/src/rlc-common/static/serializeHelper.js.map +0 -1
  739. package/dist/src/rlc-common/test/buildKarmaConfig.d.ts +0 -6
  740. package/dist/src/rlc-common/test/buildKarmaConfig.d.ts.map +0 -1
  741. package/dist/src/rlc-common/test/buildKarmaConfig.js +0 -11
  742. package/dist/src/rlc-common/test/buildKarmaConfig.js.map +0 -1
  743. package/dist/src/rlc-common/test/buildRecordedClient.d.ts +0 -6
  744. package/dist/src/rlc-common/test/buildRecordedClient.d.ts.map +0 -1
  745. package/dist/src/rlc-common/test/buildRecordedClient.js +0 -17
  746. package/dist/src/rlc-common/test/buildRecordedClient.js.map +0 -1
  747. package/dist/src/rlc-common/test/buildSampleTest.d.ts +0 -6
  748. package/dist/src/rlc-common/test/buildSampleTest.d.ts.map +0 -1
  749. package/dist/src/rlc-common/test/buildSampleTest.js +0 -14
  750. package/dist/src/rlc-common/test/buildSampleTest.js.map +0 -1
  751. package/dist/src/rlc-common/test/buildSnippets.d.ts +0 -6
  752. package/dist/src/rlc-common/test/buildSnippets.d.ts.map +0 -1
  753. package/dist/src/rlc-common/test/buildSnippets.js +0 -26
  754. package/dist/src/rlc-common/test/buildSnippets.js.map +0 -1
  755. package/dist/src/rlc-common/transformSampleGroups.d.ts +0 -9
  756. package/dist/src/rlc-common/transformSampleGroups.d.ts.map +0 -1
  757. package/dist/src/rlc-common/transformSampleGroups.js +0 -313
  758. package/dist/src/rlc-common/transformSampleGroups.js.map +0 -1
  759. package/dist/src/transform/transformApiVersionInfo.d.ts +0 -6
  760. package/dist/src/transform/transformApiVersionInfo.d.ts.map +0 -1
  761. package/dist/src/transform/transformApiVersionInfo.js +0 -78
  762. package/dist/src/transform/transformApiVersionInfo.js.map +0 -1
  763. package/dist/src/transform/transformHelperFunctionDetails.d.ts +0 -5
  764. package/dist/src/transform/transformHelperFunctionDetails.d.ts.map +0 -1
  765. package/dist/src/transform/transformHelperFunctionDetails.js +0 -74
  766. package/dist/src/transform/transformHelperFunctionDetails.js.map +0 -1
  767. package/dist/src/transform/transformParameters.d.ts +0 -14
  768. package/dist/src/transform/transformParameters.d.ts.map +0 -1
  769. package/dist/src/transform/transformParameters.js +0 -201
  770. package/dist/src/transform/transformParameters.js.map +0 -1
  771. package/dist/src/transform/transformPaths.d.ts +0 -5
  772. package/dist/src/transform/transformPaths.d.ts.map +0 -1
  773. package/dist/src/transform/transformPaths.js +0 -102
  774. package/dist/src/transform/transformPaths.js.map +0 -1
  775. package/dist/src/transform/transformResponses.d.ts +0 -5
  776. package/dist/src/transform/transformResponses.d.ts.map +0 -1
  777. package/dist/src/transform/transformResponses.js +0 -171
  778. package/dist/src/transform/transformResponses.js.map +0 -1
  779. package/dist/src/transform/transformSchemas.d.ts +0 -4
  780. package/dist/src/transform/transformSchemas.d.ts.map +0 -1
  781. package/dist/src/transform/transformSchemas.js +0 -191
  782. package/dist/src/transform/transformSchemas.js.map +0 -1
  783. package/dist/src/transform/transformTelemetryInfo.d.ts +0 -4
  784. package/dist/src/transform/transformTelemetryInfo.d.ts.map +0 -1
  785. package/dist/src/transform/transformTelemetryInfo.js +0 -22
  786. package/dist/src/transform/transformTelemetryInfo.js.map +0 -1
  787. package/dist/src/transform/transfromRLCOptions.d.ts +0 -14
  788. package/dist/src/transform/transfromRLCOptions.d.ts.map +0 -1
  789. package/dist/src/transform/transfromRLCOptions.js +0 -369
  790. package/dist/src/transform/transfromRLCOptions.js.map +0 -1
  791. package/dist/src/utils/clientUtils.d.ts +0 -10
  792. package/dist/src/utils/clientUtils.d.ts.map +0 -1
  793. package/dist/src/utils/clientUtils.js +0 -124
  794. package/dist/src/utils/clientUtils.js.map +0 -1
  795. package/dist/src/utils/credentialUtils.d.ts +0 -15
  796. package/dist/src/utils/credentialUtils.d.ts.map +0 -1
  797. package/dist/src/utils/credentialUtils.js +0 -68
  798. package/dist/src/utils/credentialUtils.js.map +0 -1
  799. package/dist/src/utils/crossLanguageDef.d.ts +0 -6
  800. package/dist/src/utils/crossLanguageDef.d.ts.map +0 -1
  801. package/dist/src/utils/crossLanguageDef.js +0 -59
  802. package/dist/src/utils/crossLanguageDef.js.map +0 -1
  803. package/dist/src/utils/dirname.d.ts +0 -9
  804. package/dist/src/utils/dirname.d.ts.map +0 -1
  805. package/dist/src/utils/dirname.js +0 -12
  806. package/dist/src/utils/dirname.js.map +0 -1
  807. package/dist/src/utils/emitUtil.d.ts +0 -5
  808. package/dist/src/utils/emitUtil.d.ts.map +0 -1
  809. package/dist/src/utils/emitUtil.js +0 -71
  810. package/dist/src/utils/emitUtil.js.map +0 -1
  811. package/dist/src/utils/fileSystemUtils.d.ts +0 -5
  812. package/dist/src/utils/fileSystemUtils.d.ts.map +0 -1
  813. package/dist/src/utils/fileSystemUtils.js +0 -59
  814. package/dist/src/utils/fileSystemUtils.js.map +0 -1
  815. package/dist/src/utils/importHelper.d.ts +0 -10
  816. package/dist/src/utils/importHelper.d.ts.map +0 -1
  817. package/dist/src/utils/importHelper.js +0 -51
  818. package/dist/src/utils/importHelper.js.map +0 -1
  819. package/dist/src/utils/mediaTypes.d.ts +0 -28
  820. package/dist/src/utils/mediaTypes.d.ts.map +0 -1
  821. package/dist/src/utils/mediaTypes.js +0 -124
  822. package/dist/src/utils/mediaTypes.js.map +0 -1
  823. package/dist/src/utils/modelUtils.d.ts +0 -60
  824. package/dist/src/utils/modelUtils.d.ts.map +0 -1
  825. package/dist/src/utils/modelUtils.js +0 -1488
  826. package/dist/src/utils/modelUtils.js.map +0 -1
  827. package/dist/src/utils/namespaceUtils.d.ts +0 -6
  828. package/dist/src/utils/namespaceUtils.d.ts.map +0 -1
  829. package/dist/src/utils/namespaceUtils.js +0 -69
  830. package/dist/src/utils/namespaceUtils.js.map +0 -1
  831. package/dist/src/utils/operationUtil.d.ts +0 -97
  832. package/dist/src/utils/operationUtil.d.ts.map +0 -1
  833. package/dist/src/utils/operationUtil.js +0 -547
  834. package/dist/src/utils/operationUtil.js.map +0 -1
  835. package/dist/src/utils/parameterUtils.d.ts +0 -9
  836. package/dist/src/utils/parameterUtils.d.ts.map +0 -1
  837. package/dist/src/utils/parameterUtils.js +0 -147
  838. package/dist/src/utils/parameterUtils.js.map +0 -1
  839. package/src/contextManager.ts +0 -101
  840. package/src/framework/hooks/sdkTypes.ts +0 -218
  841. package/src/framework/hooks/useDependencies.ts +0 -16
  842. package/src/modular/buildClassicalClient.ts +0 -434
  843. package/src/modular/buildClassicalOperationGroups.ts +0 -69
  844. package/src/modular/buildClientContext.ts +0 -325
  845. package/src/modular/buildOperations.ts +0 -248
  846. package/src/modular/buildProjectFiles.ts +0 -111
  847. package/src/modular/buildRestorePoller.ts +0 -242
  848. package/src/modular/buildRootIndex.ts +0 -407
  849. package/src/modular/buildSubpathIndex.ts +0 -152
  850. package/src/modular/emitLoggerFile.ts +0 -23
  851. package/src/modular/emitModels.ts +0 -1081
  852. package/src/modular/emitModelsOptions.ts +0 -56
  853. package/src/modular/emitSamples.ts +0 -675
  854. package/src/modular/emitTests.ts +0 -194
  855. package/src/modular/helpers/classicalOperationHelpers.ts +0 -375
  856. package/src/modular/helpers/clientHelpers.ts +0 -362
  857. package/src/modular/helpers/exampleValueHelpers.ts +0 -851
  858. package/src/modular/helpers/namingHelpers.ts +0 -84
  859. package/src/modular/helpers/operationHelpers.ts +0 -3035
  860. package/src/modular/helpers/typeHelpers.ts +0 -131
  861. package/src/modular/serialization/buildDeserializerFunction.ts +0 -564
  862. package/src/modular/serialization/buildSerializerFunction.ts +0 -616
  863. package/src/modular/serialization/buildXmlSerializerFunction.ts +0 -951
  864. package/src/modular/serialization/serializeUtils.ts +0 -217
  865. package/src/rlc-common/buildClient.ts +0 -490
  866. package/src/rlc-common/buildClientDefinitions.ts +0 -235
  867. package/src/rlc-common/buildIndexFile.ts +0 -344
  868. package/src/rlc-common/buildIsUnexpectedHelper.ts +0 -248
  869. package/src/rlc-common/buildLogger.ts +0 -43
  870. package/src/rlc-common/buildMethodShortcuts.ts +0 -71
  871. package/src/rlc-common/buildObjectTypes.ts +0 -603
  872. package/src/rlc-common/buildPaginateHelper.ts +0 -31
  873. package/src/rlc-common/buildParameterTypes.ts +0 -554
  874. package/src/rlc-common/buildPollingHelper.ts +0 -83
  875. package/src/rlc-common/buildResponseTypes.ts +0 -180
  876. package/src/rlc-common/buildSamples.ts +0 -32
  877. package/src/rlc-common/buildSchemaType.ts +0 -89
  878. package/src/rlc-common/buildSerializeHelper.ts +0 -49
  879. package/src/rlc-common/buildTopLevelIndexFile.ts +0 -58
  880. package/src/rlc-common/helpers/importsUtil.ts +0 -184
  881. package/src/rlc-common/helpers/nameConstructors.ts +0 -110
  882. package/src/rlc-common/helpers/operationHelpers.ts +0 -138
  883. package/src/rlc-common/helpers/packageUtil.ts +0 -13
  884. package/src/rlc-common/helpers/pathUtils.ts +0 -10
  885. package/src/rlc-common/helpers/shortcutMethods.ts +0 -58
  886. package/src/rlc-common/helpers/valueGenerationUtil.ts +0 -234
  887. package/src/rlc-common/metadata/buildApiExtractorConfig.ts +0 -64
  888. package/src/rlc-common/metadata/buildESLintConfig.ts +0 -84
  889. package/src/rlc-common/metadata/buildPackageFile.ts +0 -242
  890. package/src/rlc-common/metadata/buildReadmeFile.ts +0 -515
  891. package/src/rlc-common/metadata/buildRollupConfig.ts +0 -147
  892. package/src/rlc-common/metadata/buildSampleEnvFile.ts +0 -21
  893. package/src/rlc-common/metadata/buildTestConfig.ts +0 -72
  894. package/src/rlc-common/metadata/buildTsConfig.ts +0 -219
  895. package/src/rlc-common/metadata/buildWarpConfig.ts +0 -91
  896. package/src/rlc-common/metadata/packageJson/azurePackageCommon.ts +0 -152
  897. package/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.ts +0 -199
  898. package/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.ts +0 -123
  899. package/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.ts +0 -68
  900. package/src/rlc-common/metadata/packageJson/packageCommon.ts +0 -235
  901. package/src/rlc-common/static/pollingContent.ts +0 -225
  902. package/src/rlc-common/test/buildRecordedClient.ts +0 -18
  903. package/src/rlc-common/test/buildSampleTest.ts +0 -15
  904. package/src/rlc-common/test/buildSnippets.ts +0 -29
  905. package/src/rlc-common/transformSampleGroups.ts +0 -407
  906. package/src/transform/transformApiVersionInfo.ts +0 -103
  907. package/src/transform/transformHelperFunctionDetails.ts +0 -88
  908. package/src/transform/transformParameters.ts +0 -321
  909. package/src/transform/transformPaths.ts +0 -157
  910. package/src/transform/transformResponses.ts +0 -237
  911. package/src/transform/transformSchemas.ts +0 -212
  912. package/src/transform/transformTelemetryInfo.ts +0 -33
  913. package/src/transform/transfromRLCOptions.ts +0 -461
  914. package/src/utils/clientUtils.ts +0 -162
  915. package/src/utils/crossLanguageDef.ts +0 -66
  916. package/src/utils/dirname.ts +0 -12
  917. package/src/utils/emitUtil.ts +0 -92
  918. package/src/utils/fileSystemUtils.ts +0 -69
  919. package/src/utils/importHelper.ts +0 -59
  920. package/src/utils/modelUtils.ts +0 -1737
  921. package/src/utils/operationUtil.ts +0 -763
  922. package/src/utils/parameterUtils.ts +0 -192
  923. /package/src/{metaTree.ts → meta-tree.ts} +0 -0
  924. /package/src/modular/{buildModularOptions.ts → build-modular-options.ts} +0 -0
  925. /package/src/modular/helpers/{clientOptionHelpers.ts → client-option-helpers.ts} +0 -0
  926. /package/src/modular/helpers/{docsHelpers.ts → docs-helpers.ts} +0 -0
  927. /package/src/rlc-common/helpers/{apiVersionUtil.ts → api-version-util.ts} +0 -0
  928. /package/src/rlc-common/helpers/{nameUtils.ts → name-utils.ts} +0 -0
  929. /package/src/rlc-common/helpers/{schemaHelpers.ts → schema-helpers.ts} +0 -0
  930. /package/src/rlc-common/helpers/{typeUtil.ts → type-util.ts} +0 -0
  931. /package/src/rlc-common/metadata/{buildChangelogFile.ts → build-changelog-file.ts} +0 -0
  932. /package/src/rlc-common/metadata/{buildLicenseFile.ts → build-license-file.ts} +0 -0
  933. /package/src/rlc-common/metadata/{buildVitestConfig.ts → build-vitest-config.ts} +0 -0
  934. /package/src/rlc-common/static/{paginateContent.ts → paginate-content.ts} +0 -0
  935. /package/src/rlc-common/static/{sampleTemplate.ts → sample-template.ts} +0 -0
  936. /package/src/rlc-common/static/{serializeHelper.ts → serialize-helper.ts} +0 -0
  937. /package/src/rlc-common/test/{buildKarmaConfig.ts → build-karma-config.ts} +0 -0
  938. /package/src/utils/{credentialUtils.ts → credential-utils.ts} +0 -0
  939. /package/src/utils/{mediaTypes.ts → media-types.ts} +0 -0
  940. /package/src/utils/{namespaceUtils.ts → namespace-utils.ts} +0 -0
package/package.json CHANGED
@@ -1,32 +1,32 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-ts",
3
- "version": "0.55.0-dev.1",
4
- "description": "An experimental TypeSpec emitter for TypeScript RLC",
3
+ "version": "0.55.0-dev.11",
4
+ "description": "An experimental TypeSpec emitter for TypeScript",
5
5
  "main": "dist/src/index.js",
6
6
  "type": "module",
7
7
  "exports": {
8
8
  ".": {
9
- "default": "./dist/src/index.js",
10
- "types": "./dist/src/index.d.ts"
9
+ "types": "./dist/src/index.d.ts",
10
+ "default": "./dist/src/index.js"
11
11
  },
12
12
  "./testing": {
13
- "default": "./dist/src/testing/index.js",
14
- "types": "./dist/src/testing/index.d.ts"
13
+ "types": "./dist/src/testing/index.d.ts",
14
+ "default": "./dist/src/testing/index.js"
15
15
  }
16
16
  },
17
17
  "author": "Jose Heredia <joheredi@microsoft.com>",
18
18
  "license": "MIT",
19
19
  "devDependencies": {
20
20
  "@azure-rest/core-client": "^2.3.1",
21
- "@typespec/http-specs": "^0.1.0-alpha.37 || >=0.1.0-alpha.38-dev <0.1.0-alpha.38",
21
+ "@typespec/http-specs": "^0.1.0-alpha.38 || >=0.1.0-alpha.39-dev <0.1.0-alpha.39",
22
22
  "@typespec/spector": "^0.1.0-alpha.25 || >=0.1.0-alpha.26-dev <0.1.0-alpha.26",
23
23
  "@typespec/spec-api": "^0.1.0-alpha.14 || >=0.1.0-alpha.15-dev <0.1.0-alpha.15",
24
- "@typespec/tspd": "^0.74.2 || >=0.75.0-dev <0.75.0",
25
- "@azure-tools/azure-http-specs": "^0.1.0-alpha.40 || >=0.1.0-alpha.41-dev <0.1.0-alpha.41",
26
- "@azure-tools/typespec-autorest": "^0.68.0 || >=0.69.0-dev <0.69.0",
27
- "@azure-tools/typespec-azure-core": "^0.68.0 || >=0.69.0-dev <0.69.0",
28
- "@azure-tools/typespec-azure-resource-manager": "^0.68.0 || >=0.69.0-dev <0.69.0",
29
- "@azure-tools/typespec-client-generator-core": "^0.68.4 || >=0.69.0-dev <0.69.0",
24
+ "@typespec/tspd": "^0.75.0 || >=0.76.0-dev <0.76.0",
25
+ "@azure-tools/azure-http-specs": "^0.1.0-alpha.42 || >=0.1.0-alpha.43-dev <0.1.0-alpha.43",
26
+ "@azure-tools/typespec-autorest": "^0.69.1 || >=0.70.0-dev <0.70.0",
27
+ "@azure-tools/typespec-azure-core": "^0.69.0 || >=0.70.0-dev <0.70.0",
28
+ "@azure-tools/typespec-azure-resource-manager": "^0.69.1 || >=0.70.0-dev <0.70.0",
29
+ "@azure-tools/typespec-client-generator-core": "^0.69.0 || >=0.70.0-dev <0.70.0",
30
30
  "@azure/abort-controller": "^2.1.2",
31
31
  "@azure/core-auth": "^1.6.0",
32
32
  "@azure/core-lro": "^3.1.0",
@@ -34,17 +34,14 @@
34
34
  "@azure/core-rest-pipeline": "^1.14.0",
35
35
  "@azure/core-util": "^1.4.0",
36
36
  "@azure/logger": "^1.0.4",
37
- "@typescript-eslint/eslint-plugin": "^8.28.0",
38
- "@typescript-eslint/parser": "^8.58.1",
39
- "@typespec/compiler": "^1.12.0",
40
- "@typespec/http": "^1.12.0",
41
- "@typespec/openapi": "^1.12.0",
42
- "@typespec/rest": "^0.82.0 || >=0.83.0-dev <0.83.0",
43
- "@typespec/versioning": "^0.82.0 || >=0.83.0-dev <0.83.0",
44
- "@typespec/xml": "^0.82.0 || >=0.83.0-dev <0.83.0",
45
- "@typespec/ts-http-runtime": "0.3.5",
37
+ "@typespec/compiler": "^1.13.0",
38
+ "@typespec/http": "^1.13.0",
39
+ "@typespec/openapi": "^1.13.0",
40
+ "@typespec/rest": "^0.83.0 || >=0.84.0-dev <0.84.0",
41
+ "@typespec/versioning": "^0.83.0 || >=0.84.0-dev <0.84.0",
42
+ "@typespec/xml": "^0.83.0 || >=0.84.0-dev <0.84.0",
43
+ "@typespec/ts-http-runtime": "0.3.6",
46
44
  "cross-env": "^10.1.0",
47
- "eslint-plugin-require-extensions": "0.1.3",
48
45
  "mkdirp": "^3.0.1",
49
46
  "npm-run-all": "~4.1.5",
50
47
  "prettier": "^3.8.1",
@@ -52,17 +49,16 @@
52
49
  "vite": "^8.0.8",
53
50
  "@vitest/coverage-v8": "^4.1.3",
54
51
  "@microsoft/api-extractor": "^7.58.1",
55
- "tsx": "^4.21.0",
56
52
  "yaml": "^2.8.3"
57
53
  },
58
54
  "peerDependencies": {
59
- "@azure-tools/typespec-azure-core": "^0.68.0 || >=0.69.0-dev <0.69.0",
60
- "@azure-tools/typespec-client-generator-core": "^0.68.4 || >=0.69.0-dev <0.69.0",
61
- "@typespec/compiler": "^1.12.0",
62
- "@typespec/http": "^1.12.0",
63
- "@typespec/rest": "^0.82.0 || >=0.83.0-dev <0.83.0",
64
- "@typespec/versioning": "^0.82.0 || >=0.83.0-dev <0.83.0",
65
- "@typespec/xml": "^0.82.0 || >=0.83.0-dev <0.83.0"
55
+ "@azure-tools/typespec-azure-core": "^0.69.0 || >=0.70.0-dev <0.70.0",
56
+ "@azure-tools/typespec-client-generator-core": "^0.69.0 || >=0.70.0-dev <0.70.0",
57
+ "@typespec/compiler": "^1.13.0",
58
+ "@typespec/http": "^1.13.0",
59
+ "@typespec/rest": "^0.83.0 || >=0.84.0-dev <0.84.0",
60
+ "@typespec/versioning": "^0.83.0 || >=0.84.0-dev <0.84.0",
61
+ "@typespec/xml": "^0.83.0 || >=0.84.0-dev <0.84.0"
66
62
  },
67
63
  "dependencies": {
68
64
  "fast-xml-parser": "^5.7.0",
@@ -93,44 +89,29 @@
93
89
  "clean": "rimraf ./dist ./typespec-output",
94
90
  "build": "tsc -p .",
95
91
  "test": "npm run test-next && npm run unit-test && npm run integration-test-ci",
96
- "test:azure": "npm run test-next && npm run copy:typespec && npm run integration-test-ci:azure-rlc && npm run integration-test-ci:azure-modular",
97
- "test:standard": "npm run test-next && npm run copy:typespec && npm run unit-test&& npm run integration-test-ci:rlc && npm run integration-test-ci:modular",
98
- "lint": "eslint src --ext .ts --max-warnings=0",
99
- "lint:fix": "eslint src --fix --ext .ts",
100
- "check:tree": "tsx ./test/commands/check-clean-tree.ts",
101
- "test:ts:e2e": "npm run copy:typespec && npm run integration-test-ci:azure-rlc && npm run integration-test-ci:azure-modular",
102
- "prettier": "prettier --config ./.prettierrc \"{src,test,static}/**/*.ts\" \"!test/**/generated/**/*.ts\"",
103
- "integration-test-ci": "npm-run-all copy:typespec integration-test-ci:rlc integration-test-ci:azure-rlc integration-test-ci:modular integration-test-ci:azure-modular",
104
- "integration-test-ci:sequential": "npm-run-all --serial copy:typespec integration-test-ci:modular && npm run integration-test-ci:modular",
105
- "integration-test-ci:rlc": "npm-run-all --silent -p start-test-server:rlc --race generate-and-run:rlc",
106
- "integration-test-ci:azure-rlc": "npm-run-all --silent -p start-test-server:azure-rlc --race generate-and-run:azure-rlc",
107
- "integration-test-ci:modular": "npm-run-all --silent -p start-test-server:modular --race generate-and-run:modular",
92
+ "test:azure": "npm run test-next && npm run copy:typespec && npm run integration-test-ci:azure-modular",
93
+ "lint": "eslint . --ext .ts --max-warnings=0",
94
+ "lint:fix": "eslint . --fix --ext .ts",
95
+ "check:tree": "node ./test/commands/check-clean-tree.ts",
96
+ "test:ts:e2e": "npm run copy:typespec && npm run integration-test-ci:azure-modular",
97
+ "integration-test-ci": "npm-run-all copy:typespec integration-test-ci:azure-modular",
98
+ "integration-test-ci:sequential": "npm-run-all --serial copy:typespec integration-test-ci:azure-modular",
108
99
  "integration-test-ci:azure-modular": "npm-run-all --silent -p start-test-server:azure-modular --race generate-and-run:azure-modular",
109
100
  "start-test-server": "mkdirp -p coverage && npx tsp-spector serve ./node_modules/@typespec/http-specs/specs --coverageFile ./coverage/spector-coverage-typescript.json",
110
- "start-test-server:rlc": "mkdirp -p coverage && npx tsp-spector serve ./node_modules/@typespec/http-specs/specs --coverageFile ./coverage/spector-coverage-typescript-rlc-standard.json",
111
- "start-test-server:azure-rlc": "mkdirp -p coverage && npx tsp-spector serve ./node_modules/@azure-tools/azure-http-specs/specs ./node_modules/@typespec/http-specs/specs --coverageFile ./coverage/spector-coverage-typescript-rlc-azure.json",
112
- "start-test-server:modular": "mkdirp -p coverage && npx tsp-spector serve ./node_modules/@typespec/http-specs/specs --port 3002 --coverageFile ./coverage/spector-coverage-typescript-modular-standard.json",
113
101
  "start-test-server:azure-modular": "mkdirp -p coverage && npx tsp-spector serve ./node_modules/@azure-tools/azure-http-specs/specs ./node_modules/@typespec/http-specs/specs --port 3002 --coverageFile ./coverage/spector-coverage-typescript-modular-azure.json",
114
- "copy:typespec": "rm -rf temp && mkdirp -p temp/specs && mkdirp -p temp/assets && cp -r ./node_modules/@typespec/http-specs/specs/* ./temp/specs && cp -r ./node_modules/@azure-tools/azure-http-specs/specs/* ./temp/specs && cp -r ./test/integration/typespec/* ./temp/specs && cp -r ./node_modules/@typespec/http-specs/assets/* ./temp/assets",
115
- "generate-and-run:rlc": "npm run generate-tsp-only:rlc && npm run integration-test:alone:rlc && npm run stop-test-server -- -p 3000",
116
- "generate-and-run:azure-rlc": "npm run generate-tsp-only:azure-rlc && npm run integration-test:alone:azure-rlc && npm run stop-test-server -- -p 3000",
117
- "generate-and-run:modular": "npm run generate-tsp-only:modular && npm run integration-test:alone:modular && npm run stop-test-server -- -p 3002",
118
- "generate-and-run:azure-modular": "npm run generate-tsp-only:azure-modular && npm run integration-test:alone:azure-modular && npm run stop-test-server -- -p 3002",
119
- "generate-tsp-only": "npm run generate-tsp-only:azure-rlc && npm run generate-tsp-only:rlc &&npm run generate-tsp-only:azure-modular && npm run generate-tsp-only:modular",
120
- "generate-tsp-only:rlc": "npx tsx ./test/commands/gen-spector.js --tag=rlc",
121
- "generate-tsp-only:azure-rlc": "npx tsx ./test/commands/gen-spector.js --tag=azure-rlc",
122
- "generate-tsp-only:modular": "npx tsx ./test/commands/gen-spector.js --tag=modular",
123
- "generate-tsp-only:azure-modular": "npx tsx ./test/commands/gen-spector.js --tag=azure-modular",
102
+ "copy:typespec": "node ./test/commands/copy-typespec.ts",
103
+ "generate-and-run:azure-modular": "npm run generate-tsp-only:azure-modular:client && npm-run-all -p integration-test:alone:azure-modular generate-tsp-only:azure-modular:declarations && npm run stop-test-server -- -p 3002",
104
+ "generate-tsp-only": "npm run generate-tsp-only:azure-modular",
105
+ "generate-tsp-only:azure-modular": "node ./test/commands/gen-spector.js",
106
+ "generate-tsp-only:azure-modular:client": "node ./test/commands/gen-spector.js --phase=client",
107
+ "generate-tsp-only:azure-modular:declarations": "node ./test/commands/gen-spector.js --phase=declarations",
124
108
  "regen-test-baselines": "npm run generate-tsp-only",
125
- "integration-test:alone": "npm run integration-test:alone:rlc && npm run integration-test:alone:azure-rlc && npm run integration-test:alone:modular && npm run integration-test:alone:azure-modular",
126
- "integration-test:alone:rlc": "vitest run --project integration-rlc",
127
- "integration-test:alone:azure-rlc": "vitest run --project integration-azure-rlc",
128
- "integration-test:alone:modular": "vitest run --project integration-modular",
109
+ "integration-test:alone": "npm run integration-test:alone:azure-modular",
129
110
  "integration-test:alone:azure-modular": "vitest run --project integration-azure-modular",
130
111
  "stop-test-server": "npx tsp-spector server stop",
131
- "unit-test": "npm-run-all --parallel unit-test:rlc unit-test:modular",
132
- "unit-test:rlc": "vitest run --project unit-rlc",
133
- "unit-test:modular": "cross-env NODE_OPTIONS=--max-old-space-size=8192 vitest run --project unit-modular",
134
- "regen-docs": "npm run build && tspd doc . --enable-experimental --output-dir ./website/src/content/docs/docs/emitters/clients/typespec-ts/reference --skip-js"
112
+ "unit-test": "npm run unit-test:modular",
113
+ "unit-test:modular": "cross-env NODE_OPTIONS=--max-old-space-size=1024 vitest run --project unit-modular",
114
+ "gen:scenario-suites": "node ./test/commands/gen-scenario-suites.ts",
115
+ "regen-docs": "npm run build && tspd doc . --enable-experimental --output-dir ../../website/src/content/docs/docs/emitters/clients/typespec-ts/reference --skip-js"
135
116
  }
136
117
  }
@@ -0,0 +1,101 @@
1
+ import { SdkContext } from "@azure-tools/typespec-client-generator-core";
2
+ import { EmitContext } from "@typespec/compiler";
3
+ import { Project, SourceFile } from "ts-morph";
4
+ import { ExternalDependencies } from "./framework/dependency.js";
5
+ import { Binder } from "./framework/hooks/binder.js";
6
+ import { SdkTypeContext } from "./framework/hooks/sdk-types.js";
7
+ import { RlcMetaTree } from "./meta-tree.js";
8
+
9
+ /**
10
+ * Contexts Object Guidelines
11
+ * --------------------------
12
+ * The `Contexts` object contains various application-wide data that needs to be accessible across different parts of the program without the need to pass down props deeply.
13
+ *
14
+ * When to add a new context:
15
+ * - **Cross-Cutting Concerns**: Add a new context when the data or functionality is a cross-cutting concern used by multiple unrelated components or modules.
16
+ * - **Global State**: If the state needs to be globally accessible and mutable by different parts of the application, and does not belong to a specific component or module.
17
+ * - **Performance Optimization**: To avoid unnecessary compute or prop drilling that may lead to performance bottlenecks, especially when passing down props through many levels.
18
+ * - **Shared Resources**: For resources that are shared across various parts of the application, such as settings, configurations, or metadata.
19
+ *
20
+ * Remember, adding too many contexts can lead to complex dependencies and harder-to-maintain code. Always evaluate if the context is truly necessary or if there are better alternatives such as localized state management or passing props for simpler scenarios.
21
+ */
22
+ type Contexts = {
23
+ rlcMetaTree: RlcMetaTree; // Context for RLC types metadata.
24
+ outputProject: Project; // The TS-Morph root project context for code generation.
25
+ symbolMap: Map<string, SourceFile>; // Mapping of symbols to their corresponding source files.
26
+ sdkTypes: SdkTypeContext;
27
+ emitContext: {
28
+ compilerContext: EmitContext;
29
+ tcgcContext: SdkContext;
30
+ };
31
+ binder: Binder;
32
+ dependencies: ExternalDependencies;
33
+ };
34
+
35
+ type ContextKey = keyof Contexts;
36
+
37
+ /**
38
+ * Manages shared contexts across the application to minimize prop drilling and enhance modularity.
39
+ * Implements the Singleton pattern to ensure there is a single instance of ContextManager.
40
+ */
41
+ class ContextManager {
42
+ private static instance: ContextManager;
43
+ private contexts: Map<ContextKey, any> = new Map();
44
+
45
+ private constructor() {}
46
+
47
+ /**
48
+ * Retrieves the singleton instance of the ContextManager.
49
+ * @returns {ContextManager} The singleton instance.
50
+ */
51
+ public static getInstance(): ContextManager {
52
+ if (!ContextManager.instance) {
53
+ ContextManager.instance = new ContextManager();
54
+ }
55
+ return ContextManager.instance;
56
+ }
57
+
58
+ /**
59
+ * Sets a value for a specific context key.
60
+ * @param {ContextKey} key - The key of the context to set.
61
+ * @param {Contexts[K]} value - The value to set for the specified context.
62
+ */
63
+ public setContext<K extends ContextKey>(key: K, value: Contexts[K]): void {
64
+ this.contexts.set(key, value);
65
+ }
66
+
67
+ /**
68
+ * Retrieves the context value for a specific key.
69
+ * @param {ContextKey} key - The key of the context to retrieve.
70
+ * @returns {Contexts[K] | undefined} The value of the context if found, otherwise undefined.
71
+ */
72
+ public getContext<K extends ContextKey>(key: K): Contexts[K] | undefined {
73
+ return this.contexts.get(key) as Contexts[K] | undefined;
74
+ }
75
+ }
76
+
77
+ // Expose the singleton instance of the context manager.
78
+ export const contextManager = ContextManager.getInstance();
79
+
80
+ /**
81
+ * A utility function to use a context by key.
82
+ * @param {ContextKey} key - The key of the context to retrieve.
83
+ * @throws Will throw an error if the context is not found.
84
+ * @returns {Contexts[K]} The context value.
85
+ */
86
+ export function useContext<K extends ContextKey>(key: K): Contexts[K] {
87
+ const context = contextManager.getContext(key);
88
+ if (!context) {
89
+ throw new Error(`Context ${key} not found`);
90
+ }
91
+ return context;
92
+ }
93
+
94
+ /**
95
+ * Provides a context with a value to be accessible across the program.
96
+ * @param {ContextKey} key - The key of the context to provide.
97
+ * @param {Contexts[K]} value - The value to set for the specified context.
98
+ */
99
+ export function provideContext<K extends ContextKey>(key: K, value: Contexts[K]): void {
100
+ contextManager.setContext(key, value);
101
+ }
@@ -1,5 +1,4 @@
1
- import { normalizePath } from "@typespec/compiler";
2
- import path from "path/posix";
1
+ import { joinPaths, normalizePath } from "@typespec/compiler";
3
2
  import {
4
3
  ImportDeclarationStructure,
5
4
  ImportSpecifierStructure,
@@ -7,12 +6,12 @@ import {
7
6
  SourceFile,
8
7
  StructureKind,
9
8
  } from "ts-morph";
10
- import { provideContext, useContext } from "../../contextManager.js";
11
- import { generateLocallyUniqueName } from "../../modular/helpers/namingHelpers.js";
9
+ import { provideContext, useContext } from "../../context-manager.js";
10
+ import { generateLocallyUniqueName } from "../../modular/helpers/naming-helpers.js";
12
11
  import { ReferenceableSymbol } from "../dependency.js";
13
12
  import { SourceFileSymbol, StaticHelperMetadata } from "../load-static-helpers.js";
14
13
  import { refkey } from "../refkey.js";
15
- import { provideDependencies, useDependencies } from "./useDependencies.js";
14
+ import { provideDependencies, useDependencies } from "./use-dependencies.js";
16
15
 
17
16
  export interface DeclarationInfo {
18
17
  name: string;
@@ -24,7 +23,7 @@ export interface BinderOptions {
24
23
  staticHelpers?: Map<string, StaticHelperMetadata>;
25
24
  dependencies?: Record<string, ReferenceableSymbol>;
26
25
  /** When true, use #platform/ subpath imports for static helpers with platform variants.
27
- * Should be true for warp (azureSdkForJs) packages; false for tshy packages. */
26
+ * Should be true for warp packages; false for tshy packages. */
28
27
  useSubpathImports?: boolean;
29
28
  }
30
29
 
@@ -354,7 +353,7 @@ class BinderImp implements Binder {
354
353
 
355
354
  // Also keep files that are imported by any used helper file
356
355
  const helperFiles = this.project.getSourceFiles(
357
- normalizePath(path.join(sourceRoot, "static-helpers/**/*.*ts")),
356
+ normalizePath(joinPaths(sourceRoot, "static-helpers/**/*.*ts")),
358
357
  );
359
358
  const usedFiles = helperFiles.filter((file) => !isFileUnused(file, usedHelperNames));
360
359
  for (const usedFile of usedFiles) {
@@ -378,7 +377,7 @@ class BinderImp implements Binder {
378
377
  }
379
378
  this.project
380
379
  //normalizae the final path to adapt to different systems
381
- .getSourceFiles(normalizePath(path.join(testRoot, "test/generated/util/**/*.*ts")))
380
+ .getSourceFiles(normalizePath(joinPaths(testRoot, "test/generated/util/**/*.*ts")))
382
381
  .filter((file) => isFileUnused(file, usedHelperNames))
383
382
  .forEach((helperFile) => helperFile.delete());
384
383
  }
@@ -0,0 +1,218 @@
1
+ import {
2
+ SdkClientType,
3
+ SdkHttpOperation,
4
+ SdkModelPropertyType,
5
+ SdkModelType,
6
+ SdkServiceMethod,
7
+ SdkType,
8
+ getClientType,
9
+ } from "@azure-tools/typespec-client-generator-core";
10
+ import { Operation, Type, getNamespaceFullName } from "@typespec/compiler";
11
+ import { provideContext, useContext } from "../../context-manager.js";
12
+
13
+ import { reportDiagnostic } from "../../lib.js";
14
+ import { visitPackageTypes } from "../../modular/emit-models.js";
15
+ import { getAllAncestors, getAllProperties } from "../../modular/helpers/operation-helpers.js";
16
+ import { normalizeModelPropertyName } from "../../modular/type-expressions/get-type-expression.js";
17
+ import { NameType, normalizeName } from "../../rlc-common/index.js";
18
+ import { SdkContext } from "../../utils/interfaces.js";
19
+
20
+ export const emitQueue: Set<SdkType> = new Set<SdkType>();
21
+ export const flattenPropertyModelMap: Map<SdkModelPropertyType, SdkModelType> = new Map<
22
+ SdkModelPropertyType,
23
+ SdkModelType
24
+ >();
25
+ /**
26
+ * Set of paged result models that are also used in non-paging operations.
27
+ * Precomputed during visitPackageTypes for O(1) lookups in normalizeModelName.
28
+ */
29
+ export const pagedModelsUsedInNonPagingOps = new Set<SdkType>();
30
+
31
+ export interface SdkTypeContext {
32
+ operations: Map<Type, SdkServiceMethod<SdkHttpOperation>>;
33
+ types: Map<Type, SdkType>;
34
+ flattenProperties: Map<SdkModelPropertyType, SdkFlattenPropertyContext>;
35
+ }
36
+
37
+ export interface SdkFlattenPropertyContext {
38
+ baseModel: SdkModelType;
39
+ conflictMap?: Map<SdkModelPropertyType, string>;
40
+ }
41
+
42
+ export function useSdkTypes() {
43
+ const sdkTypesContext = useContext("sdkTypes");
44
+ const { tcgcContext } = useContext("emitContext");
45
+
46
+ function getSdkType(type: Operation): SdkServiceMethod<SdkHttpOperation>;
47
+ function getSdkType(type: Type): SdkType;
48
+ function getSdkType(type: Type | Operation): SdkType | SdkServiceMethod<SdkHttpOperation> {
49
+ let sdkType: SdkType | SdkServiceMethod<SdkHttpOperation> | undefined;
50
+
51
+ if (type.kind === "Operation") {
52
+ sdkType = sdkTypesContext.operations.get(type);
53
+ } else {
54
+ sdkType = sdkTypesContext.types.get(type) ?? getClientType(tcgcContext, type);
55
+ }
56
+
57
+ if (!sdkType) {
58
+ throw new Error(
59
+ `SdkType not found for type: ${type.kind} ${
60
+ "name" in type && typeof type.name === "string" ? type.name : ""
61
+ } ${
62
+ "namespace" in type && type.namespace ? ` in ${getNamespaceFullName(type.namespace)}` : ""
63
+ }`,
64
+ );
65
+ }
66
+
67
+ return sdkType;
68
+ }
69
+
70
+ return getSdkType;
71
+ }
72
+
73
+ export function provideSdkTypes(context: SdkContext) {
74
+ const { sdkPackage } = context;
75
+ const sdkTypesContext: SdkTypeContext = {
76
+ operations: new Map<Type, SdkServiceMethod<SdkHttpOperation>>(),
77
+ types: new Map<Type, SdkType>(),
78
+ flattenProperties: new Map<SdkModelPropertyType, SdkFlattenPropertyContext>(),
79
+ };
80
+ visitPackageTypes(context);
81
+ enrichFlattenProperties(context, sdkTypesContext.flattenProperties, flattenPropertyModelMap);
82
+ for (const sdkModel of emitQueue) {
83
+ switch (sdkModel.kind) {
84
+ case "model":
85
+ sdkModel.properties.forEach((prop) => {
86
+ sdkTypesContext.types.set(prop.type.__raw!, prop.type);
87
+ });
88
+ if (sdkModel.discriminatedSubtypes) {
89
+ Object.values(sdkModel.discriminatedSubtypes).forEach((subtype) => {
90
+ sdkTypesContext.types.set(subtype.__raw!, subtype);
91
+ });
92
+ }
93
+ break;
94
+ case "enum":
95
+ if (sdkModel.__raw) {
96
+ sdkTypesContext.types.set(sdkModel.__raw, sdkModel);
97
+ }
98
+ break;
99
+ case "union":
100
+ sdkModel.variantTypes.forEach((v) => {
101
+ if (v.__raw) {
102
+ sdkTypesContext.types.set(v.__raw, v);
103
+ }
104
+ });
105
+ break;
106
+ case "array":
107
+ sdkTypesContext.types.set(sdkModel.valueType.__raw!, sdkModel.valueType);
108
+ break;
109
+ case "dict":
110
+ sdkTypesContext.types.set(sdkModel.valueType.__raw!, sdkModel.valueType);
111
+ break;
112
+ case "nullable":
113
+ sdkTypesContext.types.set(sdkModel.__raw!, sdkModel);
114
+ sdkTypesContext.types.set(sdkModel.type.__raw!, sdkModel.type);
115
+ break;
116
+ }
117
+ if (!sdkModel.__raw) {
118
+ continue;
119
+ }
120
+ sdkTypesContext.types.set(sdkModel.__raw, sdkModel);
121
+ }
122
+
123
+ for (const client of sdkPackage.clients) {
124
+ for (const method of getAllOperationsFromClient(client)) {
125
+ if (!method.__raw) {
126
+ continue;
127
+ }
128
+
129
+ sdkTypesContext.operations.set(method.__raw, method);
130
+
131
+ // Visit the parameters of the method to add them to the types map
132
+ method.parameters.forEach((param) => {
133
+ sdkTypesContext.types.set(param.type.__raw!, param.type);
134
+ });
135
+ }
136
+ }
137
+
138
+ provideContext("sdkTypes", sdkTypesContext);
139
+ }
140
+
141
+ // Enrich flatten properties with their base models and conflict maps
142
+ function enrichFlattenProperties(
143
+ context: SdkContext,
144
+ propertyContextMap: Map<SdkModelPropertyType, SdkFlattenPropertyContext>,
145
+ propertyModelMap: Map<SdkModelPropertyType, SdkModelType>,
146
+ ) {
147
+ // Build a map of base model to its existing properties excluding flatten properties
148
+ // To check for conflicts later
149
+ const baseModelProperties = new Map<SdkModelType, Set<string>>();
150
+ propertyModelMap.forEach((baseModel, _) => {
151
+ if (!baseModelProperties.has(baseModel)) {
152
+ const propertiesExcludedFlatten = getAllProperties(
153
+ context,
154
+ baseModel,
155
+ getAllAncestors(baseModel),
156
+ )
157
+ .filter((p) => !(p.flatten && p.type.kind === "model"))
158
+ .map((p) => normalizeModelPropertyName(context, p));
159
+ baseModelProperties.set(baseModel, new Set<string>(propertiesExcludedFlatten));
160
+ }
161
+ });
162
+ for (const [flattenProperty, baseModel] of propertyModelMap) {
163
+ const flattenContext: SdkFlattenPropertyContext = {
164
+ baseModel: baseModel,
165
+ };
166
+ propertyContextMap.set(flattenProperty, flattenContext);
167
+ const existingProperties = baseModelProperties.get(baseModel)!;
168
+ const conflictMap = new Map<SdkModelPropertyType, string>();
169
+ const flattenModel = flattenProperty.type;
170
+
171
+ if (baseModelProperties.has(flattenModel as SdkModelType)) {
172
+ // If the flatten model is also a base model of other flatten properties, which means it has multiple consecutive flatten operations
173
+ // Since we cannot handle the flatten transition, report warning and skip it for now
174
+ reportDiagnostic(context.program, {
175
+ code: "unsupported-flatten-transition",
176
+ format: {
177
+ propertyName: flattenProperty.name,
178
+ modelName: baseModel.name,
179
+ },
180
+ target: flattenProperty.__raw!,
181
+ });
182
+ }
183
+ const allFlattenProperties = getAllProperties(
184
+ context,
185
+ flattenModel,
186
+ getAllAncestors(flattenModel),
187
+ );
188
+ for (const flattenChildProperty of allFlattenProperties) {
189
+ let childPropertyName = normalizeModelPropertyName(context, flattenChildProperty);
190
+ if (existingProperties.has(childPropertyName)) {
191
+ childPropertyName = normalizeName(
192
+ `${childPropertyName}_${flattenProperty.name}_${childPropertyName}`,
193
+ NameType.Property,
194
+ );
195
+ conflictMap.set(flattenChildProperty, childPropertyName);
196
+ }
197
+ existingProperties.add(childPropertyName);
198
+ }
199
+ if (conflictMap.size === 0) {
200
+ continue;
201
+ }
202
+ flattenContext.conflictMap = conflictMap;
203
+ }
204
+ }
205
+
206
+ export function getAllOperationsFromClient(client: SdkClientType<SdkHttpOperation>) {
207
+ const clientQueue = [client];
208
+ const operations: SdkServiceMethod<SdkHttpOperation>[] = [];
209
+ while (clientQueue.length > 0) {
210
+ const client = clientQueue.pop()!;
211
+ if (client.children) {
212
+ clientQueue.push(...client.children);
213
+ }
214
+ operations.push(...client.methods);
215
+ }
216
+
217
+ return operations;
218
+ }
@@ -0,0 +1,16 @@
1
+ import { provideContext, useContext } from "../../context-manager.js";
2
+ import { DefaultCoreDependencies } from "../../modular/external-dependencies.js";
3
+ import { ExternalDependencies } from "../dependency.js";
4
+
5
+ export function provideDependencies(customDependencies: Partial<ExternalDependencies> = {}) {
6
+ const dependencies = {
7
+ ...DefaultCoreDependencies,
8
+ ...customDependencies,
9
+ } as ExternalDependencies;
10
+
11
+ provideContext("dependencies", dependencies);
12
+ }
13
+
14
+ export function useDependencies(): ExternalDependencies {
15
+ return useContext("dependencies");
16
+ }