@azure/attestation 1.0.1-alpha.20241022.1 → 1.0.1-alpha.20241024.1

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 (610) hide show
  1. package/dist/browser/attestationAdministrationClient.d.ts +183 -0
  2. package/dist/browser/attestationAdministrationClient.d.ts.map +1 -0
  3. package/{dist-esm/src → dist/browser}/attestationAdministrationClient.js +13 -13
  4. package/dist/browser/attestationAdministrationClient.js.map +1 -0
  5. package/dist/browser/attestationClient.d.ts +209 -0
  6. package/dist/browser/attestationClient.d.ts.map +1 -0
  7. package/{dist-esm/src → dist/browser}/attestationClient.js +12 -12
  8. package/dist/browser/attestationClient.js.map +1 -0
  9. package/dist/browser/generated/generatedClient.d.ts +21 -0
  10. package/dist/browser/generated/generatedClient.d.ts.map +1 -0
  11. package/{dist-esm/src → dist/browser}/generated/generatedClient.js +1 -1
  12. package/dist/browser/generated/generatedClient.js.map +1 -0
  13. package/dist/browser/generated/index.d.ts +4 -0
  14. package/dist/browser/generated/index.d.ts.map +1 -0
  15. package/{dist-esm/src → dist/browser}/generated/index.js +3 -3
  16. package/dist/browser/generated/index.js.map +1 -0
  17. package/dist/browser/generated/models/index.d.ts +393 -0
  18. package/dist/browser/generated/models/index.d.ts.map +1 -0
  19. package/dist/browser/generated/models/mappers.d.ts +22 -0
  20. package/dist/browser/generated/models/mappers.d.ts.map +1 -0
  21. package/dist/browser/generated/models/parameters.d.ts +17 -0
  22. package/dist/browser/generated/models/parameters.d.ts.map +1 -0
  23. package/{dist-esm/src → dist/browser}/generated/models/parameters.js +1 -1
  24. package/dist/browser/generated/models/parameters.js.map +1 -0
  25. package/dist/browser/generated/operations/attestation.d.ts +34 -0
  26. package/dist/browser/generated/operations/attestation.d.ts.map +1 -0
  27. package/{dist-esm/src → dist/browser}/generated/operations/attestation.js +3 -3
  28. package/dist/browser/generated/operations/attestation.js.map +1 -0
  29. package/dist/browser/generated/operations/index.d.ts +6 -0
  30. package/dist/browser/generated/operations/index.d.ts.map +1 -0
  31. package/{dist-esm/src/generated/operationsInterfaces → dist/browser/generated/operations}/index.js +5 -5
  32. package/dist/browser/generated/operations/index.js.map +1 -0
  33. package/dist/browser/generated/operations/metadataConfiguration.d.ts +18 -0
  34. package/dist/browser/generated/operations/metadataConfiguration.d.ts.map +1 -0
  35. package/{dist-esm/src → dist/browser}/generated/operations/metadataConfiguration.js +3 -3
  36. package/dist/browser/generated/operations/metadataConfiguration.js.map +1 -0
  37. package/dist/browser/generated/operations/policy.d.ts +37 -0
  38. package/dist/browser/generated/operations/policy.d.ts.map +1 -0
  39. package/{dist-esm/src → dist/browser}/generated/operations/policy.js +3 -3
  40. package/dist/browser/generated/operations/policy.js.map +1 -0
  41. package/dist/browser/generated/operations/policyCertificates.d.ts +34 -0
  42. package/dist/browser/generated/operations/policyCertificates.d.ts.map +1 -0
  43. package/{dist-esm/src → dist/browser}/generated/operations/policyCertificates.js +3 -3
  44. package/dist/browser/generated/operations/policyCertificates.js.map +1 -0
  45. package/dist/browser/generated/operations/signingCertificates.d.ts +18 -0
  46. package/dist/browser/generated/operations/signingCertificates.d.ts.map +1 -0
  47. package/{dist-esm/src → dist/browser}/generated/operations/signingCertificates.js +3 -3
  48. package/dist/browser/generated/operations/signingCertificates.js.map +1 -0
  49. package/dist/browser/generated/operationsInterfaces/attestation.d.ts +26 -0
  50. package/dist/browser/generated/operationsInterfaces/attestation.d.ts.map +1 -0
  51. package/dist/browser/generated/operationsInterfaces/attestation.js.map +1 -0
  52. package/dist/browser/generated/operationsInterfaces/index.d.ts +6 -0
  53. package/dist/browser/generated/operationsInterfaces/index.d.ts.map +1 -0
  54. package/{dist-esm/src/generated/operations → dist/browser/generated/operationsInterfaces}/index.js +5 -5
  55. package/dist/browser/generated/operationsInterfaces/index.js.map +1 -0
  56. package/dist/browser/generated/operationsInterfaces/metadataConfiguration.d.ts +10 -0
  57. package/dist/browser/generated/operationsInterfaces/metadataConfiguration.d.ts.map +1 -0
  58. package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/metadataConfiguration.js.map +1 -1
  59. package/dist/browser/generated/operationsInterfaces/policy.d.ts +29 -0
  60. package/dist/browser/generated/operationsInterfaces/policy.d.ts.map +1 -0
  61. package/dist/browser/generated/operationsInterfaces/policy.js.map +1 -0
  62. package/dist/browser/generated/operationsInterfaces/policyCertificates.d.ts +26 -0
  63. package/dist/browser/generated/operationsInterfaces/policyCertificates.d.ts.map +1 -0
  64. package/dist/browser/generated/operationsInterfaces/policyCertificates.js.map +1 -0
  65. package/dist/browser/generated/operationsInterfaces/signingCertificates.d.ts +10 -0
  66. package/dist/browser/generated/operationsInterfaces/signingCertificates.d.ts.map +1 -0
  67. package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/signingCertificates.js.map +1 -1
  68. package/dist/browser/generated/tracing.d.ts +2 -0
  69. package/dist/browser/generated/tracing.d.ts.map +1 -0
  70. package/dist/browser/index.d.ts +4 -0
  71. package/dist/browser/index.d.ts.map +1 -0
  72. package/dist/browser/index.js +6 -0
  73. package/dist/browser/index.js.map +1 -0
  74. package/dist/browser/logger.d.ts +7 -0
  75. package/dist/browser/logger.d.ts.map +1 -0
  76. package/dist/browser/models/attestationPolicyToken.d.ts +28 -0
  77. package/dist/browser/models/attestationPolicyToken.d.ts.map +1 -0
  78. package/{dist-esm/src → dist/browser}/models/attestationPolicyToken.js +2 -2
  79. package/dist/browser/models/attestationPolicyToken.js.map +1 -0
  80. package/dist/browser/models/attestationResponse.d.ts +30 -0
  81. package/dist/browser/models/attestationResponse.d.ts.map +1 -0
  82. package/dist/browser/models/attestationResponse.js.map +1 -0
  83. package/dist/browser/models/attestationResult.d.ts +294 -0
  84. package/dist/browser/models/attestationResult.d.ts.map +1 -0
  85. package/{dist-esm/src → dist/browser}/models/attestationResult.js +1 -1
  86. package/dist/browser/models/attestationResult.js.map +1 -0
  87. package/dist/browser/models/attestationSigner.d.ts +27 -0
  88. package/dist/browser/models/attestationSigner.d.ts.map +1 -0
  89. package/{dist-esm/src → dist/browser}/models/attestationSigner.js +1 -1
  90. package/dist/browser/models/attestationSigner.js.map +1 -0
  91. package/dist/browser/models/attestationToken.d.ts +339 -0
  92. package/dist/browser/models/attestationToken.d.ts.map +1 -0
  93. package/{dist-esm/src → dist/browser}/models/attestationToken.js +6 -6
  94. package/dist/browser/models/attestationToken.js.map +1 -0
  95. package/dist/browser/models/index.d.ts +8 -0
  96. package/dist/browser/models/index.d.ts.map +1 -0
  97. package/{dist-esm/src → dist/browser}/models/index.js +2 -2
  98. package/dist/browser/models/index.js.map +1 -0
  99. package/dist/browser/models/policyResult.d.ts +31 -0
  100. package/dist/browser/models/policyResult.d.ts.map +1 -0
  101. package/{dist-esm/src → dist/browser}/models/policyResult.js +3 -3
  102. package/dist/browser/models/policyResult.js.map +1 -0
  103. package/dist/browser/models/storedAttestationPolicy.d.ts +24 -0
  104. package/dist/browser/models/storedAttestationPolicy.d.ts.map +1 -0
  105. package/{dist-esm/src → dist/browser}/models/storedAttestationPolicy.js +3 -3
  106. package/dist/browser/models/storedAttestationPolicy.js.map +1 -0
  107. package/dist/browser/package.json +3 -0
  108. package/dist/browser/utils/base64-browser.d.mts.map +1 -0
  109. package/dist/browser/utils/base64-browser.mjs.map +1 -0
  110. package/dist/browser/utils/base64.d.ts +28 -0
  111. package/{dist-esm/src/utils/base64.browser.js → dist/browser/utils/base64.js} +1 -1
  112. package/dist/browser/utils/buffer-browser.d.mts.map +1 -0
  113. package/dist/browser/utils/buffer-browser.mjs.map +1 -0
  114. package/dist/browser/utils/buffer.d.ts +8 -0
  115. package/{dist-esm/src/utils/buffer.browser.js → dist/browser/utils/buffer.js} +1 -1
  116. package/dist/browser/utils/helpers.d.ts +22 -0
  117. package/dist/browser/utils/helpers.d.ts.map +1 -0
  118. package/{dist-esm/src → dist/browser}/utils/helpers.js +1 -1
  119. package/dist/browser/utils/helpers.js.map +1 -0
  120. package/dist/browser/utils/textEncoding-browser.d.mts +10 -0
  121. package/dist/browser/utils/textEncoding-browser.d.mts.map +1 -0
  122. package/{dist-esm/src/utils/textEncoding.browser.js → dist/browser/utils/textEncoding-browser.mjs} +1 -1
  123. package/dist/browser/utils/textEncoding-browser.mjs.map +1 -0
  124. package/dist/browser/utils/typeDeserializer.d.ts +34 -0
  125. package/dist/browser/utils/typeDeserializer.d.ts.map +1 -0
  126. package/dist/browser/utils/utf8.d.ts +13 -0
  127. package/dist/browser/utils/utf8.d.ts.map +1 -0
  128. package/dist/commonjs/attestationAdministrationClient.d.ts +183 -0
  129. package/dist/commonjs/attestationAdministrationClient.d.ts.map +1 -0
  130. package/dist/commonjs/attestationAdministrationClient.js +391 -0
  131. package/dist/commonjs/attestationAdministrationClient.js.map +1 -0
  132. package/dist/commonjs/attestationClient.d.ts +209 -0
  133. package/dist/commonjs/attestationClient.d.ts.map +1 -0
  134. package/dist/commonjs/attestationClient.js +243 -0
  135. package/dist/commonjs/attestationClient.js.map +1 -0
  136. package/dist/commonjs/generated/generatedClient.d.ts +21 -0
  137. package/dist/commonjs/generated/generatedClient.d.ts.map +1 -0
  138. package/dist/commonjs/generated/generatedClient.js +78 -0
  139. package/dist/commonjs/generated/generatedClient.js.map +1 -0
  140. package/dist/commonjs/generated/index.d.ts +4 -0
  141. package/dist/commonjs/generated/index.d.ts.map +1 -0
  142. package/dist/commonjs/generated/index.js +16 -0
  143. package/dist/commonjs/generated/index.js.map +1 -0
  144. package/dist/commonjs/generated/models/index.d.ts +393 -0
  145. package/dist/commonjs/generated/models/index.d.ts.map +1 -0
  146. package/dist/commonjs/generated/models/index.js +45 -0
  147. package/dist/commonjs/generated/models/index.js.map +1 -0
  148. package/dist/commonjs/generated/models/mappers.d.ts +22 -0
  149. package/dist/commonjs/generated/models/mappers.d.ts.map +1 -0
  150. package/dist/commonjs/generated/models/mappers.js +725 -0
  151. package/dist/commonjs/generated/models/mappers.js.map +1 -0
  152. package/dist/commonjs/generated/models/parameters.d.ts +17 -0
  153. package/dist/commonjs/generated/models/parameters.d.ts.map +1 -0
  154. package/dist/commonjs/generated/models/parameters.js +157 -0
  155. package/dist/commonjs/generated/models/parameters.js.map +1 -0
  156. package/dist/commonjs/generated/operations/attestation.d.ts +34 -0
  157. package/dist/commonjs/generated/operations/attestation.d.ts.map +1 -0
  158. package/dist/commonjs/generated/operations/attestation.js +116 -0
  159. package/dist/commonjs/generated/operations/attestation.js.map +1 -0
  160. package/dist/commonjs/generated/operations/index.d.ts +6 -0
  161. package/dist/commonjs/generated/operations/index.d.ts.map +1 -0
  162. package/dist/commonjs/generated/operations/index.js +16 -0
  163. package/dist/commonjs/generated/operations/index.js.map +1 -0
  164. package/dist/commonjs/generated/operations/metadataConfiguration.d.ts +18 -0
  165. package/dist/commonjs/generated/operations/metadataConfiguration.d.ts.map +1 -0
  166. package/dist/commonjs/generated/operations/metadataConfiguration.js +55 -0
  167. package/dist/commonjs/generated/operations/metadataConfiguration.js.map +1 -0
  168. package/dist/commonjs/generated/operations/policy.d.ts +37 -0
  169. package/dist/commonjs/generated/operations/policy.d.ts.map +1 -0
  170. package/dist/commonjs/generated/operations/policy.js +117 -0
  171. package/dist/commonjs/generated/operations/policy.js.map +1 -0
  172. package/dist/commonjs/generated/operations/policyCertificates.d.ts +34 -0
  173. package/dist/commonjs/generated/operations/policyCertificates.d.ts.map +1 -0
  174. package/dist/commonjs/generated/operations/policyCertificates.js +114 -0
  175. package/dist/commonjs/generated/operations/policyCertificates.js.map +1 -0
  176. package/dist/commonjs/generated/operations/signingCertificates.d.ts +18 -0
  177. package/dist/commonjs/generated/operations/signingCertificates.d.ts.map +1 -0
  178. package/dist/commonjs/generated/operations/signingCertificates.js +53 -0
  179. package/dist/commonjs/generated/operations/signingCertificates.js.map +1 -0
  180. package/dist/commonjs/generated/operationsInterfaces/attestation.d.ts +26 -0
  181. package/dist/commonjs/generated/operationsInterfaces/attestation.d.ts.map +1 -0
  182. package/dist/commonjs/generated/operationsInterfaces/attestation.js +10 -0
  183. package/dist/commonjs/generated/operationsInterfaces/attestation.js.map +1 -0
  184. package/dist/commonjs/generated/operationsInterfaces/index.d.ts +6 -0
  185. package/dist/commonjs/generated/operationsInterfaces/index.d.ts.map +1 -0
  186. package/dist/commonjs/generated/operationsInterfaces/index.js +16 -0
  187. package/dist/commonjs/generated/operationsInterfaces/index.js.map +1 -0
  188. package/dist/commonjs/generated/operationsInterfaces/metadataConfiguration.d.ts +10 -0
  189. package/dist/commonjs/generated/operationsInterfaces/metadataConfiguration.d.ts.map +1 -0
  190. package/dist/commonjs/generated/operationsInterfaces/metadataConfiguration.js +10 -0
  191. package/dist/commonjs/generated/operationsInterfaces/metadataConfiguration.js.map +1 -0
  192. package/dist/commonjs/generated/operationsInterfaces/policy.d.ts +29 -0
  193. package/dist/commonjs/generated/operationsInterfaces/policy.d.ts.map +1 -0
  194. package/dist/commonjs/generated/operationsInterfaces/policy.js +10 -0
  195. package/dist/commonjs/generated/operationsInterfaces/policy.js.map +1 -0
  196. package/dist/commonjs/generated/operationsInterfaces/policyCertificates.d.ts +26 -0
  197. package/dist/commonjs/generated/operationsInterfaces/policyCertificates.d.ts.map +1 -0
  198. package/dist/commonjs/generated/operationsInterfaces/policyCertificates.js +10 -0
  199. package/dist/commonjs/generated/operationsInterfaces/policyCertificates.js.map +1 -0
  200. package/dist/commonjs/generated/operationsInterfaces/signingCertificates.d.ts +10 -0
  201. package/dist/commonjs/generated/operationsInterfaces/signingCertificates.d.ts.map +1 -0
  202. package/dist/commonjs/generated/operationsInterfaces/signingCertificates.js +10 -0
  203. package/dist/commonjs/generated/operationsInterfaces/signingCertificates.js.map +1 -0
  204. package/dist/commonjs/generated/tracing.d.ts +2 -0
  205. package/dist/commonjs/generated/tracing.d.ts.map +1 -0
  206. package/dist/commonjs/generated/tracing.js +17 -0
  207. package/dist/commonjs/generated/tracing.js.map +1 -0
  208. package/dist/commonjs/index.d.ts +4 -0
  209. package/dist/commonjs/index.d.ts.map +1 -0
  210. package/dist/commonjs/index.js +12 -0
  211. package/dist/commonjs/index.js.map +1 -0
  212. package/dist/commonjs/logger.d.ts +7 -0
  213. package/dist/commonjs/logger.d.ts.map +1 -0
  214. package/dist/commonjs/logger.js +13 -0
  215. package/dist/commonjs/logger.js.map +1 -0
  216. package/dist/commonjs/models/attestationPolicyToken.d.ts +28 -0
  217. package/dist/commonjs/models/attestationPolicyToken.d.ts.map +1 -0
  218. package/dist/commonjs/models/attestationPolicyToken.js +29 -0
  219. package/dist/commonjs/models/attestationPolicyToken.js.map +1 -0
  220. package/dist/commonjs/models/attestationResponse.d.ts +30 -0
  221. package/dist/commonjs/models/attestationResponse.d.ts.map +1 -0
  222. package/dist/commonjs/models/attestationResponse.js +16 -0
  223. package/dist/commonjs/models/attestationResponse.js.map +1 -0
  224. package/dist/commonjs/models/attestationResult.d.ts +294 -0
  225. package/dist/commonjs/models/attestationResult.d.ts.map +1 -0
  226. package/dist/commonjs/models/attestationResult.js +173 -0
  227. package/dist/commonjs/models/attestationResult.js.map +1 -0
  228. package/dist/commonjs/models/attestationSigner.d.ts +27 -0
  229. package/dist/commonjs/models/attestationSigner.d.ts.map +1 -0
  230. package/dist/commonjs/models/attestationSigner.js +21 -0
  231. package/dist/commonjs/models/attestationSigner.js.map +1 -0
  232. package/dist/commonjs/models/attestationToken.d.ts +339 -0
  233. package/dist/commonjs/models/attestationToken.d.ts.map +1 -0
  234. package/dist/commonjs/models/attestationToken.js +358 -0
  235. package/dist/commonjs/models/attestationToken.js.map +1 -0
  236. package/dist/commonjs/models/index.d.ts +8 -0
  237. package/dist/commonjs/models/index.d.ts.map +1 -0
  238. package/dist/commonjs/models/index.js +12 -0
  239. package/dist/commonjs/models/index.js.map +1 -0
  240. package/dist/commonjs/models/policyResult.d.ts +31 -0
  241. package/dist/commonjs/models/policyResult.d.ts.map +1 -0
  242. package/dist/commonjs/models/policyResult.js +27 -0
  243. package/dist/commonjs/models/policyResult.js.map +1 -0
  244. package/dist/commonjs/models/storedAttestationPolicy.d.ts +24 -0
  245. package/dist/commonjs/models/storedAttestationPolicy.d.ts.map +1 -0
  246. package/dist/commonjs/models/storedAttestationPolicy.js +41 -0
  247. package/dist/commonjs/models/storedAttestationPolicy.js.map +1 -0
  248. package/dist/commonjs/package.json +3 -0
  249. package/dist/commonjs/utils/base64.d.ts +28 -0
  250. package/dist/commonjs/utils/base64.d.ts.map +1 -0
  251. package/dist/commonjs/utils/base64.js +79 -0
  252. package/dist/commonjs/utils/base64.js.map +1 -0
  253. package/dist/commonjs/utils/buffer.d.ts +8 -0
  254. package/dist/commonjs/utils/buffer.d.ts.map +1 -0
  255. package/dist/commonjs/utils/buffer.js +22 -0
  256. package/dist/commonjs/utils/buffer.js.map +1 -0
  257. package/dist/commonjs/utils/helpers.d.ts +22 -0
  258. package/dist/commonjs/utils/helpers.d.ts.map +1 -0
  259. package/dist/commonjs/utils/helpers.js +62 -0
  260. package/dist/commonjs/utils/helpers.js.map +1 -0
  261. package/dist/commonjs/utils/typeDeserializer.d.ts +34 -0
  262. package/dist/commonjs/utils/typeDeserializer.d.ts.map +1 -0
  263. package/dist/commonjs/utils/typeDeserializer.js +42 -0
  264. package/dist/commonjs/utils/typeDeserializer.js.map +1 -0
  265. package/dist/commonjs/utils/utf8.d.ts +13 -0
  266. package/dist/commonjs/utils/utf8.d.ts.map +1 -0
  267. package/dist/commonjs/utils/utf8.js +31 -0
  268. package/dist/commonjs/utils/utf8.js.map +1 -0
  269. package/dist/esm/attestationAdministrationClient.d.ts +183 -0
  270. package/dist/esm/attestationAdministrationClient.d.ts.map +1 -0
  271. package/dist/esm/attestationAdministrationClient.js +386 -0
  272. package/dist/esm/attestationAdministrationClient.js.map +1 -0
  273. package/dist/esm/attestationClient.d.ts +209 -0
  274. package/dist/esm/attestationClient.d.ts.map +1 -0
  275. package/dist/esm/attestationClient.js +238 -0
  276. package/dist/esm/attestationClient.js.map +1 -0
  277. package/dist/esm/generated/generatedClient.d.ts +21 -0
  278. package/dist/esm/generated/generatedClient.d.ts.map +1 -0
  279. package/dist/esm/generated/generatedClient.js +73 -0
  280. package/dist/esm/generated/generatedClient.js.map +1 -0
  281. package/dist/esm/generated/index.d.ts +4 -0
  282. package/dist/esm/generated/index.d.ts.map +1 -0
  283. package/dist/esm/generated/index.js +11 -0
  284. package/dist/esm/generated/index.js.map +1 -0
  285. package/dist/esm/generated/models/index.d.ts +393 -0
  286. package/dist/esm/generated/models/index.d.ts.map +1 -0
  287. package/dist/esm/generated/models/index.js +42 -0
  288. package/dist/esm/generated/models/index.js.map +1 -0
  289. package/dist/esm/generated/models/mappers.d.ts +22 -0
  290. package/dist/esm/generated/models/mappers.d.ts.map +1 -0
  291. package/dist/esm/generated/models/mappers.js +722 -0
  292. package/dist/esm/generated/models/mappers.js.map +1 -0
  293. package/dist/esm/generated/models/parameters.d.ts +17 -0
  294. package/dist/esm/generated/models/parameters.d.ts.map +1 -0
  295. package/dist/esm/generated/models/parameters.js +154 -0
  296. package/dist/esm/generated/models/parameters.js.map +1 -0
  297. package/dist/esm/generated/operations/attestation.d.ts +34 -0
  298. package/dist/esm/generated/operations/attestation.d.ts.map +1 -0
  299. package/dist/esm/generated/operations/attestation.js +111 -0
  300. package/dist/esm/generated/operations/attestation.js.map +1 -0
  301. package/dist/esm/generated/operations/index.d.ts +6 -0
  302. package/dist/esm/generated/operations/index.d.ts.map +1 -0
  303. package/dist/esm/generated/operations/index.js +13 -0
  304. package/dist/esm/generated/operations/index.js.map +1 -0
  305. package/dist/esm/generated/operations/metadataConfiguration.d.ts +18 -0
  306. package/dist/esm/generated/operations/metadataConfiguration.d.ts.map +1 -0
  307. package/dist/esm/generated/operations/metadataConfiguration.js +50 -0
  308. package/dist/esm/generated/operations/metadataConfiguration.js.map +1 -0
  309. package/dist/esm/generated/operations/policy.d.ts +37 -0
  310. package/dist/esm/generated/operations/policy.d.ts.map +1 -0
  311. package/dist/esm/generated/operations/policy.js +112 -0
  312. package/dist/esm/generated/operations/policy.js.map +1 -0
  313. package/dist/esm/generated/operations/policyCertificates.d.ts +34 -0
  314. package/dist/esm/generated/operations/policyCertificates.d.ts.map +1 -0
  315. package/dist/esm/generated/operations/policyCertificates.js +109 -0
  316. package/dist/esm/generated/operations/policyCertificates.js.map +1 -0
  317. package/dist/esm/generated/operations/signingCertificates.d.ts +18 -0
  318. package/dist/esm/generated/operations/signingCertificates.d.ts.map +1 -0
  319. package/dist/esm/generated/operations/signingCertificates.js +48 -0
  320. package/dist/esm/generated/operations/signingCertificates.js.map +1 -0
  321. package/dist/esm/generated/operationsInterfaces/attestation.d.ts +26 -0
  322. package/dist/esm/generated/operationsInterfaces/attestation.d.ts.map +1 -0
  323. package/dist/esm/generated/operationsInterfaces/attestation.js +9 -0
  324. package/dist/esm/generated/operationsInterfaces/attestation.js.map +1 -0
  325. package/dist/esm/generated/operationsInterfaces/index.d.ts +6 -0
  326. package/dist/esm/generated/operationsInterfaces/index.d.ts.map +1 -0
  327. package/dist/esm/generated/operationsInterfaces/index.js +13 -0
  328. package/dist/esm/generated/operationsInterfaces/index.js.map +1 -0
  329. package/dist/esm/generated/operationsInterfaces/metadataConfiguration.d.ts +10 -0
  330. package/dist/esm/generated/operationsInterfaces/metadataConfiguration.d.ts.map +1 -0
  331. package/dist/esm/generated/operationsInterfaces/metadataConfiguration.js +9 -0
  332. package/dist/esm/generated/operationsInterfaces/metadataConfiguration.js.map +1 -0
  333. package/dist/esm/generated/operationsInterfaces/policy.d.ts +29 -0
  334. package/dist/esm/generated/operationsInterfaces/policy.d.ts.map +1 -0
  335. package/dist/esm/generated/operationsInterfaces/policy.js +9 -0
  336. package/dist/esm/generated/operationsInterfaces/policy.js.map +1 -0
  337. package/dist/esm/generated/operationsInterfaces/policyCertificates.d.ts +26 -0
  338. package/dist/esm/generated/operationsInterfaces/policyCertificates.d.ts.map +1 -0
  339. package/dist/esm/generated/operationsInterfaces/policyCertificates.js +9 -0
  340. package/dist/esm/generated/operationsInterfaces/policyCertificates.js.map +1 -0
  341. package/dist/esm/generated/operationsInterfaces/signingCertificates.d.ts +10 -0
  342. package/dist/esm/generated/operationsInterfaces/signingCertificates.d.ts.map +1 -0
  343. package/dist/esm/generated/operationsInterfaces/signingCertificates.js +9 -0
  344. package/dist/esm/generated/operationsInterfaces/signingCertificates.js.map +1 -0
  345. package/dist/esm/generated/tracing.d.ts +2 -0
  346. package/dist/esm/generated/tracing.d.ts.map +1 -0
  347. package/dist/esm/generated/tracing.js +14 -0
  348. package/dist/esm/generated/tracing.js.map +1 -0
  349. package/dist/esm/index.d.ts +4 -0
  350. package/dist/esm/index.d.ts.map +1 -0
  351. package/dist/esm/index.js +6 -0
  352. package/dist/esm/index.js.map +1 -0
  353. package/dist/esm/logger.d.ts +7 -0
  354. package/dist/esm/logger.d.ts.map +1 -0
  355. package/dist/esm/logger.js +10 -0
  356. package/dist/esm/logger.js.map +1 -0
  357. package/dist/esm/models/attestationPolicyToken.d.ts +28 -0
  358. package/dist/esm/models/attestationPolicyToken.d.ts.map +1 -0
  359. package/dist/esm/models/attestationPolicyToken.js +26 -0
  360. package/dist/esm/models/attestationPolicyToken.js.map +1 -0
  361. package/dist/esm/models/attestationResponse.d.ts +30 -0
  362. package/dist/esm/models/attestationResponse.d.ts.map +1 -0
  363. package/dist/esm/models/attestationResponse.js +13 -0
  364. package/dist/esm/models/attestationResponse.js.map +1 -0
  365. package/dist/esm/models/attestationResult.d.ts +294 -0
  366. package/dist/esm/models/attestationResult.d.ts.map +1 -0
  367. package/dist/esm/models/attestationResult.js +168 -0
  368. package/dist/esm/models/attestationResult.js.map +1 -0
  369. package/dist/esm/models/attestationSigner.d.ts +27 -0
  370. package/dist/esm/models/attestationSigner.d.ts.map +1 -0
  371. package/dist/esm/models/attestationSigner.js +18 -0
  372. package/dist/esm/models/attestationSigner.js.map +1 -0
  373. package/dist/esm/models/attestationToken.d.ts +339 -0
  374. package/dist/esm/models/attestationToken.d.ts.map +1 -0
  375. package/dist/esm/models/attestationToken.js +353 -0
  376. package/dist/esm/models/attestationToken.js.map +1 -0
  377. package/dist/esm/models/index.d.ts +8 -0
  378. package/dist/esm/models/index.d.ts.map +1 -0
  379. package/dist/esm/models/index.js +5 -0
  380. package/dist/esm/models/index.js.map +1 -0
  381. package/dist/esm/models/policyResult.d.ts +31 -0
  382. package/dist/esm/models/policyResult.d.ts.map +1 -0
  383. package/dist/esm/models/policyResult.js +23 -0
  384. package/dist/esm/models/policyResult.js.map +1 -0
  385. package/dist/esm/models/storedAttestationPolicy.d.ts +24 -0
  386. package/dist/esm/models/storedAttestationPolicy.d.ts.map +1 -0
  387. package/dist/esm/models/storedAttestationPolicy.js +36 -0
  388. package/dist/esm/models/storedAttestationPolicy.js.map +1 -0
  389. package/dist/esm/package.json +3 -0
  390. package/dist/esm/utils/base64.d.ts +28 -0
  391. package/dist/esm/utils/base64.d.ts.map +1 -0
  392. package/dist/esm/utils/buffer.d.ts +8 -0
  393. package/dist/esm/utils/buffer.d.ts.map +1 -0
  394. package/dist/esm/utils/helpers.d.ts +22 -0
  395. package/dist/esm/utils/helpers.d.ts.map +1 -0
  396. package/dist/esm/utils/helpers.js +56 -0
  397. package/dist/esm/utils/helpers.js.map +1 -0
  398. package/dist/esm/utils/textEncoding-browser.d.mts +4 -0
  399. package/dist/esm/utils/textEncoding-browser.d.mts.map +1 -0
  400. package/dist/esm/utils/textEncoding-browser.mjs +6 -0
  401. package/dist/esm/utils/textEncoding-browser.mjs.map +1 -0
  402. package/dist/esm/utils/typeDeserializer.d.ts +34 -0
  403. package/dist/esm/utils/typeDeserializer.d.ts.map +1 -0
  404. package/dist/esm/utils/typeDeserializer.js +38 -0
  405. package/dist/esm/utils/typeDeserializer.js.map +1 -0
  406. package/dist/esm/utils/utf8.d.ts +13 -0
  407. package/dist/esm/utils/utf8.d.ts.map +1 -0
  408. package/dist/esm/utils/utf8.js +27 -0
  409. package/dist/esm/utils/utf8.js.map +1 -0
  410. package/dist/react-native/attestationAdministrationClient.d.ts +183 -0
  411. package/dist/react-native/attestationAdministrationClient.d.ts.map +1 -0
  412. package/dist/react-native/attestationAdministrationClient.js +386 -0
  413. package/dist/react-native/attestationAdministrationClient.js.map +1 -0
  414. package/dist/react-native/attestationClient.d.ts +209 -0
  415. package/dist/react-native/attestationClient.d.ts.map +1 -0
  416. package/dist/react-native/attestationClient.js +238 -0
  417. package/dist/react-native/attestationClient.js.map +1 -0
  418. package/dist/react-native/generated/generatedClient.d.ts +21 -0
  419. package/dist/react-native/generated/generatedClient.d.ts.map +1 -0
  420. package/dist/react-native/generated/generatedClient.js +73 -0
  421. package/dist/react-native/generated/generatedClient.js.map +1 -0
  422. package/dist/react-native/generated/index.d.ts +4 -0
  423. package/dist/react-native/generated/index.d.ts.map +1 -0
  424. package/dist/react-native/generated/index.js +11 -0
  425. package/dist/react-native/generated/index.js.map +1 -0
  426. package/dist/react-native/generated/models/index.d.ts +393 -0
  427. package/dist/react-native/generated/models/index.d.ts.map +1 -0
  428. package/dist/react-native/generated/models/index.js +42 -0
  429. package/dist/react-native/generated/models/index.js.map +1 -0
  430. package/dist/react-native/generated/models/mappers.d.ts +22 -0
  431. package/dist/react-native/generated/models/mappers.d.ts.map +1 -0
  432. package/dist/react-native/generated/models/mappers.js +722 -0
  433. package/dist/react-native/generated/models/mappers.js.map +1 -0
  434. package/dist/react-native/generated/models/parameters.d.ts +17 -0
  435. package/dist/react-native/generated/models/parameters.d.ts.map +1 -0
  436. package/dist/react-native/generated/models/parameters.js +154 -0
  437. package/dist/react-native/generated/models/parameters.js.map +1 -0
  438. package/dist/react-native/generated/operations/attestation.d.ts +34 -0
  439. package/dist/react-native/generated/operations/attestation.d.ts.map +1 -0
  440. package/dist/react-native/generated/operations/attestation.js +111 -0
  441. package/dist/react-native/generated/operations/attestation.js.map +1 -0
  442. package/dist/react-native/generated/operations/index.d.ts +6 -0
  443. package/dist/react-native/generated/operations/index.d.ts.map +1 -0
  444. package/dist/react-native/generated/operations/index.js +13 -0
  445. package/dist/react-native/generated/operations/index.js.map +1 -0
  446. package/dist/react-native/generated/operations/metadataConfiguration.d.ts +18 -0
  447. package/dist/react-native/generated/operations/metadataConfiguration.d.ts.map +1 -0
  448. package/dist/react-native/generated/operations/metadataConfiguration.js +50 -0
  449. package/dist/react-native/generated/operations/metadataConfiguration.js.map +1 -0
  450. package/dist/react-native/generated/operations/policy.d.ts +37 -0
  451. package/dist/react-native/generated/operations/policy.d.ts.map +1 -0
  452. package/dist/react-native/generated/operations/policy.js +112 -0
  453. package/dist/react-native/generated/operations/policy.js.map +1 -0
  454. package/dist/react-native/generated/operations/policyCertificates.d.ts +34 -0
  455. package/dist/react-native/generated/operations/policyCertificates.d.ts.map +1 -0
  456. package/dist/react-native/generated/operations/policyCertificates.js +109 -0
  457. package/dist/react-native/generated/operations/policyCertificates.js.map +1 -0
  458. package/dist/react-native/generated/operations/signingCertificates.d.ts +18 -0
  459. package/dist/react-native/generated/operations/signingCertificates.d.ts.map +1 -0
  460. package/dist/react-native/generated/operations/signingCertificates.js +48 -0
  461. package/dist/react-native/generated/operations/signingCertificates.js.map +1 -0
  462. package/dist/react-native/generated/operationsInterfaces/attestation.d.ts +26 -0
  463. package/dist/react-native/generated/operationsInterfaces/attestation.d.ts.map +1 -0
  464. package/dist/react-native/generated/operationsInterfaces/attestation.js +9 -0
  465. package/dist/react-native/generated/operationsInterfaces/attestation.js.map +1 -0
  466. package/dist/react-native/generated/operationsInterfaces/index.d.ts +6 -0
  467. package/dist/react-native/generated/operationsInterfaces/index.d.ts.map +1 -0
  468. package/dist/react-native/generated/operationsInterfaces/index.js +13 -0
  469. package/dist/react-native/generated/operationsInterfaces/index.js.map +1 -0
  470. package/dist/react-native/generated/operationsInterfaces/metadataConfiguration.d.ts +10 -0
  471. package/dist/react-native/generated/operationsInterfaces/metadataConfiguration.d.ts.map +1 -0
  472. package/dist/react-native/generated/operationsInterfaces/metadataConfiguration.js +9 -0
  473. package/dist/react-native/generated/operationsInterfaces/metadataConfiguration.js.map +1 -0
  474. package/dist/react-native/generated/operationsInterfaces/policy.d.ts +29 -0
  475. package/dist/react-native/generated/operationsInterfaces/policy.d.ts.map +1 -0
  476. package/dist/react-native/generated/operationsInterfaces/policy.js +9 -0
  477. package/dist/react-native/generated/operationsInterfaces/policy.js.map +1 -0
  478. package/dist/react-native/generated/operationsInterfaces/policyCertificates.d.ts +26 -0
  479. package/dist/react-native/generated/operationsInterfaces/policyCertificates.d.ts.map +1 -0
  480. package/dist/react-native/generated/operationsInterfaces/policyCertificates.js +9 -0
  481. package/dist/react-native/generated/operationsInterfaces/policyCertificates.js.map +1 -0
  482. package/dist/react-native/generated/operationsInterfaces/signingCertificates.d.ts +10 -0
  483. package/dist/react-native/generated/operationsInterfaces/signingCertificates.d.ts.map +1 -0
  484. package/dist/react-native/generated/operationsInterfaces/signingCertificates.js +9 -0
  485. package/dist/react-native/generated/operationsInterfaces/signingCertificates.js.map +1 -0
  486. package/dist/react-native/generated/tracing.d.ts +2 -0
  487. package/dist/react-native/generated/tracing.d.ts.map +1 -0
  488. package/dist/react-native/generated/tracing.js +14 -0
  489. package/dist/react-native/generated/tracing.js.map +1 -0
  490. package/dist/react-native/index.d.ts +4 -0
  491. package/dist/react-native/index.d.ts.map +1 -0
  492. package/dist/react-native/index.js +6 -0
  493. package/dist/react-native/index.js.map +1 -0
  494. package/dist/react-native/logger.d.ts +7 -0
  495. package/dist/react-native/logger.d.ts.map +1 -0
  496. package/dist/react-native/logger.js +10 -0
  497. package/dist/react-native/logger.js.map +1 -0
  498. package/dist/react-native/models/attestationPolicyToken.d.ts +28 -0
  499. package/dist/react-native/models/attestationPolicyToken.d.ts.map +1 -0
  500. package/dist/react-native/models/attestationPolicyToken.js +26 -0
  501. package/dist/react-native/models/attestationPolicyToken.js.map +1 -0
  502. package/dist/react-native/models/attestationResponse.d.ts +30 -0
  503. package/dist/react-native/models/attestationResponse.d.ts.map +1 -0
  504. package/dist/react-native/models/attestationResponse.js +13 -0
  505. package/dist/react-native/models/attestationResponse.js.map +1 -0
  506. package/dist/react-native/models/attestationResult.d.ts +294 -0
  507. package/dist/react-native/models/attestationResult.d.ts.map +1 -0
  508. package/dist/react-native/models/attestationResult.js +168 -0
  509. package/dist/react-native/models/attestationResult.js.map +1 -0
  510. package/dist/react-native/models/attestationSigner.d.ts +27 -0
  511. package/dist/react-native/models/attestationSigner.d.ts.map +1 -0
  512. package/dist/react-native/models/attestationSigner.js +18 -0
  513. package/dist/react-native/models/attestationSigner.js.map +1 -0
  514. package/dist/react-native/models/attestationToken.d.ts +339 -0
  515. package/dist/react-native/models/attestationToken.d.ts.map +1 -0
  516. package/dist/react-native/models/attestationToken.js +353 -0
  517. package/dist/react-native/models/attestationToken.js.map +1 -0
  518. package/dist/react-native/models/index.d.ts +8 -0
  519. package/dist/react-native/models/index.d.ts.map +1 -0
  520. package/dist/react-native/models/index.js +5 -0
  521. package/dist/react-native/models/index.js.map +1 -0
  522. package/dist/react-native/models/policyResult.d.ts +31 -0
  523. package/dist/react-native/models/policyResult.d.ts.map +1 -0
  524. package/dist/react-native/models/policyResult.js +23 -0
  525. package/dist/react-native/models/policyResult.js.map +1 -0
  526. package/dist/react-native/models/storedAttestationPolicy.d.ts +24 -0
  527. package/dist/react-native/models/storedAttestationPolicy.d.ts.map +1 -0
  528. package/dist/react-native/models/storedAttestationPolicy.js +36 -0
  529. package/dist/react-native/models/storedAttestationPolicy.js.map +1 -0
  530. package/dist/react-native/package.json +3 -0
  531. package/dist/react-native/utils/base64.d.ts +28 -0
  532. package/dist/react-native/utils/base64.d.ts.map +1 -0
  533. package/dist/react-native/utils/base64.js +70 -0
  534. package/dist/react-native/utils/base64.js.map +1 -0
  535. package/dist/react-native/utils/buffer.d.ts +8 -0
  536. package/dist/react-native/utils/buffer.d.ts.map +1 -0
  537. package/dist/react-native/utils/buffer.js +19 -0
  538. package/dist/react-native/utils/buffer.js.map +1 -0
  539. package/dist/react-native/utils/helpers.d.ts +22 -0
  540. package/dist/react-native/utils/helpers.d.ts.map +1 -0
  541. package/dist/react-native/utils/helpers.js +56 -0
  542. package/dist/react-native/utils/helpers.js.map +1 -0
  543. package/dist/react-native/utils/textEncoding-browser.d.mts +4 -0
  544. package/dist/react-native/utils/textEncoding-browser.d.mts.map +1 -0
  545. package/dist/react-native/utils/textEncoding-browser.mjs +6 -0
  546. package/dist/react-native/utils/textEncoding-browser.mjs.map +1 -0
  547. package/dist/react-native/utils/typeDeserializer.d.ts +34 -0
  548. package/dist/react-native/utils/typeDeserializer.d.ts.map +1 -0
  549. package/dist/react-native/utils/typeDeserializer.js +38 -0
  550. package/dist/react-native/utils/typeDeserializer.js.map +1 -0
  551. package/dist/react-native/utils/utf8.d.ts +13 -0
  552. package/dist/react-native/utils/utf8.d.ts.map +1 -0
  553. package/dist/react-native/utils/utf8.js +27 -0
  554. package/dist/react-native/utils/utf8.js.map +1 -0
  555. package/package.json +62 -53
  556. package/dist/index.js +0 -2881
  557. package/dist/index.js.map +0 -1
  558. package/dist-esm/src/attestationAdministrationClient.js.map +0 -1
  559. package/dist-esm/src/attestationClient.js.map +0 -1
  560. package/dist-esm/src/generated/generatedClient.js.map +0 -1
  561. package/dist-esm/src/generated/index.js.map +0 -1
  562. package/dist-esm/src/generated/models/parameters.js.map +0 -1
  563. package/dist-esm/src/generated/operations/attestation.js.map +0 -1
  564. package/dist-esm/src/generated/operations/index.js.map +0 -1
  565. package/dist-esm/src/generated/operations/metadataConfiguration.js.map +0 -1
  566. package/dist-esm/src/generated/operations/policy.js.map +0 -1
  567. package/dist-esm/src/generated/operations/policyCertificates.js.map +0 -1
  568. package/dist-esm/src/generated/operations/signingCertificates.js.map +0 -1
  569. package/dist-esm/src/generated/operationsInterfaces/attestation.js.map +0 -1
  570. package/dist-esm/src/generated/operationsInterfaces/index.js.map +0 -1
  571. package/dist-esm/src/generated/operationsInterfaces/policy.js.map +0 -1
  572. package/dist-esm/src/generated/operationsInterfaces/policyCertificates.js.map +0 -1
  573. package/dist-esm/src/index.js +0 -6
  574. package/dist-esm/src/index.js.map +0 -1
  575. package/dist-esm/src/models/attestationPolicyToken.js.map +0 -1
  576. package/dist-esm/src/models/attestationResponse.js.map +0 -1
  577. package/dist-esm/src/models/attestationResult.js.map +0 -1
  578. package/dist-esm/src/models/attestationSigner.js.map +0 -1
  579. package/dist-esm/src/models/attestationToken.js.map +0 -1
  580. package/dist-esm/src/models/index.js.map +0 -1
  581. package/dist-esm/src/models/policyResult.js.map +0 -1
  582. package/dist-esm/src/models/storedAttestationPolicy.js.map +0 -1
  583. package/dist-esm/src/utils/base64.browser.js.map +0 -1
  584. package/dist-esm/src/utils/buffer.browser.js.map +0 -1
  585. package/dist-esm/src/utils/helpers.js.map +0 -1
  586. package/dist-esm/src/utils/textEncoding.browser.js.map +0 -1
  587. /package/{types/latest → dist}/attestation.d.ts +0 -0
  588. /package/{dist-esm/src → dist/browser}/generated/models/index.js +0 -0
  589. /package/{dist-esm/src → dist/browser}/generated/models/index.js.map +0 -0
  590. /package/{dist-esm/src → dist/browser}/generated/models/mappers.js +0 -0
  591. /package/{dist-esm/src → dist/browser}/generated/models/mappers.js.map +0 -0
  592. /package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/attestation.js +0 -0
  593. /package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/metadataConfiguration.js +0 -0
  594. /package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/policy.js +0 -0
  595. /package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/policyCertificates.js +0 -0
  596. /package/{dist-esm/src → dist/browser}/generated/operationsInterfaces/signingCertificates.js +0 -0
  597. /package/{dist-esm/src → dist/browser}/generated/tracing.js +0 -0
  598. /package/{dist-esm/src → dist/browser}/generated/tracing.js.map +0 -0
  599. /package/{dist-esm/src → dist/browser}/logger.js +0 -0
  600. /package/{dist-esm/src → dist/browser}/logger.js.map +0 -0
  601. /package/{dist-esm/src → dist/browser}/models/attestationResponse.js +0 -0
  602. /package/{dist-esm/src → dist/browser}/utils/typeDeserializer.js +0 -0
  603. /package/{dist-esm/src → dist/browser}/utils/typeDeserializer.js.map +0 -0
  604. /package/{dist-esm/src → dist/browser}/utils/utf8.js +0 -0
  605. /package/{dist-esm/src → dist/browser}/utils/utf8.js.map +0 -0
  606. /package/{types/latest → dist/commonjs}/tsdoc-metadata.json +0 -0
  607. /package/{dist-esm/src → dist/esm}/utils/base64.js +0 -0
  608. /package/{dist-esm/src → dist/esm}/utils/base64.js.map +0 -0
  609. /package/{dist-esm/src → dist/esm}/utils/buffer.js +0 -0
  610. /package/{dist-esm/src → dist/esm}/utils/buffer.js.map +0 -0
@@ -0,0 +1,209 @@
1
+ import { AttestationResult, AttestationSigner, AttestationTokenValidationOptions } from "./models/index.js";
2
+ import { AttestationResponse } from "./models/attestationResponse.js";
3
+ import { TokenCredential } from "@azure/core-auth";
4
+ import { CommonClientOptions, OperationOptions } from "@azure/core-client";
5
+ /**
6
+ * Attestation Client Construction Options.
7
+ */
8
+ export interface AttestationClientOptions extends CommonClientOptions {
9
+ /**
10
+ * Validation options to be used to validate attestation tokens received
11
+ * from the attestation service.
12
+ */
13
+ validationOptions?: AttestationTokenValidationOptions;
14
+ }
15
+ /**
16
+ * Operation options for the Attestation Client operations.
17
+ */
18
+ export interface AttestationClientOperationOptions extends OperationOptions {
19
+ /**
20
+ * Validation options to be used to validate attestation tokens received
21
+ * from the attestation service for the individual operation.
22
+ */
23
+ validationOptions?: AttestationTokenValidationOptions;
24
+ }
25
+ /**
26
+ * Optional parameters for the AttestOpenEnclave API.
27
+ *
28
+ * @param initTimeData - data provided at the time the enclave was initialized.
29
+ * @param runTimeData - data provided at the time the SGX quote being attested was created.
30
+ * @param draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.
31
+ */
32
+ export interface AttestOpenEnclaveOptions extends AttestationClientOperationOptions {
33
+ /**
34
+ *initTimeData : data provided at the time the enclave was initialized, to be interpreted as binary data.
35
+ *
36
+ */
37
+ initTimeData?: Uint8Array | Buffer | Blob;
38
+ /**
39
+ * inittimeJson : data provided at the time the enclave was initialized, to be interpreted as JSON data.
40
+ */
41
+ initTimeJson?: Uint8Array | Buffer | Blob;
42
+ /**
43
+ * runTimeData - data provided at the time the OpenEnclave report being attested was created to be interpreted as binary data.
44
+ */
45
+ runTimeData?: Uint8Array | Buffer | Blob;
46
+ /**
47
+ * runTimeJson - data provided at the time the OpenEnclave report being attested was created to be interpreted as JSON data.
48
+ */
49
+ runTimeJson?: Uint8Array | Buffer | Blob;
50
+ /**
51
+ * draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.
52
+ */
53
+ draftPolicyForAttestation?: string;
54
+ }
55
+ /**
56
+ * Optional parameters for the AttestSgxEnclave API.
57
+ *
58
+ * @param initTimeData - data provided at the time the enclave was initialized.
59
+ * @param runTimeData - data provided at the time the SGX quote being attested was created.
60
+ * @param draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.
61
+ */
62
+ export interface AttestSgxEnclaveOptions extends AttestationClientOperationOptions {
63
+ /**
64
+ *initTimeData : data provided at the time the enclave was initialized, to be interpreted as binary data.
65
+ *
66
+ */
67
+ initTimeData?: Uint8Array | Buffer | Blob;
68
+ /**
69
+ * inittimeJson : data provided at the time the enclave was initialized, to be interpreted as JSON data.
70
+ */
71
+ initTimeJson?: Uint8Array | Buffer | Blob;
72
+ /**
73
+ * runTimeData - data provided at the time the OpenEnclave report being attested was created to be interpreted as binary data.
74
+ */
75
+ runTimeData?: Uint8Array | Buffer | Blob;
76
+ /**
77
+ * runTimeJson - data provided at the time the OpenEnclave report being attested was created to be interpreted as JSON data.
78
+ */
79
+ runTimeJson?: Uint8Array | Buffer | Blob;
80
+ /**
81
+ * draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.
82
+ */
83
+ draftPolicyForAttestation?: string;
84
+ }
85
+ /**
86
+ * Operation options for the AttestTpm API.
87
+ */
88
+ export interface AttestTpmOptions extends AttestationClientOperationOptions {
89
+ }
90
+ /**
91
+ * Attestation Client class.
92
+ *
93
+ * The AttestationClient class enables access to the Attestation related APIs:
94
+ *
95
+ * - getOpenIdMetadata
96
+ * - getAttestationSigners
97
+ * - attestSgxEnclave
98
+ * - attestOpenEnclave
99
+ * - attestTpm
100
+ */
101
+ export declare class AttestationClient {
102
+ /**
103
+ * Creates an instance of AttestationClient.
104
+ *
105
+ * Example usage:
106
+ * ```ts
107
+ * import { AttestationClient } from "@azure/attestation";
108
+ *
109
+ * const client = new AttestationClient(
110
+ * "<service endpoint>"
111
+ * );
112
+ * ```
113
+ *
114
+ * @param endpoint - The attestation instance base URI, for example https://mytenant.attest.azure.net.
115
+ * @param options - Options used to configure the Attestation Client.
116
+ *
117
+ */
118
+ constructor(endpoint: string, options?: AttestationClientOptions);
119
+ /**
120
+ * Creates an instance of AttestationClient with options and credentials.
121
+ *
122
+ * Example usage:
123
+ * ```ts
124
+ * import { AttestationClient } from "@azure/attestation";
125
+ *
126
+ * const client = new AttestationClient(
127
+ * "<service endpoint>",
128
+ * new TokenCredential("<>"),
129
+ * { tokenValidationOptions: { validateToken: false } }
130
+ * );
131
+ * ```
132
+ *
133
+ * Note that credentials are required to call the `attestTpm` API.
134
+ *
135
+ * @param endpoint - The attestation instance base URI, for example https://mytenant.attest.azure.net.
136
+ * @param credentials - Credentials used to configure the attestation client.
137
+ *
138
+ */
139
+ constructor(endpoint: string, credentials: TokenCredential, options?: AttestationClientOptions);
140
+ /** Attests an OpenEnclave report generated from an SGX Enclave using the OpenEnclave SDK.
141
+ *
142
+ * @param report - An OpenEnclave report generated by an SGX enclave.
143
+ * @param options - Operation options for the attestOpenEnclave API call.
144
+ * @returns Returns an AttestationResponse whose body is an AttestationResult describing
145
+ * the claims returned by the attestation service.
146
+ *
147
+ * @throws {@link Error} if the `initTimeData` option and `initTimeJson` option is provided.
148
+ * @throws {@link Error} if the `runTimeData` option and `runTimeJson` option is provided.
149
+ * @throws {@link Error} if the `initTimeJson` option is provided and the value of `initTimeJson` is not JSON.
150
+ * @throws {@link Error} if the `runTimeJson` option is provided and the value of `runTimeJson` is not JSON.
151
+ */
152
+ attestOpenEnclave(report: Uint8Array | Buffer | Blob, options?: AttestOpenEnclaveOptions): Promise<AttestationResponse<AttestationResult>>;
153
+ /** Attests a quote generated from SGX Enclave using the Intel SDK.
154
+ *
155
+ * @param quote - An SGX quote generated by an SGX enclave.
156
+ * @param options - Operation options for the attestOpenEnclave API call.
157
+ * @returns Returns an AttestationResponse whose body is an AttestationResult describing
158
+ * the claims returned by the attestation service.
159
+ * @throws {@link Error} if the `initTimeData` option and `initTimeJson` option is provided.
160
+ * @throws {@link Error} if the `runTimeData` option and `runTimeJson` option is provided.
161
+ */
162
+ attestSgxEnclave(quote: Uint8Array | Buffer | Blob, options?: AttestSgxEnclaveOptions): Promise<AttestationResponse<AttestationResult>>;
163
+ /** Attest a TPM based enclave.
164
+
165
+ * See the {@link https://docs.microsoft.com/en-us/azure/attestation/virtualization-based-security-protocol | TPM Attestation Protocol Reference} for more information.
166
+ *
167
+ * @param request - Incoming request to send to the TPM attestation service, Utf8 encoded.
168
+ * @param options - Pipeline options for TPM attestation request.
169
+ * @returns A structure containing the response from the TPM attestation, Utf8 encoded.
170
+ *
171
+ * @remarks
172
+ *
173
+ * The incoming requests to the TPM attestation API are stringified JSON objects.
174
+ *
175
+ * @example
176
+ * For example, the initial call for a TPM attestation operation is:
177
+ *
178
+ * ```js
179
+ * const encodedPayload = JSON.stringify({ payload: { type: "aikcert" } });
180
+ * const result = await client.attestTpm(encodedPayload);
181
+ * ```
182
+ *
183
+ * where stringToBytes converts the string to UTF8.
184
+ *
185
+ * Note that the attestTpm requires an attestation client which is configured with
186
+ * authentication credentials.
187
+ *
188
+ */
189
+ attestTpm(request: string, options?: AttestTpmOptions): Promise<string>;
190
+ /**
191
+ * Returns the list of attestation signers which can be used to sign attestation
192
+ * service tokens.
193
+ *
194
+ * @param options - Client operation options.
195
+ * @returns the set of AttestationSigners which may be used to sign attestation tokens.
196
+ */
197
+ getAttestationSigners(options?: AttestationClientOperationOptions): Promise<AttestationSigner[]>;
198
+ /**
199
+ * Returns the OpenID Metadata discovery document for the attestation service instance.
200
+ * @param options - Client operation options.
201
+ * @returns The OpenID metadata discovery document for the attestation service.
202
+ */
203
+ getOpenIdMetadata(options?: AttestationClientOperationOptions): Promise<Record<string, unknown>>;
204
+ private _client;
205
+ private _validationOptions?;
206
+ private _signers?;
207
+ private _signingKeys;
208
+ }
209
+ //# sourceMappingURL=attestationClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attestationClient.d.ts","sourceRoot":"","sources":["../../src/attestationClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,238 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import { GeneratedClient } from "./generated/generatedClient.js";
4
+ import { KnownDataType, } from "./generated/models/index.js";
5
+ import { logger } from "./logger.js";
6
+ import * as Mappers from "./generated/models/mappers.js";
7
+ import { createAttestationResponse } from "./models/attestationResponse.js";
8
+ import { TypeDeserializer } from "./utils/typeDeserializer.js";
9
+ import { isTokenCredential } from "@azure/core-auth";
10
+ import { bytesToString, stringToBytes } from "./utils/utf8.js";
11
+ import { _attestationResultFromGenerated } from "./models/attestationResult.js";
12
+ import { _attestationSignerFromGenerated } from "./models/attestationSigner.js";
13
+ import { AttestationTokenImpl } from "./models/attestationToken.js";
14
+ import { Uint8ArrayFromInput } from "./utils/buffer.js";
15
+ import { tracingClient } from "./generated/tracing.js";
16
+ /**
17
+ * Attestation Client class.
18
+ *
19
+ * The AttestationClient class enables access to the Attestation related APIs:
20
+ *
21
+ * - getOpenIdMetadata
22
+ * - getAttestationSigners
23
+ * - attestSgxEnclave
24
+ * - attestOpenEnclave
25
+ * - attestTpm
26
+ */
27
+ export class AttestationClient {
28
+ constructor(endpoint, credentialsOrOptions, clientOptions = {}) {
29
+ let credentialScopes = undefined;
30
+ let credential = undefined;
31
+ let options;
32
+ if (credentialsOrOptions && isTokenCredential(credentialsOrOptions)) {
33
+ credential = credentialsOrOptions;
34
+ credentialScopes = ["https://attest.azure.net/.default"];
35
+ options = clientOptions;
36
+ }
37
+ else {
38
+ options = credentialsOrOptions || {};
39
+ }
40
+ const internalPipelineOptions = Object.assign(Object.assign({}, options), {
41
+ credentialScopes: credentialScopes,
42
+ credential: credential,
43
+ loggingOptions: {
44
+ logger: logger.info,
45
+ allowedHeaderNames: ["x-ms-request-id", "x-ms-maa-service-version"],
46
+ },
47
+ });
48
+ this._client = new GeneratedClient(endpoint, internalPipelineOptions);
49
+ this._validationOptions = options.validationOptions;
50
+ }
51
+ /** Attests an OpenEnclave report generated from an SGX Enclave using the OpenEnclave SDK.
52
+ *
53
+ * @param report - An OpenEnclave report generated by an SGX enclave.
54
+ * @param options - Operation options for the attestOpenEnclave API call.
55
+ * @returns Returns an AttestationResponse whose body is an AttestationResult describing
56
+ * the claims returned by the attestation service.
57
+ *
58
+ * @throws {@link Error} if the `initTimeData` option and `initTimeJson` option is provided.
59
+ * @throws {@link Error} if the `runTimeData` option and `runTimeJson` option is provided.
60
+ * @throws {@link Error} if the `initTimeJson` option is provided and the value of `initTimeJson` is not JSON.
61
+ * @throws {@link Error} if the `runTimeJson` option is provided and the value of `runTimeJson` is not JSON.
62
+ */
63
+ async attestOpenEnclave(report, options = {}) {
64
+ return tracingClient.withSpan("AttestationClient-attestOpenEnclave", options, async (updatedOptions) => {
65
+ var _a, _b, _c, _d;
66
+ if (options.initTimeData !== undefined && options.initTimeJson !== undefined) {
67
+ throw new Error("Cannot provide both initTimeData and initTimeJson.");
68
+ }
69
+ if (options.runTimeData !== undefined && options.runTimeJson !== undefined) {
70
+ throw new Error("Cannot provide both runTimeData and runTimeJson.");
71
+ }
72
+ const initData = await Uint8ArrayFromInput((_a = options.initTimeData) !== null && _a !== void 0 ? _a : options.initTimeJson);
73
+ const initTimeData = initData
74
+ ? {
75
+ data: initData,
76
+ dataType: options.initTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,
77
+ }
78
+ : undefined;
79
+ const runData = await Uint8ArrayFromInput((_b = options.runTimeData) !== null && _b !== void 0 ? _b : options.runTimeJson);
80
+ const runTimeData = runData
81
+ ? {
82
+ data: runData,
83
+ dataType: options.runTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,
84
+ }
85
+ : undefined;
86
+ const attestationResponse = await this._client.attestation.attestOpenEnclave({
87
+ report: await Uint8ArrayFromInput(report),
88
+ initTimeData: initTimeData,
89
+ runtimeData: runTimeData,
90
+ draftPolicyForAttestation: (_c = options.draftPolicyForAttestation) !== null && _c !== void 0 ? _c : undefined,
91
+ }, updatedOptions);
92
+ const token = new AttestationTokenImpl(attestationResponse.token);
93
+ const problems = token.getTokenProblems(await this._signingKeys(), (_d = options.validationOptions) !== null && _d !== void 0 ? _d : this._validationOptions);
94
+ if (problems.length) {
95
+ throw new Error(problems.join(";"));
96
+ }
97
+ const attestationResult = TypeDeserializer.deserialize(token.getBody(), {
98
+ GeneratedAttestationResult: Mappers.GeneratedAttestationResult,
99
+ JsonWebKey: Mappers.JsonWebKey,
100
+ }, "GeneratedAttestationResult");
101
+ return createAttestationResponse(token, _attestationResultFromGenerated(attestationResult));
102
+ });
103
+ }
104
+ /** Attests a quote generated from SGX Enclave using the Intel SDK.
105
+ *
106
+ * @param quote - An SGX quote generated by an SGX enclave.
107
+ * @param options - Operation options for the attestOpenEnclave API call.
108
+ * @returns Returns an AttestationResponse whose body is an AttestationResult describing
109
+ * the claims returned by the attestation service.
110
+ * @throws {@link Error} if the `initTimeData` option and `initTimeJson` option is provided.
111
+ * @throws {@link Error} if the `runTimeData` option and `runTimeJson` option is provided.
112
+ */
113
+ async attestSgxEnclave(quote, options = {}) {
114
+ return tracingClient.withSpan("AttestationClient-attestSgxEnclave", options, async (updatedOptions) => {
115
+ var _a, _b, _c, _d;
116
+ if (options.initTimeData !== undefined && options.initTimeJson !== undefined) {
117
+ throw new Error("Cannot provide both initTimeData and initTimeJson.");
118
+ }
119
+ if (options.runTimeData !== undefined && options.runTimeJson !== undefined) {
120
+ throw new Error("Cannot provide both runTimeData and runTimeJson.");
121
+ }
122
+ const initData = await Uint8ArrayFromInput((_a = options.initTimeData) !== null && _a !== void 0 ? _a : options.initTimeJson);
123
+ const initTimeData = initData
124
+ ? {
125
+ data: initData,
126
+ dataType: options.initTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,
127
+ }
128
+ : undefined;
129
+ const runData = await Uint8ArrayFromInput((_b = options.runTimeData) !== null && _b !== void 0 ? _b : options.runTimeJson);
130
+ const runTimeData = runData
131
+ ? {
132
+ data: runData,
133
+ dataType: options.runTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,
134
+ }
135
+ : undefined;
136
+ const attestationResponse = await this._client.attestation.attestSgxEnclave({
137
+ quote: await Uint8ArrayFromInput(quote),
138
+ initTimeData: initTimeData,
139
+ runtimeData: runTimeData,
140
+ draftPolicyForAttestation: (_c = options.draftPolicyForAttestation) !== null && _c !== void 0 ? _c : undefined,
141
+ }, updatedOptions);
142
+ const token = new AttestationTokenImpl(attestationResponse.token);
143
+ const problems = token.getTokenProblems(await this._signingKeys(), (_d = options.validationOptions) !== null && _d !== void 0 ? _d : this._validationOptions);
144
+ if (problems.length) {
145
+ throw new Error(problems.join(";"));
146
+ }
147
+ const attestationResult = TypeDeserializer.deserialize(token.getBody(), {
148
+ GeneratedAttestationResult: Mappers.GeneratedAttestationResult,
149
+ JsonWebKey: Mappers.JsonWebKey,
150
+ }, "GeneratedAttestationResult");
151
+ return createAttestationResponse(token, _attestationResultFromGenerated(attestationResult));
152
+ });
153
+ }
154
+ /** Attest a TPM based enclave.
155
+
156
+ * See the {@link https://docs.microsoft.com/en-us/azure/attestation/virtualization-based-security-protocol | TPM Attestation Protocol Reference} for more information.
157
+ *
158
+ * @param request - Incoming request to send to the TPM attestation service, Utf8 encoded.
159
+ * @param options - Pipeline options for TPM attestation request.
160
+ * @returns A structure containing the response from the TPM attestation, Utf8 encoded.
161
+ *
162
+ * @remarks
163
+ *
164
+ * The incoming requests to the TPM attestation API are stringified JSON objects.
165
+ *
166
+ * @example
167
+ * For example, the initial call for a TPM attestation operation is:
168
+ *
169
+ * ```js
170
+ * const encodedPayload = JSON.stringify({ payload: { type: "aikcert" } });
171
+ * const result = await client.attestTpm(encodedPayload);
172
+ * ```
173
+ *
174
+ * where stringToBytes converts the string to UTF8.
175
+ *
176
+ * Note that the attestTpm requires an attestation client which is configured with
177
+ * authentication credentials.
178
+ *
179
+ */
180
+ async attestTpm(request, options = {}) {
181
+ return tracingClient.withSpan("AttestationClient-attestSgxEnclave", options, async (updatedOptions) => {
182
+ const response = await this._client.attestation.attestTpm({ data: stringToBytes(request) }, updatedOptions);
183
+ if (response.data) {
184
+ return bytesToString(response.data);
185
+ }
186
+ else {
187
+ throw Error("Internal error - response data cannot be undefined.");
188
+ }
189
+ });
190
+ }
191
+ /**
192
+ * Returns the list of attestation signers which can be used to sign attestation
193
+ * service tokens.
194
+ *
195
+ * @param options - Client operation options.
196
+ * @returns the set of AttestationSigners which may be used to sign attestation tokens.
197
+ */
198
+ async getAttestationSigners(
199
+ // eslint-disable-next-line @azure/azure-sdk/ts-naming-options
200
+ options = {}) {
201
+ return tracingClient.withSpan("AttestationClient-getAttestationSigners", options, async (updatedOptions) => {
202
+ var _a;
203
+ const signingCertificates = await this._client.signingCertificates.get(updatedOptions);
204
+ const signers = new Array();
205
+ (_a = signingCertificates.keys) === null || _a === void 0 ? void 0 : _a.forEach((element) => {
206
+ signers.push(_attestationSignerFromGenerated(element));
207
+ });
208
+ return signers;
209
+ });
210
+ }
211
+ /**
212
+ * Returns the OpenID Metadata discovery document for the attestation service instance.
213
+ * @param options - Client operation options.
214
+ * @returns The OpenID metadata discovery document for the attestation service.
215
+ */
216
+ async getOpenIdMetadata(
217
+ // eslint-disable-next-line @azure/azure-sdk/ts-naming-options
218
+ options = {}) {
219
+ return tracingClient.withSpan("AttestationClient-getOpenIdMetadata", options, async (updatedOptions) => {
220
+ const configs = await this._client.metadataConfiguration.get(updatedOptions);
221
+ return configs;
222
+ });
223
+ }
224
+ async _signingKeys() {
225
+ var _a;
226
+ if (this._signers !== undefined) {
227
+ return this._signers;
228
+ }
229
+ const jwks = await this._client.signingCertificates.get();
230
+ const signers = new Array();
231
+ (_a = jwks.keys) === null || _a === void 0 ? void 0 : _a.forEach((element) => {
232
+ signers.push(_attestationSignerFromGenerated(element));
233
+ });
234
+ this._signers = signers;
235
+ return this._signers;
236
+ }
237
+ }
238
+ //# sourceMappingURL=attestationClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attestationClient.js","sourceRoot":"","sources":["../../src/attestationClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { GeneratedClient } from \"./generated/generatedClient.js\";\n\nimport {\n AttestationResult,\n AttestationSigner,\n AttestationTokenValidationOptions,\n} from \"./models/index.js\";\n\nimport {\n GeneratedAttestationResult,\n InitTimeData,\n KnownDataType,\n RuntimeData,\n} from \"./generated/models/index.js\";\n\nimport { logger } from \"./logger.js\";\nimport { GeneratedClientOptionalParams } from \"./generated/models/index.js\";\nimport * as Mappers from \"./generated/models/mappers.js\";\n\nimport { AttestationResponse, createAttestationResponse } from \"./models/attestationResponse.js\";\n\nimport { TypeDeserializer } from \"./utils/typeDeserializer.js\";\nimport { TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport { bytesToString, stringToBytes } from \"./utils/utf8.js\";\nimport { _attestationResultFromGenerated } from \"./models/attestationResult.js\";\nimport { _attestationSignerFromGenerated } from \"./models/attestationSigner.js\";\nimport { AttestationTokenImpl } from \"./models/attestationToken.js\";\nimport { Uint8ArrayFromInput } from \"./utils/buffer.js\";\nimport { tracingClient } from \"./generated/tracing.js\";\n\n/**\n * Attestation Client Construction Options.\n */\nexport interface AttestationClientOptions extends CommonClientOptions {\n /**\n * Validation options to be used to validate attestation tokens received\n * from the attestation service.\n */\n validationOptions?: AttestationTokenValidationOptions;\n}\n\n/**\n * Operation options for the Attestation Client operations.\n */\nexport interface AttestationClientOperationOptions extends OperationOptions {\n /**\n * Validation options to be used to validate attestation tokens received\n * from the attestation service for the individual operation.\n */\n validationOptions?: AttestationTokenValidationOptions;\n}\n\n/**\n * Optional parameters for the AttestOpenEnclave API.\n *\n * @param initTimeData - data provided at the time the enclave was initialized.\n * @param runTimeData - data provided at the time the SGX quote being attested was created.\n * @param draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.\n */\nexport interface AttestOpenEnclaveOptions extends AttestationClientOperationOptions {\n /**\n *initTimeData : data provided at the time the enclave was initialized, to be interpreted as binary data.\n *\n */\n initTimeData?: Uint8Array | Buffer | Blob;\n\n /**\n * inittimeJson : data provided at the time the enclave was initialized, to be interpreted as JSON data.\n */\n initTimeJson?: Uint8Array | Buffer | Blob;\n\n /**\n * runTimeData - data provided at the time the OpenEnclave report being attested was created to be interpreted as binary data.\n */\n runTimeData?: Uint8Array | Buffer | Blob;\n\n /**\n * runTimeJson - data provided at the time the OpenEnclave report being attested was created to be interpreted as JSON data.\n */\n runTimeJson?: Uint8Array | Buffer | Blob;\n\n /**\n * draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.\n */\n draftPolicyForAttestation?: string;\n}\n\n/**\n * Optional parameters for the AttestSgxEnclave API.\n *\n * @param initTimeData - data provided at the time the enclave was initialized.\n * @param runTimeData - data provided at the time the SGX quote being attested was created.\n * @param draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.\n */\nexport interface AttestSgxEnclaveOptions extends AttestationClientOperationOptions {\n /**\n *initTimeData : data provided at the time the enclave was initialized, to be interpreted as binary data.\n *\n */\n initTimeData?: Uint8Array | Buffer | Blob;\n\n /**\n * inittimeJson : data provided at the time the enclave was initialized, to be interpreted as JSON data.\n */\n initTimeJson?: Uint8Array | Buffer | Blob;\n\n /**\n * runTimeData - data provided at the time the OpenEnclave report being attested was created to be interpreted as binary data.\n */\n runTimeData?: Uint8Array | Buffer | Blob;\n\n /**\n * runTimeJson - data provided at the time the OpenEnclave report being attested was created to be interpreted as JSON data.\n */\n runTimeJson?: Uint8Array | Buffer | Blob;\n\n /**\n * draftPolicyForAttestation - If specified, the attestation policy to be used during the attestation request.\n */\n draftPolicyForAttestation?: string;\n}\n\n/**\n * Operation options for the AttestTpm API.\n */\nexport interface AttestTpmOptions extends AttestationClientOperationOptions {}\n\n/**\n * Attestation Client class.\n *\n * The AttestationClient class enables access to the Attestation related APIs:\n *\n * - getOpenIdMetadata\n * - getAttestationSigners\n * - attestSgxEnclave\n * - attestOpenEnclave\n * - attestTpm\n */\nexport class AttestationClient {\n /**\n * Creates an instance of AttestationClient.\n *\n * Example usage:\n * ```ts\n * import { AttestationClient } from \"@azure/attestation\";\n *\n * const client = new AttestationClient(\n * \"<service endpoint>\"\n * );\n * ```\n *\n * @param endpoint - The attestation instance base URI, for example https://mytenant.attest.azure.net.\n * @param options - Options used to configure the Attestation Client.\n *\n */\n public constructor(endpoint: string, options?: AttestationClientOptions);\n\n /**\n * Creates an instance of AttestationClient with options and credentials.\n *\n * Example usage:\n * ```ts\n * import { AttestationClient } from \"@azure/attestation\";\n *\n * const client = new AttestationClient(\n * \"<service endpoint>\",\n * new TokenCredential(\"<>\"),\n * { tokenValidationOptions: { validateToken: false } }\n * );\n * ```\n *\n * Note that credentials are required to call the `attestTpm` API.\n *\n * @param endpoint - The attestation instance base URI, for example https://mytenant.attest.azure.net.\n * @param credentials - Credentials used to configure the attestation client.\n *\n */\n public constructor(\n endpoint: string,\n credentials: TokenCredential,\n options?: AttestationClientOptions,\n );\n public constructor(\n endpoint: string,\n credentialsOrOptions?: TokenCredential | AttestationClientOptions,\n clientOptions: AttestationClientOptions = {},\n ) {\n let credentialScopes: string[] | undefined = undefined;\n let credential: TokenCredential | undefined = undefined;\n let options: AttestationClientOptions;\n\n if (credentialsOrOptions && isTokenCredential(credentialsOrOptions)) {\n credential = credentialsOrOptions;\n credentialScopes = [\"https://attest.azure.net/.default\"];\n options = clientOptions;\n } else {\n options = credentialsOrOptions || {};\n }\n\n const internalPipelineOptions: GeneratedClientOptionalParams = {\n ...options,\n ...{\n credentialScopes: credentialScopes,\n credential: credential,\n loggingOptions: {\n logger: logger.info,\n allowedHeaderNames: [\"x-ms-request-id\", \"x-ms-maa-service-version\"],\n },\n },\n };\n\n this._client = new GeneratedClient(endpoint, internalPipelineOptions);\n this._validationOptions = options.validationOptions;\n }\n\n /** Attests an OpenEnclave report generated from an SGX Enclave using the OpenEnclave SDK.\n *\n * @param report - An OpenEnclave report generated by an SGX enclave.\n * @param options - Operation options for the attestOpenEnclave API call.\n * @returns Returns an AttestationResponse whose body is an AttestationResult describing\n * the claims returned by the attestation service.\n *\n * @throws {@link Error} if the `initTimeData` option and `initTimeJson` option is provided.\n * @throws {@link Error} if the `runTimeData` option and `runTimeJson` option is provided.\n * @throws {@link Error} if the `initTimeJson` option is provided and the value of `initTimeJson` is not JSON.\n * @throws {@link Error} if the `runTimeJson` option is provided and the value of `runTimeJson` is not JSON.\n */\n public async attestOpenEnclave(\n report: Uint8Array | Buffer | Blob,\n options: AttestOpenEnclaveOptions = {},\n ): Promise<AttestationResponse<AttestationResult>> {\n return tracingClient.withSpan(\n \"AttestationClient-attestOpenEnclave\",\n options,\n async (updatedOptions) => {\n if (options.initTimeData !== undefined && options.initTimeJson !== undefined) {\n throw new Error(\"Cannot provide both initTimeData and initTimeJson.\");\n }\n\n if (options.runTimeData !== undefined && options.runTimeJson !== undefined) {\n throw new Error(\"Cannot provide both runTimeData and runTimeJson.\");\n }\n\n const initData = await Uint8ArrayFromInput(options.initTimeData ?? options.initTimeJson);\n\n const initTimeData: InitTimeData | undefined = initData\n ? {\n data: initData,\n dataType:\n options.initTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,\n }\n : undefined;\n\n const runData = await Uint8ArrayFromInput(options.runTimeData ?? options.runTimeJson);\n\n const runTimeData: RuntimeData | undefined = runData\n ? {\n data: runData,\n dataType:\n options.runTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,\n }\n : undefined;\n\n const attestationResponse = await this._client.attestation.attestOpenEnclave(\n {\n report: await Uint8ArrayFromInput(report),\n initTimeData: initTimeData,\n runtimeData: runTimeData,\n draftPolicyForAttestation: options.draftPolicyForAttestation ?? undefined,\n },\n updatedOptions,\n );\n\n const token = new AttestationTokenImpl(attestationResponse.token);\n const problems = token.getTokenProblems(\n await this._signingKeys(),\n options.validationOptions ?? this._validationOptions,\n );\n if (problems.length) {\n throw new Error(problems.join(\";\"));\n }\n\n const attestationResult = TypeDeserializer.deserialize(\n token.getBody(),\n {\n GeneratedAttestationResult: Mappers.GeneratedAttestationResult,\n JsonWebKey: Mappers.JsonWebKey,\n },\n \"GeneratedAttestationResult\",\n ) as GeneratedAttestationResult;\n\n return createAttestationResponse<AttestationResult>(\n token,\n _attestationResultFromGenerated(attestationResult),\n );\n },\n );\n }\n\n /** Attests a quote generated from SGX Enclave using the Intel SDK.\n *\n * @param quote - An SGX quote generated by an SGX enclave.\n * @param options - Operation options for the attestOpenEnclave API call.\n * @returns Returns an AttestationResponse whose body is an AttestationResult describing\n * the claims returned by the attestation service.\n * @throws {@link Error} if the `initTimeData` option and `initTimeJson` option is provided.\n * @throws {@link Error} if the `runTimeData` option and `runTimeJson` option is provided.\n */\n public async attestSgxEnclave(\n quote: Uint8Array | Buffer | Blob,\n options: AttestSgxEnclaveOptions = {},\n ): Promise<AttestationResponse<AttestationResult>> {\n return tracingClient.withSpan(\n \"AttestationClient-attestSgxEnclave\",\n options,\n async (updatedOptions) => {\n if (options.initTimeData !== undefined && options.initTimeJson !== undefined) {\n throw new Error(\"Cannot provide both initTimeData and initTimeJson.\");\n }\n\n if (options.runTimeData !== undefined && options.runTimeJson !== undefined) {\n throw new Error(\"Cannot provide both runTimeData and runTimeJson.\");\n }\n\n const initData = await Uint8ArrayFromInput(options.initTimeData ?? options.initTimeJson);\n\n const initTimeData: InitTimeData | undefined = initData\n ? {\n data: initData,\n dataType:\n options.initTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,\n }\n : undefined;\n\n const runData = await Uint8ArrayFromInput(options.runTimeData ?? options.runTimeJson);\n const runTimeData: RuntimeData | undefined = runData\n ? {\n data: runData,\n dataType:\n options.runTimeJson !== undefined ? KnownDataType.Json : KnownDataType.Binary,\n }\n : undefined;\n\n const attestationResponse = await this._client.attestation.attestSgxEnclave(\n {\n quote: await Uint8ArrayFromInput(quote),\n initTimeData: initTimeData,\n runtimeData: runTimeData,\n draftPolicyForAttestation: options.draftPolicyForAttestation ?? undefined,\n },\n updatedOptions,\n );\n\n const token = new AttestationTokenImpl(attestationResponse.token);\n const problems = token.getTokenProblems(\n await this._signingKeys(),\n options.validationOptions ?? this._validationOptions,\n );\n if (problems.length) {\n throw new Error(problems.join(\";\"));\n }\n\n const attestationResult = TypeDeserializer.deserialize(\n token.getBody(),\n {\n GeneratedAttestationResult: Mappers.GeneratedAttestationResult,\n JsonWebKey: Mappers.JsonWebKey,\n },\n \"GeneratedAttestationResult\",\n ) as GeneratedAttestationResult;\n\n return createAttestationResponse<AttestationResult>(\n token,\n _attestationResultFromGenerated(attestationResult),\n );\n },\n );\n }\n\n /** Attest a TPM based enclave.\n\n * See the {@link https://docs.microsoft.com/en-us/azure/attestation/virtualization-based-security-protocol | TPM Attestation Protocol Reference} for more information.\n * \n * @param request - Incoming request to send to the TPM attestation service, Utf8 encoded.\n * @param options - Pipeline options for TPM attestation request.\n * @returns A structure containing the response from the TPM attestation, Utf8 encoded.\n * \n * @remarks\n * \n * The incoming requests to the TPM attestation API are stringified JSON objects.\n * \n * @example\n * For example, the initial call for a TPM attestation operation is:\n * \n * ```js\n * const encodedPayload = JSON.stringify({ payload: { type: \"aikcert\" } });\n * const result = await client.attestTpm(encodedPayload);\n * ```\n * \n * where stringToBytes converts the string to UTF8.\n * \n * Note that the attestTpm requires an attestation client which is configured with\n * authentication credentials.\n * \n */\n public async attestTpm(request: string, options: AttestTpmOptions = {}): Promise<string> {\n return tracingClient.withSpan(\n \"AttestationClient-attestSgxEnclave\",\n options,\n async (updatedOptions) => {\n const response = await this._client.attestation.attestTpm(\n { data: stringToBytes(request) },\n updatedOptions,\n );\n if (response.data) {\n return bytesToString(response.data);\n } else {\n throw Error(\"Internal error - response data cannot be undefined.\");\n }\n },\n );\n }\n\n /**\n * Returns the list of attestation signers which can be used to sign attestation\n * service tokens.\n *\n * @param options - Client operation options.\n * @returns the set of AttestationSigners which may be used to sign attestation tokens.\n */\n public async getAttestationSigners(\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: AttestationClientOperationOptions = {},\n ): Promise<AttestationSigner[]> {\n return tracingClient.withSpan(\n \"AttestationClient-getAttestationSigners\",\n options,\n async (updatedOptions) => {\n const signingCertificates = await this._client.signingCertificates.get(updatedOptions);\n const signers: AttestationSigner[] = new Array();\n signingCertificates.keys?.forEach((element) => {\n signers.push(_attestationSignerFromGenerated(element));\n });\n return signers;\n },\n );\n }\n\n /**\n * Returns the OpenID Metadata discovery document for the attestation service instance.\n * @param options - Client operation options.\n * @returns The OpenID metadata discovery document for the attestation service.\n */\n public async getOpenIdMetadata(\n // eslint-disable-next-line @azure/azure-sdk/ts-naming-options\n options: AttestationClientOperationOptions = {},\n ): Promise<Record<string, unknown>> {\n return tracingClient.withSpan(\n \"AttestationClient-getOpenIdMetadata\",\n options,\n async (updatedOptions) => {\n const configs = await this._client.metadataConfiguration.get(updatedOptions);\n return configs;\n },\n );\n }\n\n private _client: GeneratedClient;\n private _validationOptions?: AttestationTokenValidationOptions;\n private _signers?: AttestationSigner[];\n\n private async _signingKeys(): Promise<AttestationSigner[]> {\n if (this._signers !== undefined) {\n return this._signers;\n }\n const jwks = await this._client.signingCertificates.get();\n const signers: AttestationSigner[] = new Array();\n jwks.keys?.forEach((element) => {\n signers.push(_attestationSignerFromGenerated(element));\n });\n this._signers = signers;\n return this._signers;\n }\n}\n"]}
@@ -0,0 +1,21 @@
1
+ import * as coreClient from "@azure/core-client";
2
+ import { Policy, PolicyCertificates, Attestation, SigningCertificates, MetadataConfiguration } from "./operationsInterfaces/index.js";
3
+ import { GeneratedClientOptionalParams } from "./models/index.js";
4
+ export declare class GeneratedClient extends coreClient.ServiceClient {
5
+ instanceUrl: string;
6
+ apiVersion: string;
7
+ /**
8
+ * Initializes a new instance of the GeneratedClient class.
9
+ * @param instanceUrl The attestation instance base URI, for example https://mytenant.attest.azure.net.
10
+ * @param options The parameter options
11
+ */
12
+ constructor(instanceUrl: string, options?: GeneratedClientOptionalParams);
13
+ /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */
14
+ private addCustomApiVersionPolicy;
15
+ policy: Policy;
16
+ policyCertificates: PolicyCertificates;
17
+ attestation: Attestation;
18
+ signingCertificates: SigningCertificates;
19
+ metadataConfiguration: MetadataConfiguration;
20
+ }
21
+ //# sourceMappingURL=generatedClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatedClient.d.ts","sourceRoot":"","sources":["../../../src/generated/generatedClient.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AAajD,OAAO,EACL,MAAM,EACN,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAElE,qBAAa,eAAgB,SAAQ,UAAU,CAAC,aAAa;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;gBACS,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,6BAA6B;IAyCxE,8GAA8G;IAC9G,OAAO,CAAC,yBAAyB;IA2BjC,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;IACzB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,qBAAqB,EAAE,qBAAqB,CAAC;CAC9C"}
@@ -0,0 +1,73 @@
1
+ /*
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
4
+ *
5
+ * Code generated by Microsoft (R) AutoRest Code Generator.
6
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
7
+ */
8
+ import * as coreClient from "@azure/core-client";
9
+ import { PolicyImpl, PolicyCertificatesImpl, AttestationImpl, SigningCertificatesImpl, MetadataConfigurationImpl } from "./operations/index.js";
10
+ export class GeneratedClient extends coreClient.ServiceClient {
11
+ /**
12
+ * Initializes a new instance of the GeneratedClient class.
13
+ * @param instanceUrl The attestation instance base URI, for example https://mytenant.attest.azure.net.
14
+ * @param options The parameter options
15
+ */
16
+ constructor(instanceUrl, options) {
17
+ var _a, _b;
18
+ if (instanceUrl === undefined) {
19
+ throw new Error("'instanceUrl' cannot be null");
20
+ }
21
+ // Initializing default values for options
22
+ if (!options) {
23
+ options = {};
24
+ }
25
+ const defaults = {
26
+ requestContentType: "application/json; charset=utf-8"
27
+ };
28
+ const packageDetails = `azsdk-js-attestation/1.0.1`;
29
+ const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix
30
+ ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
31
+ : `${packageDetails}`;
32
+ const optionsWithDefaults = Object.assign(Object.assign(Object.assign({}, defaults), options), { userAgentOptions: {
33
+ userAgentPrefix
34
+ }, baseUri: (_b = (_a = options.endpoint) !== null && _a !== void 0 ? _a : options.baseUri) !== null && _b !== void 0 ? _b : "{instanceUrl}" });
35
+ super(optionsWithDefaults);
36
+ // Parameter assignments
37
+ this.instanceUrl = instanceUrl;
38
+ // Assigning values to Constant parameters
39
+ this.apiVersion = options.apiVersion || "2020-10-01";
40
+ this.policy = new PolicyImpl(this);
41
+ this.policyCertificates = new PolicyCertificatesImpl(this);
42
+ this.attestation = new AttestationImpl(this);
43
+ this.signingCertificates = new SigningCertificatesImpl(this);
44
+ this.metadataConfiguration = new MetadataConfigurationImpl(this);
45
+ this.addCustomApiVersionPolicy(options.apiVersion);
46
+ }
47
+ /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */
48
+ addCustomApiVersionPolicy(apiVersion) {
49
+ if (!apiVersion) {
50
+ return;
51
+ }
52
+ const apiVersionPolicy = {
53
+ name: "CustomApiVersionPolicy",
54
+ async sendRequest(request, next) {
55
+ const param = request.url.split("?");
56
+ if (param.length > 1) {
57
+ const newParams = param[1].split("&").map((item) => {
58
+ if (item.indexOf("api-version") > -1) {
59
+ return "api-version=" + apiVersion;
60
+ }
61
+ else {
62
+ return item;
63
+ }
64
+ });
65
+ request.url = param[0] + "?" + newParams.join("&");
66
+ }
67
+ return next(request);
68
+ }
69
+ };
70
+ this.pipeline.addPolicy(apiVersionPolicy);
71
+ }
72
+ }
73
+ //# sourceMappingURL=generatedClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generatedClient.js","sourceRoot":"","sources":["../../../src/generated/generatedClient.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport {\n PipelineRequest,\n PipelineResponse,\n SendRequest\n} from \"@azure/core-rest-pipeline\";\nimport {\n PolicyImpl,\n PolicyCertificatesImpl,\n AttestationImpl,\n SigningCertificatesImpl,\n MetadataConfigurationImpl\n} from \"./operations/index.js\";\nimport {\n Policy,\n PolicyCertificates,\n Attestation,\n SigningCertificates,\n MetadataConfiguration\n} from \"./operationsInterfaces/index.js\";\nimport { GeneratedClientOptionalParams } from \"./models/index.js\";\n\nexport class GeneratedClient extends coreClient.ServiceClient {\n instanceUrl: string;\n apiVersion: string;\n\n /**\n * Initializes a new instance of the GeneratedClient class.\n * @param instanceUrl The attestation instance base URI, for example https://mytenant.attest.azure.net.\n * @param options The parameter options\n */\n constructor(instanceUrl: string, options?: GeneratedClientOptionalParams) {\n if (instanceUrl === undefined) {\n throw new Error(\"'instanceUrl' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: GeneratedClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\"\n };\n\n const packageDetails = `azsdk-js-attestation/1.0.1`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n baseUri: options.endpoint ?? options.baseUri ?? \"{instanceUrl}\"\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.instanceUrl = instanceUrl;\n\n // Assigning values to Constant parameters\n this.apiVersion = options.apiVersion || \"2020-10-01\";\n this.policy = new PolicyImpl(this);\n this.policyCertificates = new PolicyCertificatesImpl(this);\n this.attestation = new AttestationImpl(this);\n this.signingCertificates = new SigningCertificatesImpl(this);\n this.metadataConfiguration = new MetadataConfigurationImpl(this);\n this.addCustomApiVersionPolicy(options.apiVersion);\n }\n\n /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */\n private addCustomApiVersionPolicy(apiVersion?: string) {\n if (!apiVersion) {\n return;\n }\n const apiVersionPolicy = {\n name: \"CustomApiVersionPolicy\",\n async sendRequest(\n request: PipelineRequest,\n next: SendRequest\n ): Promise<PipelineResponse> {\n const param = request.url.split(\"?\");\n if (param.length > 1) {\n const newParams = param[1].split(\"&\").map((item) => {\n if (item.indexOf(\"api-version\") > -1) {\n return \"api-version=\" + apiVersion;\n } else {\n return item;\n }\n });\n request.url = param[0] + \"?\" + newParams.join(\"&\");\n }\n return next(request);\n }\n };\n this.pipeline.addPolicy(apiVersionPolicy);\n }\n\n policy: Policy;\n policyCertificates: PolicyCertificates;\n attestation: Attestation;\n signingCertificates: SigningCertificates;\n metadataConfiguration: MetadataConfiguration;\n}\n"]}
@@ -0,0 +1,4 @@
1
+ export * from "./models/index.js";
2
+ export { GeneratedClient } from "./generatedClient.js";
3
+ export * from "./operationsInterfaces/index.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/generated/index.ts"],"names":[],"mappings":"AAQA,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,cAAc,iCAAiC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /*
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
4
+ *
5
+ * Code generated by Microsoft (R) AutoRest Code Generator.
6
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
7
+ */
8
+ export * from "./models/index.js";
9
+ export { GeneratedClient } from "./generatedClient.js";
10
+ export * from "./operationsInterfaces/index.js";
11
+ //# sourceMappingURL=index.js.map