@azure/msal-common 0.0.1-alpha.0

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 (333) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +62 -0
  3. package/dist/_virtual/_tslib.js +90 -0
  4. package/dist/_virtual/_tslib.js.map +1 -0
  5. package/dist/account/AccountInfo.d.ts +30 -0
  6. package/dist/account/AccountInfo.d.ts.map +1 -0
  7. package/dist/account/AuthToken.d.ts +17 -0
  8. package/dist/account/AuthToken.d.ts.map +1 -0
  9. package/dist/account/AuthToken.js +43 -0
  10. package/dist/account/AuthToken.js.map +1 -0
  11. package/dist/account/CcsCredential.d.ts +9 -0
  12. package/dist/account/CcsCredential.d.ts.map +1 -0
  13. package/dist/account/CcsCredential.js +14 -0
  14. package/dist/account/CcsCredential.js.map +1 -0
  15. package/dist/account/ClientCredentials.d.ts +15 -0
  16. package/dist/account/ClientCredentials.d.ts.map +1 -0
  17. package/dist/account/ClientInfo.d.ts +20 -0
  18. package/dist/account/ClientInfo.d.ts.map +1 -0
  19. package/dist/account/ClientInfo.js +44 -0
  20. package/dist/account/ClientInfo.js.map +1 -0
  21. package/dist/account/DecodedAuthToken.d.ts +9 -0
  22. package/dist/account/DecodedAuthToken.d.ts.map +1 -0
  23. package/dist/account/TokenClaims.d.ts +60 -0
  24. package/dist/account/TokenClaims.d.ts.map +1 -0
  25. package/dist/authority/Authority.d.ts +200 -0
  26. package/dist/authority/Authority.d.ts.map +1 -0
  27. package/dist/authority/Authority.js +678 -0
  28. package/dist/authority/Authority.js.map +1 -0
  29. package/dist/authority/AuthorityFactory.d.ts +29 -0
  30. package/dist/authority/AuthorityFactory.d.ts.map +1 -0
  31. package/dist/authority/AuthorityFactory.js +69 -0
  32. package/dist/authority/AuthorityFactory.js.map +1 -0
  33. package/dist/authority/AuthorityMetadata.d.ts +623 -0
  34. package/dist/authority/AuthorityMetadata.d.ts.map +1 -0
  35. package/dist/authority/AuthorityMetadata.js +12 -0
  36. package/dist/authority/AuthorityMetadata.js.map +1 -0
  37. package/dist/authority/AuthorityOptions.d.ts +19 -0
  38. package/dist/authority/AuthorityOptions.d.ts.map +1 -0
  39. package/dist/authority/AuthorityOptions.js +24 -0
  40. package/dist/authority/AuthorityOptions.js.map +1 -0
  41. package/dist/authority/AuthorityType.d.ts +8 -0
  42. package/dist/authority/AuthorityType.d.ts.map +1 -0
  43. package/dist/authority/AuthorityType.js +17 -0
  44. package/dist/authority/AuthorityType.js.map +1 -0
  45. package/dist/authority/AzureRegion.d.ts +2 -0
  46. package/dist/authority/AzureRegion.d.ts.map +1 -0
  47. package/dist/authority/AzureRegionConfiguration.d.ts +6 -0
  48. package/dist/authority/AzureRegionConfiguration.d.ts.map +1 -0
  49. package/dist/authority/CloudDiscoveryMetadata.d.ts +6 -0
  50. package/dist/authority/CloudDiscoveryMetadata.d.ts.map +1 -0
  51. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +10 -0
  52. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts.map +1 -0
  53. package/dist/authority/CloudInstanceDiscoveryResponse.js +13 -0
  54. package/dist/authority/CloudInstanceDiscoveryResponse.js.map +1 -0
  55. package/dist/authority/ImdsOptions.d.ts +7 -0
  56. package/dist/authority/ImdsOptions.d.ts.map +1 -0
  57. package/dist/authority/OpenIdConfigResponse.d.ts +12 -0
  58. package/dist/authority/OpenIdConfigResponse.d.ts.map +1 -0
  59. package/dist/authority/OpenIdConfigResponse.js +15 -0
  60. package/dist/authority/OpenIdConfigResponse.js.map +1 -0
  61. package/dist/authority/ProtocolMode.d.ts +8 -0
  62. package/dist/authority/ProtocolMode.d.ts.map +1 -0
  63. package/dist/authority/ProtocolMode.js +17 -0
  64. package/dist/authority/ProtocolMode.js.map +1 -0
  65. package/dist/authority/RegionDiscovery.d.ts +28 -0
  66. package/dist/authority/RegionDiscovery.d.ts.map +1 -0
  67. package/dist/authority/RegionDiscovery.js +127 -0
  68. package/dist/authority/RegionDiscovery.js.map +1 -0
  69. package/dist/authority/RegionDiscoveryMetadata.d.ts +7 -0
  70. package/dist/authority/RegionDiscoveryMetadata.d.ts.map +1 -0
  71. package/dist/cache/CacheManager.d.ts +393 -0
  72. package/dist/cache/CacheManager.d.ts.map +1 -0
  73. package/dist/cache/CacheManager.js +885 -0
  74. package/dist/cache/CacheManager.js.map +1 -0
  75. package/dist/cache/entities/AccessTokenEntity.d.ts +57 -0
  76. package/dist/cache/entities/AccessTokenEntity.d.ts.map +1 -0
  77. package/dist/cache/entities/AccessTokenEntity.js +124 -0
  78. package/dist/cache/entities/AccessTokenEntity.js.map +1 -0
  79. package/dist/cache/entities/AccountEntity.d.ts +100 -0
  80. package/dist/cache/entities/AccountEntity.d.ts.map +1 -0
  81. package/dist/cache/entities/AccountEntity.js +243 -0
  82. package/dist/cache/entities/AccountEntity.js.map +1 -0
  83. package/dist/cache/entities/AppMetadataEntity.d.ts +40 -0
  84. package/dist/cache/entities/AppMetadataEntity.d.ts.map +1 -0
  85. package/dist/cache/entities/AppMetadataEntity.js +74 -0
  86. package/dist/cache/entities/AppMetadataEntity.js.map +1 -0
  87. package/dist/cache/entities/AuthorityMetadataEntity.d.ts +48 -0
  88. package/dist/cache/entities/AuthorityMetadataEntity.d.ts.map +1 -0
  89. package/dist/cache/entities/AuthorityMetadataEntity.js +82 -0
  90. package/dist/cache/entities/AuthorityMetadataEntity.js.map +1 -0
  91. package/dist/cache/entities/CacheRecord.d.ts +14 -0
  92. package/dist/cache/entities/CacheRecord.d.ts.map +1 -0
  93. package/dist/cache/entities/CacheRecord.js +19 -0
  94. package/dist/cache/entities/CacheRecord.js.map +1 -0
  95. package/dist/cache/entities/CredentialEntity.d.ts +94 -0
  96. package/dist/cache/entities/CredentialEntity.d.ts.map +1 -0
  97. package/dist/cache/entities/CredentialEntity.js +164 -0
  98. package/dist/cache/entities/CredentialEntity.js.map +1 -0
  99. package/dist/cache/entities/IdTokenEntity.d.ts +35 -0
  100. package/dist/cache/entities/IdTokenEntity.d.ts.map +1 -0
  101. package/dist/cache/entities/IdTokenEntity.js +70 -0
  102. package/dist/cache/entities/IdTokenEntity.js.map +1 -0
  103. package/dist/cache/entities/RefreshTokenEntity.d.ts +37 -0
  104. package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -0
  105. package/dist/cache/entities/RefreshTokenEntity.js +73 -0
  106. package/dist/cache/entities/RefreshTokenEntity.js.map +1 -0
  107. package/dist/cache/entities/ServerTelemetryEntity.d.ts +13 -0
  108. package/dist/cache/entities/ServerTelemetryEntity.d.ts.map +1 -0
  109. package/dist/cache/entities/ServerTelemetryEntity.js +35 -0
  110. package/dist/cache/entities/ServerTelemetryEntity.js.map +1 -0
  111. package/dist/cache/entities/ThrottlingEntity.d.ts +14 -0
  112. package/dist/cache/entities/ThrottlingEntity.d.ts.map +1 -0
  113. package/dist/cache/entities/ThrottlingEntity.js +32 -0
  114. package/dist/cache/entities/ThrottlingEntity.js.map +1 -0
  115. package/dist/cache/interface/ICacheManager.d.ts +157 -0
  116. package/dist/cache/interface/ICacheManager.d.ts.map +1 -0
  117. package/dist/cache/interface/ICachePlugin.d.ts +6 -0
  118. package/dist/cache/interface/ICachePlugin.d.ts.map +1 -0
  119. package/dist/cache/interface/ISerializableTokenCache.d.ts +5 -0
  120. package/dist/cache/interface/ISerializableTokenCache.d.ts.map +1 -0
  121. package/dist/cache/persistence/TokenCacheContext.d.ts +24 -0
  122. package/dist/cache/persistence/TokenCacheContext.d.ts.map +1 -0
  123. package/dist/cache/persistence/TokenCacheContext.js +39 -0
  124. package/dist/cache/persistence/TokenCacheContext.js.map +1 -0
  125. package/dist/cache/utils/CacheTypes.d.ts +60 -0
  126. package/dist/cache/utils/CacheTypes.d.ts.map +1 -0
  127. package/dist/client/AuthorizationCodeClient.d.ts +76 -0
  128. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -0
  129. package/dist/client/AuthorizationCodeClient.js +468 -0
  130. package/dist/client/AuthorizationCodeClient.js.map +1 -0
  131. package/dist/client/BaseClient.d.ts +45 -0
  132. package/dist/client/BaseClient.d.ts.map +1 -0
  133. package/dist/client/BaseClient.js +103 -0
  134. package/dist/client/BaseClient.js.map +1 -0
  135. package/dist/client/ClientCredentialClient.d.ts +39 -0
  136. package/dist/client/ClientCredentialClient.d.ts.map +1 -0
  137. package/dist/client/ClientCredentialClient.js +202 -0
  138. package/dist/client/ClientCredentialClient.js.map +1 -0
  139. package/dist/client/DeviceCodeClient.d.ts +52 -0
  140. package/dist/client/DeviceCodeClient.d.ts.map +1 -0
  141. package/dist/client/DeviceCodeClient.js +232 -0
  142. package/dist/client/DeviceCodeClient.js.map +1 -0
  143. package/dist/client/OnBehalfOfClient.d.ts +51 -0
  144. package/dist/client/OnBehalfOfClient.d.ts.map +1 -0
  145. package/dist/client/OnBehalfOfClient.js +244 -0
  146. package/dist/client/OnBehalfOfClient.js.map +1 -0
  147. package/dist/client/RefreshTokenClient.d.ts +40 -0
  148. package/dist/client/RefreshTokenClient.d.ts.map +1 -0
  149. package/dist/client/RefreshTokenClient.js +255 -0
  150. package/dist/client/RefreshTokenClient.js.map +1 -0
  151. package/dist/client/SilentFlowClient.d.ts +25 -0
  152. package/dist/client/SilentFlowClient.d.ts.map +1 -0
  153. package/dist/client/SilentFlowClient.js +128 -0
  154. package/dist/client/SilentFlowClient.js.map +1 -0
  155. package/dist/client/UsernamePasswordClient.d.ts +29 -0
  156. package/dist/client/UsernamePasswordClient.d.ts.map +1 -0
  157. package/dist/client/UsernamePasswordClient.js +120 -0
  158. package/dist/client/UsernamePasswordClient.js.map +1 -0
  159. package/dist/config/AppTokenProvider.d.ts +39 -0
  160. package/dist/config/AppTokenProvider.d.ts.map +1 -0
  161. package/dist/config/ClientConfiguration.d.ts +135 -0
  162. package/dist/config/ClientConfiguration.d.ts.map +1 -0
  163. package/dist/config/ClientConfiguration.js +105 -0
  164. package/dist/config/ClientConfiguration.js.map +1 -0
  165. package/dist/crypto/ICrypto.d.ts +63 -0
  166. package/dist/crypto/ICrypto.d.ts.map +1 -0
  167. package/dist/crypto/ICrypto.js +80 -0
  168. package/dist/crypto/ICrypto.js.map +1 -0
  169. package/dist/crypto/IGuidGenerator.d.ts +5 -0
  170. package/dist/crypto/IGuidGenerator.d.ts.map +1 -0
  171. package/dist/crypto/JoseHeader.d.ts +22 -0
  172. package/dist/crypto/JoseHeader.d.ts.map +1 -0
  173. package/dist/crypto/JoseHeader.js +45 -0
  174. package/dist/crypto/JoseHeader.js.map +1 -0
  175. package/dist/crypto/PopTokenGenerator.d.ts +56 -0
  176. package/dist/crypto/PopTokenGenerator.d.ts.map +1 -0
  177. package/dist/crypto/PopTokenGenerator.js +107 -0
  178. package/dist/crypto/PopTokenGenerator.js.map +1 -0
  179. package/dist/crypto/SignedHttpRequest.d.ts +12 -0
  180. package/dist/crypto/SignedHttpRequest.d.ts.map +1 -0
  181. package/dist/error/AuthError.d.ts +48 -0
  182. package/dist/error/AuthError.d.ts.map +1 -0
  183. package/dist/error/AuthError.js +61 -0
  184. package/dist/error/AuthError.js.map +1 -0
  185. package/dist/error/ClientAuthError.d.ts +372 -0
  186. package/dist/error/ClientAuthError.d.ts.map +1 -0
  187. package/dist/error/ClientAuthError.js +477 -0
  188. package/dist/error/ClientAuthError.js.map +1 -0
  189. package/dist/error/ClientConfigurationError.d.ts +199 -0
  190. package/dist/error/ClientConfigurationError.d.ts.map +1 -0
  191. package/dist/error/ClientConfigurationError.js +260 -0
  192. package/dist/error/ClientConfigurationError.js.map +1 -0
  193. package/dist/error/InteractionRequiredAuthError.d.ts +42 -0
  194. package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -0
  195. package/dist/error/InteractionRequiredAuthError.js +80 -0
  196. package/dist/error/InteractionRequiredAuthError.js.map +1 -0
  197. package/dist/error/JoseHeaderError.d.ts +29 -0
  198. package/dist/error/JoseHeaderError.d.ts.map +1 -0
  199. package/dist/error/JoseHeaderError.js +50 -0
  200. package/dist/error/JoseHeaderError.js.map +1 -0
  201. package/dist/error/ServerError.d.ts +8 -0
  202. package/dist/error/ServerError.d.ts.map +1 -0
  203. package/dist/error/ServerError.js +25 -0
  204. package/dist/error/ServerError.js.map +1 -0
  205. package/dist/index.cjs.js +8441 -0
  206. package/dist/index.cjs.js.map +1 -0
  207. package/dist/index.d.ts +90 -0
  208. package/dist/index.d.ts.map +1 -0
  209. package/dist/index.js +53 -0
  210. package/dist/index.js.map +1 -0
  211. package/dist/logger/Logger.d.ts +95 -0
  212. package/dist/logger/Logger.d.ts.map +1 -0
  213. package/dist/logger/Logger.js +185 -0
  214. package/dist/logger/Logger.js.map +1 -0
  215. package/dist/network/INetworkModule.d.ts +31 -0
  216. package/dist/network/INetworkModule.d.ts.map +1 -0
  217. package/dist/network/INetworkModule.js +21 -0
  218. package/dist/network/INetworkModule.js.map +1 -0
  219. package/dist/network/NetworkManager.d.ts +21 -0
  220. package/dist/network/NetworkManager.d.ts.map +1 -0
  221. package/dist/network/NetworkManager.js +56 -0
  222. package/dist/network/NetworkManager.js.map +1 -0
  223. package/dist/network/RequestThumbprint.d.ts +17 -0
  224. package/dist/network/RequestThumbprint.d.ts.map +1 -0
  225. package/dist/network/ThrottlingUtils.d.ts +42 -0
  226. package/dist/network/ThrottlingUtils.d.ts.map +1 -0
  227. package/dist/network/ThrottlingUtils.js +101 -0
  228. package/dist/network/ThrottlingUtils.js.map +1 -0
  229. package/dist/packageMetadata.d.ts +3 -0
  230. package/dist/packageMetadata.d.ts.map +1 -0
  231. package/dist/packageMetadata.js +8 -0
  232. package/dist/packageMetadata.js.map +1 -0
  233. package/dist/request/AuthenticationHeaderParser.d.ts +20 -0
  234. package/dist/request/AuthenticationHeaderParser.d.ts.map +1 -0
  235. package/dist/request/AuthenticationHeaderParser.js +64 -0
  236. package/dist/request/AuthenticationHeaderParser.js.map +1 -0
  237. package/dist/request/BaseAuthRequest.d.ts +34 -0
  238. package/dist/request/BaseAuthRequest.d.ts.map +1 -0
  239. package/dist/request/CommonAuthorizationCodeRequest.d.ts +28 -0
  240. package/dist/request/CommonAuthorizationCodeRequest.d.ts.map +1 -0
  241. package/dist/request/CommonAuthorizationUrlRequest.d.ts +51 -0
  242. package/dist/request/CommonAuthorizationUrlRequest.d.ts.map +1 -0
  243. package/dist/request/CommonClientCredentialRequest.d.ts +17 -0
  244. package/dist/request/CommonClientCredentialRequest.d.ts.map +1 -0
  245. package/dist/request/CommonDeviceCodeRequest.d.ts +19 -0
  246. package/dist/request/CommonDeviceCodeRequest.d.ts.map +1 -0
  247. package/dist/request/CommonEndSessionRequest.d.ts +21 -0
  248. package/dist/request/CommonEndSessionRequest.d.ts.map +1 -0
  249. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -0
  250. package/dist/request/CommonOnBehalfOfRequest.d.ts.map +1 -0
  251. package/dist/request/CommonRefreshTokenRequest.d.ts +21 -0
  252. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -0
  253. package/dist/request/CommonSilentFlowRequest.d.ts +20 -0
  254. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -0
  255. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -0
  256. package/dist/request/CommonUsernamePasswordRequest.d.ts.map +1 -0
  257. package/dist/request/RequestParameterBuilder.d.ts +217 -0
  258. package/dist/request/RequestParameterBuilder.d.ts.map +1 -0
  259. package/dist/request/RequestParameterBuilder.js +387 -0
  260. package/dist/request/RequestParameterBuilder.js.map +1 -0
  261. package/dist/request/RequestValidator.d.ts +34 -0
  262. package/dist/request/RequestValidator.d.ts.map +1 -0
  263. package/dist/request/RequestValidator.js +92 -0
  264. package/dist/request/RequestValidator.js.map +1 -0
  265. package/dist/request/ScopeSet.d.ts +83 -0
  266. package/dist/request/ScopeSet.d.ts.map +1 -0
  267. package/dist/request/ScopeSet.js +192 -0
  268. package/dist/request/ScopeSet.js.map +1 -0
  269. package/dist/response/AuthenticationResult.d.ts +38 -0
  270. package/dist/response/AuthenticationResult.d.ts.map +1 -0
  271. package/dist/response/AuthorizationCodePayload.d.ts +14 -0
  272. package/dist/response/AuthorizationCodePayload.d.ts.map +1 -0
  273. package/dist/response/DeviceCodeResponse.d.ts +26 -0
  274. package/dist/response/DeviceCodeResponse.d.ts.map +1 -0
  275. package/dist/response/ExternalTokenResponse.d.ts +15 -0
  276. package/dist/response/ExternalTokenResponse.d.ts.map +1 -0
  277. package/dist/response/IMDSBadResponse.d.ts +5 -0
  278. package/dist/response/IMDSBadResponse.d.ts.map +1 -0
  279. package/dist/response/ResponseHandler.d.ts +71 -0
  280. package/dist/response/ResponseHandler.d.ts.map +1 -0
  281. package/dist/response/ResponseHandler.js +293 -0
  282. package/dist/response/ResponseHandler.js.map +1 -0
  283. package/dist/response/ServerAuthorizationCodeResponse.d.ts +22 -0
  284. package/dist/response/ServerAuthorizationCodeResponse.d.ts.map +1 -0
  285. package/dist/response/ServerAuthorizationTokenResponse.d.ts +43 -0
  286. package/dist/response/ServerAuthorizationTokenResponse.d.ts.map +1 -0
  287. package/dist/telemetry/performance/IPerformanceClient.d.ts +22 -0
  288. package/dist/telemetry/performance/IPerformanceClient.d.ts.map +1 -0
  289. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +6 -0
  290. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts.map +1 -0
  291. package/dist/telemetry/performance/PerformanceClient.d.ts +125 -0
  292. package/dist/telemetry/performance/PerformanceClient.d.ts.map +1 -0
  293. package/dist/telemetry/performance/PerformanceClient.js +281 -0
  294. package/dist/telemetry/performance/PerformanceClient.js.map +1 -0
  295. package/dist/telemetry/performance/PerformanceEvent.d.ts +249 -0
  296. package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -0
  297. package/dist/telemetry/performance/PerformanceEvent.js +121 -0
  298. package/dist/telemetry/performance/PerformanceEvent.js.map +1 -0
  299. package/dist/telemetry/performance/StubPerformanceClient.d.ts +13 -0
  300. package/dist/telemetry/performance/StubPerformanceClient.d.ts.map +1 -0
  301. package/dist/telemetry/performance/StubPerformanceClient.js +37 -0
  302. package/dist/telemetry/performance/StubPerformanceClient.js.map +1 -0
  303. package/dist/telemetry/server/ServerTelemetryManager.d.ts +67 -0
  304. package/dist/telemetry/server/ServerTelemetryManager.d.ts.map +1 -0
  305. package/dist/telemetry/server/ServerTelemetryManager.js +168 -0
  306. package/dist/telemetry/server/ServerTelemetryManager.js.map +1 -0
  307. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +9 -0
  308. package/dist/telemetry/server/ServerTelemetryRequest.d.ts.map +1 -0
  309. package/dist/url/IUri.d.ts +13 -0
  310. package/dist/url/IUri.d.ts.map +1 -0
  311. package/dist/url/UrlString.d.ts +62 -0
  312. package/dist/url/UrlString.d.ts.map +1 -0
  313. package/dist/url/UrlString.js +208 -0
  314. package/dist/url/UrlString.js.map +1 -0
  315. package/dist/utils/Constants.d.ts +340 -0
  316. package/dist/utils/Constants.d.ts.map +1 -0
  317. package/dist/utils/Constants.js +381 -0
  318. package/dist/utils/Constants.js.map +1 -0
  319. package/dist/utils/MsalTypes.d.ts +7 -0
  320. package/dist/utils/MsalTypes.d.ts.map +1 -0
  321. package/dist/utils/ProtocolUtils.d.ts +43 -0
  322. package/dist/utils/ProtocolUtils.d.ts.map +1 -0
  323. package/dist/utils/ProtocolUtils.js +77 -0
  324. package/dist/utils/ProtocolUtils.js.map +1 -0
  325. package/dist/utils/StringUtils.d.ts +54 -0
  326. package/dist/utils/StringUtils.d.ts.map +1 -0
  327. package/dist/utils/StringUtils.js +129 -0
  328. package/dist/utils/StringUtils.js.map +1 -0
  329. package/dist/utils/TimeUtils.d.ts +28 -0
  330. package/dist/utils/TimeUtils.d.ts.map +1 -0
  331. package/dist/utils/TimeUtils.js +53 -0
  332. package/dist/utils/TimeUtils.js.map +1 -0
  333. package/package.json +76 -0
@@ -0,0 +1,127 @@
1
+ /*! @azure/msal-common v0.0.1-alpha.0 2022-08-02 */
2
+ 'use strict';
3
+ import { __awaiter, __generator } from '../_virtual/_tslib.js';
4
+ import { RegionDiscoverySources, ResponseCodes, Constants } from '../utils/Constants.js';
5
+
6
+ /*
7
+ * Copyright (c) Microsoft Corporation. All rights reserved.
8
+ * Licensed under the MIT License.
9
+ */
10
+ var RegionDiscovery = /** @class */ (function () {
11
+ function RegionDiscovery(networkInterface) {
12
+ this.networkInterface = networkInterface;
13
+ }
14
+ /**
15
+ * Detect the region from the application's environment.
16
+ *
17
+ * @returns Promise<string | null>
18
+ */
19
+ RegionDiscovery.prototype.detectRegion = function (environmentRegion, regionDiscoveryMetadata, proxyUrl) {
20
+ return __awaiter(this, void 0, void 0, function () {
21
+ var autodetectedRegionName, options, localIMDSVersionResponse, currentIMDSVersion, currentIMDSVersionResponse;
22
+ return __generator(this, function (_a) {
23
+ switch (_a.label) {
24
+ case 0:
25
+ autodetectedRegionName = environmentRegion;
26
+ if (!!autodetectedRegionName) return [3 /*break*/, 8];
27
+ options = RegionDiscovery.IMDS_OPTIONS;
28
+ if (proxyUrl) {
29
+ options.proxyUrl = proxyUrl;
30
+ }
31
+ _a.label = 1;
32
+ case 1:
33
+ _a.trys.push([1, 6, , 7]);
34
+ return [4 /*yield*/, this.getRegionFromIMDS(Constants.IMDS_VERSION, options)];
35
+ case 2:
36
+ localIMDSVersionResponse = _a.sent();
37
+ if (localIMDSVersionResponse.status === ResponseCodes.httpSuccess) {
38
+ autodetectedRegionName = localIMDSVersionResponse.body;
39
+ regionDiscoveryMetadata.region_source = RegionDiscoverySources.IMDS;
40
+ }
41
+ if (!(localIMDSVersionResponse.status === ResponseCodes.httpBadRequest)) return [3 /*break*/, 5];
42
+ return [4 /*yield*/, this.getCurrentVersion(options)];
43
+ case 3:
44
+ currentIMDSVersion = _a.sent();
45
+ if (!currentIMDSVersion) {
46
+ regionDiscoveryMetadata.region_source = RegionDiscoverySources.FAILED_AUTO_DETECTION;
47
+ return [2 /*return*/, null];
48
+ }
49
+ return [4 /*yield*/, this.getRegionFromIMDS(currentIMDSVersion, options)];
50
+ case 4:
51
+ currentIMDSVersionResponse = _a.sent();
52
+ if (currentIMDSVersionResponse.status === ResponseCodes.httpSuccess) {
53
+ autodetectedRegionName = currentIMDSVersionResponse.body;
54
+ regionDiscoveryMetadata.region_source = RegionDiscoverySources.IMDS;
55
+ }
56
+ _a.label = 5;
57
+ case 5: return [3 /*break*/, 7];
58
+ case 6:
59
+ _a.sent();
60
+ regionDiscoveryMetadata.region_source = RegionDiscoverySources.FAILED_AUTO_DETECTION;
61
+ return [2 /*return*/, null];
62
+ case 7: return [3 /*break*/, 9];
63
+ case 8:
64
+ regionDiscoveryMetadata.region_source = RegionDiscoverySources.ENVIRONMENT_VARIABLE;
65
+ _a.label = 9;
66
+ case 9:
67
+ // If no region was auto detected from the environment or from the IMDS endpoint, mark the attempt as a FAILED_AUTO_DETECTION
68
+ if (!autodetectedRegionName) {
69
+ regionDiscoveryMetadata.region_source = RegionDiscoverySources.FAILED_AUTO_DETECTION;
70
+ }
71
+ return [2 /*return*/, autodetectedRegionName || null];
72
+ }
73
+ });
74
+ });
75
+ };
76
+ /**
77
+ * Make the call to the IMDS endpoint
78
+ *
79
+ * @param imdsEndpointUrl
80
+ * @returns Promise<NetworkResponse<string>>
81
+ */
82
+ RegionDiscovery.prototype.getRegionFromIMDS = function (version, options) {
83
+ return __awaiter(this, void 0, void 0, function () {
84
+ return __generator(this, function (_a) {
85
+ return [2 /*return*/, this.networkInterface.sendGetRequestAsync(Constants.IMDS_ENDPOINT + "?api-version=" + version + "&format=text", options, Constants.IMDS_TIMEOUT)];
86
+ });
87
+ });
88
+ };
89
+ /**
90
+ * Get the most recent version of the IMDS endpoint available
91
+ *
92
+ * @returns Promise<string | null>
93
+ */
94
+ RegionDiscovery.prototype.getCurrentVersion = function (options) {
95
+ return __awaiter(this, void 0, void 0, function () {
96
+ var response;
97
+ return __generator(this, function (_a) {
98
+ switch (_a.label) {
99
+ case 0:
100
+ _a.trys.push([0, 2, , 3]);
101
+ return [4 /*yield*/, this.networkInterface.sendGetRequestAsync(Constants.IMDS_ENDPOINT + "?format=json", options)];
102
+ case 1:
103
+ response = _a.sent();
104
+ // When IMDS endpoint is called without the api version query param, bad request response comes back with latest version.
105
+ if (response.status === ResponseCodes.httpBadRequest && response.body && response.body["newest-versions"] && response.body["newest-versions"].length > 0) {
106
+ return [2 /*return*/, response.body["newest-versions"][0]];
107
+ }
108
+ return [2 /*return*/, null];
109
+ case 2:
110
+ _a.sent();
111
+ return [2 /*return*/, null];
112
+ case 3: return [2 /*return*/];
113
+ }
114
+ });
115
+ });
116
+ };
117
+ // Options for the IMDS endpoint request
118
+ RegionDiscovery.IMDS_OPTIONS = {
119
+ headers: {
120
+ Metadata: "true",
121
+ },
122
+ };
123
+ return RegionDiscovery;
124
+ }());
125
+
126
+ export { RegionDiscovery };
127
+ //# sourceMappingURL=RegionDiscovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegionDiscovery.js","sources":["../../src/authority/RegionDiscovery.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { INetworkModule } from \"../network/INetworkModule\";\nimport { NetworkResponse } from \"../network/NetworkManager\";\nimport { IMDSBadResponse } from \"../response/IMDSBadResponse\";\nimport { Constants, RegionDiscoverySources, ResponseCodes } from \"../utils/Constants\";\nimport { RegionDiscoveryMetadata } from \"./RegionDiscoveryMetadata\";\nimport { ImdsOptions } from \"./ImdsOptions\";\n\nexport class RegionDiscovery {\n // Network interface to make requests with.\n protected networkInterface: INetworkModule;\n // Options for the IMDS endpoint request\n protected static IMDS_OPTIONS: ImdsOptions = {\n headers: {\n Metadata: \"true\",\n },\n };\n\n constructor(networkInterface: INetworkModule) {\n this.networkInterface = networkInterface;\n }\n\n /**\n * Detect the region from the application's environment.\n * \n * @returns Promise<string | null>\n */\n public async detectRegion(environmentRegion: string | undefined, regionDiscoveryMetadata: RegionDiscoveryMetadata, proxyUrl: string): Promise<string | null> {\n // Initialize auto detected region with the region from the envrionment \n let autodetectedRegionName = environmentRegion;\n\n // Check if a region was detected from the environment, if not, attempt to get the region from IMDS \n if (!autodetectedRegionName) {\n const options = RegionDiscovery.IMDS_OPTIONS;\n if (proxyUrl) {\n options.proxyUrl = proxyUrl;\n }\n\n try {\n const localIMDSVersionResponse = await this.getRegionFromIMDS(Constants.IMDS_VERSION, options);\n if (localIMDSVersionResponse.status === ResponseCodes.httpSuccess) {\n autodetectedRegionName = localIMDSVersionResponse.body;\n regionDiscoveryMetadata.region_source = RegionDiscoverySources.IMDS;\n } \n \n // If the response using the local IMDS version failed, try to fetch the current version of IMDS and retry. \n if (localIMDSVersionResponse.status === ResponseCodes.httpBadRequest) {\n const currentIMDSVersion = await this.getCurrentVersion(options);\n if (!currentIMDSVersion) {\n regionDiscoveryMetadata.region_source = RegionDiscoverySources.FAILED_AUTO_DETECTION;\n return null;\n }\n\n const currentIMDSVersionResponse = await this.getRegionFromIMDS(currentIMDSVersion, options);\n if (currentIMDSVersionResponse.status === ResponseCodes.httpSuccess) {\n autodetectedRegionName = currentIMDSVersionResponse.body;\n regionDiscoveryMetadata.region_source = RegionDiscoverySources.IMDS;\n }\n }\n } catch(e) {\n regionDiscoveryMetadata.region_source = RegionDiscoverySources.FAILED_AUTO_DETECTION;\n return null;\n } \n } else {\n regionDiscoveryMetadata.region_source = RegionDiscoverySources.ENVIRONMENT_VARIABLE;\n }\n\n // If no region was auto detected from the environment or from the IMDS endpoint, mark the attempt as a FAILED_AUTO_DETECTION\n if (!autodetectedRegionName) {\n regionDiscoveryMetadata.region_source = RegionDiscoverySources.FAILED_AUTO_DETECTION;\n }\n\n return autodetectedRegionName || null;\n }\n\n /**\n * Make the call to the IMDS endpoint\n * \n * @param imdsEndpointUrl\n * @returns Promise<NetworkResponse<string>>\n */\n private async getRegionFromIMDS(version: string, options: ImdsOptions): Promise<NetworkResponse<string>> {\n return this.networkInterface.sendGetRequestAsync<string>(`${Constants.IMDS_ENDPOINT}?api-version=${version}&format=text`, options, Constants.IMDS_TIMEOUT);\n }\n\n /**\n * Get the most recent version of the IMDS endpoint available\n * \n * @returns Promise<string | null>\n */\n private async getCurrentVersion(options: ImdsOptions): Promise<string | null> {\n try {\n const response = await this.networkInterface.sendGetRequestAsync<IMDSBadResponse>(`${Constants.IMDS_ENDPOINT}?format=json`, options);\n\n // When IMDS endpoint is called without the api version query param, bad request response comes back with latest version.\n if (response.status === ResponseCodes.httpBadRequest && response.body && response.body[\"newest-versions\"] && response.body[\"newest-versions\"].length > 0) {\n return response.body[\"newest-versions\"][0];\n }\n\n return null;\n } catch (e) {\n return null;\n }\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { RegionDiscoveryOutcomes, RegionDiscoverySources } from "../utils/Constants";
2
+ export declare type RegionDiscoveryMetadata = {
3
+ region_used?: string;
4
+ region_source?: RegionDiscoverySources;
5
+ region_outcome?: RegionDiscoveryOutcomes;
6
+ };
7
+ //# sourceMappingURL=RegionDiscoveryMetadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RegionDiscoveryMetadata.d.ts","sourceRoot":"","sources":["../../src/authority/RegionDiscoveryMetadata.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACzB,MAAM,oBAAoB,CAAC;AAE5B,oBAAY,uBAAuB,GAAG;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC5C,CAAC"}
@@ -0,0 +1,393 @@
1
+ import { AccountCache, AccountFilter, CredentialFilter, CredentialCache, ValidCredentialType, AppMetadataFilter, AppMetadataCache } from "./utils/CacheTypes";
2
+ import { CacheRecord } from "./entities/CacheRecord";
3
+ import { CredentialEntity } from "./entities/CredentialEntity";
4
+ import { AccountEntity } from "./entities/AccountEntity";
5
+ import { AccessTokenEntity } from "./entities/AccessTokenEntity";
6
+ import { IdTokenEntity } from "./entities/IdTokenEntity";
7
+ import { RefreshTokenEntity } from "./entities/RefreshTokenEntity";
8
+ import { ICacheManager } from "./interface/ICacheManager";
9
+ import { AccountInfo } from "../account/AccountInfo";
10
+ import { AppMetadataEntity } from "./entities/AppMetadataEntity";
11
+ import { ServerTelemetryEntity } from "./entities/ServerTelemetryEntity";
12
+ import { ThrottlingEntity } from "./entities/ThrottlingEntity";
13
+ import { ICrypto } from "../crypto/ICrypto";
14
+ import { AuthorityMetadataEntity } from "./entities/AuthorityMetadataEntity";
15
+ import { BaseAuthRequest } from "../request/BaseAuthRequest";
16
+ /**
17
+ * Interface class which implement cache storage functions used by MSAL to perform validity checks, and store tokens.
18
+ */
19
+ export declare abstract class CacheManager implements ICacheManager {
20
+ protected clientId: string;
21
+ protected cryptoImpl: ICrypto;
22
+ constructor(clientId: string, cryptoImpl: ICrypto);
23
+ /**
24
+ * fetch the account entity from the platform cache
25
+ * @param accountKey
26
+ */
27
+ abstract getAccount(accountKey: string): AccountEntity | null;
28
+ /**
29
+ * set account entity in the platform cache
30
+ * @param account
31
+ */
32
+ abstract setAccount(account: AccountEntity): void;
33
+ /**
34
+ * fetch the idToken entity from the platform cache
35
+ * @param idTokenKey
36
+ */
37
+ abstract getIdTokenCredential(idTokenKey: string): IdTokenEntity | null;
38
+ /**
39
+ * set idToken entity to the platform cache
40
+ * @param idToken
41
+ */
42
+ abstract setIdTokenCredential(idToken: IdTokenEntity): void;
43
+ /**
44
+ * fetch the idToken entity from the platform cache
45
+ * @param accessTokenKey
46
+ */
47
+ abstract getAccessTokenCredential(accessTokenKey: string): AccessTokenEntity | null;
48
+ /**
49
+ * set idToken entity to the platform cache
50
+ * @param accessToken
51
+ */
52
+ abstract setAccessTokenCredential(accessToken: AccessTokenEntity): void;
53
+ /**
54
+ * fetch the idToken entity from the platform cache
55
+ * @param refreshTokenKey
56
+ */
57
+ abstract getRefreshTokenCredential(refreshTokenKey: string): RefreshTokenEntity | null;
58
+ /**
59
+ * set idToken entity to the platform cache
60
+ * @param refreshToken
61
+ */
62
+ abstract setRefreshTokenCredential(refreshToken: RefreshTokenEntity): void;
63
+ /**
64
+ * fetch appMetadata entity from the platform cache
65
+ * @param appMetadataKey
66
+ */
67
+ abstract getAppMetadata(appMetadataKey: string): AppMetadataEntity | null;
68
+ /**
69
+ * set appMetadata entity to the platform cache
70
+ * @param appMetadata
71
+ */
72
+ abstract setAppMetadata(appMetadata: AppMetadataEntity): void;
73
+ /**
74
+ * fetch server telemetry entity from the platform cache
75
+ * @param serverTelemetryKey
76
+ */
77
+ abstract getServerTelemetry(serverTelemetryKey: string): ServerTelemetryEntity | null;
78
+ /**
79
+ * set server telemetry entity to the platform cache
80
+ * @param serverTelemetryKey
81
+ * @param serverTelemetry
82
+ */
83
+ abstract setServerTelemetry(serverTelemetryKey: string, serverTelemetry: ServerTelemetryEntity): void;
84
+ /**
85
+ * fetch cloud discovery metadata entity from the platform cache
86
+ * @param key
87
+ */
88
+ abstract getAuthorityMetadata(key: string): AuthorityMetadataEntity | null;
89
+ /**
90
+ *
91
+ */
92
+ abstract getAuthorityMetadataKeys(): Array<string>;
93
+ /**
94
+ * set cloud discovery metadata entity to the platform cache
95
+ * @param key
96
+ * @param value
97
+ */
98
+ abstract setAuthorityMetadata(key: string, value: AuthorityMetadataEntity): void;
99
+ /**
100
+ * fetch throttling entity from the platform cache
101
+ * @param throttlingCacheKey
102
+ */
103
+ abstract getThrottlingCache(throttlingCacheKey: string): ThrottlingEntity | null;
104
+ /**
105
+ * set throttling entity to the platform cache
106
+ * @param throttlingCacheKey
107
+ * @param throttlingCache
108
+ */
109
+ abstract setThrottlingCache(throttlingCacheKey: string, throttlingCache: ThrottlingEntity): void;
110
+ /**
111
+ * Function to remove an item from cache given its key.
112
+ * @param key
113
+ */
114
+ abstract removeItem(key: string, type?: string): boolean;
115
+ /**
116
+ * Function which returns boolean whether cache contains a specific key.
117
+ * @param key
118
+ */
119
+ abstract containsKey(key: string, type?: string): boolean;
120
+ /**
121
+ * Function which retrieves all current keys from the cache.
122
+ */
123
+ abstract getKeys(): string[];
124
+ /**
125
+ * Function which clears cache.
126
+ */
127
+ abstract clear(): Promise<void>;
128
+ /**
129
+ * Function which updates an outdated credential cache key
130
+ */
131
+ abstract updateCredentialCacheKey(currentCacheKey: string, credential: ValidCredentialType): string;
132
+ /**
133
+ * Returns all accounts in cache
134
+ */
135
+ getAllAccounts(): AccountInfo[];
136
+ /**
137
+ * saves a cache record
138
+ * @param cacheRecord
139
+ */
140
+ saveCacheRecord(cacheRecord: CacheRecord): Promise<void>;
141
+ /**
142
+ * saves access token credential
143
+ * @param credential
144
+ */
145
+ private saveAccessToken;
146
+ /**
147
+ * retrieve accounts matching all provided filters; if no filter is set, get all accounts
148
+ * not checking for casing as keys are all generated in lower case, remember to convert to lower case if object properties are compared
149
+ * @param homeAccountId
150
+ * @param environment
151
+ * @param realm
152
+ */
153
+ getAccountsFilteredBy(accountFilter?: AccountFilter): AccountCache;
154
+ /**
155
+ * retrieve accounts matching all provided filters; if no filter is set, get all accounts
156
+ * not checking for casing as keys are all generated in lower case, remember to convert to lower case if object properties are compared
157
+ * @param homeAccountId
158
+ * @param environment
159
+ * @param realm
160
+ */
161
+ private getAccountsFilteredByInternal;
162
+ /**
163
+ * retrieve credentails matching all provided filters; if no filter is set, get all credentials
164
+ * @param homeAccountId
165
+ * @param environment
166
+ * @param credentialType
167
+ * @param clientId
168
+ * @param realm
169
+ * @param target
170
+ */
171
+ getCredentialsFilteredBy(filter: CredentialFilter): CredentialCache;
172
+ /**
173
+ * Support function to help match credentials
174
+ * @param homeAccountId
175
+ * @param environment
176
+ * @param credentialType
177
+ * @param clientId
178
+ * @param realm
179
+ * @param target
180
+ * @param userAssertionHash
181
+ * @param tokenType
182
+ */
183
+ private getCredentialsFilteredByInternal;
184
+ /**
185
+ * retrieve appMetadata matching all provided filters; if no filter is set, get all appMetadata
186
+ * @param filter
187
+ */
188
+ getAppMetadataFilteredBy(filter: AppMetadataFilter): AppMetadataCache;
189
+ /**
190
+ * Support function to help match appMetadata
191
+ * @param environment
192
+ * @param clientId
193
+ */
194
+ private getAppMetadataFilteredByInternal;
195
+ /**
196
+ * retrieve authorityMetadata that contains a matching alias
197
+ * @param filter
198
+ */
199
+ getAuthorityMetadataByAlias(host: string): AuthorityMetadataEntity | null;
200
+ /**
201
+ * Removes all accounts and related tokens from cache.
202
+ */
203
+ removeAllAccounts(): Promise<boolean>;
204
+ /**
205
+ * returns a boolean if the given account is removed
206
+ * @param account
207
+ */
208
+ removeAccount(accountKey: string): Promise<boolean>;
209
+ /**
210
+ * Removes credentials associated with the provided account
211
+ * @param account
212
+ */
213
+ removeAccountContext(account: AccountEntity): Promise<boolean>;
214
+ /**
215
+ * returns a boolean if the given credential is removed
216
+ * @param credential
217
+ */
218
+ removeCredential(credential: CredentialEntity): Promise<boolean>;
219
+ /**
220
+ * Removes all app metadata objects from cache.
221
+ */
222
+ removeAppMetadata(): boolean;
223
+ /**
224
+ * Retrieve the cached credentials into a cacherecord
225
+ * @param account
226
+ * @param clientId
227
+ * @param scopes
228
+ * @param environment
229
+ * @param authScheme
230
+ */
231
+ readCacheRecord(account: AccountInfo, clientId: string, request: BaseAuthRequest, environment: string): CacheRecord;
232
+ /**
233
+ * Retrieve AccountEntity from cache
234
+ * @param account
235
+ */
236
+ readAccountFromCache(account: AccountInfo): AccountEntity | null;
237
+ /**
238
+ * Retrieve AccountEntity from cache
239
+ * @param nativeAccountId
240
+ * @returns AccountEntity or Null
241
+ */
242
+ readAccountFromCacheWithNativeAccountId(nativeAccountId: string): AccountEntity | null;
243
+ /**
244
+ * Retrieve IdTokenEntity from cache
245
+ * @param clientId
246
+ * @param account
247
+ * @param inputRealm
248
+ */
249
+ readIdTokenFromCache(clientId: string, account: AccountInfo): IdTokenEntity | null;
250
+ /**
251
+ * Retrieve AccessTokenEntity from cache
252
+ * @param clientId
253
+ * @param account
254
+ * @param scopes
255
+ * @param authScheme
256
+ */
257
+ readAccessTokenFromCache(clientId: string, account: AccountInfo, request: BaseAuthRequest): AccessTokenEntity | null;
258
+ /**
259
+ * Helper to retrieve the appropriate refresh token from cache
260
+ * @param clientId
261
+ * @param account
262
+ * @param familyRT
263
+ */
264
+ readRefreshTokenFromCache(clientId: string, account: AccountInfo, familyRT: boolean): RefreshTokenEntity | null;
265
+ /**
266
+ * Retrieve AppMetadataEntity from cache
267
+ */
268
+ readAppMetadataFromCache(environment: string, clientId: string): AppMetadataEntity | null;
269
+ /**
270
+ * Return the family_id value associated with FOCI
271
+ * @param environment
272
+ * @param clientId
273
+ */
274
+ isAppMetadataFOCI(environment: string, clientId: string): boolean;
275
+ /**
276
+ * helper to match account ids
277
+ * @param value
278
+ * @param homeAccountId
279
+ */
280
+ private matchHomeAccountId;
281
+ /**
282
+ * helper to match assertion
283
+ * @param value
284
+ * @param oboAssertion
285
+ */
286
+ private matchUserAssertionHash;
287
+ /**
288
+ * helper to match environment
289
+ * @param value
290
+ * @param environment
291
+ */
292
+ private matchEnvironment;
293
+ /**
294
+ * helper to match credential type
295
+ * @param entity
296
+ * @param credentialType
297
+ */
298
+ private matchCredentialType;
299
+ /**
300
+ * helper to match client ids
301
+ * @param entity
302
+ * @param clientId
303
+ */
304
+ private matchClientId;
305
+ /**
306
+ * helper to match family ids
307
+ * @param entity
308
+ * @param familyId
309
+ */
310
+ private matchFamilyId;
311
+ /**
312
+ * helper to match realm
313
+ * @param entity
314
+ * @param realm
315
+ */
316
+ private matchRealm;
317
+ /**
318
+ * helper to match nativeAccountId
319
+ * @param entity
320
+ * @param nativeAccountId
321
+ * @returns boolean indicating the match result
322
+ */
323
+ private matchNativeAccountId;
324
+ /**
325
+ * Returns true if the target scopes are a subset of the current entity's scopes, false otherwise.
326
+ * @param entity
327
+ * @param target
328
+ */
329
+ private matchTarget;
330
+ /**
331
+ * Returns true if the credential's tokenType or Authentication Scheme matches the one in the request, false otherwise
332
+ * @param entity
333
+ * @param tokenType
334
+ */
335
+ private matchTokenType;
336
+ /**
337
+ * Returns true if the credential's keyId matches the one in the request, false otherwise
338
+ * @param entity
339
+ * @param tokenType
340
+ */
341
+ private matchKeyId;
342
+ /**
343
+ * returns if a given cache entity is of the type appmetadata
344
+ * @param key
345
+ */
346
+ private isAppMetadata;
347
+ /**
348
+ * returns if a given cache entity is of the type authoritymetadata
349
+ * @param key
350
+ */
351
+ protected isAuthorityMetadata(key: string): boolean;
352
+ /**
353
+ * returns cache key used for cloud instance metadata
354
+ */
355
+ generateAuthorityMetadataCacheKey(authority: string): string;
356
+ /**
357
+ * Returns the specific credential (IdToken/AccessToken/RefreshToken) from the cache
358
+ * @param key
359
+ * @param credType
360
+ */
361
+ private getSpecificCredential;
362
+ /**
363
+ * Helper to convert serialized data to object
364
+ * @param obj
365
+ * @param json
366
+ */
367
+ static toObject<T>(obj: T, json: object): T;
368
+ }
369
+ export declare class DefaultStorageClass extends CacheManager {
370
+ setAccount(): void;
371
+ getAccount(): AccountEntity;
372
+ setIdTokenCredential(): void;
373
+ getIdTokenCredential(): IdTokenEntity;
374
+ setAccessTokenCredential(): void;
375
+ getAccessTokenCredential(): AccessTokenEntity;
376
+ setRefreshTokenCredential(): void;
377
+ getRefreshTokenCredential(): RefreshTokenEntity;
378
+ setAppMetadata(): void;
379
+ getAppMetadata(): AppMetadataEntity;
380
+ setServerTelemetry(): void;
381
+ getServerTelemetry(): ServerTelemetryEntity;
382
+ setAuthorityMetadata(): void;
383
+ getAuthorityMetadata(): AuthorityMetadataEntity | null;
384
+ getAuthorityMetadataKeys(): Array<string>;
385
+ setThrottlingCache(): void;
386
+ getThrottlingCache(): ThrottlingEntity;
387
+ removeItem(): boolean;
388
+ containsKey(): boolean;
389
+ getKeys(): string[];
390
+ clear(): Promise<void>;
391
+ updateCredentialCacheKey(): string;
392
+ }
393
+ //# sourceMappingURL=CacheManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CacheManager.d.ts","sourceRoot":"","sources":["../../src/cache/CacheManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC9J,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D;;GAEG;AACH,8BAAsB,YAAa,YAAW,aAAa;IACvD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;gBAElB,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAKjD;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAE7D;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAEjD;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAEvE;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAE3D;;;OAGG;IACH,QAAQ,CAAC,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;IAEnF;;;OAGG;IACH,QAAQ,CAAC,wBAAwB,CAAC,WAAW,EAAE,iBAAiB,GAAG,IAAI;IAEvE;;;OAGG;IACH,QAAQ,CAAC,yBAAyB,CAAC,eAAe,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI;IAEtF;;;OAGG;IACH,QAAQ,CAAC,yBAAyB,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI;IAE1E;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;IAEzE;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,iBAAiB,GAAG,IAAI;IAE7D;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,GAAG,qBAAqB,GAAG,IAAI;IAErF;;;;OAIG;IACH,QAAQ,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,EAAE,eAAe,EAAE,qBAAqB,GAAG,IAAI;IAErG;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;IAE1E;;OAEG;IACH,QAAQ,CAAC,wBAAwB,IAAI,KAAK,CAAC,MAAM,CAAC;IAElD;;;;OAIG;IACH,QAAQ,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,GAAG,IAAI;IAEhF;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAEhF;;;;OAIG;IACH,QAAQ,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,GAAG,IAAI;IAEhG;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAExD;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO;IAEzD;;OAEG;IACH,QAAQ,CAAC,OAAO,IAAI,MAAM,EAAE;IAE5B;;OAEG;IACH,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,wBAAwB,CAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,MAAM;IAEnG;;OAEG;IACH,cAAc,IAAI,WAAW,EAAE;IAsB/B;;;OAGG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B9D;;;OAGG;YACW,eAAe;IA2B7B;;;;;;OAMG;IACH,qBAAqB,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,YAAY;IASlE;;;;;;OAMG;IACH,OAAO,CAAC,6BAA6B;IAsCrC;;;;;;;;OAQG;IACH,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,eAAe;IAgBnE;;;;;;;;;;OAUG;IACH,OAAO,CAAC,gCAAgC;IAiHxC;;;OAGG;IACH,wBAAwB,CAAC,MAAM,EAAE,iBAAiB,GAAG,gBAAgB;IAOrE;;;;OAIG;IACH,OAAO,CAAC,gCAAgC;IAoCxC;;;OAGG;IACH,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,GAAG,IAAI;IA4BzE;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAgB3C;;;OAGG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQzD;;;OAGG;IACG,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBpE;;;OAGG;IACG,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBtE;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAW5B;;;;;;;OAOG;IACH,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,GAAG,WAAW;IAqBnH;;;OAGG;IACH,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,GAAG,IAAI;IAKhE;;;;OAIG;IACH,uCAAuC,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAiBtF;;;;;OAKG;IACH,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,aAAa,GAAG,IAAI;IAsBlF;;;;;;OAMG;IACH,wBAAwB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,GAAG,iBAAiB,GAAG,IAAI;IAmCpH;;;;;OAKG;IACH,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,GAAG,kBAAkB,GAAG,IAAI;IAsB/G;;OAEG;IACH,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI;IAmBzF;;;;OAIG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAKjE;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IASxB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAIrB;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAIlB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAkBnB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAItB;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAIlB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAInD;;OAEG;IACH,iCAAiC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAI5D;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAiB7B;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;CAM9C;AAED,qBAAa,mBAAoB,SAAQ,YAAY;IACjD,UAAU,IAAI,IAAI;IAIlB,UAAU,IAAI,aAAa;IAI3B,oBAAoB,IAAI,IAAI;IAI5B,oBAAoB,IAAI,aAAa;IAIrC,wBAAwB,IAAI,IAAI;IAIhC,wBAAwB,IAAI,iBAAiB;IAI7C,yBAAyB,IAAI,IAAI;IAIjC,yBAAyB,IAAI,kBAAkB;IAI/C,cAAc,IAAI,IAAI;IAItB,cAAc,IAAI,iBAAiB;IAInC,kBAAkB,IAAI,IAAI;IAI1B,kBAAkB,IAAI,qBAAqB;IAI3C,oBAAoB,IAAI,IAAI;IAI5B,oBAAoB,IAAI,uBAAuB,GAAG,IAAI;IAItD,wBAAwB,IAAI,KAAK,CAAC,MAAM,CAAC;IAIzC,kBAAkB,IAAI,IAAI;IAI1B,kBAAkB,IAAI,gBAAgB;IAItC,UAAU,IAAI,OAAO;IAIrB,WAAW,IAAI,OAAO;IAItB,OAAO,IAAI,MAAM,EAAE;IAIb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B,wBAAwB,IAAI,MAAM;CAIrC"}