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

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 (1025) hide show
  1. package/README.md +96 -24
  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.map +1 -1
  7. package/dist/src/framework/hooks/binder.js +6 -7
  8. package/dist/src/framework/hooks/binder.js.map +1 -1
  9. package/dist/src/framework/hooks/sdk-types.d.ts +26 -0
  10. package/dist/src/framework/hooks/sdk-types.d.ts.map +1 -0
  11. package/dist/src/framework/hooks/sdk-types.js +157 -0
  12. package/dist/src/framework/hooks/sdk-types.js.map +1 -0
  13. package/dist/src/framework/hooks/use-dependencies.d.ts +4 -0
  14. package/dist/src/framework/hooks/use-dependencies.d.ts.map +1 -0
  15. package/dist/src/framework/hooks/use-dependencies.js +13 -0
  16. package/dist/src/framework/hooks/use-dependencies.js.map +1 -0
  17. package/dist/src/framework/load-static-helpers.d.ts.map +1 -1
  18. package/dist/src/framework/load-static-helpers.js +7 -8
  19. package/dist/src/framework/load-static-helpers.js.map +1 -1
  20. package/dist/src/index.d.ts.map +1 -1
  21. package/dist/src/index.js +40 -40
  22. package/dist/src/index.js.map +1 -1
  23. package/dist/src/lib.js +30 -31
  24. package/dist/src/lib.js.map +1 -1
  25. package/dist/src/meta-tree.d.ts +7 -0
  26. package/dist/src/meta-tree.d.ts.map +1 -0
  27. package/dist/src/meta-tree.js +2 -0
  28. package/dist/src/meta-tree.js.map +1 -0
  29. package/dist/src/modular/build-classical-client.d.ts +6 -0
  30. package/dist/src/modular/build-classical-client.d.ts.map +1 -0
  31. package/dist/src/modular/build-classical-client.js +345 -0
  32. package/dist/src/modular/build-classical-client.js.map +1 -0
  33. package/dist/src/modular/build-classical-operation-groups.d.ts +6 -0
  34. package/dist/src/modular/build-classical-operation-groups.d.ts.map +1 -0
  35. package/dist/src/modular/build-classical-operation-groups.js +48 -0
  36. package/dist/src/modular/build-classical-operation-groups.js.map +1 -0
  37. package/dist/src/modular/build-client-context.d.ts +13 -0
  38. package/dist/src/modular/build-client-context.d.ts.map +1 -0
  39. package/dist/src/modular/build-client-context.js +246 -0
  40. package/dist/src/modular/build-client-context.js.map +1 -0
  41. package/dist/src/modular/build-modular-options.d.ts +6 -0
  42. package/dist/src/modular/build-modular-options.d.ts.map +1 -0
  43. package/dist/src/modular/build-modular-options.js +14 -0
  44. package/dist/src/modular/build-modular-options.js.map +1 -0
  45. package/dist/src/modular/build-operations.d.ts +21 -0
  46. package/dist/src/modular/build-operations.d.ts.map +1 -0
  47. package/dist/src/modular/build-operations.js +172 -0
  48. package/dist/src/modular/build-operations.js.map +1 -0
  49. package/dist/src/modular/build-project-files.d.ts +4 -0
  50. package/dist/src/modular/build-project-files.d.ts.map +1 -0
  51. package/dist/src/modular/build-project-files.js +91 -0
  52. package/dist/src/modular/build-project-files.js.map +1 -0
  53. package/dist/src/modular/build-restore-poller.d.ts +5 -0
  54. package/dist/src/modular/build-restore-poller.d.ts.map +1 -0
  55. package/dist/src/modular/build-restore-poller.js +216 -0
  56. package/dist/src/modular/build-restore-poller.js.map +1 -0
  57. package/dist/src/modular/build-root-index.d.ts +13 -0
  58. package/dist/src/modular/build-root-index.d.ts.map +1 -0
  59. package/dist/src/modular/build-root-index.js +278 -0
  60. package/dist/src/modular/build-root-index.js.map +1 -0
  61. package/dist/src/modular/build-subpath-index.d.ts +16 -0
  62. package/dist/src/modular/build-subpath-index.d.ts.map +1 -0
  63. package/dist/src/modular/build-subpath-index.js +119 -0
  64. package/dist/src/modular/build-subpath-index.js.map +1 -0
  65. package/dist/src/modular/emit-logger-file.d.ts +3 -0
  66. package/dist/src/modular/emit-logger-file.d.ts.map +1 -0
  67. package/dist/src/modular/emit-logger-file.js +18 -0
  68. package/dist/src/modular/emit-logger-file.js.map +1 -0
  69. package/dist/src/modular/emit-models-options.d.ts +5 -0
  70. package/dist/src/modular/emit-models-options.d.ts.map +1 -0
  71. package/dist/src/modular/emit-models-options.js +35 -0
  72. package/dist/src/modular/emit-models-options.js.map +1 -0
  73. package/dist/src/modular/emit-models.d.ts +23 -0
  74. package/dist/src/modular/emit-models.d.ts.map +1 -0
  75. package/dist/src/modular/emit-models.js +849 -0
  76. package/dist/src/modular/emit-models.js.map +1 -0
  77. package/dist/src/modular/emit-samples.d.ts +7 -0
  78. package/dist/src/modular/emit-samples.d.ts.map +1 -0
  79. package/dist/src/modular/emit-samples.js +499 -0
  80. package/dist/src/modular/emit-samples.js.map +1 -0
  81. package/dist/src/modular/emit-tests.d.ts +7 -0
  82. package/dist/src/modular/emit-tests.d.ts.map +1 -0
  83. package/dist/src/modular/emit-tests.js +155 -0
  84. package/dist/src/modular/emit-tests.js.map +1 -0
  85. package/dist/src/modular/helpers/classical-operation-helpers.d.ts +7 -0
  86. package/dist/src/modular/helpers/classical-operation-helpers.d.ts.map +1 -0
  87. package/dist/src/modular/helpers/classical-operation-helpers.js +258 -0
  88. package/dist/src/modular/helpers/classical-operation-helpers.js.map +1 -0
  89. package/dist/src/modular/helpers/client-helpers.d.ts +34 -0
  90. package/dist/src/modular/helpers/client-helpers.d.ts.map +1 -0
  91. package/dist/src/modular/helpers/client-helpers.js +259 -0
  92. package/dist/src/modular/helpers/client-helpers.js.map +1 -0
  93. package/dist/src/modular/helpers/client-option-helpers.d.ts +43 -0
  94. package/dist/src/modular/helpers/client-option-helpers.d.ts.map +1 -0
  95. package/dist/src/modular/helpers/client-option-helpers.js +103 -0
  96. package/dist/src/modular/helpers/client-option-helpers.js.map +1 -0
  97. package/dist/src/modular/helpers/docs-helpers.d.ts +3 -0
  98. package/dist/src/modular/helpers/docs-helpers.d.ts.map +1 -0
  99. package/dist/src/modular/helpers/docs-helpers.js +10 -0
  100. package/dist/src/modular/helpers/docs-helpers.js.map +1 -0
  101. package/dist/src/modular/helpers/example-value-helpers.d.ts +83 -0
  102. package/dist/src/modular/helpers/example-value-helpers.d.ts.map +1 -0
  103. package/dist/src/modular/helpers/example-value-helpers.js +639 -0
  104. package/dist/src/modular/helpers/example-value-helpers.js.map +1 -0
  105. package/dist/src/modular/helpers/naming-helpers.d.ts +22 -0
  106. package/dist/src/modular/helpers/naming-helpers.d.ts.map +1 -0
  107. package/dist/src/modular/helpers/naming-helpers.js +59 -0
  108. package/dist/src/modular/helpers/naming-helpers.js.map +1 -0
  109. package/dist/src/modular/helpers/operation-helpers.d.ts +105 -0
  110. package/dist/src/modular/helpers/operation-helpers.d.ts.map +1 -0
  111. package/dist/src/modular/helpers/operation-helpers.js +2328 -0
  112. package/dist/src/modular/helpers/operation-helpers.js.map +1 -0
  113. package/dist/src/modular/helpers/type-helpers.d.ts +22 -0
  114. package/dist/src/modular/helpers/type-helpers.d.ts.map +1 -0
  115. package/dist/src/modular/helpers/type-helpers.js +94 -0
  116. package/dist/src/modular/helpers/type-helpers.js.map +1 -0
  117. package/dist/src/modular/serialization/build-deserializer-function.d.ts +7 -0
  118. package/dist/src/modular/serialization/build-deserializer-function.d.ts.map +1 -0
  119. package/dist/src/modular/serialization/build-deserializer-function.js +401 -0
  120. package/dist/src/modular/serialization/build-deserializer-function.js.map +1 -0
  121. package/dist/src/modular/serialization/build-serializer-function.d.ts +7 -0
  122. package/dist/src/modular/serialization/build-serializer-function.d.ts.map +1 -0
  123. package/dist/src/modular/serialization/build-serializer-function.js +442 -0
  124. package/dist/src/modular/serialization/build-serializer-function.js.map +1 -0
  125. package/dist/src/modular/serialization/build-xml-serializer-function.d.ts +44 -0
  126. package/dist/src/modular/serialization/build-xml-serializer-function.d.ts.map +1 -0
  127. package/dist/src/modular/serialization/build-xml-serializer-function.js +729 -0
  128. package/dist/src/modular/serialization/build-xml-serializer-function.js.map +1 -0
  129. package/dist/src/modular/serialization/serialize-utils.d.ts +37 -0
  130. package/dist/src/modular/serialization/serialize-utils.d.ts.map +1 -0
  131. package/dist/src/modular/serialization/serialize-utils.js +145 -0
  132. package/dist/src/modular/serialization/serialize-utils.js.map +1 -0
  133. package/dist/src/modular/type-expressions/get-credential-expression.js +1 -1
  134. package/dist/src/modular/type-expressions/get-credential-expression.js.map +1 -1
  135. package/dist/src/modular/type-expressions/get-model-expression.js +1 -1
  136. package/dist/src/modular/type-expressions/get-model-expression.js.map +1 -1
  137. package/dist/src/rlc-common/build-client-definitions.d.ts +6 -0
  138. package/dist/src/rlc-common/build-client-definitions.d.ts.map +1 -0
  139. package/dist/src/rlc-common/build-client-definitions.js +157 -0
  140. package/dist/src/rlc-common/build-client-definitions.js.map +1 -0
  141. package/dist/src/rlc-common/build-client.d.ts +9 -0
  142. package/dist/src/rlc-common/build-client.d.ts.map +1 -0
  143. package/dist/src/rlc-common/build-client.js +391 -0
  144. package/dist/src/rlc-common/build-client.js.map +1 -0
  145. package/dist/src/rlc-common/build-index-file.d.ts +6 -0
  146. package/dist/src/rlc-common/build-index-file.d.ts.map +1 -0
  147. package/dist/src/rlc-common/build-index-file.js +241 -0
  148. package/dist/src/rlc-common/build-index-file.js.map +1 -0
  149. package/dist/src/rlc-common/build-is-unexpected-helper.d.ts +6 -0
  150. package/dist/src/rlc-common/build-is-unexpected-helper.d.ts.map +1 -0
  151. package/dist/src/rlc-common/build-is-unexpected-helper.js +223 -0
  152. package/dist/src/rlc-common/build-is-unexpected-helper.js.map +1 -0
  153. package/dist/src/rlc-common/build-logger.d.ts +6 -0
  154. package/dist/src/rlc-common/build-logger.d.ts.map +1 -0
  155. package/dist/src/rlc-common/build-logger.js +31 -0
  156. package/dist/src/rlc-common/build-logger.js.map +1 -0
  157. package/dist/src/rlc-common/build-method-shortcuts.d.ts +5 -0
  158. package/dist/src/rlc-common/build-method-shortcuts.d.ts.map +1 -0
  159. package/dist/src/rlc-common/build-method-shortcuts.js +54 -0
  160. package/dist/src/rlc-common/build-method-shortcuts.js.map +1 -0
  161. package/dist/src/rlc-common/build-object-types.d.ts +29 -0
  162. package/dist/src/rlc-common/build-object-types.d.ts.map +1 -0
  163. package/dist/src/rlc-common/build-object-types.js +412 -0
  164. package/dist/src/rlc-common/build-object-types.js.map +1 -0
  165. package/dist/src/rlc-common/build-paginate-helper.d.ts +6 -0
  166. package/dist/src/rlc-common/build-paginate-helper.d.ts.map +1 -0
  167. package/dist/src/rlc-common/build-paginate-helper.js +27 -0
  168. package/dist/src/rlc-common/build-paginate-helper.js.map +1 -0
  169. package/dist/src/rlc-common/build-parameter-types.d.ts +14 -0
  170. package/dist/src/rlc-common/build-parameter-types.d.ts.map +1 -0
  171. package/dist/src/rlc-common/build-parameter-types.js +391 -0
  172. package/dist/src/rlc-common/build-parameter-types.js.map +1 -0
  173. package/dist/src/rlc-common/build-polling-helper.d.ts +6 -0
  174. package/dist/src/rlc-common/build-polling-helper.d.ts.map +1 -0
  175. package/dist/src/rlc-common/build-polling-helper.js +61 -0
  176. package/dist/src/rlc-common/build-polling-helper.js.map +1 -0
  177. package/dist/src/rlc-common/build-response-types.d.ts +6 -0
  178. package/dist/src/rlc-common/build-response-types.d.ts.map +1 -0
  179. package/dist/src/rlc-common/build-response-types.js +143 -0
  180. package/dist/src/rlc-common/build-response-types.js.map +1 -0
  181. package/dist/src/rlc-common/build-samples.d.ts +3 -0
  182. package/dist/src/rlc-common/build-samples.d.ts.map +1 -0
  183. package/dist/src/rlc-common/build-samples.js +30 -0
  184. package/dist/src/rlc-common/build-samples.js.map +1 -0
  185. package/dist/src/rlc-common/build-schema-type.d.ts +20 -0
  186. package/dist/src/rlc-common/build-schema-type.d.ts.map +1 -0
  187. package/dist/src/rlc-common/build-schema-type.js +71 -0
  188. package/dist/src/rlc-common/build-schema-type.js.map +1 -0
  189. package/dist/src/rlc-common/build-serialize-helper.d.ts +6 -0
  190. package/dist/src/rlc-common/build-serialize-helper.d.ts.map +1 -0
  191. package/dist/src/rlc-common/build-serialize-helper.js +36 -0
  192. package/dist/src/rlc-common/build-serialize-helper.js.map +1 -0
  193. package/dist/src/rlc-common/build-top-level-index-file.d.ts +6 -0
  194. package/dist/src/rlc-common/build-top-level-index-file.d.ts.map +1 -0
  195. package/dist/src/rlc-common/build-top-level-index-file.js +48 -0
  196. package/dist/src/rlc-common/build-top-level-index-file.js.map +1 -0
  197. package/dist/src/rlc-common/helpers/api-version-util.d.ts +17 -0
  198. package/dist/src/rlc-common/helpers/api-version-util.d.ts.map +1 -0
  199. package/dist/src/rlc-common/helpers/api-version-util.js +43 -0
  200. package/dist/src/rlc-common/helpers/api-version-util.js.map +1 -0
  201. package/dist/src/rlc-common/helpers/imports-util.d.ts +18 -0
  202. package/dist/src/rlc-common/helpers/imports-util.d.ts.map +1 -0
  203. package/dist/src/rlc-common/helpers/imports-util.js +164 -0
  204. package/dist/src/rlc-common/helpers/imports-util.js.map +1 -0
  205. package/dist/src/rlc-common/helpers/name-constructors.d.ts +42 -0
  206. package/dist/src/rlc-common/helpers/name-constructors.d.ts.map +1 -0
  207. package/dist/src/rlc-common/helpers/name-constructors.js +61 -0
  208. package/dist/src/rlc-common/helpers/name-constructors.js.map +1 -0
  209. package/dist/src/rlc-common/helpers/name-utils.d.ts +37 -0
  210. package/dist/src/rlc-common/helpers/name-utils.d.ts.map +1 -0
  211. package/dist/src/rlc-common/helpers/name-utils.js +240 -0
  212. package/dist/src/rlc-common/helpers/name-utils.js.map +1 -0
  213. package/dist/src/rlc-common/helpers/operation-helpers.d.ts +16 -0
  214. package/dist/src/rlc-common/helpers/operation-helpers.d.ts.map +1 -0
  215. package/dist/src/rlc-common/helpers/operation-helpers.js +104 -0
  216. package/dist/src/rlc-common/helpers/operation-helpers.js.map +1 -0
  217. package/dist/src/rlc-common/helpers/package-util.d.ts +7 -0
  218. package/dist/src/rlc-common/helpers/package-util.d.ts.map +1 -0
  219. package/dist/src/rlc-common/helpers/package-util.js +10 -0
  220. package/dist/src/rlc-common/helpers/package-util.js.map +1 -0
  221. package/dist/src/rlc-common/helpers/path-utils.d.ts +2 -0
  222. package/dist/src/rlc-common/helpers/path-utils.d.ts.map +1 -0
  223. package/dist/src/rlc-common/helpers/path-utils.js +9 -0
  224. package/dist/src/rlc-common/helpers/path-utils.js.map +1 -0
  225. package/dist/src/rlc-common/helpers/schema-helpers.d.ts +10 -0
  226. package/dist/src/rlc-common/helpers/schema-helpers.d.ts.map +1 -0
  227. package/dist/src/rlc-common/helpers/schema-helpers.js +37 -0
  228. package/dist/src/rlc-common/helpers/schema-helpers.js.map +1 -0
  229. package/dist/src/rlc-common/helpers/shortcut-methods.d.ts +4 -0
  230. package/dist/src/rlc-common/helpers/shortcut-methods.d.ts.map +1 -0
  231. package/dist/src/rlc-common/helpers/shortcut-methods.js +49 -0
  232. package/dist/src/rlc-common/helpers/shortcut-methods.js.map +1 -0
  233. package/dist/src/rlc-common/helpers/type-util.d.ts +32 -0
  234. package/dist/src/rlc-common/helpers/type-util.d.ts.map +1 -0
  235. package/dist/src/rlc-common/helpers/type-util.js +162 -0
  236. package/dist/src/rlc-common/helpers/type-util.js.map +1 -0
  237. package/dist/src/rlc-common/helpers/value-generation-util.d.ts +12 -0
  238. package/dist/src/rlc-common/helpers/value-generation-util.d.ts.map +1 -0
  239. package/dist/src/rlc-common/helpers/value-generation-util.js +161 -0
  240. package/dist/src/rlc-common/helpers/value-generation-util.js.map +1 -0
  241. package/dist/src/rlc-common/index.d.ts +39 -39
  242. package/dist/src/rlc-common/index.d.ts.map +1 -1
  243. package/dist/src/rlc-common/index.js +39 -39
  244. package/dist/src/rlc-common/index.js.map +1 -1
  245. package/dist/src/rlc-common/metadata/build-api-extractor-config.d.ts +6 -0
  246. package/dist/src/rlc-common/metadata/build-api-extractor-config.d.ts.map +1 -0
  247. package/dist/src/rlc-common/metadata/build-api-extractor-config.js +55 -0
  248. package/dist/src/rlc-common/metadata/build-api-extractor-config.js.map +1 -0
  249. package/dist/src/rlc-common/metadata/build-changelog-file.d.ts +6 -0
  250. package/dist/src/rlc-common/metadata/build-changelog-file.d.ts.map +1 -0
  251. package/dist/src/rlc-common/metadata/build-changelog-file.js +25 -0
  252. package/dist/src/rlc-common/metadata/build-changelog-file.js.map +1 -0
  253. package/dist/src/rlc-common/metadata/build-es-lint-config.d.ts +6 -0
  254. package/dist/src/rlc-common/metadata/build-es-lint-config.d.ts.map +1 -0
  255. package/dist/src/rlc-common/metadata/build-es-lint-config.js +79 -0
  256. package/dist/src/rlc-common/metadata/build-es-lint-config.js.map +1 -0
  257. package/dist/src/rlc-common/metadata/build-license-file.d.ts +5 -0
  258. package/dist/src/rlc-common/metadata/build-license-file.d.ts.map +1 -0
  259. package/dist/src/rlc-common/metadata/build-license-file.js +32 -0
  260. package/dist/src/rlc-common/metadata/build-license-file.js.map +1 -0
  261. package/dist/src/rlc-common/metadata/build-package-file.d.ts +25 -0
  262. package/dist/src/rlc-common/metadata/build-package-file.d.ts.map +1 -0
  263. package/dist/src/rlc-common/metadata/build-package-file.js +197 -0
  264. package/dist/src/rlc-common/metadata/build-package-file.js.map +1 -0
  265. package/dist/src/rlc-common/metadata/build-readme-file.d.ts +11 -0
  266. package/dist/src/rlc-common/metadata/build-readme-file.d.ts.map +1 -0
  267. package/dist/src/rlc-common/metadata/build-readme-file.js +418 -0
  268. package/dist/src/rlc-common/metadata/build-readme-file.js.map +1 -0
  269. package/dist/src/rlc-common/metadata/build-rollup-config.d.ts +6 -0
  270. package/dist/src/rlc-common/metadata/build-rollup-config.d.ts.map +1 -0
  271. package/dist/src/rlc-common/metadata/build-rollup-config.js +140 -0
  272. package/dist/src/rlc-common/metadata/build-rollup-config.js.map +1 -0
  273. package/dist/src/rlc-common/metadata/build-sample-env-file.d.ts +6 -0
  274. package/dist/src/rlc-common/metadata/build-sample-env-file.d.ts.map +1 -0
  275. package/dist/src/rlc-common/metadata/build-sample-env-file.js +15 -0
  276. package/dist/src/rlc-common/metadata/build-sample-env-file.js.map +1 -0
  277. package/dist/src/rlc-common/metadata/build-test-config.d.ts +16 -0
  278. package/dist/src/rlc-common/metadata/build-test-config.d.ts.map +1 -0
  279. package/dist/src/rlc-common/metadata/build-test-config.js +54 -0
  280. package/dist/src/rlc-common/metadata/build-test-config.js.map +1 -0
  281. package/dist/src/rlc-common/metadata/build-ts-config.d.ts +61 -0
  282. package/dist/src/rlc-common/metadata/build-ts-config.d.ts.map +1 -0
  283. package/dist/src/rlc-common/metadata/build-ts-config.js +170 -0
  284. package/dist/src/rlc-common/metadata/build-ts-config.js.map +1 -0
  285. package/dist/src/rlc-common/metadata/build-vitest-config.d.ts +6 -0
  286. package/dist/src/rlc-common/metadata/build-vitest-config.d.ts.map +1 -0
  287. package/dist/src/rlc-common/metadata/build-vitest-config.js +26 -0
  288. package/dist/src/rlc-common/metadata/build-vitest-config.js.map +1 -0
  289. package/dist/src/rlc-common/metadata/build-warp-config.d.ts +20 -0
  290. package/dist/src/rlc-common/metadata/build-warp-config.d.ts.map +1 -0
  291. package/dist/src/rlc-common/metadata/build-warp-config.js +76 -0
  292. package/dist/src/rlc-common/metadata/build-warp-config.js.map +1 -0
  293. package/dist/src/rlc-common/metadata/package-json/azure-package-common.d.ts +51 -0
  294. package/dist/src/rlc-common/metadata/package-json/azure-package-common.d.ts.map +1 -0
  295. package/dist/src/rlc-common/metadata/package-json/azure-package-common.js +121 -0
  296. package/dist/src/rlc-common/metadata/package-json/azure-package-common.js.map +1 -0
  297. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.d.ts +242 -0
  298. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.d.ts.map +1 -0
  299. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.js +171 -0
  300. package/dist/src/rlc-common/metadata/package-json/build-azure-monorepo-package.js.map +1 -0
  301. package/dist/src/rlc-common/metadata/package-json/build-azure-standalone-package.d.ts +8 -0
  302. package/dist/src/rlc-common/metadata/package-json/build-azure-standalone-package.d.ts.map +1 -0
  303. package/dist/src/rlc-common/metadata/package-json/build-azure-standalone-package.js +101 -0
  304. package/dist/src/rlc-common/metadata/package-json/build-azure-standalone-package.js.map +1 -0
  305. package/dist/src/rlc-common/metadata/package-json/build-flavorless-package.d.ts +57 -0
  306. package/dist/src/rlc-common/metadata/package-json/build-flavorless-package.d.ts.map +1 -0
  307. package/dist/src/rlc-common/metadata/package-json/build-flavorless-package.js +53 -0
  308. package/dist/src/rlc-common/metadata/package-json/build-flavorless-package.js.map +1 -0
  309. package/dist/src/rlc-common/metadata/package-json/package-common.d.ts +64 -0
  310. package/dist/src/rlc-common/metadata/package-json/package-common.d.ts.map +1 -0
  311. package/dist/src/rlc-common/metadata/package-json/package-common.js +180 -0
  312. package/dist/src/rlc-common/metadata/package-json/package-common.js.map +1 -0
  313. package/dist/src/rlc-common/static/paginate-content.d.ts +2 -0
  314. package/dist/src/rlc-common/static/paginate-content.d.ts.map +1 -0
  315. package/dist/src/rlc-common/static/paginate-content.js +345 -0
  316. package/dist/src/rlc-common/static/paginate-content.js.map +1 -0
  317. package/dist/src/rlc-common/static/polling-content.d.ts +2 -0
  318. package/dist/src/rlc-common/static/polling-content.d.ts.map +1 -0
  319. package/dist/src/rlc-common/static/polling-content.js +225 -0
  320. package/dist/src/rlc-common/static/polling-content.js.map +1 -0
  321. package/dist/src/rlc-common/static/sample-template.d.ts +2 -0
  322. package/dist/src/rlc-common/static/sample-template.d.ts.map +1 -0
  323. package/dist/src/rlc-common/static/sample-template.js +56 -0
  324. package/dist/src/rlc-common/static/sample-template.js.map +1 -0
  325. package/dist/src/rlc-common/static/serialize-helper.d.ts +6 -0
  326. package/dist/src/rlc-common/static/serialize-helper.d.ts.map +1 -0
  327. package/dist/src/rlc-common/static/serialize-helper.js +31 -0
  328. package/dist/src/rlc-common/static/serialize-helper.js.map +1 -0
  329. package/dist/src/rlc-common/test/build-karma-config.d.ts +6 -0
  330. package/dist/src/rlc-common/test/build-karma-config.d.ts.map +1 -0
  331. package/dist/src/rlc-common/test/build-karma-config.js +11 -0
  332. package/dist/src/rlc-common/test/build-karma-config.js.map +1 -0
  333. package/dist/src/rlc-common/test/build-recorded-client.d.ts +6 -0
  334. package/dist/src/rlc-common/test/build-recorded-client.d.ts.map +1 -0
  335. package/dist/src/rlc-common/test/build-recorded-client.js +17 -0
  336. package/dist/src/rlc-common/test/build-recorded-client.js.map +1 -0
  337. package/dist/src/rlc-common/test/build-sample-test.d.ts +6 -0
  338. package/dist/src/rlc-common/test/build-sample-test.d.ts.map +1 -0
  339. package/dist/src/rlc-common/test/build-sample-test.js +14 -0
  340. package/dist/src/rlc-common/test/build-sample-test.js.map +1 -0
  341. package/dist/src/rlc-common/test/build-snippets.d.ts +6 -0
  342. package/dist/src/rlc-common/test/build-snippets.d.ts.map +1 -0
  343. package/dist/src/rlc-common/test/build-snippets.js +26 -0
  344. package/dist/src/rlc-common/test/build-snippets.js.map +1 -0
  345. package/dist/src/rlc-common/transform-sample-groups.d.ts +9 -0
  346. package/dist/src/rlc-common/transform-sample-groups.d.ts.map +1 -0
  347. package/dist/src/rlc-common/transform-sample-groups.js +313 -0
  348. package/dist/src/rlc-common/transform-sample-groups.js.map +1 -0
  349. package/dist/src/transform/transform-api-version-info.d.ts +6 -0
  350. package/dist/src/transform/transform-api-version-info.d.ts.map +1 -0
  351. package/dist/src/transform/transform-api-version-info.js +78 -0
  352. package/dist/src/transform/transform-api-version-info.js.map +1 -0
  353. package/dist/src/transform/transform-helper-function-details.d.ts +5 -0
  354. package/dist/src/transform/transform-helper-function-details.d.ts.map +1 -0
  355. package/dist/src/transform/transform-helper-function-details.js +74 -0
  356. package/dist/src/transform/transform-helper-function-details.js.map +1 -0
  357. package/dist/src/transform/transform-parameters.d.ts +14 -0
  358. package/dist/src/transform/transform-parameters.d.ts.map +1 -0
  359. package/dist/src/transform/transform-parameters.js +201 -0
  360. package/dist/src/transform/transform-parameters.js.map +1 -0
  361. package/dist/src/transform/transform-paths.d.ts +5 -0
  362. package/dist/src/transform/transform-paths.d.ts.map +1 -0
  363. package/dist/src/transform/transform-paths.js +102 -0
  364. package/dist/src/transform/transform-paths.js.map +1 -0
  365. package/dist/src/transform/transform-responses.d.ts +5 -0
  366. package/dist/src/transform/transform-responses.d.ts.map +1 -0
  367. package/dist/src/transform/transform-responses.js +171 -0
  368. package/dist/src/transform/transform-responses.js.map +1 -0
  369. package/dist/src/transform/transform-schemas.d.ts +4 -0
  370. package/dist/src/transform/transform-schemas.d.ts.map +1 -0
  371. package/dist/src/transform/transform-schemas.js +191 -0
  372. package/dist/src/transform/transform-schemas.js.map +1 -0
  373. package/dist/src/transform/transform-telemetry-info.d.ts +4 -0
  374. package/dist/src/transform/transform-telemetry-info.d.ts.map +1 -0
  375. package/dist/src/transform/transform-telemetry-info.js +22 -0
  376. package/dist/src/transform/transform-telemetry-info.js.map +1 -0
  377. package/dist/src/transform/transform.d.ts.map +1 -1
  378. package/dist/src/transform/transform.js +12 -13
  379. package/dist/src/transform/transform.js.map +1 -1
  380. package/dist/src/transform/transfrom-rlc-options.d.ts +14 -0
  381. package/dist/src/transform/transfrom-rlc-options.d.ts.map +1 -0
  382. package/dist/src/transform/transfrom-rlc-options.js +369 -0
  383. package/dist/src/transform/transfrom-rlc-options.js.map +1 -0
  384. package/dist/src/utils/client-utils.d.ts +10 -0
  385. package/dist/src/utils/client-utils.d.ts.map +1 -0
  386. package/dist/src/utils/client-utils.js +124 -0
  387. package/dist/src/utils/client-utils.js.map +1 -0
  388. package/dist/src/utils/credential-utils.d.ts +15 -0
  389. package/dist/src/utils/credential-utils.d.ts.map +1 -0
  390. package/dist/src/utils/credential-utils.js +68 -0
  391. package/dist/src/utils/credential-utils.js.map +1 -0
  392. package/dist/src/utils/cross-language-def.d.ts +6 -0
  393. package/dist/src/utils/cross-language-def.d.ts.map +1 -0
  394. package/dist/src/utils/cross-language-def.js +59 -0
  395. package/dist/src/utils/cross-language-def.js.map +1 -0
  396. package/dist/src/utils/emit-util.d.ts +5 -0
  397. package/dist/src/utils/emit-util.d.ts.map +1 -0
  398. package/dist/src/utils/emit-util.js +70 -0
  399. package/dist/src/utils/emit-util.js.map +1 -0
  400. package/dist/src/utils/file-system-utils.d.ts +5 -0
  401. package/dist/src/utils/file-system-utils.d.ts.map +1 -0
  402. package/dist/src/utils/file-system-utils.js +58 -0
  403. package/dist/src/utils/file-system-utils.js.map +1 -0
  404. package/dist/src/utils/import-helper.d.ts +10 -0
  405. package/dist/src/utils/import-helper.d.ts.map +1 -0
  406. package/dist/src/utils/import-helper.js +51 -0
  407. package/dist/src/utils/import-helper.js.map +1 -0
  408. package/dist/src/utils/interfaces.d.ts +1 -1
  409. package/dist/src/utils/interfaces.d.ts.map +1 -1
  410. package/dist/src/utils/media-types.d.ts +28 -0
  411. package/dist/src/utils/media-types.d.ts.map +1 -0
  412. package/dist/src/utils/media-types.js +124 -0
  413. package/dist/src/utils/media-types.js.map +1 -0
  414. package/dist/src/utils/model-utils.d.ts +60 -0
  415. package/dist/src/utils/model-utils.d.ts.map +1 -0
  416. package/dist/src/utils/model-utils.js +1480 -0
  417. package/dist/src/utils/model-utils.js.map +1 -0
  418. package/dist/src/utils/namespace-utils.d.ts +6 -0
  419. package/dist/src/utils/namespace-utils.d.ts.map +1 -0
  420. package/dist/src/utils/namespace-utils.js +69 -0
  421. package/dist/src/utils/namespace-utils.js.map +1 -0
  422. package/dist/src/utils/operation-util.d.ts +97 -0
  423. package/dist/src/utils/operation-util.d.ts.map +1 -0
  424. package/dist/src/utils/operation-util.js +547 -0
  425. package/dist/src/utils/operation-util.js.map +1 -0
  426. package/dist/src/utils/parameter-utils.d.ts +9 -0
  427. package/dist/src/utils/parameter-utils.d.ts.map +1 -0
  428. package/dist/src/utils/parameter-utils.js +147 -0
  429. package/dist/src/utils/parameter-utils.js.map +1 -0
  430. package/dist/src/utils/resolve-project-root.d.ts.map +1 -1
  431. package/dist/src/utils/resolve-project-root.js +1 -3
  432. package/dist/src/utils/resolve-project-root.js.map +1 -1
  433. package/dist/tsconfig.tsbuildinfo +1 -1
  434. package/package.json +28 -32
  435. package/src/context-manager.ts +101 -0
  436. package/src/framework/hooks/binder.ts +6 -7
  437. package/src/framework/hooks/sdk-types.ts +218 -0
  438. package/src/framework/hooks/use-dependencies.ts +16 -0
  439. package/src/framework/load-static-helpers.ts +7 -8
  440. package/src/index.ts +46 -41
  441. package/src/lib.ts +31 -31
  442. package/src/modular/build-classical-client.ts +434 -0
  443. package/src/modular/build-classical-operation-groups.ts +69 -0
  444. package/src/modular/build-client-context.ts +325 -0
  445. package/src/modular/build-operations.ts +248 -0
  446. package/src/modular/build-project-files.ts +118 -0
  447. package/src/modular/build-restore-poller.ts +242 -0
  448. package/src/modular/build-root-index.ts +406 -0
  449. package/src/modular/build-subpath-index.ts +152 -0
  450. package/src/modular/emit-logger-file.ts +23 -0
  451. package/src/modular/emit-models-options.ts +56 -0
  452. package/src/modular/emit-models.ts +1080 -0
  453. package/src/modular/emit-samples.ts +674 -0
  454. package/src/modular/emit-tests.ts +198 -0
  455. package/src/modular/helpers/classical-operation-helpers.ts +375 -0
  456. package/src/modular/helpers/client-helpers.ts +362 -0
  457. package/src/modular/helpers/example-value-helpers.ts +851 -0
  458. package/src/modular/helpers/naming-helpers.ts +84 -0
  459. package/src/modular/helpers/operation-helpers.ts +3035 -0
  460. package/src/modular/helpers/type-helpers.ts +134 -0
  461. package/src/modular/serialization/build-deserializer-function.ts +564 -0
  462. package/src/modular/serialization/build-serializer-function.ts +614 -0
  463. package/src/modular/serialization/build-xml-serializer-function.ts +951 -0
  464. package/src/modular/serialization/serialize-utils.ts +217 -0
  465. package/src/modular/type-expressions/get-credential-expression.ts +1 -1
  466. package/src/modular/type-expressions/get-model-expression.ts +1 -1
  467. package/src/rlc-common/build-client-definitions.ts +235 -0
  468. package/src/rlc-common/build-client.ts +490 -0
  469. package/src/rlc-common/build-index-file.ts +344 -0
  470. package/src/rlc-common/build-is-unexpected-helper.ts +248 -0
  471. package/src/rlc-common/build-logger.ts +43 -0
  472. package/src/rlc-common/build-method-shortcuts.ts +71 -0
  473. package/src/rlc-common/build-object-types.ts +603 -0
  474. package/src/rlc-common/build-paginate-helper.ts +31 -0
  475. package/src/rlc-common/build-parameter-types.ts +554 -0
  476. package/src/rlc-common/build-polling-helper.ts +83 -0
  477. package/src/rlc-common/build-response-types.ts +180 -0
  478. package/src/rlc-common/build-samples.ts +32 -0
  479. package/src/rlc-common/build-schema-type.ts +89 -0
  480. package/src/rlc-common/build-serialize-helper.ts +49 -0
  481. package/src/rlc-common/build-top-level-index-file.ts +58 -0
  482. package/src/rlc-common/helpers/name-constructors.ts +110 -0
  483. package/src/rlc-common/helpers/operation-helpers.ts +138 -0
  484. package/src/rlc-common/helpers/path-utils.ts +8 -0
  485. package/src/rlc-common/helpers/shortcut-methods.ts +58 -0
  486. package/src/rlc-common/helpers/value-generation-util.ts +234 -0
  487. package/src/rlc-common/index.ts +39 -39
  488. package/src/rlc-common/metadata/build-package-file.ts +242 -0
  489. package/src/rlc-common/metadata/build-readme-file.ts +515 -0
  490. package/src/rlc-common/metadata/build-rollup-config.ts +147 -0
  491. package/src/rlc-common/metadata/package-json/azure-package-common.ts +152 -0
  492. package/src/rlc-common/metadata/package-json/build-azure-monorepo-package.ts +199 -0
  493. package/src/rlc-common/metadata/package-json/build-azure-standalone-package.ts +123 -0
  494. package/src/rlc-common/metadata/package-json/build-flavorless-package.ts +68 -0
  495. package/src/rlc-common/test/build-snippets.ts +29 -0
  496. package/src/rlc-common/transform-sample-groups.ts +407 -0
  497. package/src/transform/transform-api-version-info.ts +103 -0
  498. package/src/transform/transform-helper-function-details.ts +88 -0
  499. package/src/transform/transform-parameters.ts +321 -0
  500. package/src/transform/transform-paths.ts +157 -0
  501. package/src/transform/transform-responses.ts +237 -0
  502. package/src/transform/transform-schemas.ts +212 -0
  503. package/src/transform/transform-telemetry-info.ts +33 -0
  504. package/src/transform/transform.ts +12 -13
  505. package/src/transform/transfrom-rlc-options.ts +461 -0
  506. package/src/utils/cross-language-def.ts +66 -0
  507. package/src/utils/emit-util.ts +91 -0
  508. package/src/utils/file-system-utils.ts +68 -0
  509. package/src/utils/import-helper.ts +59 -0
  510. package/src/utils/interfaces.ts +1 -1
  511. package/src/utils/model-utils.ts +1727 -0
  512. package/src/utils/operation-util.ts +763 -0
  513. package/src/utils/parameter-utils.ts +192 -0
  514. package/src/utils/resolve-project-root.ts +1 -3
  515. package/static/static-helpers/serialization/serializers.ts +1 -0
  516. package/dist/src/contextManager.d.ts +0 -75
  517. package/dist/src/contextManager.d.ts.map +0 -1
  518. package/dist/src/contextManager.js +0 -59
  519. package/dist/src/contextManager.js.map +0 -1
  520. package/dist/src/framework/hooks/sdkTypes.d.ts +0 -26
  521. package/dist/src/framework/hooks/sdkTypes.d.ts.map +0 -1
  522. package/dist/src/framework/hooks/sdkTypes.js +0 -157
  523. package/dist/src/framework/hooks/sdkTypes.js.map +0 -1
  524. package/dist/src/framework/hooks/useDependencies.d.ts +0 -4
  525. package/dist/src/framework/hooks/useDependencies.d.ts.map +0 -1
  526. package/dist/src/framework/hooks/useDependencies.js +0 -13
  527. package/dist/src/framework/hooks/useDependencies.js.map +0 -1
  528. package/dist/src/metaTree.d.ts +0 -7
  529. package/dist/src/metaTree.d.ts.map +0 -1
  530. package/dist/src/metaTree.js +0 -2
  531. package/dist/src/metaTree.js.map +0 -1
  532. package/dist/src/modular/buildClassicalClient.d.ts +0 -6
  533. package/dist/src/modular/buildClassicalClient.d.ts.map +0 -1
  534. package/dist/src/modular/buildClassicalClient.js +0 -345
  535. package/dist/src/modular/buildClassicalClient.js.map +0 -1
  536. package/dist/src/modular/buildClassicalOperationGroups.d.ts +0 -6
  537. package/dist/src/modular/buildClassicalOperationGroups.d.ts.map +0 -1
  538. package/dist/src/modular/buildClassicalOperationGroups.js +0 -48
  539. package/dist/src/modular/buildClassicalOperationGroups.js.map +0 -1
  540. package/dist/src/modular/buildClientContext.d.ts +0 -13
  541. package/dist/src/modular/buildClientContext.d.ts.map +0 -1
  542. package/dist/src/modular/buildClientContext.js +0 -246
  543. package/dist/src/modular/buildClientContext.js.map +0 -1
  544. package/dist/src/modular/buildModularOptions.d.ts +0 -6
  545. package/dist/src/modular/buildModularOptions.d.ts.map +0 -1
  546. package/dist/src/modular/buildModularOptions.js +0 -14
  547. package/dist/src/modular/buildModularOptions.js.map +0 -1
  548. package/dist/src/modular/buildOperations.d.ts +0 -21
  549. package/dist/src/modular/buildOperations.d.ts.map +0 -1
  550. package/dist/src/modular/buildOperations.js +0 -172
  551. package/dist/src/modular/buildOperations.js.map +0 -1
  552. package/dist/src/modular/buildProjectFiles.d.ts +0 -4
  553. package/dist/src/modular/buildProjectFiles.d.ts.map +0 -1
  554. package/dist/src/modular/buildProjectFiles.js +0 -91
  555. package/dist/src/modular/buildProjectFiles.js.map +0 -1
  556. package/dist/src/modular/buildRestorePoller.d.ts +0 -5
  557. package/dist/src/modular/buildRestorePoller.d.ts.map +0 -1
  558. package/dist/src/modular/buildRestorePoller.js +0 -216
  559. package/dist/src/modular/buildRestorePoller.js.map +0 -1
  560. package/dist/src/modular/buildRootIndex.d.ts +0 -13
  561. package/dist/src/modular/buildRootIndex.d.ts.map +0 -1
  562. package/dist/src/modular/buildRootIndex.js +0 -279
  563. package/dist/src/modular/buildRootIndex.js.map +0 -1
  564. package/dist/src/modular/buildSubpathIndex.d.ts +0 -16
  565. package/dist/src/modular/buildSubpathIndex.d.ts.map +0 -1
  566. package/dist/src/modular/buildSubpathIndex.js +0 -119
  567. package/dist/src/modular/buildSubpathIndex.js.map +0 -1
  568. package/dist/src/modular/emitLoggerFile.d.ts +0 -3
  569. package/dist/src/modular/emitLoggerFile.d.ts.map +0 -1
  570. package/dist/src/modular/emitLoggerFile.js +0 -18
  571. package/dist/src/modular/emitLoggerFile.js.map +0 -1
  572. package/dist/src/modular/emitModels.d.ts +0 -23
  573. package/dist/src/modular/emitModels.d.ts.map +0 -1
  574. package/dist/src/modular/emitModels.js +0 -850
  575. package/dist/src/modular/emitModels.js.map +0 -1
  576. package/dist/src/modular/emitModelsOptions.d.ts +0 -5
  577. package/dist/src/modular/emitModelsOptions.d.ts.map +0 -1
  578. package/dist/src/modular/emitModelsOptions.js +0 -35
  579. package/dist/src/modular/emitModelsOptions.js.map +0 -1
  580. package/dist/src/modular/emitSamples.d.ts +0 -7
  581. package/dist/src/modular/emitSamples.d.ts.map +0 -1
  582. package/dist/src/modular/emitSamples.js +0 -500
  583. package/dist/src/modular/emitSamples.js.map +0 -1
  584. package/dist/src/modular/emitTests.d.ts +0 -7
  585. package/dist/src/modular/emitTests.d.ts.map +0 -1
  586. package/dist/src/modular/emitTests.js +0 -155
  587. package/dist/src/modular/emitTests.js.map +0 -1
  588. package/dist/src/modular/helpers/classicalOperationHelpers.d.ts +0 -7
  589. package/dist/src/modular/helpers/classicalOperationHelpers.d.ts.map +0 -1
  590. package/dist/src/modular/helpers/classicalOperationHelpers.js +0 -258
  591. package/dist/src/modular/helpers/classicalOperationHelpers.js.map +0 -1
  592. package/dist/src/modular/helpers/clientHelpers.d.ts +0 -34
  593. package/dist/src/modular/helpers/clientHelpers.d.ts.map +0 -1
  594. package/dist/src/modular/helpers/clientHelpers.js +0 -259
  595. package/dist/src/modular/helpers/clientHelpers.js.map +0 -1
  596. package/dist/src/modular/helpers/clientOptionHelpers.d.ts +0 -43
  597. package/dist/src/modular/helpers/clientOptionHelpers.d.ts.map +0 -1
  598. package/dist/src/modular/helpers/clientOptionHelpers.js +0 -103
  599. package/dist/src/modular/helpers/clientOptionHelpers.js.map +0 -1
  600. package/dist/src/modular/helpers/docsHelpers.d.ts +0 -3
  601. package/dist/src/modular/helpers/docsHelpers.d.ts.map +0 -1
  602. package/dist/src/modular/helpers/docsHelpers.js +0 -10
  603. package/dist/src/modular/helpers/docsHelpers.js.map +0 -1
  604. package/dist/src/modular/helpers/exampleValueHelpers.d.ts +0 -83
  605. package/dist/src/modular/helpers/exampleValueHelpers.d.ts.map +0 -1
  606. package/dist/src/modular/helpers/exampleValueHelpers.js +0 -639
  607. package/dist/src/modular/helpers/exampleValueHelpers.js.map +0 -1
  608. package/dist/src/modular/helpers/namingHelpers.d.ts +0 -22
  609. package/dist/src/modular/helpers/namingHelpers.d.ts.map +0 -1
  610. package/dist/src/modular/helpers/namingHelpers.js +0 -59
  611. package/dist/src/modular/helpers/namingHelpers.js.map +0 -1
  612. package/dist/src/modular/helpers/operationHelpers.d.ts +0 -105
  613. package/dist/src/modular/helpers/operationHelpers.d.ts.map +0 -1
  614. package/dist/src/modular/helpers/operationHelpers.js +0 -2328
  615. package/dist/src/modular/helpers/operationHelpers.js.map +0 -1
  616. package/dist/src/modular/helpers/typeHelpers.d.ts +0 -22
  617. package/dist/src/modular/helpers/typeHelpers.d.ts.map +0 -1
  618. package/dist/src/modular/helpers/typeHelpers.js +0 -94
  619. package/dist/src/modular/helpers/typeHelpers.js.map +0 -1
  620. package/dist/src/modular/serialization/buildDeserializerFunction.d.ts +0 -7
  621. package/dist/src/modular/serialization/buildDeserializerFunction.d.ts.map +0 -1
  622. package/dist/src/modular/serialization/buildDeserializerFunction.js +0 -401
  623. package/dist/src/modular/serialization/buildDeserializerFunction.js.map +0 -1
  624. package/dist/src/modular/serialization/buildSerializerFunction.d.ts +0 -7
  625. package/dist/src/modular/serialization/buildSerializerFunction.d.ts.map +0 -1
  626. package/dist/src/modular/serialization/buildSerializerFunction.js +0 -444
  627. package/dist/src/modular/serialization/buildSerializerFunction.js.map +0 -1
  628. package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts +0 -44
  629. package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts.map +0 -1
  630. package/dist/src/modular/serialization/buildXmlSerializerFunction.js +0 -729
  631. package/dist/src/modular/serialization/buildXmlSerializerFunction.js.map +0 -1
  632. package/dist/src/modular/serialization/serializeUtils.d.ts +0 -37
  633. package/dist/src/modular/serialization/serializeUtils.d.ts.map +0 -1
  634. package/dist/src/modular/serialization/serializeUtils.js +0 -145
  635. package/dist/src/modular/serialization/serializeUtils.js.map +0 -1
  636. package/dist/src/rlc-common/buildClient.d.ts +0 -9
  637. package/dist/src/rlc-common/buildClient.d.ts.map +0 -1
  638. package/dist/src/rlc-common/buildClient.js +0 -391
  639. package/dist/src/rlc-common/buildClient.js.map +0 -1
  640. package/dist/src/rlc-common/buildClientDefinitions.d.ts +0 -6
  641. package/dist/src/rlc-common/buildClientDefinitions.d.ts.map +0 -1
  642. package/dist/src/rlc-common/buildClientDefinitions.js +0 -157
  643. package/dist/src/rlc-common/buildClientDefinitions.js.map +0 -1
  644. package/dist/src/rlc-common/buildIndexFile.d.ts +0 -6
  645. package/dist/src/rlc-common/buildIndexFile.d.ts.map +0 -1
  646. package/dist/src/rlc-common/buildIndexFile.js +0 -241
  647. package/dist/src/rlc-common/buildIndexFile.js.map +0 -1
  648. package/dist/src/rlc-common/buildIsUnexpectedHelper.d.ts +0 -6
  649. package/dist/src/rlc-common/buildIsUnexpectedHelper.d.ts.map +0 -1
  650. package/dist/src/rlc-common/buildIsUnexpectedHelper.js +0 -223
  651. package/dist/src/rlc-common/buildIsUnexpectedHelper.js.map +0 -1
  652. package/dist/src/rlc-common/buildLogger.d.ts +0 -6
  653. package/dist/src/rlc-common/buildLogger.d.ts.map +0 -1
  654. package/dist/src/rlc-common/buildLogger.js +0 -31
  655. package/dist/src/rlc-common/buildLogger.js.map +0 -1
  656. package/dist/src/rlc-common/buildMethodShortcuts.d.ts +0 -5
  657. package/dist/src/rlc-common/buildMethodShortcuts.d.ts.map +0 -1
  658. package/dist/src/rlc-common/buildMethodShortcuts.js +0 -54
  659. package/dist/src/rlc-common/buildMethodShortcuts.js.map +0 -1
  660. package/dist/src/rlc-common/buildObjectTypes.d.ts +0 -29
  661. package/dist/src/rlc-common/buildObjectTypes.d.ts.map +0 -1
  662. package/dist/src/rlc-common/buildObjectTypes.js +0 -412
  663. package/dist/src/rlc-common/buildObjectTypes.js.map +0 -1
  664. package/dist/src/rlc-common/buildPaginateHelper.d.ts +0 -6
  665. package/dist/src/rlc-common/buildPaginateHelper.d.ts.map +0 -1
  666. package/dist/src/rlc-common/buildPaginateHelper.js +0 -27
  667. package/dist/src/rlc-common/buildPaginateHelper.js.map +0 -1
  668. package/dist/src/rlc-common/buildParameterTypes.d.ts +0 -14
  669. package/dist/src/rlc-common/buildParameterTypes.d.ts.map +0 -1
  670. package/dist/src/rlc-common/buildParameterTypes.js +0 -391
  671. package/dist/src/rlc-common/buildParameterTypes.js.map +0 -1
  672. package/dist/src/rlc-common/buildPollingHelper.d.ts +0 -6
  673. package/dist/src/rlc-common/buildPollingHelper.d.ts.map +0 -1
  674. package/dist/src/rlc-common/buildPollingHelper.js +0 -61
  675. package/dist/src/rlc-common/buildPollingHelper.js.map +0 -1
  676. package/dist/src/rlc-common/buildResponseTypes.d.ts +0 -6
  677. package/dist/src/rlc-common/buildResponseTypes.d.ts.map +0 -1
  678. package/dist/src/rlc-common/buildResponseTypes.js +0 -143
  679. package/dist/src/rlc-common/buildResponseTypes.js.map +0 -1
  680. package/dist/src/rlc-common/buildSamples.d.ts +0 -3
  681. package/dist/src/rlc-common/buildSamples.d.ts.map +0 -1
  682. package/dist/src/rlc-common/buildSamples.js +0 -30
  683. package/dist/src/rlc-common/buildSamples.js.map +0 -1
  684. package/dist/src/rlc-common/buildSchemaType.d.ts +0 -20
  685. package/dist/src/rlc-common/buildSchemaType.d.ts.map +0 -1
  686. package/dist/src/rlc-common/buildSchemaType.js +0 -71
  687. package/dist/src/rlc-common/buildSchemaType.js.map +0 -1
  688. package/dist/src/rlc-common/buildSerializeHelper.d.ts +0 -6
  689. package/dist/src/rlc-common/buildSerializeHelper.d.ts.map +0 -1
  690. package/dist/src/rlc-common/buildSerializeHelper.js +0 -36
  691. package/dist/src/rlc-common/buildSerializeHelper.js.map +0 -1
  692. package/dist/src/rlc-common/buildTopLevelIndexFile.d.ts +0 -6
  693. package/dist/src/rlc-common/buildTopLevelIndexFile.d.ts.map +0 -1
  694. package/dist/src/rlc-common/buildTopLevelIndexFile.js +0 -48
  695. package/dist/src/rlc-common/buildTopLevelIndexFile.js.map +0 -1
  696. package/dist/src/rlc-common/helpers/apiVersionUtil.d.ts +0 -17
  697. package/dist/src/rlc-common/helpers/apiVersionUtil.d.ts.map +0 -1
  698. package/dist/src/rlc-common/helpers/apiVersionUtil.js +0 -43
  699. package/dist/src/rlc-common/helpers/apiVersionUtil.js.map +0 -1
  700. package/dist/src/rlc-common/helpers/importsUtil.d.ts +0 -18
  701. package/dist/src/rlc-common/helpers/importsUtil.d.ts.map +0 -1
  702. package/dist/src/rlc-common/helpers/importsUtil.js +0 -164
  703. package/dist/src/rlc-common/helpers/importsUtil.js.map +0 -1
  704. package/dist/src/rlc-common/helpers/nameConstructors.d.ts +0 -42
  705. package/dist/src/rlc-common/helpers/nameConstructors.d.ts.map +0 -1
  706. package/dist/src/rlc-common/helpers/nameConstructors.js +0 -61
  707. package/dist/src/rlc-common/helpers/nameConstructors.js.map +0 -1
  708. package/dist/src/rlc-common/helpers/nameUtils.d.ts +0 -37
  709. package/dist/src/rlc-common/helpers/nameUtils.d.ts.map +0 -1
  710. package/dist/src/rlc-common/helpers/nameUtils.js +0 -240
  711. package/dist/src/rlc-common/helpers/nameUtils.js.map +0 -1
  712. package/dist/src/rlc-common/helpers/operationHelpers.d.ts +0 -16
  713. package/dist/src/rlc-common/helpers/operationHelpers.d.ts.map +0 -1
  714. package/dist/src/rlc-common/helpers/operationHelpers.js +0 -104
  715. package/dist/src/rlc-common/helpers/operationHelpers.js.map +0 -1
  716. package/dist/src/rlc-common/helpers/packageUtil.d.ts +0 -7
  717. package/dist/src/rlc-common/helpers/packageUtil.d.ts.map +0 -1
  718. package/dist/src/rlc-common/helpers/packageUtil.js +0 -10
  719. package/dist/src/rlc-common/helpers/packageUtil.js.map +0 -1
  720. package/dist/src/rlc-common/helpers/pathUtils.d.ts +0 -2
  721. package/dist/src/rlc-common/helpers/pathUtils.d.ts.map +0 -1
  722. package/dist/src/rlc-common/helpers/pathUtils.js +0 -10
  723. package/dist/src/rlc-common/helpers/pathUtils.js.map +0 -1
  724. package/dist/src/rlc-common/helpers/schemaHelpers.d.ts +0 -10
  725. package/dist/src/rlc-common/helpers/schemaHelpers.d.ts.map +0 -1
  726. package/dist/src/rlc-common/helpers/schemaHelpers.js +0 -37
  727. package/dist/src/rlc-common/helpers/schemaHelpers.js.map +0 -1
  728. package/dist/src/rlc-common/helpers/shortcutMethods.d.ts +0 -4
  729. package/dist/src/rlc-common/helpers/shortcutMethods.d.ts.map +0 -1
  730. package/dist/src/rlc-common/helpers/shortcutMethods.js +0 -49
  731. package/dist/src/rlc-common/helpers/shortcutMethods.js.map +0 -1
  732. package/dist/src/rlc-common/helpers/typeUtil.d.ts +0 -32
  733. package/dist/src/rlc-common/helpers/typeUtil.d.ts.map +0 -1
  734. package/dist/src/rlc-common/helpers/typeUtil.js +0 -162
  735. package/dist/src/rlc-common/helpers/typeUtil.js.map +0 -1
  736. package/dist/src/rlc-common/helpers/valueGenerationUtil.d.ts +0 -12
  737. package/dist/src/rlc-common/helpers/valueGenerationUtil.d.ts.map +0 -1
  738. package/dist/src/rlc-common/helpers/valueGenerationUtil.js +0 -161
  739. package/dist/src/rlc-common/helpers/valueGenerationUtil.js.map +0 -1
  740. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.d.ts +0 -6
  741. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.d.ts.map +0 -1
  742. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js +0 -55
  743. package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js.map +0 -1
  744. package/dist/src/rlc-common/metadata/buildChangelogFile.d.ts +0 -6
  745. package/dist/src/rlc-common/metadata/buildChangelogFile.d.ts.map +0 -1
  746. package/dist/src/rlc-common/metadata/buildChangelogFile.js +0 -25
  747. package/dist/src/rlc-common/metadata/buildChangelogFile.js.map +0 -1
  748. package/dist/src/rlc-common/metadata/buildESLintConfig.d.ts +0 -6
  749. package/dist/src/rlc-common/metadata/buildESLintConfig.d.ts.map +0 -1
  750. package/dist/src/rlc-common/metadata/buildESLintConfig.js +0 -79
  751. package/dist/src/rlc-common/metadata/buildESLintConfig.js.map +0 -1
  752. package/dist/src/rlc-common/metadata/buildLicenseFile.d.ts +0 -5
  753. package/dist/src/rlc-common/metadata/buildLicenseFile.d.ts.map +0 -1
  754. package/dist/src/rlc-common/metadata/buildLicenseFile.js +0 -32
  755. package/dist/src/rlc-common/metadata/buildLicenseFile.js.map +0 -1
  756. package/dist/src/rlc-common/metadata/buildPackageFile.d.ts +0 -25
  757. package/dist/src/rlc-common/metadata/buildPackageFile.d.ts.map +0 -1
  758. package/dist/src/rlc-common/metadata/buildPackageFile.js +0 -197
  759. package/dist/src/rlc-common/metadata/buildPackageFile.js.map +0 -1
  760. package/dist/src/rlc-common/metadata/buildReadmeFile.d.ts +0 -11
  761. package/dist/src/rlc-common/metadata/buildReadmeFile.d.ts.map +0 -1
  762. package/dist/src/rlc-common/metadata/buildReadmeFile.js +0 -418
  763. package/dist/src/rlc-common/metadata/buildReadmeFile.js.map +0 -1
  764. package/dist/src/rlc-common/metadata/buildRollupConfig.d.ts +0 -6
  765. package/dist/src/rlc-common/metadata/buildRollupConfig.d.ts.map +0 -1
  766. package/dist/src/rlc-common/metadata/buildRollupConfig.js +0 -140
  767. package/dist/src/rlc-common/metadata/buildRollupConfig.js.map +0 -1
  768. package/dist/src/rlc-common/metadata/buildSampleEnvFile.d.ts +0 -6
  769. package/dist/src/rlc-common/metadata/buildSampleEnvFile.d.ts.map +0 -1
  770. package/dist/src/rlc-common/metadata/buildSampleEnvFile.js +0 -15
  771. package/dist/src/rlc-common/metadata/buildSampleEnvFile.js.map +0 -1
  772. package/dist/src/rlc-common/metadata/buildTestConfig.d.ts +0 -16
  773. package/dist/src/rlc-common/metadata/buildTestConfig.d.ts.map +0 -1
  774. package/dist/src/rlc-common/metadata/buildTestConfig.js +0 -54
  775. package/dist/src/rlc-common/metadata/buildTestConfig.js.map +0 -1
  776. package/dist/src/rlc-common/metadata/buildTsConfig.d.ts +0 -61
  777. package/dist/src/rlc-common/metadata/buildTsConfig.d.ts.map +0 -1
  778. package/dist/src/rlc-common/metadata/buildTsConfig.js +0 -170
  779. package/dist/src/rlc-common/metadata/buildTsConfig.js.map +0 -1
  780. package/dist/src/rlc-common/metadata/buildVitestConfig.d.ts +0 -6
  781. package/dist/src/rlc-common/metadata/buildVitestConfig.d.ts.map +0 -1
  782. package/dist/src/rlc-common/metadata/buildVitestConfig.js +0 -26
  783. package/dist/src/rlc-common/metadata/buildVitestConfig.js.map +0 -1
  784. package/dist/src/rlc-common/metadata/buildWarpConfig.d.ts +0 -20
  785. package/dist/src/rlc-common/metadata/buildWarpConfig.d.ts.map +0 -1
  786. package/dist/src/rlc-common/metadata/buildWarpConfig.js +0 -76
  787. package/dist/src/rlc-common/metadata/buildWarpConfig.js.map +0 -1
  788. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts +0 -51
  789. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts.map +0 -1
  790. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js +0 -121
  791. package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js.map +0 -1
  792. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.d.ts +0 -242
  793. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.d.ts.map +0 -1
  794. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js +0 -171
  795. package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js.map +0 -1
  796. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.d.ts +0 -8
  797. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.d.ts.map +0 -1
  798. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js +0 -101
  799. package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js.map +0 -1
  800. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.d.ts +0 -57
  801. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.d.ts.map +0 -1
  802. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js +0 -53
  803. package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js.map +0 -1
  804. package/dist/src/rlc-common/metadata/packageJson/packageCommon.d.ts +0 -64
  805. package/dist/src/rlc-common/metadata/packageJson/packageCommon.d.ts.map +0 -1
  806. package/dist/src/rlc-common/metadata/packageJson/packageCommon.js +0 -180
  807. package/dist/src/rlc-common/metadata/packageJson/packageCommon.js.map +0 -1
  808. package/dist/src/rlc-common/static/paginateContent.d.ts +0 -2
  809. package/dist/src/rlc-common/static/paginateContent.d.ts.map +0 -1
  810. package/dist/src/rlc-common/static/paginateContent.js +0 -345
  811. package/dist/src/rlc-common/static/paginateContent.js.map +0 -1
  812. package/dist/src/rlc-common/static/pollingContent.d.ts +0 -2
  813. package/dist/src/rlc-common/static/pollingContent.d.ts.map +0 -1
  814. package/dist/src/rlc-common/static/pollingContent.js +0 -225
  815. package/dist/src/rlc-common/static/pollingContent.js.map +0 -1
  816. package/dist/src/rlc-common/static/sampleTemplate.d.ts +0 -2
  817. package/dist/src/rlc-common/static/sampleTemplate.d.ts.map +0 -1
  818. package/dist/src/rlc-common/static/sampleTemplate.js +0 -56
  819. package/dist/src/rlc-common/static/sampleTemplate.js.map +0 -1
  820. package/dist/src/rlc-common/static/serializeHelper.d.ts +0 -6
  821. package/dist/src/rlc-common/static/serializeHelper.d.ts.map +0 -1
  822. package/dist/src/rlc-common/static/serializeHelper.js +0 -31
  823. package/dist/src/rlc-common/static/serializeHelper.js.map +0 -1
  824. package/dist/src/rlc-common/test/buildKarmaConfig.d.ts +0 -6
  825. package/dist/src/rlc-common/test/buildKarmaConfig.d.ts.map +0 -1
  826. package/dist/src/rlc-common/test/buildKarmaConfig.js +0 -11
  827. package/dist/src/rlc-common/test/buildKarmaConfig.js.map +0 -1
  828. package/dist/src/rlc-common/test/buildRecordedClient.d.ts +0 -6
  829. package/dist/src/rlc-common/test/buildRecordedClient.d.ts.map +0 -1
  830. package/dist/src/rlc-common/test/buildRecordedClient.js +0 -17
  831. package/dist/src/rlc-common/test/buildRecordedClient.js.map +0 -1
  832. package/dist/src/rlc-common/test/buildSampleTest.d.ts +0 -6
  833. package/dist/src/rlc-common/test/buildSampleTest.d.ts.map +0 -1
  834. package/dist/src/rlc-common/test/buildSampleTest.js +0 -14
  835. package/dist/src/rlc-common/test/buildSampleTest.js.map +0 -1
  836. package/dist/src/rlc-common/test/buildSnippets.d.ts +0 -6
  837. package/dist/src/rlc-common/test/buildSnippets.d.ts.map +0 -1
  838. package/dist/src/rlc-common/test/buildSnippets.js +0 -26
  839. package/dist/src/rlc-common/test/buildSnippets.js.map +0 -1
  840. package/dist/src/rlc-common/transformSampleGroups.d.ts +0 -9
  841. package/dist/src/rlc-common/transformSampleGroups.d.ts.map +0 -1
  842. package/dist/src/rlc-common/transformSampleGroups.js +0 -313
  843. package/dist/src/rlc-common/transformSampleGroups.js.map +0 -1
  844. package/dist/src/transform/transformApiVersionInfo.d.ts +0 -6
  845. package/dist/src/transform/transformApiVersionInfo.d.ts.map +0 -1
  846. package/dist/src/transform/transformApiVersionInfo.js +0 -78
  847. package/dist/src/transform/transformApiVersionInfo.js.map +0 -1
  848. package/dist/src/transform/transformHelperFunctionDetails.d.ts +0 -5
  849. package/dist/src/transform/transformHelperFunctionDetails.d.ts.map +0 -1
  850. package/dist/src/transform/transformHelperFunctionDetails.js +0 -74
  851. package/dist/src/transform/transformHelperFunctionDetails.js.map +0 -1
  852. package/dist/src/transform/transformParameters.d.ts +0 -14
  853. package/dist/src/transform/transformParameters.d.ts.map +0 -1
  854. package/dist/src/transform/transformParameters.js +0 -201
  855. package/dist/src/transform/transformParameters.js.map +0 -1
  856. package/dist/src/transform/transformPaths.d.ts +0 -5
  857. package/dist/src/transform/transformPaths.d.ts.map +0 -1
  858. package/dist/src/transform/transformPaths.js +0 -102
  859. package/dist/src/transform/transformPaths.js.map +0 -1
  860. package/dist/src/transform/transformResponses.d.ts +0 -5
  861. package/dist/src/transform/transformResponses.d.ts.map +0 -1
  862. package/dist/src/transform/transformResponses.js +0 -171
  863. package/dist/src/transform/transformResponses.js.map +0 -1
  864. package/dist/src/transform/transformSchemas.d.ts +0 -4
  865. package/dist/src/transform/transformSchemas.d.ts.map +0 -1
  866. package/dist/src/transform/transformSchemas.js +0 -191
  867. package/dist/src/transform/transformSchemas.js.map +0 -1
  868. package/dist/src/transform/transformTelemetryInfo.d.ts +0 -4
  869. package/dist/src/transform/transformTelemetryInfo.d.ts.map +0 -1
  870. package/dist/src/transform/transformTelemetryInfo.js +0 -22
  871. package/dist/src/transform/transformTelemetryInfo.js.map +0 -1
  872. package/dist/src/transform/transfromRLCOptions.d.ts +0 -14
  873. package/dist/src/transform/transfromRLCOptions.d.ts.map +0 -1
  874. package/dist/src/transform/transfromRLCOptions.js +0 -369
  875. package/dist/src/transform/transfromRLCOptions.js.map +0 -1
  876. package/dist/src/utils/clientUtils.d.ts +0 -10
  877. package/dist/src/utils/clientUtils.d.ts.map +0 -1
  878. package/dist/src/utils/clientUtils.js +0 -124
  879. package/dist/src/utils/clientUtils.js.map +0 -1
  880. package/dist/src/utils/credentialUtils.d.ts +0 -15
  881. package/dist/src/utils/credentialUtils.d.ts.map +0 -1
  882. package/dist/src/utils/credentialUtils.js +0 -68
  883. package/dist/src/utils/credentialUtils.js.map +0 -1
  884. package/dist/src/utils/crossLanguageDef.d.ts +0 -6
  885. package/dist/src/utils/crossLanguageDef.d.ts.map +0 -1
  886. package/dist/src/utils/crossLanguageDef.js +0 -59
  887. package/dist/src/utils/crossLanguageDef.js.map +0 -1
  888. package/dist/src/utils/dirname.d.ts +0 -9
  889. package/dist/src/utils/dirname.d.ts.map +0 -1
  890. package/dist/src/utils/dirname.js +0 -12
  891. package/dist/src/utils/dirname.js.map +0 -1
  892. package/dist/src/utils/emitUtil.d.ts +0 -5
  893. package/dist/src/utils/emitUtil.d.ts.map +0 -1
  894. package/dist/src/utils/emitUtil.js +0 -71
  895. package/dist/src/utils/emitUtil.js.map +0 -1
  896. package/dist/src/utils/fileSystemUtils.d.ts +0 -5
  897. package/dist/src/utils/fileSystemUtils.d.ts.map +0 -1
  898. package/dist/src/utils/fileSystemUtils.js +0 -59
  899. package/dist/src/utils/fileSystemUtils.js.map +0 -1
  900. package/dist/src/utils/importHelper.d.ts +0 -10
  901. package/dist/src/utils/importHelper.d.ts.map +0 -1
  902. package/dist/src/utils/importHelper.js +0 -51
  903. package/dist/src/utils/importHelper.js.map +0 -1
  904. package/dist/src/utils/mediaTypes.d.ts +0 -28
  905. package/dist/src/utils/mediaTypes.d.ts.map +0 -1
  906. package/dist/src/utils/mediaTypes.js +0 -124
  907. package/dist/src/utils/mediaTypes.js.map +0 -1
  908. package/dist/src/utils/modelUtils.d.ts +0 -60
  909. package/dist/src/utils/modelUtils.d.ts.map +0 -1
  910. package/dist/src/utils/modelUtils.js +0 -1488
  911. package/dist/src/utils/modelUtils.js.map +0 -1
  912. package/dist/src/utils/namespaceUtils.d.ts +0 -6
  913. package/dist/src/utils/namespaceUtils.d.ts.map +0 -1
  914. package/dist/src/utils/namespaceUtils.js +0 -69
  915. package/dist/src/utils/namespaceUtils.js.map +0 -1
  916. package/dist/src/utils/operationUtil.d.ts +0 -97
  917. package/dist/src/utils/operationUtil.d.ts.map +0 -1
  918. package/dist/src/utils/operationUtil.js +0 -547
  919. package/dist/src/utils/operationUtil.js.map +0 -1
  920. package/dist/src/utils/parameterUtils.d.ts +0 -9
  921. package/dist/src/utils/parameterUtils.d.ts.map +0 -1
  922. package/dist/src/utils/parameterUtils.js +0 -147
  923. package/dist/src/utils/parameterUtils.js.map +0 -1
  924. package/src/contextManager.ts +0 -101
  925. package/src/framework/hooks/sdkTypes.ts +0 -218
  926. package/src/framework/hooks/useDependencies.ts +0 -16
  927. package/src/modular/buildClassicalClient.ts +0 -434
  928. package/src/modular/buildClassicalOperationGroups.ts +0 -69
  929. package/src/modular/buildClientContext.ts +0 -325
  930. package/src/modular/buildOperations.ts +0 -248
  931. package/src/modular/buildProjectFiles.ts +0 -111
  932. package/src/modular/buildRestorePoller.ts +0 -242
  933. package/src/modular/buildRootIndex.ts +0 -407
  934. package/src/modular/buildSubpathIndex.ts +0 -152
  935. package/src/modular/emitLoggerFile.ts +0 -23
  936. package/src/modular/emitModels.ts +0 -1081
  937. package/src/modular/emitModelsOptions.ts +0 -56
  938. package/src/modular/emitSamples.ts +0 -675
  939. package/src/modular/emitTests.ts +0 -194
  940. package/src/modular/helpers/classicalOperationHelpers.ts +0 -375
  941. package/src/modular/helpers/clientHelpers.ts +0 -362
  942. package/src/modular/helpers/exampleValueHelpers.ts +0 -851
  943. package/src/modular/helpers/namingHelpers.ts +0 -84
  944. package/src/modular/helpers/operationHelpers.ts +0 -3035
  945. package/src/modular/helpers/typeHelpers.ts +0 -131
  946. package/src/modular/serialization/buildDeserializerFunction.ts +0 -564
  947. package/src/modular/serialization/buildSerializerFunction.ts +0 -616
  948. package/src/modular/serialization/buildXmlSerializerFunction.ts +0 -951
  949. package/src/modular/serialization/serializeUtils.ts +0 -217
  950. package/src/rlc-common/buildClient.ts +0 -490
  951. package/src/rlc-common/buildClientDefinitions.ts +0 -235
  952. package/src/rlc-common/buildIndexFile.ts +0 -344
  953. package/src/rlc-common/buildIsUnexpectedHelper.ts +0 -248
  954. package/src/rlc-common/buildLogger.ts +0 -43
  955. package/src/rlc-common/buildMethodShortcuts.ts +0 -71
  956. package/src/rlc-common/buildObjectTypes.ts +0 -603
  957. package/src/rlc-common/buildPaginateHelper.ts +0 -31
  958. package/src/rlc-common/buildParameterTypes.ts +0 -554
  959. package/src/rlc-common/buildPollingHelper.ts +0 -83
  960. package/src/rlc-common/buildResponseTypes.ts +0 -180
  961. package/src/rlc-common/buildSamples.ts +0 -32
  962. package/src/rlc-common/buildSchemaType.ts +0 -89
  963. package/src/rlc-common/buildSerializeHelper.ts +0 -49
  964. package/src/rlc-common/buildTopLevelIndexFile.ts +0 -58
  965. package/src/rlc-common/helpers/nameConstructors.ts +0 -110
  966. package/src/rlc-common/helpers/operationHelpers.ts +0 -138
  967. package/src/rlc-common/helpers/pathUtils.ts +0 -10
  968. package/src/rlc-common/helpers/shortcutMethods.ts +0 -58
  969. package/src/rlc-common/helpers/valueGenerationUtil.ts +0 -234
  970. package/src/rlc-common/metadata/buildPackageFile.ts +0 -242
  971. package/src/rlc-common/metadata/buildReadmeFile.ts +0 -515
  972. package/src/rlc-common/metadata/buildRollupConfig.ts +0 -147
  973. package/src/rlc-common/metadata/packageJson/azurePackageCommon.ts +0 -152
  974. package/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.ts +0 -199
  975. package/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.ts +0 -123
  976. package/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.ts +0 -68
  977. package/src/rlc-common/test/buildSnippets.ts +0 -29
  978. package/src/rlc-common/transformSampleGroups.ts +0 -407
  979. package/src/transform/transformApiVersionInfo.ts +0 -103
  980. package/src/transform/transformHelperFunctionDetails.ts +0 -88
  981. package/src/transform/transformParameters.ts +0 -321
  982. package/src/transform/transformPaths.ts +0 -157
  983. package/src/transform/transformResponses.ts +0 -237
  984. package/src/transform/transformSchemas.ts +0 -212
  985. package/src/transform/transformTelemetryInfo.ts +0 -33
  986. package/src/transform/transfromRLCOptions.ts +0 -461
  987. package/src/utils/crossLanguageDef.ts +0 -66
  988. package/src/utils/dirname.ts +0 -12
  989. package/src/utils/emitUtil.ts +0 -92
  990. package/src/utils/fileSystemUtils.ts +0 -69
  991. package/src/utils/importHelper.ts +0 -59
  992. package/src/utils/modelUtils.ts +0 -1737
  993. package/src/utils/operationUtil.ts +0 -763
  994. package/src/utils/parameterUtils.ts +0 -192
  995. /package/src/{metaTree.ts → meta-tree.ts} +0 -0
  996. /package/src/modular/{buildModularOptions.ts → build-modular-options.ts} +0 -0
  997. /package/src/modular/helpers/{clientOptionHelpers.ts → client-option-helpers.ts} +0 -0
  998. /package/src/modular/helpers/{docsHelpers.ts → docs-helpers.ts} +0 -0
  999. /package/src/rlc-common/helpers/{apiVersionUtil.ts → api-version-util.ts} +0 -0
  1000. /package/src/rlc-common/helpers/{importsUtil.ts → imports-util.ts} +0 -0
  1001. /package/src/rlc-common/helpers/{nameUtils.ts → name-utils.ts} +0 -0
  1002. /package/src/rlc-common/helpers/{packageUtil.ts → package-util.ts} +0 -0
  1003. /package/src/rlc-common/helpers/{schemaHelpers.ts → schema-helpers.ts} +0 -0
  1004. /package/src/rlc-common/helpers/{typeUtil.ts → type-util.ts} +0 -0
  1005. /package/src/rlc-common/metadata/{buildApiExtractorConfig.ts → build-api-extractor-config.ts} +0 -0
  1006. /package/src/rlc-common/metadata/{buildChangelogFile.ts → build-changelog-file.ts} +0 -0
  1007. /package/src/rlc-common/metadata/{buildESLintConfig.ts → build-es-lint-config.ts} +0 -0
  1008. /package/src/rlc-common/metadata/{buildLicenseFile.ts → build-license-file.ts} +0 -0
  1009. /package/src/rlc-common/metadata/{buildSampleEnvFile.ts → build-sample-env-file.ts} +0 -0
  1010. /package/src/rlc-common/metadata/{buildTestConfig.ts → build-test-config.ts} +0 -0
  1011. /package/src/rlc-common/metadata/{buildTsConfig.ts → build-ts-config.ts} +0 -0
  1012. /package/src/rlc-common/metadata/{buildVitestConfig.ts → build-vitest-config.ts} +0 -0
  1013. /package/src/rlc-common/metadata/{buildWarpConfig.ts → build-warp-config.ts} +0 -0
  1014. /package/src/rlc-common/metadata/{packageJson/packageCommon.ts → package-json/package-common.ts} +0 -0
  1015. /package/src/rlc-common/static/{paginateContent.ts → paginate-content.ts} +0 -0
  1016. /package/src/rlc-common/static/{pollingContent.ts → polling-content.ts} +0 -0
  1017. /package/src/rlc-common/static/{sampleTemplate.ts → sample-template.ts} +0 -0
  1018. /package/src/rlc-common/static/{serializeHelper.ts → serialize-helper.ts} +0 -0
  1019. /package/src/rlc-common/test/{buildKarmaConfig.ts → build-karma-config.ts} +0 -0
  1020. /package/src/rlc-common/test/{buildRecordedClient.ts → build-recorded-client.ts} +0 -0
  1021. /package/src/rlc-common/test/{buildSampleTest.ts → build-sample-test.ts} +0 -0
  1022. /package/src/utils/{clientUtils.ts → client-utils.ts} +0 -0
  1023. /package/src/utils/{credentialUtils.ts → credential-utils.ts} +0 -0
  1024. /package/src/utils/{mediaTypes.ts → media-types.ts} +0 -0
  1025. /package/src/utils/{namespaceUtils.ts → namespace-utils.ts} +0 -0
@@ -0,0 +1,951 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+
4
+ import {
5
+ isReadOnly,
6
+ SdkModelPropertyType,
7
+ SdkModelType,
8
+ SdkPackage,
9
+ SdkType,
10
+ UsageFlags,
11
+ } from "@azure-tools/typespec-client-generator-core";
12
+ import { NoTarget } from "@typespec/compiler";
13
+ import { isMetadata } from "@typespec/http";
14
+ import { FunctionDeclarationStructure, StructureKind } from "ts-morph";
15
+ import { useDependencies } from "../../framework/hooks/use-dependencies.js";
16
+ import { resolveReference } from "../../framework/reference.js";
17
+ import { refkey } from "../../framework/refkey.js";
18
+ import { reportDiagnostic } from "../../lib.js";
19
+ import { NameType } from "../../rlc-common/index.js";
20
+ import { SdkContext } from "../../utils/interfaces.js";
21
+ import { isAzureCoreErrorType } from "../../utils/model-utils.js";
22
+ import { getAdditionalPropertiesName, normalizeModelName } from "../emit-models.js";
23
+ import { getAllAncestors, getAllProperties } from "../helpers/operation-helpers.js";
24
+ import { getAdditionalPropertiesType } from "../helpers/type-helpers.js";
25
+ import { XmlHelpers } from "../static-helpers-metadata.js";
26
+ import { normalizeModelPropertyName } from "../type-expressions/get-type-expression.js";
27
+ import { isSupportedSerializeType, ModelSerializeOptions } from "./serialize-utils.js";
28
+
29
+ /**
30
+ * Checks if a model type has XML serialization options defined
31
+ */
32
+ export function hasXmlSerialization(type: SdkType): boolean {
33
+ if (type.kind !== "model") {
34
+ return false;
35
+ }
36
+ // Check if the model itself has XML options
37
+ if (type.serializationOptions?.xml) {
38
+ return true;
39
+ }
40
+ // Check if any property has XML options
41
+ return type.properties?.some((p) => p.serializationOptions?.xml) ?? false;
42
+ }
43
+
44
+ /**
45
+ * Checks if any model in the SDK package uses XML serialization
46
+ */
47
+ export function packageUsesXmlSerialization(sdkPackage: SdkPackage<any>): boolean {
48
+ for (const model of sdkPackage.models) {
49
+ if (hasXmlSerialization(model)) {
50
+ return true;
51
+ }
52
+ }
53
+ return false;
54
+ }
55
+
56
+ /**
57
+ * Gets the XML element name for a model type
58
+ */
59
+ export function getXmlRootName(type: SdkModelType): string {
60
+ return type.serializationOptions?.xml?.name ?? type.name;
61
+ }
62
+
63
+ /**
64
+ * Gets the XML namespace for a model type
65
+ */
66
+ export function getXmlRootNs(
67
+ type: SdkModelType,
68
+ ): { namespace: string; prefix: string } | undefined {
69
+ return type.serializationOptions?.xml?.ns;
70
+ }
71
+
72
+ /**
73
+ * Builds an XML serializer function for a model type
74
+ */
75
+ export function buildXmlModelSerializer(
76
+ context: SdkContext,
77
+ type: SdkModelType,
78
+ options: ModelSerializeOptions = {
79
+ nameOnly: false,
80
+ skipDiscriminatedUnionSuffix: false,
81
+ },
82
+ ): FunctionDeclarationStructure | string | undefined {
83
+ if (!isSupportedSerializeType(type)) {
84
+ return undefined;
85
+ }
86
+
87
+ if (!type.name) {
88
+ reportDiagnostic(context.program, {
89
+ code: "anonymous-type-serialization",
90
+ target: type.__raw || NoTarget,
91
+ });
92
+ return undefined;
93
+ }
94
+
95
+ if (
96
+ !type.usage ||
97
+ (type.usage !== undefined && (type.usage & UsageFlags.Input) !== UsageFlags.Input)
98
+ ) {
99
+ return undefined;
100
+ }
101
+
102
+ if (isAzureCoreErrorType(context.program, type.__raw!)) {
103
+ return undefined;
104
+ }
105
+
106
+ const serializerFunctionName =
107
+ options.predefinedName ??
108
+ `${normalizeModelName(
109
+ context,
110
+ type,
111
+ NameType.Operation,
112
+ options.skipDiscriminatedUnionSuffix,
113
+ )}XmlSerializer`;
114
+
115
+ if (options.nameOnly) {
116
+ return resolveReference(refkey(type, "xmlSerializer"));
117
+ }
118
+
119
+ const serializeToXmlRef = resolveReference(XmlHelpers.serializeToXml);
120
+ const xmlPropertyMetadataRef = resolveReference(XmlHelpers.XmlPropertyMetadata);
121
+
122
+ const properties = getAllProperties(context, type, getAllAncestors(type));
123
+ const xmlRootName = getXmlRootName(type);
124
+ const xmlRootNs = getXmlRootNs(type);
125
+
126
+ // Build property metadata array
127
+ const propertyMetadata = buildPropertyMetadataArray(context, properties);
128
+
129
+ const statements: string[] = [];
130
+
131
+ // Generate the properties metadata constant
132
+ statements.push(`const properties: ${xmlPropertyMetadataRef}[] = [${propertyMetadata}];`);
133
+
134
+ // Generate additionalProperties config if applicable
135
+ const additionalPropsConfigExpr = buildAdditionalPropertiesConfigExpr(context, type, properties);
136
+
137
+ // Generate the serialization call
138
+ if (xmlRootNs) {
139
+ if (additionalPropsConfigExpr) {
140
+ statements.push(
141
+ `return ${serializeToXmlRef}(item, properties, "${xmlRootName}", { namespace: "${xmlRootNs.namespace}", prefix: "${xmlRootNs.prefix}" }, undefined, ${additionalPropsConfigExpr});`,
142
+ );
143
+ } else {
144
+ statements.push(
145
+ `return ${serializeToXmlRef}(item, properties, "${xmlRootName}", { namespace: "${xmlRootNs.namespace}", prefix: "${xmlRootNs.prefix}" });`,
146
+ );
147
+ }
148
+ } else {
149
+ if (additionalPropsConfigExpr) {
150
+ statements.push(
151
+ `return ${serializeToXmlRef}(item, properties, "${xmlRootName}", undefined, undefined, ${additionalPropsConfigExpr});`,
152
+ );
153
+ } else {
154
+ statements.push(`return ${serializeToXmlRef}(item, properties, "${xmlRootName}");`);
155
+ }
156
+ }
157
+
158
+ const serializerFunction: FunctionDeclarationStructure = {
159
+ kind: StructureKind.Function,
160
+ name: serializerFunctionName,
161
+ isExported: true,
162
+ parameters: [
163
+ {
164
+ name: "item",
165
+ type: resolveReference(refkey(type)),
166
+ },
167
+ ],
168
+ returnType: "string",
169
+ statements,
170
+ };
171
+
172
+ return serializerFunction;
173
+ }
174
+
175
+ /**
176
+ * Builds an XML object serializer function for a model type.
177
+ * This serializer returns a plain object with XML property names (not an XML string).
178
+ * Used for nested objects within XML serialization.
179
+ */
180
+ export function buildXmlObjectModelSerializer(
181
+ context: SdkContext,
182
+ type: SdkModelType,
183
+ options: ModelSerializeOptions = {
184
+ nameOnly: false,
185
+ skipDiscriminatedUnionSuffix: false,
186
+ },
187
+ ): FunctionDeclarationStructure | string | undefined {
188
+ if (!isSupportedSerializeType(type)) {
189
+ return undefined;
190
+ }
191
+
192
+ if (!type.name) {
193
+ reportDiagnostic(context.program, {
194
+ code: "anonymous-type-serialization",
195
+ target: type.__raw || NoTarget,
196
+ });
197
+ return undefined;
198
+ }
199
+
200
+ if (
201
+ !type.usage ||
202
+ (type.usage !== undefined && (type.usage & UsageFlags.Input) !== UsageFlags.Input)
203
+ ) {
204
+ return undefined;
205
+ }
206
+
207
+ if (isAzureCoreErrorType(context.program, type.__raw!)) {
208
+ return undefined;
209
+ }
210
+
211
+ const serializerFunctionName =
212
+ options.predefinedName ??
213
+ `${normalizeModelName(
214
+ context,
215
+ type,
216
+ NameType.Operation,
217
+ options.skipDiscriminatedUnionSuffix,
218
+ )}XmlObjectSerializer`;
219
+
220
+ if (options.nameOnly) {
221
+ return resolveReference(refkey(type, "xmlObjectSerializer"));
222
+ }
223
+
224
+ const properties = getAllProperties(context, type, getAllAncestors(type));
225
+
226
+ // Build the object literal with XML property names
227
+ const propertyAssignments = buildXmlObjectPropertyAssignments(context, properties);
228
+
229
+ const statements: string[] = [];
230
+
231
+ // Check if the model is a dictionary type (has additionalProperties)
232
+ const additionalPropertyType = getAdditionalPropertiesType(type);
233
+
234
+ if (additionalPropertyType) {
235
+ const apName = getAdditionalPropertiesName(context, type);
236
+ if (propertyAssignments.length === 0) {
237
+ // Pure dictionary type - spread additionalProperties entries as XML elements
238
+ statements.push(
239
+ `return { ...item["${apName}"] } as ${resolveReference(XmlHelpers.XmlSerializedObject)};`,
240
+ );
241
+ } else {
242
+ // Model with both defined properties and additional properties
243
+ statements.push(`return {${propertyAssignments}, ...item["${apName}"]};`);
244
+ }
245
+ } else {
246
+ statements.push(`return {${propertyAssignments}};`);
247
+ }
248
+
249
+ const xmlSerializedObjectRef = resolveReference(XmlHelpers.XmlSerializedObject);
250
+
251
+ // Use _item when there are no properties and not a dict type to avoid unused parameter lint error
252
+ const paramName = propertyAssignments.length === 0 && !additionalPropertyType ? "_item" : "item";
253
+
254
+ const serializerFunction: FunctionDeclarationStructure = {
255
+ kind: StructureKind.Function,
256
+ name: serializerFunctionName,
257
+ isExported: true,
258
+ parameters: [
259
+ {
260
+ name: paramName,
261
+ type: resolveReference(refkey(type)),
262
+ },
263
+ ],
264
+ returnType: xmlSerializedObjectRef,
265
+ statements,
266
+ };
267
+
268
+ return serializerFunction;
269
+ }
270
+
271
+ /**
272
+ * Builds the property assignments for XML object serializer.
273
+ * Maps client property names to XML property names in the output object.
274
+ */
275
+ function buildXmlObjectPropertyAssignments(
276
+ context: SdkContext,
277
+ properties: SdkModelPropertyType[],
278
+ ): string {
279
+ const assignments: string[] = [];
280
+
281
+ for (const property of properties) {
282
+ if (property.kind !== "property") {
283
+ continue;
284
+ }
285
+ if (isReadOnly(property)) {
286
+ continue;
287
+ }
288
+ if (isMetadata(context.program, property.__raw!)) {
289
+ continue;
290
+ }
291
+
292
+ const xmlOptions = property.serializationOptions?.xml;
293
+ const propertyName = normalizeModelPropertyName(context, property);
294
+ const cleanPropertyName = propertyName.replace(/^"|"$/g, "");
295
+
296
+ // Use XML name if available, fall back to serializedName, then JSON name, then property name
297
+ const xmlName = xmlOptions?.name ?? property.name;
298
+
299
+ // Handle nested objects and arrays
300
+ const nestedSerializer = getNestedXmlSerializer(context, property.type);
301
+
302
+ let valueExpr: string;
303
+ if (nestedSerializer && property.type.kind === "model") {
304
+ // Nested object - use XML object serializer
305
+ valueExpr = `item["${cleanPropertyName}"] !== undefined ? ${nestedSerializer}(item["${cleanPropertyName}"]) : undefined`;
306
+ } else if (
307
+ nestedSerializer &&
308
+ property.type.kind === "array" &&
309
+ property.type.valueType.kind === "model"
310
+ ) {
311
+ // Array of objects - map each item through XML object serializer
312
+ const mappedExpr = `item["${cleanPropertyName}"]?.map((i: any) => ${nestedSerializer}(i))`;
313
+ if (xmlOptions?.unwrapped) {
314
+ // Unwrapped: items are direct siblings under the item element name
315
+ const itemKey = xmlOptions?.itemsName ?? xmlName;
316
+ assignments.push(`"${itemKey}": ${mappedExpr}`);
317
+ continue;
318
+ } else if (xmlOptions?.itemsName) {
319
+ // Wrapped: items nested under wrapper element with item element name
320
+ valueExpr = `{ "${xmlOptions.itemsName}": ${mappedExpr} }`;
321
+ } else {
322
+ valueExpr = mappedExpr;
323
+ }
324
+ } else if (property.type.kind === "array") {
325
+ // Array of primitives - handle itemsName wrapping
326
+ const primitiveExpr = buildXmlValueSerializationExpr(
327
+ context,
328
+ property.type,
329
+ `item["${cleanPropertyName}"]`,
330
+ );
331
+ if (xmlOptions?.unwrapped) {
332
+ const itemKey = xmlOptions?.itemsName ?? xmlName;
333
+ assignments.push(`"${itemKey}": ${primitiveExpr}`);
334
+ continue;
335
+ } else if (xmlOptions?.itemsName) {
336
+ valueExpr = `{ "${xmlOptions.itemsName}": ${primitiveExpr} }`;
337
+ } else {
338
+ valueExpr = primitiveExpr;
339
+ }
340
+ } else {
341
+ // Handle type-specific serialization
342
+ valueExpr = buildXmlValueSerializationExpr(
343
+ context,
344
+ property.type,
345
+ `item["${cleanPropertyName}"]`,
346
+ );
347
+ }
348
+
349
+ assignments.push(`"${xmlName}": ${valueExpr}`);
350
+ }
351
+
352
+ return assignments.join(",\n ");
353
+ }
354
+
355
+ /**
356
+ * Builds the serialization expression for a value based on its type.
357
+ * Handles bytes (base64), dates, and arrays of these types.
358
+ */
359
+ function buildXmlValueSerializationExpr(
360
+ context: SdkContext,
361
+ type: SdkType,
362
+ valueExpr: string,
363
+ ): string {
364
+ const uint8ArrayToStringRef = resolveReference(useDependencies().uint8ArrayToString);
365
+
366
+ switch (type.kind) {
367
+ case "bytes":
368
+ // Convert Uint8Array to base64 string
369
+ return `${valueExpr} !== undefined ? ${uint8ArrayToStringRef}(${valueExpr}, "base64") : undefined`;
370
+
371
+ case "utcDateTime": {
372
+ // Convert Date to appropriate string format
373
+ const encoding = (type.encode as string) ?? "rfc3339";
374
+ if (encoding === "unixTimestamp") {
375
+ return `${valueExpr} !== undefined ? ${valueExpr}.getTime() : undefined`;
376
+ } else if (encoding === "rfc7231") {
377
+ return `${valueExpr} !== undefined ? ${valueExpr}.toUTCString() : undefined`;
378
+ }
379
+ // Default rfc3339
380
+ return `${valueExpr} !== undefined ? ${valueExpr}.toISOString() : undefined`;
381
+ }
382
+
383
+ case "array": {
384
+ // Handle arrays - need to serialize each element
385
+ const itemExpr = buildXmlValueSerializationExpr(context, type.valueType, "i");
386
+ if (itemExpr !== "i") {
387
+ // If items need transformation, map them
388
+ return `${valueExpr}?.map((i: any) => ${itemExpr})`;
389
+ }
390
+ // No transformation needed
391
+ return valueExpr;
392
+ }
393
+
394
+ default:
395
+ // Primitive types - use directly
396
+ return valueExpr;
397
+ }
398
+ }
399
+
400
+ /**
401
+ * Builds the property metadata array for XML serialization
402
+ */
403
+ function buildPropertyMetadataArray(
404
+ context: SdkContext,
405
+ properties: SdkModelPropertyType[],
406
+ ): string {
407
+ const metadataEntries: string[] = [];
408
+
409
+ for (const property of properties) {
410
+ if (property.kind !== "property") {
411
+ continue;
412
+ }
413
+ if (isReadOnly(property)) {
414
+ continue;
415
+ }
416
+ if (isMetadata(context.program, property.__raw!)) {
417
+ continue;
418
+ }
419
+
420
+ const xmlOptions = property.serializationOptions?.xml;
421
+ const jsonOptions = property.serializationOptions?.json;
422
+ const propertyName = normalizeModelPropertyName(context, property);
423
+ const cleanPropertyName = propertyName.replace(/^"|"$/g, "");
424
+
425
+ // Use XML name if available, fall back to JSON name, then property name
426
+ const serializedName = xmlOptions?.name ?? jsonOptions?.name ?? property.name;
427
+
428
+ const metadataObj: string[] = [
429
+ `propertyName: "${cleanPropertyName}"`,
430
+ `xmlOptions: { name: "${serializedName}"${buildXmlOptionsString(xmlOptions)} }`,
431
+ ];
432
+
433
+ // Add type information for special handling
434
+ const typeInfo = getPropertyTypeInfo(property.type);
435
+ if (typeInfo.type) {
436
+ metadataObj.push(`type: "${typeInfo.type}"`);
437
+ }
438
+ if (typeInfo.dateEncoding) {
439
+ metadataObj.push(`dateEncoding: "${typeInfo.dateEncoding}"`);
440
+ }
441
+ if (typeInfo.bytesEncoding) {
442
+ metadataObj.push(`bytesEncoding: "${typeInfo.bytesEncoding}"`);
443
+ }
444
+ if (typeInfo.itemType) {
445
+ metadataObj.push(`itemType: "${typeInfo.itemType}"`);
446
+ }
447
+
448
+ // Add serializer for complex types
449
+ const nestedSerializer = getNestedXmlSerializer(context, property.type);
450
+ if (nestedSerializer) {
451
+ metadataObj.push(`serializer: ${nestedSerializer}`);
452
+ }
453
+
454
+ metadataEntries.push(`{ ${metadataObj.join(", ")} }`);
455
+ }
456
+
457
+ return metadataEntries.join(",\n ");
458
+ }
459
+
460
+ /**
461
+ * Builds the XML options string from XmlSerializationOptions
462
+ */
463
+ function buildXmlOptionsString(xmlOptions?: {
464
+ name: string;
465
+ attribute?: boolean;
466
+ ns?: { namespace: string; prefix: string };
467
+ unwrapped?: boolean;
468
+ itemsName?: string;
469
+ itemsNs?: { namespace: string; prefix: string };
470
+ }): string {
471
+ if (!xmlOptions) {
472
+ return "";
473
+ }
474
+
475
+ const parts: string[] = [];
476
+
477
+ if (xmlOptions.attribute) {
478
+ parts.push(`attribute: true`);
479
+ }
480
+ if (xmlOptions.ns) {
481
+ parts.push(
482
+ `ns: { namespace: "${xmlOptions.ns.namespace}", prefix: "${xmlOptions.ns.prefix}" }`,
483
+ );
484
+ }
485
+ if (xmlOptions.unwrapped) {
486
+ parts.push(`unwrapped: true`);
487
+ }
488
+ if (xmlOptions.itemsName) {
489
+ parts.push(`itemsName: "${xmlOptions.itemsName}"`);
490
+ }
491
+ if (xmlOptions.itemsNs) {
492
+ parts.push(
493
+ `itemsNs: { namespace: "${xmlOptions.itemsNs.namespace}", prefix: "${xmlOptions.itemsNs.prefix}" }`,
494
+ );
495
+ }
496
+
497
+ return parts.length > 0 ? `, ${parts.join(", ")}` : "";
498
+ }
499
+
500
+ /**
501
+ * Gets type information for a property for XML serialization
502
+ */
503
+ function getPropertyTypeInfo(type: SdkType): {
504
+ type?: "array" | "object" | "primitive" | "date" | "bytes" | "dict";
505
+ primitiveSubtype?: "string" | "number" | "boolean";
506
+ dateEncoding?: "rfc3339" | "rfc7231" | "unixTimestamp";
507
+ bytesEncoding?: "base64" | "base64url";
508
+ itemType?: "primitive" | "date" | "bytes";
509
+ } {
510
+ switch (type.kind) {
511
+ case "array": {
512
+ // For arrays, also extract item type info for bytes/date items
513
+ const itemInfo = getPropertyTypeInfo(type.valueType);
514
+ const result: ReturnType<typeof getPropertyTypeInfo> = { type: "array" };
515
+ // Only include item type info for types that need special serialization
516
+ if (itemInfo.type === "bytes" || itemInfo.type === "date" || itemInfo.type === "primitive") {
517
+ result.itemType = itemInfo.type as "primitive" | "date" | "bytes";
518
+ }
519
+ if (itemInfo.dateEncoding) {
520
+ result.dateEncoding = itemInfo.dateEncoding;
521
+ }
522
+ if (itemInfo.bytesEncoding) {
523
+ result.bytesEncoding = itemInfo.bytesEncoding;
524
+ }
525
+ if (itemInfo.primitiveSubtype) {
526
+ result.primitiveSubtype = itemInfo.primitiveSubtype;
527
+ }
528
+ return result;
529
+ }
530
+ case "model":
531
+ return { type: "object" };
532
+ case "dict":
533
+ return { type: "dict" };
534
+ case "utcDateTime":
535
+ return {
536
+ type: "date",
537
+ dateEncoding: (type.encode as "rfc3339" | "rfc7231" | "unixTimestamp") ?? "rfc3339",
538
+ };
539
+ case "bytes": {
540
+ const encode = (type as any).encode as string | undefined;
541
+ // Default to base64 if no encoding specified
542
+ const bytesEncoding = encode === "base64url" ? "base64url" : ("base64" as const);
543
+ return { type: "bytes", bytesEncoding };
544
+ }
545
+ case "boolean":
546
+ return { type: "primitive", primitiveSubtype: "boolean" };
547
+ case "string":
548
+ case "url":
549
+ return { type: "primitive", primitiveSubtype: "string" };
550
+ case "enum":
551
+ case "enumvalue":
552
+ case "constant":
553
+ // Recurse into the underlying value type (e.g. string enum → string)
554
+ return getPropertyTypeInfo(type.valueType);
555
+ case "union":
556
+ // Inspect variant types; if all share the same subtype use it,
557
+ // otherwise default to string as a safe fallback
558
+ if (type.variantTypes.length > 0) {
559
+ const first = getPropertyTypeInfo(type.variantTypes[0]!);
560
+ const allSame = type.variantTypes.every(
561
+ (v) => getPropertyTypeInfo(v).primitiveSubtype === first.primitiveSubtype,
562
+ );
563
+ if (allSame) {
564
+ return first;
565
+ }
566
+ }
567
+ return { type: "primitive", primitiveSubtype: "string" };
568
+ case "nullable":
569
+ // Recurse into the underlying non-null type
570
+ return getPropertyTypeInfo(type.type);
571
+ default:
572
+ // Numeric kinds (int8, int16, int32, int64, uint8, ..., float32, float64,
573
+ // decimal, decimal128, numeric, integer, safeint, float) and any other
574
+ // scalar types default to number subtype.
575
+ return { type: "primitive", primitiveSubtype: "number" };
576
+ }
577
+ }
578
+
579
+ /**
580
+ * Gets the nested XML serializer function reference for complex types.
581
+ * Uses the XML object serializer to properly handle XML property names.
582
+ */
583
+ function getNestedXmlSerializer(context: SdkContext, type: SdkType): string | undefined {
584
+ if (type.kind === "model") {
585
+ // For nested objects, use the XML object serializer which returns objects
586
+ // with XML property names for proper serialization
587
+ const serializerName = buildXmlObjectModelSerializer(context, type, {
588
+ nameOnly: true,
589
+ skipDiscriminatedUnionSuffix: false,
590
+ });
591
+ if (typeof serializerName === "string") {
592
+ return serializerName;
593
+ }
594
+ }
595
+ if (type.kind === "array" && type.valueType.kind === "model") {
596
+ // For arrays, use the XML object serializer for items
597
+ // The XML helper calls this for each item and handles the array mapping
598
+ const itemSerializer = buildXmlObjectModelSerializer(context, type.valueType, {
599
+ nameOnly: true,
600
+ skipDiscriminatedUnionSuffix: false,
601
+ });
602
+ if (typeof itemSerializer === "string") {
603
+ return itemSerializer;
604
+ }
605
+ }
606
+ return undefined;
607
+ }
608
+
609
+ /**
610
+ * Builds an XML deserializer function for a model type
611
+ */
612
+ export function buildXmlModelDeserializer(
613
+ context: SdkContext,
614
+ type: SdkModelType,
615
+ options: ModelSerializeOptions = {
616
+ nameOnly: false,
617
+ skipDiscriminatedUnionSuffix: false,
618
+ },
619
+ ): FunctionDeclarationStructure | string | undefined {
620
+ if (!isSupportedSerializeType(type)) {
621
+ return undefined;
622
+ }
623
+
624
+ if (!type.name) {
625
+ reportDiagnostic(context.program, {
626
+ code: "anonymous-type-deserialization",
627
+ target: type.__raw || NoTarget,
628
+ });
629
+ return undefined;
630
+ }
631
+
632
+ if (
633
+ !type.usage ||
634
+ (type.usage !== undefined &&
635
+ (type.usage & UsageFlags.Output) !== UsageFlags.Output &&
636
+ (type.usage & UsageFlags.Exception) !== UsageFlags.Exception)
637
+ ) {
638
+ return undefined;
639
+ }
640
+
641
+ if (isAzureCoreErrorType(context.program, type.__raw!)) {
642
+ return undefined;
643
+ }
644
+
645
+ const deserializerFunctionName =
646
+ options.predefinedName ??
647
+ `${normalizeModelName(
648
+ context,
649
+ type,
650
+ NameType.Operation,
651
+ options.skipDiscriminatedUnionSuffix,
652
+ )}XmlDeserializer`;
653
+
654
+ if (options.nameOnly) {
655
+ return resolveReference(refkey(type, "xmlDeserializer"));
656
+ }
657
+
658
+ const deserializeFromXmlRef = resolveReference(XmlHelpers.deserializeFromXml);
659
+ const xmlPropertyDeserializeMetadataRef = resolveReference(
660
+ XmlHelpers.XmlPropertyDeserializeMetadata,
661
+ );
662
+
663
+ const properties = getAllProperties(context, type, getAllAncestors(type));
664
+ const xmlRootName = getXmlRootName(type);
665
+ const xmlRootNs = getXmlRootNs(type);
666
+
667
+ // Build property metadata array for deserialization
668
+ const propertyMetadata = buildDeserializePropertyMetadataArray(context, properties);
669
+
670
+ const statements: string[] = [];
671
+
672
+ // Generate the properties metadata constant
673
+ statements.push(
674
+ `const properties: ${xmlPropertyDeserializeMetadataRef}[] = [${propertyMetadata}];`,
675
+ );
676
+
677
+ // Generate additionalProperties config if applicable
678
+ const additionalPropsConfigExpr = buildAdditionalPropertiesConfigExpr(context, type, properties);
679
+
680
+ // Generate the deserialization call
681
+ const typeRef = resolveReference(refkey(type));
682
+ if (xmlRootNs) {
683
+ if (additionalPropsConfigExpr) {
684
+ statements.push(
685
+ `return ${deserializeFromXmlRef}<${typeRef}>(xmlString, properties, "${xmlRootName}", { namespace: "${xmlRootNs.namespace}", prefix: "${xmlRootNs.prefix}" }, undefined, ${additionalPropsConfigExpr});`,
686
+ );
687
+ } else {
688
+ statements.push(
689
+ `return ${deserializeFromXmlRef}<${typeRef}>(xmlString, properties, "${xmlRootName}", { namespace: "${xmlRootNs.namespace}", prefix: "${xmlRootNs.prefix}" });`,
690
+ );
691
+ }
692
+ } else {
693
+ if (additionalPropsConfigExpr) {
694
+ statements.push(
695
+ `return ${deserializeFromXmlRef}<${typeRef}>(xmlString, properties, "${xmlRootName}", undefined, undefined, ${additionalPropsConfigExpr});`,
696
+ );
697
+ } else {
698
+ statements.push(
699
+ `return ${deserializeFromXmlRef}<${typeRef}>(xmlString, properties, "${xmlRootName}");`,
700
+ );
701
+ }
702
+ }
703
+
704
+ const deserializerFunction: FunctionDeclarationStructure = {
705
+ kind: StructureKind.Function,
706
+ name: deserializerFunctionName,
707
+ isExported: true,
708
+ parameters: [
709
+ {
710
+ name: "xmlString",
711
+ type: "string",
712
+ },
713
+ ],
714
+ returnType: resolveReference(refkey(type)),
715
+ statements,
716
+ };
717
+
718
+ return deserializerFunction;
719
+ }
720
+
721
+ /**
722
+ * Builds the property metadata array for XML deserialization
723
+ */
724
+ function buildDeserializePropertyMetadataArray(
725
+ context: SdkContext,
726
+ properties: SdkModelPropertyType[],
727
+ ): string {
728
+ const metadataEntries: string[] = [];
729
+
730
+ for (const property of properties) {
731
+ if (property.kind !== "property") {
732
+ continue;
733
+ }
734
+ if (isMetadata(context.program, property.__raw!)) {
735
+ continue;
736
+ }
737
+
738
+ const xmlOptions = property.serializationOptions?.xml;
739
+ const jsonOptions = property.serializationOptions?.json;
740
+ const propertyName = normalizeModelPropertyName(context, property);
741
+ const cleanPropertyName = propertyName.replace(/^"|"$/g, "");
742
+
743
+ // Use XML name if available, fall back to JSON name, then property name
744
+ const serializedName = xmlOptions?.name ?? jsonOptions?.name ?? property.name;
745
+
746
+ const metadataObj: string[] = [
747
+ `propertyName: "${cleanPropertyName}"`,
748
+ `xmlOptions: { name: "${serializedName}"${buildXmlOptionsString(xmlOptions)} }`,
749
+ ];
750
+
751
+ // Add type information for special handling
752
+ const typeInfo = getPropertyTypeInfo(property.type);
753
+ if (typeInfo.type) {
754
+ metadataObj.push(`type: "${typeInfo.type}"`);
755
+ }
756
+ if (typeInfo.dateEncoding) {
757
+ metadataObj.push(`dateEncoding: "${typeInfo.dateEncoding}"`);
758
+ }
759
+ if (typeInfo.bytesEncoding) {
760
+ metadataObj.push(`bytesEncoding: "${typeInfo.bytesEncoding}"`);
761
+ }
762
+ if (typeInfo.itemType) {
763
+ metadataObj.push(`itemType: "${typeInfo.itemType}"`);
764
+ }
765
+ if (typeInfo.primitiveSubtype) {
766
+ metadataObj.push(`primitiveSubtype: "${typeInfo.primitiveSubtype}"`);
767
+ }
768
+
769
+ // Add deserializer for complex types
770
+ const nestedDeserializer = getNestedXmlDeserializer(context, property.type);
771
+ if (nestedDeserializer) {
772
+ metadataObj.push(`deserializer: ${nestedDeserializer}`);
773
+ }
774
+
775
+ metadataEntries.push(`{ ${metadataObj.join(", ")} }`);
776
+ }
777
+
778
+ return metadataEntries.join(",\n ");
779
+ }
780
+
781
+ /**
782
+ * Gets the nested XML deserializer function reference for complex types.
783
+ * Uses the XML object deserializer to properly handle XML property names.
784
+ */
785
+ function getNestedXmlDeserializer(context: SdkContext, type: SdkType): string | undefined {
786
+ if (type.kind === "model") {
787
+ // For nested objects, use the XML object deserializer which takes parsed XML objects
788
+ // and uses XML property names for mapping
789
+ const deserializerName = buildXmlObjectModelDeserializer(context, type, {
790
+ nameOnly: true,
791
+ skipDiscriminatedUnionSuffix: false,
792
+ });
793
+ if (typeof deserializerName === "string") {
794
+ return deserializerName;
795
+ }
796
+ }
797
+ if (type.kind === "array" && type.valueType.kind === "model") {
798
+ // For arrays, use the XML object deserializer for items
799
+ // The XML helper calls this for each item and handles the array mapping
800
+ const itemDeserializer = buildXmlObjectModelDeserializer(context, type.valueType, {
801
+ nameOnly: true,
802
+ skipDiscriminatedUnionSuffix: false,
803
+ });
804
+ if (typeof itemDeserializer === "string") {
805
+ return itemDeserializer;
806
+ }
807
+ }
808
+ return undefined;
809
+ }
810
+
811
+ /**
812
+ * Builds an XML object deserializer function for a model type.
813
+ * This deserializer takes a pre-parsed XML object (not an XML string)
814
+ * and uses XML property names for mapping. Used for nested objects.
815
+ */
816
+ export function buildXmlObjectModelDeserializer(
817
+ context: SdkContext,
818
+ type: SdkModelType,
819
+ options: ModelSerializeOptions = {
820
+ nameOnly: false,
821
+ skipDiscriminatedUnionSuffix: false,
822
+ },
823
+ ): FunctionDeclarationStructure | string | undefined {
824
+ if (!isSupportedSerializeType(type)) {
825
+ return undefined;
826
+ }
827
+
828
+ if (!type.name) {
829
+ reportDiagnostic(context.program, {
830
+ code: "anonymous-type-deserialization",
831
+ target: type.__raw || NoTarget,
832
+ });
833
+ return undefined;
834
+ }
835
+
836
+ if (
837
+ !type.usage ||
838
+ (type.usage !== undefined &&
839
+ (type.usage & UsageFlags.Output) !== UsageFlags.Output &&
840
+ (type.usage & UsageFlags.Exception) !== UsageFlags.Exception)
841
+ ) {
842
+ return undefined;
843
+ }
844
+
845
+ if (isAzureCoreErrorType(context.program, type.__raw!)) {
846
+ return undefined;
847
+ }
848
+
849
+ const deserializerFunctionName =
850
+ options.predefinedName ??
851
+ `${normalizeModelName(
852
+ context,
853
+ type,
854
+ NameType.Operation,
855
+ options.skipDiscriminatedUnionSuffix,
856
+ )}XmlObjectDeserializer`;
857
+
858
+ if (options.nameOnly) {
859
+ return resolveReference(refkey(type, "xmlObjectDeserializer"));
860
+ }
861
+
862
+ const deserializeXmlObjectRef = resolveReference(XmlHelpers.deserializeXmlObject);
863
+ const xmlPropertyDeserializeMetadataRef = resolveReference(
864
+ XmlHelpers.XmlPropertyDeserializeMetadata,
865
+ );
866
+
867
+ const properties = getAllProperties(context, type, getAllAncestors(type));
868
+
869
+ // Build property metadata array for deserialization
870
+ const propertyMetadata = buildDeserializePropertyMetadataArray(context, properties);
871
+
872
+ const statements: string[] = [];
873
+
874
+ // Generate the properties metadata constant
875
+ statements.push(
876
+ `const properties: ${xmlPropertyDeserializeMetadataRef}[] = [${propertyMetadata}];`,
877
+ );
878
+
879
+ // Generate additionalProperties config if applicable
880
+ const additionalPropsConfigExpr = buildAdditionalPropertiesConfigExpr(context, type, properties);
881
+
882
+ // Generate the deserialization call - no rootName needed for object deserializer
883
+ const typeRef = resolveReference(refkey(type));
884
+ if (additionalPropsConfigExpr) {
885
+ statements.push(
886
+ `return ${deserializeXmlObjectRef}<${typeRef}>(xmlObject, properties, ${additionalPropsConfigExpr});`,
887
+ );
888
+ } else {
889
+ statements.push(`return ${deserializeXmlObjectRef}<${typeRef}>(xmlObject, properties);`);
890
+ }
891
+
892
+ const deserializerFunction: FunctionDeclarationStructure = {
893
+ kind: StructureKind.Function,
894
+ name: deserializerFunctionName,
895
+ isExported: true,
896
+ parameters: [
897
+ {
898
+ name: "xmlObject",
899
+ type: "Record<string, unknown>",
900
+ },
901
+ ],
902
+ returnType: resolveReference(refkey(type)),
903
+ statements,
904
+ };
905
+
906
+ return deserializerFunction;
907
+ }
908
+
909
+ /**
910
+ * Builds the additionalProperties config expression for XML deserializers.
911
+ * Returns undefined if the model has no additionalProperties and is not an error model.
912
+ * Error models (with UsageFlags.Exception) are always treated as having additional properties
913
+ * so that unknown XML elements are captured during deserialization.
914
+ */
915
+ function buildAdditionalPropertiesConfigExpr(
916
+ context: SdkContext,
917
+ type: SdkModelType,
918
+ properties: SdkModelPropertyType[],
919
+ ): string | undefined {
920
+ const additionalPropertyType = getAdditionalPropertiesType(type);
921
+ const isErrorModel =
922
+ type.usage !== undefined && (type.usage & UsageFlags.Exception) === UsageFlags.Exception;
923
+
924
+ if (!additionalPropertyType && !isErrorModel) {
925
+ return undefined;
926
+ }
927
+
928
+ // Resolve the XmlAdditionalPropertiesConfig type reference
929
+ resolveReference(XmlHelpers.XmlAdditionalPropertiesConfig);
930
+
931
+ const propName = additionalPropertyType
932
+ ? getAdditionalPropertiesName(context, type)
933
+ : "additionalProperties";
934
+
935
+ // Collect XML element names of declared properties to exclude
936
+ const excludeNames: string[] = [];
937
+ for (const property of properties) {
938
+ if (property.kind !== "property") {
939
+ continue;
940
+ }
941
+ if (isMetadata(context.program, property.__raw!)) {
942
+ continue;
943
+ }
944
+ const xmlOptions = property.serializationOptions?.xml;
945
+ const jsonOptions = property.serializationOptions?.json;
946
+ const xmlName = xmlOptions?.name ?? jsonOptions?.name ?? property.name;
947
+ excludeNames.push(xmlName);
948
+ }
949
+
950
+ return `{ propertyName: "${propName}", excludeNames: [${excludeNames.map((n) => `"${n}"`).join(", ")}] }`;
951
+ }