@azure/msal-common 14.4.1-beta.1 → 14.5.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 (288) hide show
  1. package/dist/account/AccountInfo.d.ts +58 -31
  2. package/dist/account/AccountInfo.d.ts.map +1 -1
  3. package/dist/account/AccountInfo.mjs +64 -0
  4. package/dist/account/AccountInfo.mjs.map +1 -0
  5. package/dist/account/AuthToken.d.ts +17 -17
  6. package/dist/account/AuthToken.mjs +58 -58
  7. package/dist/account/AuthToken.mjs.map +1 -1
  8. package/dist/account/CcsCredential.d.ts +9 -9
  9. package/dist/account/CcsCredential.mjs +8 -8
  10. package/dist/account/CcsCredential.mjs.map +1 -1
  11. package/dist/account/ClientCredentials.d.ts +14 -14
  12. package/dist/account/ClientInfo.d.ts +18 -19
  13. package/dist/account/ClientInfo.d.ts.map +1 -1
  14. package/dist/account/ClientInfo.mjs +37 -37
  15. package/dist/account/ClientInfo.mjs.map +1 -1
  16. package/dist/account/TokenClaims.d.ts +83 -65
  17. package/dist/account/TokenClaims.d.ts.map +1 -1
  18. package/dist/account/TokenClaims.mjs +25 -0
  19. package/dist/account/TokenClaims.mjs.map +1 -0
  20. package/dist/authority/Authority.d.ts +253 -249
  21. package/dist/authority/Authority.d.ts.map +1 -1
  22. package/dist/authority/Authority.mjs +812 -789
  23. package/dist/authority/Authority.mjs.map +1 -1
  24. package/dist/authority/AuthorityFactory.d.ts +31 -31
  25. package/dist/authority/AuthorityFactory.mjs +47 -47
  26. package/dist/authority/AuthorityFactory.mjs.map +1 -1
  27. package/dist/authority/AuthorityMetadata.d.ts +503 -503
  28. package/dist/authority/AuthorityMetadata.mjs +603 -603
  29. package/dist/authority/AuthorityMetadata.mjs.map +1 -1
  30. package/dist/authority/AuthorityOptions.d.ts +27 -27
  31. package/dist/authority/AuthorityOptions.mjs +18 -18
  32. package/dist/authority/AuthorityOptions.mjs.map +1 -1
  33. package/dist/authority/AuthorityType.d.ts +10 -10
  34. package/dist/authority/AuthorityType.mjs +13 -13
  35. package/dist/authority/AuthorityType.mjs.map +1 -1
  36. package/dist/authority/AzureRegion.d.ts +1 -1
  37. package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
  38. package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
  39. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
  40. package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs +8 -8
  41. package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs.map +1 -1
  42. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
  43. package/dist/authority/CloudInstanceDiscoveryResponse.mjs +8 -8
  44. package/dist/authority/CloudInstanceDiscoveryResponse.mjs.map +1 -1
  45. package/dist/authority/ImdsOptions.d.ts +5 -5
  46. package/dist/authority/OIDCOptions.d.ts +8 -8
  47. package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
  48. package/dist/authority/OpenIdConfigResponse.mjs +10 -10
  49. package/dist/authority/OpenIdConfigResponse.mjs.map +1 -1
  50. package/dist/authority/ProtocolMode.d.ts +8 -8
  51. package/dist/authority/ProtocolMode.mjs +11 -11
  52. package/dist/authority/ProtocolMode.mjs.map +1 -1
  53. package/dist/authority/RegionDiscovery.d.ts +32 -32
  54. package/dist/authority/RegionDiscovery.mjs +106 -106
  55. package/dist/authority/RegionDiscovery.mjs.map +1 -1
  56. package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
  57. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
  58. package/dist/cache/CacheManager.d.ts +517 -485
  59. package/dist/cache/CacheManager.d.ts.map +1 -1
  60. package/dist/cache/CacheManager.mjs +1264 -1102
  61. package/dist/cache/CacheManager.mjs.map +1 -1
  62. package/dist/cache/entities/AccessTokenEntity.d.ts +25 -25
  63. package/dist/cache/entities/AccountEntity.d.ts +106 -101
  64. package/dist/cache/entities/AccountEntity.d.ts.map +1 -1
  65. package/dist/cache/entities/AccountEntity.mjs +247 -219
  66. package/dist/cache/entities/AccountEntity.mjs.map +1 -1
  67. package/dist/cache/entities/AppMetadataEntity.d.ts +39 -39
  68. package/dist/cache/entities/AppMetadataEntity.mjs +66 -66
  69. package/dist/cache/entities/AppMetadataEntity.mjs.map +1 -1
  70. package/dist/cache/entities/AuthorityMetadataEntity.d.ts +48 -48
  71. package/dist/cache/entities/AuthorityMetadataEntity.mjs +78 -78
  72. package/dist/cache/entities/AuthorityMetadataEntity.mjs.map +1 -1
  73. package/dist/cache/entities/CacheRecord.d.ts +14 -14
  74. package/dist/cache/entities/CacheRecord.mjs +14 -14
  75. package/dist/cache/entities/CacheRecord.mjs.map +1 -1
  76. package/dist/cache/entities/CredentialEntity.d.ts +30 -30
  77. package/dist/cache/entities/IdTokenEntity.d.ts +8 -8
  78. package/dist/cache/entities/RefreshTokenEntity.d.ts +5 -7
  79. package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -1
  80. package/dist/cache/entities/ServerTelemetryEntity.d.ts +5 -5
  81. package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
  82. package/dist/cache/entities/ThrottlingEntity.mjs +23 -23
  83. package/dist/cache/entities/ThrottlingEntity.mjs.map +1 -1
  84. package/dist/cache/interface/ICacheManager.d.ts +166 -166
  85. package/dist/cache/interface/ICachePlugin.d.ts +5 -5
  86. package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
  87. package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
  88. package/dist/cache/persistence/TokenCacheContext.mjs +25 -25
  89. package/dist/cache/persistence/TokenCacheContext.mjs.map +1 -1
  90. package/dist/cache/utils/CacheHelpers.d.ts +64 -64
  91. package/dist/cache/utils/CacheHelpers.d.ts.map +1 -1
  92. package/dist/cache/utils/CacheHelpers.mjs +231 -234
  93. package/dist/cache/utils/CacheHelpers.mjs.map +1 -1
  94. package/dist/cache/utils/CacheTypes.d.ts +69 -67
  95. package/dist/cache/utils/CacheTypes.d.ts.map +1 -1
  96. package/dist/client/AuthorizationCodeClient.d.ts +74 -74
  97. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  98. package/dist/client/AuthorizationCodeClient.mjs +404 -403
  99. package/dist/client/AuthorizationCodeClient.mjs.map +1 -1
  100. package/dist/client/BaseClient.d.ts +51 -51
  101. package/dist/client/BaseClient.mjs +100 -100
  102. package/dist/client/BaseClient.mjs.map +1 -1
  103. package/dist/client/RefreshTokenClient.d.ts +35 -35
  104. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  105. package/dist/client/RefreshTokenClient.mjs +189 -194
  106. package/dist/client/RefreshTokenClient.mjs.map +1 -1
  107. package/dist/client/SilentFlowClient.d.ts +27 -27
  108. package/dist/client/SilentFlowClient.mjs +118 -118
  109. package/dist/client/SilentFlowClient.mjs.map +1 -1
  110. package/dist/config/AppTokenProvider.d.ts +38 -38
  111. package/dist/config/ClientConfiguration.d.ts +150 -150
  112. package/dist/config/ClientConfiguration.mjs +97 -97
  113. package/dist/config/ClientConfiguration.mjs.map +1 -1
  114. package/dist/constants/AADServerParamKeys.d.ts +52 -0
  115. package/dist/constants/AADServerParamKeys.d.ts.map +1 -0
  116. package/dist/constants/AADServerParamKeys.mjs +60 -0
  117. package/dist/constants/AADServerParamKeys.mjs.map +1 -0
  118. package/dist/crypto/ICrypto.d.ts +58 -58
  119. package/dist/crypto/ICrypto.mjs +30 -30
  120. package/dist/crypto/ICrypto.mjs.map +1 -1
  121. package/dist/crypto/IGuidGenerator.d.ts +4 -4
  122. package/dist/crypto/JoseHeader.d.ts +22 -22
  123. package/dist/crypto/JoseHeader.mjs +37 -37
  124. package/dist/crypto/JoseHeader.mjs.map +1 -1
  125. package/dist/crypto/PopTokenGenerator.d.ts +60 -60
  126. package/dist/crypto/PopTokenGenerator.mjs +82 -82
  127. package/dist/crypto/PopTokenGenerator.mjs.map +1 -1
  128. package/dist/crypto/SignedHttpRequest.d.ts +15 -15
  129. package/dist/error/AuthError.d.ts +44 -44
  130. package/dist/error/AuthError.mjs +46 -46
  131. package/dist/error/AuthError.mjs.map +1 -1
  132. package/dist/error/AuthErrorCodes.d.ts +5 -5
  133. package/dist/error/AuthErrorCodes.mjs +9 -9
  134. package/dist/error/AuthErrorCodes.mjs.map +1 -1
  135. package/dist/error/ClientAuthError.d.ts +237 -237
  136. package/dist/error/ClientAuthError.mjs +249 -249
  137. package/dist/error/ClientAuthError.mjs.map +1 -1
  138. package/dist/error/ClientAuthErrorCodes.d.ts +44 -44
  139. package/dist/error/ClientAuthErrorCodes.mjs +48 -48
  140. package/dist/error/ClientAuthErrorCodes.mjs.map +1 -1
  141. package/dist/error/ClientConfigurationError.d.ts +128 -128
  142. package/dist/error/ClientConfigurationError.mjs +135 -135
  143. package/dist/error/ClientConfigurationError.mjs.map +1 -1
  144. package/dist/error/ClientConfigurationErrorCodes.d.ts +22 -22
  145. package/dist/error/ClientConfigurationErrorCodes.mjs +26 -26
  146. package/dist/error/ClientConfigurationErrorCodes.mjs.map +1 -1
  147. package/dist/error/InteractionRequiredAuthError.d.ts +57 -57
  148. package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
  149. package/dist/error/InteractionRequiredAuthError.mjs +77 -78
  150. package/dist/error/InteractionRequiredAuthError.mjs.map +1 -1
  151. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts +5 -6
  152. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts.map +1 -1
  153. package/dist/error/InteractionRequiredAuthErrorCodes.mjs +12 -13
  154. package/dist/error/InteractionRequiredAuthErrorCodes.mjs.map +1 -1
  155. package/dist/error/JoseHeaderError.d.ts +15 -15
  156. package/dist/error/JoseHeaderError.mjs +22 -22
  157. package/dist/error/JoseHeaderError.mjs.map +1 -1
  158. package/dist/error/JoseHeaderErrorCodes.d.ts +2 -2
  159. package/dist/error/JoseHeaderErrorCodes.mjs +6 -6
  160. package/dist/error/JoseHeaderErrorCodes.mjs.map +1 -1
  161. package/dist/error/ServerError.d.ts +7 -7
  162. package/dist/error/ServerError.mjs +14 -14
  163. package/dist/error/ServerError.mjs.map +1 -1
  164. package/dist/index.cjs +8645 -8295
  165. package/dist/index.cjs.map +1 -1
  166. package/dist/index.d.ts +99 -98
  167. package/dist/index.d.ts.map +1 -1
  168. package/dist/index.mjs +7 -3
  169. package/dist/index.mjs.map +1 -1
  170. package/dist/logger/Logger.d.ts +95 -95
  171. package/dist/logger/Logger.mjs +188 -188
  172. package/dist/logger/Logger.mjs.map +1 -1
  173. package/dist/network/INetworkModule.d.ts +29 -29
  174. package/dist/network/INetworkModule.mjs +12 -12
  175. package/dist/network/INetworkModule.mjs.map +1 -1
  176. package/dist/network/NetworkManager.d.ts +33 -33
  177. package/dist/network/NetworkManager.mjs +34 -34
  178. package/dist/network/NetworkManager.mjs.map +1 -1
  179. package/dist/network/RequestThumbprint.d.ts +18 -18
  180. package/dist/network/ThrottlingUtils.d.ts +42 -42
  181. package/dist/network/ThrottlingUtils.mjs +95 -95
  182. package/dist/network/ThrottlingUtils.mjs.map +1 -1
  183. package/dist/packageMetadata.d.ts +2 -2
  184. package/dist/packageMetadata.d.ts.map +1 -1
  185. package/dist/packageMetadata.mjs +4 -4
  186. package/dist/packageMetadata.mjs.map +1 -1
  187. package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
  188. package/dist/request/AuthenticationHeaderParser.mjs +55 -55
  189. package/dist/request/AuthenticationHeaderParser.mjs.map +1 -1
  190. package/dist/request/BaseAuthRequest.d.ts +43 -43
  191. package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
  192. package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
  193. package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
  194. package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
  195. package/dist/request/CommonEndSessionRequest.d.ts +21 -21
  196. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
  197. package/dist/request/CommonRefreshTokenRequest.d.ts +22 -23
  198. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  199. package/dist/request/CommonSilentFlowRequest.d.ts +20 -21
  200. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  201. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
  202. package/dist/request/NativeRequest.d.ts +19 -19
  203. package/dist/request/NativeSignOutRequest.d.ts +5 -5
  204. package/dist/request/RequestParameterBuilder.d.ts +217 -217
  205. package/dist/request/RequestParameterBuilder.d.ts.map +1 -1
  206. package/dist/request/RequestParameterBuilder.mjs +383 -382
  207. package/dist/request/RequestParameterBuilder.mjs.map +1 -1
  208. package/dist/request/RequestValidator.d.ts +33 -33
  209. package/dist/request/RequestValidator.mjs +81 -81
  210. package/dist/request/RequestValidator.mjs.map +1 -1
  211. package/dist/request/ScopeSet.d.ts +88 -88
  212. package/dist/request/ScopeSet.mjs +197 -197
  213. package/dist/request/ScopeSet.mjs.map +1 -1
  214. package/dist/request/StoreInCache.d.ts +8 -8
  215. package/dist/response/AuthenticationResult.d.ts +41 -41
  216. package/dist/response/AuthorizationCodePayload.d.ts +13 -13
  217. package/dist/response/DeviceCodeResponse.d.ts +25 -25
  218. package/dist/response/ExternalTokenResponse.d.ts +15 -15
  219. package/dist/response/IMDSBadResponse.d.ts +4 -4
  220. package/dist/response/ResponseHandler.d.ts +69 -67
  221. package/dist/response/ResponseHandler.d.ts.map +1 -1
  222. package/dist/response/ResponseHandler.mjs +339 -313
  223. package/dist/response/ResponseHandler.mjs.map +1 -1
  224. package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
  225. package/dist/response/ServerAuthorizationTokenResponse.d.ts +46 -46
  226. package/dist/telemetry/performance/IPerformanceClient.d.ts +51 -51
  227. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
  228. package/dist/telemetry/performance/PerformanceClient.d.ts +191 -191
  229. package/dist/telemetry/performance/PerformanceClient.mjs +409 -409
  230. package/dist/telemetry/performance/PerformanceClient.mjs.map +1 -1
  231. package/dist/telemetry/performance/PerformanceEvent.d.ts +464 -464
  232. package/dist/telemetry/performance/PerformanceEvent.mjs +253 -253
  233. package/dist/telemetry/performance/PerformanceEvent.mjs.map +1 -1
  234. package/dist/telemetry/performance/StubPerformanceClient.d.ts +24 -24
  235. package/dist/telemetry/performance/StubPerformanceClient.mjs +76 -76
  236. package/dist/telemetry/performance/StubPerformanceClient.mjs.map +1 -1
  237. package/dist/telemetry/server/ServerTelemetryManager.d.ts +66 -66
  238. package/dist/telemetry/server/ServerTelemetryManager.mjs +201 -201
  239. package/dist/telemetry/server/ServerTelemetryManager.mjs.map +1 -1
  240. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
  241. package/dist/url/IUri.d.ts +12 -12
  242. package/dist/url/UrlString.d.ts +48 -48
  243. package/dist/url/UrlString.mjs +161 -161
  244. package/dist/url/UrlString.mjs.map +1 -1
  245. package/dist/utils/Constants.d.ts +296 -365
  246. package/dist/utils/Constants.d.ts.map +1 -1
  247. package/dist/utils/Constants.mjs +309 -376
  248. package/dist/utils/Constants.mjs.map +1 -1
  249. package/dist/utils/FunctionWrappers.d.ts +27 -27
  250. package/dist/utils/FunctionWrappers.mjs +84 -84
  251. package/dist/utils/FunctionWrappers.mjs.map +1 -1
  252. package/dist/utils/MsalTypes.d.ts +6 -6
  253. package/dist/utils/ProtocolUtils.d.ts +42 -42
  254. package/dist/utils/ProtocolUtils.mjs +69 -69
  255. package/dist/utils/ProtocolUtils.mjs.map +1 -1
  256. package/dist/utils/StringUtils.d.ts +40 -40
  257. package/dist/utils/StringUtils.mjs +95 -95
  258. package/dist/utils/StringUtils.mjs.map +1 -1
  259. package/dist/utils/TimeUtils.d.ts +27 -27
  260. package/dist/utils/TimeUtils.mjs +45 -45
  261. package/dist/utils/TimeUtils.mjs.map +1 -1
  262. package/dist/utils/UrlUtils.d.ts +10 -10
  263. package/dist/utils/UrlUtils.mjs +44 -44
  264. package/dist/utils/UrlUtils.mjs.map +1 -1
  265. package/package.json +93 -92
  266. package/src/account/AccountInfo.ts +96 -0
  267. package/src/account/ClientInfo.ts +2 -3
  268. package/src/account/TokenClaims.ts +28 -0
  269. package/src/authority/Authority.ts +29 -2
  270. package/src/cache/CacheManager.ts +416 -114
  271. package/src/cache/entities/AccountEntity.ts +84 -33
  272. package/src/cache/entities/RefreshTokenEntity.ts +1 -3
  273. package/src/cache/utils/CacheHelpers.ts +1 -6
  274. package/src/cache/utils/CacheTypes.ts +11 -0
  275. package/src/client/AuthorizationCodeClient.ts +4 -5
  276. package/src/client/RefreshTokenClient.ts +3 -15
  277. package/src/client/SilentFlowClient.ts +1 -1
  278. package/src/constants/AADServerParamKeys.ts +56 -0
  279. package/src/crypto/PopTokenGenerator.ts +1 -1
  280. package/src/error/InteractionRequiredAuthError.ts +0 -2
  281. package/src/error/InteractionRequiredAuthErrorCodes.ts +0 -1
  282. package/src/index.ts +17 -5
  283. package/src/packageMetadata.ts +1 -1
  284. package/src/request/CommonRefreshTokenRequest.ts +0 -1
  285. package/src/request/CommonSilentFlowRequest.ts +0 -1
  286. package/src/request/RequestParameterBuilder.ts +7 -5
  287. package/src/response/ResponseHandler.ts +95 -27
  288. package/src/utils/Constants.ts +0 -72
@@ -1,9 +1,10 @@
1
- /*! @azure/msal-common v14.4.1-beta.1 2023-11-14 */
1
+ /*! @azure/msal-common v14.5.0 2023-12-01 */
2
2
  'use strict';
3
3
  import { isOidcProtocolMode } from '../config/ClientConfiguration.mjs';
4
4
  import { BaseClient } from './BaseClient.mjs';
5
5
  import { RequestParameterBuilder } from '../request/RequestParameterBuilder.mjs';
6
- import { AADServerParamKeys, GrantType, AuthenticationScheme, HeaderNames, Errors } from '../utils/Constants.mjs';
6
+ import { GrantType, AuthenticationScheme, HeaderNames, Errors } from '../utils/Constants.mjs';
7
+ import { CLIENT_ID } from '../constants/AADServerParamKeys.mjs';
7
8
  import { ResponseHandler } from '../response/ResponseHandler.mjs';
8
9
  import { PopTokenGenerator } from '../crypto/PopTokenGenerator.mjs';
9
10
  import { StringUtils } from '../utils/StringUtils.mjs';
@@ -19,199 +20,193 @@ import { PerformanceEvents } from '../telemetry/performance/PerformanceEvent.mjs
19
20
  import { invokeAsync, invoke } from '../utils/FunctionWrappers.mjs';
20
21
  import { tokenRequestEmpty, missingSshJwk } from '../error/ClientConfigurationErrorCodes.mjs';
21
22
  import { noAccountInSilentRequest } from '../error/ClientAuthErrorCodes.mjs';
22
- import { noTokensFound, refreshTokenExpired } from '../error/InteractionRequiredAuthErrorCodes.mjs';
23
+ import { noTokensFound } from '../error/InteractionRequiredAuthErrorCodes.mjs';
23
24
 
24
- /*
25
- * Copyright (c) Microsoft Corporation. All rights reserved.
26
- * Licensed under the MIT License.
27
- */
28
- /**
29
- * OAuth2.0 refresh token client
30
- * @internal
31
- */
32
- class RefreshTokenClient extends BaseClient {
33
- constructor(configuration, performanceClient) {
34
- super(configuration, performanceClient);
35
- }
36
- async acquireToken(request) {
37
- this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientAcquireToken, request.correlationId);
38
- const reqTimestamp = TimeUtils.nowSeconds();
39
- const response = await invokeAsync(this.executeTokenRequest.bind(this), PerformanceEvents.RefreshTokenClientExecuteTokenRequest, this.logger, this.performanceClient, request.correlationId)(request, this.authority);
40
- // Retrieve requestId from response headers
41
- const requestId = response.headers?.[HeaderNames.X_MS_REQUEST_ID];
42
- const responseHandler = new ResponseHandler(this.config.authOptions.clientId, this.cacheManager, this.cryptoUtils, this.logger, this.config.serializableCache, this.config.persistencePlugin);
43
- responseHandler.validateTokenResponse(response.body);
44
- return invokeAsync(responseHandler.handleServerTokenResponse.bind(responseHandler), PerformanceEvents.HandleServerTokenResponse, this.logger, this.performanceClient, request.correlationId)(response.body, this.authority, reqTimestamp, request, undefined, undefined, true, request.forceCache, requestId, request.expiresOn);
45
- }
46
- /**
47
- * Gets cached refresh token and attaches to request, then calls acquireToken API
48
- * @param request
49
- */
50
- async acquireTokenByRefreshToken(request) {
51
- // Cannot renew token if no request object is given.
52
- if (!request) {
53
- throw createClientConfigurationError(tokenRequestEmpty);
54
- }
55
- this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientAcquireTokenByRefreshToken, request.correlationId);
56
- // We currently do not support silent flow for account === null use cases; This will be revisited for confidential flow usecases
57
- if (!request.account) {
58
- throw createClientAuthError(noAccountInSilentRequest);
59
- }
60
- // try checking if FOCI is enabled for the given application
61
- const isFOCI = this.cacheManager.isAppMetadataFOCI(request.account.environment);
62
- // if the app is part of the family, retrive a Family refresh token if present and make a refreshTokenRequest
63
- if (isFOCI) {
64
- try {
65
- return invokeAsync(this.acquireTokenWithCachedRefreshToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, this.logger, this.performanceClient, request.correlationId)(request, true);
66
- }
67
- catch (e) {
68
- const noFamilyRTInCache = e instanceof InteractionRequiredAuthError &&
69
- e.errorCode ===
70
- noTokensFound;
71
- const clientMismatchErrorWithFamilyRT = e instanceof ServerError &&
72
- e.errorCode === Errors.INVALID_GRANT_ERROR &&
73
- e.subError === Errors.CLIENT_MISMATCH_ERROR;
74
- // if family Refresh Token (FRT) cache acquisition fails or if client_mismatch error is seen with FRT, reattempt with application Refresh Token (ART)
75
- if (noFamilyRTInCache || clientMismatchErrorWithFamilyRT) {
76
- return invokeAsync(this.acquireTokenWithCachedRefreshToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, this.logger, this.performanceClient, request.correlationId)(request, false);
77
- // throw in all other cases
78
- }
79
- else {
80
- throw e;
81
- }
82
- }
83
- }
84
- // fall back to application refresh token acquisition
85
- return invokeAsync(this.acquireTokenWithCachedRefreshToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, this.logger, this.performanceClient, request.correlationId)(request, false);
86
- }
87
- /**
88
- * makes a network call to acquire tokens by exchanging RefreshToken available in userCache; throws if refresh token is not cached
89
- * @param request
90
- */
91
- async acquireTokenWithCachedRefreshToken(request, foci) {
92
- this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, request.correlationId);
93
- // fetches family RT or application RT based on FOCI value
94
- const refreshToken = invoke(this.cacheManager.getRefreshToken.bind(this.cacheManager), PerformanceEvents.CacheManagerGetRefreshToken, this.logger, this.performanceClient, request.correlationId)(request.account, foci, undefined, this.performanceClient, request.correlationId);
95
- if (!refreshToken) {
96
- throw createInteractionRequiredAuthError(noTokensFound);
97
- }
98
- if (request.enableRTExpiryCheck &&
99
- refreshToken.expiresOn &&
100
- Number(refreshToken.expiresOn) < TimeUtils.nowSeconds() + 5 * 60) {
101
- throw createInteractionRequiredAuthError(refreshTokenExpired);
102
- }
103
- // attach cached RT size to the current measurement
104
- const refreshTokenRequest = {
105
- ...request,
106
- refreshToken: refreshToken.secret,
107
- authenticationScheme: request.authenticationScheme || AuthenticationScheme.BEARER,
108
- ccsCredential: {
109
- credential: request.account.homeAccountId,
110
- type: CcsCredentialType.HOME_ACCOUNT_ID,
111
- },
112
- expiresOn: refreshToken.expiresOn,
113
- };
114
- return invokeAsync(this.acquireToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireToken, this.logger, this.performanceClient, request.correlationId)(refreshTokenRequest);
115
- }
116
- /**
117
- * Constructs the network message and makes a NW call to the underlying secure token service
118
- * @param request
119
- * @param authority
120
- */
121
- async executeTokenRequest(request, authority) {
122
- this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientExecuteTokenRequest, request.correlationId);
123
- const queryParametersString = this.createTokenQueryParameters(request);
124
- const endpoint = UrlString.appendQueryString(authority.tokenEndpoint, queryParametersString);
125
- const requestBody = await invokeAsync(this.createTokenRequestBody.bind(this), PerformanceEvents.RefreshTokenClientCreateTokenRequestBody, this.logger, this.performanceClient, request.correlationId)(request);
126
- const headers = this.createTokenRequestHeaders(request.ccsCredential);
127
- const thumbprint = {
128
- clientId: request.tokenBodyParameters?.clientId ||
129
- this.config.authOptions.clientId,
130
- authority: authority.canonicalAuthority,
131
- scopes: request.scopes,
132
- claims: request.claims,
133
- authenticationScheme: request.authenticationScheme,
134
- resourceRequestMethod: request.resourceRequestMethod,
135
- resourceRequestUri: request.resourceRequestUri,
136
- shrClaims: request.shrClaims,
137
- sshKid: request.sshKid,
138
- };
139
- return invokeAsync(this.executePostToTokenEndpoint.bind(this), PerformanceEvents.RefreshTokenClientExecutePostToTokenEndpoint, this.logger, this.performanceClient, request.correlationId)(endpoint, requestBody, headers, thumbprint, request.correlationId, PerformanceEvents.RefreshTokenClientExecutePostToTokenEndpoint);
140
- }
141
- /**
142
- * Helper function to create the token request body
143
- * @param request
144
- */
145
- async createTokenRequestBody(request) {
146
- this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientCreateTokenRequestBody, request.correlationId);
147
- const correlationId = request.correlationId;
148
- const parameterBuilder = new RequestParameterBuilder();
149
- parameterBuilder.addClientId(request.tokenBodyParameters?.[AADServerParamKeys.CLIENT_ID] ||
150
- this.config.authOptions.clientId);
151
- if (request.redirectUri) {
152
- parameterBuilder.addRedirectUri(request.redirectUri);
153
- }
154
- parameterBuilder.addScopes(request.scopes, true, this.config.authOptions.authority.options.OIDCOptions?.defaultScopes);
155
- parameterBuilder.addGrantType(GrantType.REFRESH_TOKEN_GRANT);
156
- parameterBuilder.addClientInfo();
157
- parameterBuilder.addLibraryInfo(this.config.libraryInfo);
158
- parameterBuilder.addApplicationTelemetry(this.config.telemetry.application);
159
- parameterBuilder.addThrottling();
160
- if (this.serverTelemetryManager && !isOidcProtocolMode(this.config)) {
161
- parameterBuilder.addServerTelemetry(this.serverTelemetryManager);
162
- }
163
- parameterBuilder.addCorrelationId(correlationId);
164
- parameterBuilder.addRefreshToken(request.refreshToken);
165
- if (this.config.clientCredentials.clientSecret) {
166
- parameterBuilder.addClientSecret(this.config.clientCredentials.clientSecret);
167
- }
168
- if (this.config.clientCredentials.clientAssertion) {
169
- const clientAssertion = this.config.clientCredentials.clientAssertion;
170
- parameterBuilder.addClientAssertion(clientAssertion.assertion);
171
- parameterBuilder.addClientAssertionType(clientAssertion.assertionType);
172
- }
173
- if (request.authenticationScheme === AuthenticationScheme.POP) {
174
- const popTokenGenerator = new PopTokenGenerator(this.cryptoUtils, this.performanceClient);
175
- const reqCnfData = await invokeAsync(popTokenGenerator.generateCnf.bind(popTokenGenerator), PerformanceEvents.PopTokenGenerateCnf, this.logger, this.performanceClient, request.correlationId)(request, this.logger);
176
- // SPA PoP requires full Base64Url encoded req_cnf string (unhashed)
177
- parameterBuilder.addPopToken(reqCnfData.reqCnfString);
178
- }
179
- else if (request.authenticationScheme === AuthenticationScheme.SSH) {
180
- if (request.sshJwk) {
181
- parameterBuilder.addSshJwk(request.sshJwk);
182
- }
183
- else {
184
- throw createClientConfigurationError(missingSshJwk);
185
- }
186
- }
187
- if (!StringUtils.isEmptyObj(request.claims) ||
188
- (this.config.authOptions.clientCapabilities &&
189
- this.config.authOptions.clientCapabilities.length > 0)) {
190
- parameterBuilder.addClaims(request.claims, this.config.authOptions.clientCapabilities);
191
- }
192
- if (this.config.systemOptions.preventCorsPreflight &&
193
- request.ccsCredential) {
194
- switch (request.ccsCredential.type) {
195
- case CcsCredentialType.HOME_ACCOUNT_ID:
196
- try {
197
- const clientInfo = buildClientInfoFromHomeAccountId(request.ccsCredential.credential);
198
- parameterBuilder.addCcsOid(clientInfo);
199
- }
200
- catch (e) {
201
- this.logger.verbose("Could not parse home account ID for CCS Header: " +
202
- e);
203
- }
204
- break;
205
- case CcsCredentialType.UPN:
206
- parameterBuilder.addCcsUpn(request.ccsCredential.credential);
207
- break;
208
- }
209
- }
210
- if (request.tokenBodyParameters) {
211
- parameterBuilder.addExtraQueryParameters(request.tokenBodyParameters);
212
- }
213
- return parameterBuilder.createQueryString();
214
- }
25
+ /*
26
+ * Copyright (c) Microsoft Corporation. All rights reserved.
27
+ * Licensed under the MIT License.
28
+ */
29
+ /**
30
+ * OAuth2.0 refresh token client
31
+ * @internal
32
+ */
33
+ class RefreshTokenClient extends BaseClient {
34
+ constructor(configuration, performanceClient) {
35
+ super(configuration, performanceClient);
36
+ }
37
+ async acquireToken(request) {
38
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientAcquireToken, request.correlationId);
39
+ const reqTimestamp = TimeUtils.nowSeconds();
40
+ const response = await invokeAsync(this.executeTokenRequest.bind(this), PerformanceEvents.RefreshTokenClientExecuteTokenRequest, this.logger, this.performanceClient, request.correlationId)(request, this.authority);
41
+ // Retrieve requestId from response headers
42
+ const requestId = response.headers?.[HeaderNames.X_MS_REQUEST_ID];
43
+ const responseHandler = new ResponseHandler(this.config.authOptions.clientId, this.cacheManager, this.cryptoUtils, this.logger, this.config.serializableCache, this.config.persistencePlugin);
44
+ responseHandler.validateTokenResponse(response.body);
45
+ return invokeAsync(responseHandler.handleServerTokenResponse.bind(responseHandler), PerformanceEvents.HandleServerTokenResponse, this.logger, this.performanceClient, request.correlationId)(response.body, this.authority, reqTimestamp, request, undefined, undefined, true, request.forceCache, requestId);
46
+ }
47
+ /**
48
+ * Gets cached refresh token and attaches to request, then calls acquireToken API
49
+ * @param request
50
+ */
51
+ async acquireTokenByRefreshToken(request) {
52
+ // Cannot renew token if no request object is given.
53
+ if (!request) {
54
+ throw createClientConfigurationError(tokenRequestEmpty);
55
+ }
56
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientAcquireTokenByRefreshToken, request.correlationId);
57
+ // We currently do not support silent flow for account === null use cases; This will be revisited for confidential flow usecases
58
+ if (!request.account) {
59
+ throw createClientAuthError(noAccountInSilentRequest);
60
+ }
61
+ // try checking if FOCI is enabled for the given application
62
+ const isFOCI = this.cacheManager.isAppMetadataFOCI(request.account.environment);
63
+ // if the app is part of the family, retrive a Family refresh token if present and make a refreshTokenRequest
64
+ if (isFOCI) {
65
+ try {
66
+ return await invokeAsync(this.acquireTokenWithCachedRefreshToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, this.logger, this.performanceClient, request.correlationId)(request, true);
67
+ }
68
+ catch (e) {
69
+ const noFamilyRTInCache = e instanceof InteractionRequiredAuthError &&
70
+ e.errorCode ===
71
+ noTokensFound;
72
+ const clientMismatchErrorWithFamilyRT = e instanceof ServerError &&
73
+ e.errorCode === Errors.INVALID_GRANT_ERROR &&
74
+ e.subError === Errors.CLIENT_MISMATCH_ERROR;
75
+ // if family Refresh Token (FRT) cache acquisition fails or if client_mismatch error is seen with FRT, reattempt with application Refresh Token (ART)
76
+ if (noFamilyRTInCache || clientMismatchErrorWithFamilyRT) {
77
+ return invokeAsync(this.acquireTokenWithCachedRefreshToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, this.logger, this.performanceClient, request.correlationId)(request, false);
78
+ // throw in all other cases
79
+ }
80
+ else {
81
+ throw e;
82
+ }
83
+ }
84
+ }
85
+ // fall back to application refresh token acquisition
86
+ return invokeAsync(this.acquireTokenWithCachedRefreshToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, this.logger, this.performanceClient, request.correlationId)(request, false);
87
+ }
88
+ /**
89
+ * makes a network call to acquire tokens by exchanging RefreshToken available in userCache; throws if refresh token is not cached
90
+ * @param request
91
+ */
92
+ async acquireTokenWithCachedRefreshToken(request, foci) {
93
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientAcquireTokenWithCachedRefreshToken, request.correlationId);
94
+ // fetches family RT or application RT based on FOCI value
95
+ const refreshToken = invoke(this.cacheManager.getRefreshToken.bind(this.cacheManager), PerformanceEvents.CacheManagerGetRefreshToken, this.logger, this.performanceClient, request.correlationId)(request.account, foci, undefined, this.performanceClient, request.correlationId);
96
+ if (!refreshToken) {
97
+ throw createInteractionRequiredAuthError(noTokensFound);
98
+ }
99
+ // attach cached RT size to the current measurement
100
+ const refreshTokenRequest = {
101
+ ...request,
102
+ refreshToken: refreshToken.secret,
103
+ authenticationScheme: request.authenticationScheme || AuthenticationScheme.BEARER,
104
+ ccsCredential: {
105
+ credential: request.account.homeAccountId,
106
+ type: CcsCredentialType.HOME_ACCOUNT_ID,
107
+ },
108
+ };
109
+ return invokeAsync(this.acquireToken.bind(this), PerformanceEvents.RefreshTokenClientAcquireToken, this.logger, this.performanceClient, request.correlationId)(refreshTokenRequest);
110
+ }
111
+ /**
112
+ * Constructs the network message and makes a NW call to the underlying secure token service
113
+ * @param request
114
+ * @param authority
115
+ */
116
+ async executeTokenRequest(request, authority) {
117
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientExecuteTokenRequest, request.correlationId);
118
+ const queryParametersString = this.createTokenQueryParameters(request);
119
+ const endpoint = UrlString.appendQueryString(authority.tokenEndpoint, queryParametersString);
120
+ const requestBody = await invokeAsync(this.createTokenRequestBody.bind(this), PerformanceEvents.RefreshTokenClientCreateTokenRequestBody, this.logger, this.performanceClient, request.correlationId)(request);
121
+ const headers = this.createTokenRequestHeaders(request.ccsCredential);
122
+ const thumbprint = {
123
+ clientId: request.tokenBodyParameters?.clientId ||
124
+ this.config.authOptions.clientId,
125
+ authority: authority.canonicalAuthority,
126
+ scopes: request.scopes,
127
+ claims: request.claims,
128
+ authenticationScheme: request.authenticationScheme,
129
+ resourceRequestMethod: request.resourceRequestMethod,
130
+ resourceRequestUri: request.resourceRequestUri,
131
+ shrClaims: request.shrClaims,
132
+ sshKid: request.sshKid,
133
+ };
134
+ return invokeAsync(this.executePostToTokenEndpoint.bind(this), PerformanceEvents.RefreshTokenClientExecutePostToTokenEndpoint, this.logger, this.performanceClient, request.correlationId)(endpoint, requestBody, headers, thumbprint, request.correlationId, PerformanceEvents.RefreshTokenClientExecutePostToTokenEndpoint);
135
+ }
136
+ /**
137
+ * Helper function to create the token request body
138
+ * @param request
139
+ */
140
+ async createTokenRequestBody(request) {
141
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.RefreshTokenClientCreateTokenRequestBody, request.correlationId);
142
+ const correlationId = request.correlationId;
143
+ const parameterBuilder = new RequestParameterBuilder();
144
+ parameterBuilder.addClientId(request.tokenBodyParameters?.[CLIENT_ID] ||
145
+ this.config.authOptions.clientId);
146
+ if (request.redirectUri) {
147
+ parameterBuilder.addRedirectUri(request.redirectUri);
148
+ }
149
+ parameterBuilder.addScopes(request.scopes, true, this.config.authOptions.authority.options.OIDCOptions?.defaultScopes);
150
+ parameterBuilder.addGrantType(GrantType.REFRESH_TOKEN_GRANT);
151
+ parameterBuilder.addClientInfo();
152
+ parameterBuilder.addLibraryInfo(this.config.libraryInfo);
153
+ parameterBuilder.addApplicationTelemetry(this.config.telemetry.application);
154
+ parameterBuilder.addThrottling();
155
+ if (this.serverTelemetryManager && !isOidcProtocolMode(this.config)) {
156
+ parameterBuilder.addServerTelemetry(this.serverTelemetryManager);
157
+ }
158
+ parameterBuilder.addCorrelationId(correlationId);
159
+ parameterBuilder.addRefreshToken(request.refreshToken);
160
+ if (this.config.clientCredentials.clientSecret) {
161
+ parameterBuilder.addClientSecret(this.config.clientCredentials.clientSecret);
162
+ }
163
+ if (this.config.clientCredentials.clientAssertion) {
164
+ const clientAssertion = this.config.clientCredentials.clientAssertion;
165
+ parameterBuilder.addClientAssertion(clientAssertion.assertion);
166
+ parameterBuilder.addClientAssertionType(clientAssertion.assertionType);
167
+ }
168
+ if (request.authenticationScheme === AuthenticationScheme.POP) {
169
+ const popTokenGenerator = new PopTokenGenerator(this.cryptoUtils, this.performanceClient);
170
+ const reqCnfData = await invokeAsync(popTokenGenerator.generateCnf.bind(popTokenGenerator), PerformanceEvents.PopTokenGenerateCnf, this.logger, this.performanceClient, request.correlationId)(request, this.logger);
171
+ // SPA PoP requires full Base64Url encoded req_cnf string (unhashed)
172
+ parameterBuilder.addPopToken(reqCnfData.reqCnfString);
173
+ }
174
+ else if (request.authenticationScheme === AuthenticationScheme.SSH) {
175
+ if (request.sshJwk) {
176
+ parameterBuilder.addSshJwk(request.sshJwk);
177
+ }
178
+ else {
179
+ throw createClientConfigurationError(missingSshJwk);
180
+ }
181
+ }
182
+ if (!StringUtils.isEmptyObj(request.claims) ||
183
+ (this.config.authOptions.clientCapabilities &&
184
+ this.config.authOptions.clientCapabilities.length > 0)) {
185
+ parameterBuilder.addClaims(request.claims, this.config.authOptions.clientCapabilities);
186
+ }
187
+ if (this.config.systemOptions.preventCorsPreflight &&
188
+ request.ccsCredential) {
189
+ switch (request.ccsCredential.type) {
190
+ case CcsCredentialType.HOME_ACCOUNT_ID:
191
+ try {
192
+ const clientInfo = buildClientInfoFromHomeAccountId(request.ccsCredential.credential);
193
+ parameterBuilder.addCcsOid(clientInfo);
194
+ }
195
+ catch (e) {
196
+ this.logger.verbose("Could not parse home account ID for CCS Header: " +
197
+ e);
198
+ }
199
+ break;
200
+ case CcsCredentialType.UPN:
201
+ parameterBuilder.addCcsUpn(request.ccsCredential.credential);
202
+ break;
203
+ }
204
+ }
205
+ if (request.tokenBodyParameters) {
206
+ parameterBuilder.addExtraQueryParameters(request.tokenBodyParameters);
207
+ }
208
+ return parameterBuilder.createQueryString();
209
+ }
215
210
  }
216
211
 
217
212
  export { RefreshTokenClient };
@@ -1 +1 @@
1
- {"version":3,"file":"RefreshTokenClient.mjs","sources":["../../src/client/RefreshTokenClient.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAKA;AAIA;AACA;AAYA;AAsKO;;AA+DH;;;;AAIG,QAAA,KAAA,CAAA,aAAA,EAAA,iBAAA,CAAA,CAAA;;AAwDH,IAAA,MAAA,YAAA,CAAA,OAAA,EAAA;;;AAGG,QAAA,MAAA,QAAA,GAAA,MAAA,WAAA,CAAA,IAAA,CAAA,mBAAA,CAAA,IAAA,CAAA,IAAA,CAAA,EAAA,iBAAA,CAAA,qCAAA,EAAA,IAAA,CAAA,MAAA,EAAA,IAAA,CAAA,iBAAA,EAAA,OAAA,CAAA,aAAA,CAAA,CAAA,OAAA,EAAA,IAAA,CAAA,SAAA,CAAA,CAAA;;AAiIN,QAAA,MAAA,SAAA,GAAA,QAAA,CAAA,OAAA,GAAA,WAAA,CAAA,eAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"RefreshTokenClient.mjs","sources":["../../src/client/RefreshTokenClient.ts"],"sourcesContent":[null],"names":["ClientConfigurationErrorCodes.tokenRequestEmpty","ClientAuthErrorCodes.noAccountInSilentRequest","InteractionRequiredAuthErrorCodes.noTokensFound","AADServerParamKeys.CLIENT_ID","ClientConfigurationErrorCodes.missingSshJwk"],"mappings":"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"}
@@ -1,28 +1,28 @@
1
- import { BaseClient } from "./BaseClient";
2
- import { ClientConfiguration } from "../config/ClientConfiguration";
3
- import { CommonSilentFlowRequest } from "../request/CommonSilentFlowRequest";
4
- import { AuthenticationResult } from "../response/AuthenticationResult";
5
- import { CacheOutcome } from "../utils/Constants";
6
- import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
7
- /** @internal */
8
- export declare class SilentFlowClient extends BaseClient {
9
- constructor(configuration: ClientConfiguration, performanceClient?: IPerformanceClient);
10
- /**
11
- * Retrieves a token from cache if it is still valid, or uses the cached refresh token to renew
12
- * the given token and returns the renewed token
13
- * @param request
14
- */
15
- acquireToken(request: CommonSilentFlowRequest): Promise<AuthenticationResult>;
16
- /**
17
- * Retrieves token from cache or throws an error if it must be refreshed.
18
- * @param request
19
- */
20
- acquireCachedToken(request: CommonSilentFlowRequest): Promise<[AuthenticationResult, CacheOutcome]>;
21
- private setCacheOutcome;
22
- /**
23
- * Helper function to build response object from the CacheRecord
24
- * @param cacheRecord
25
- */
26
- private generateResultFromCacheRecord;
27
- }
1
+ import { BaseClient } from "./BaseClient";
2
+ import { ClientConfiguration } from "../config/ClientConfiguration";
3
+ import { CommonSilentFlowRequest } from "../request/CommonSilentFlowRequest";
4
+ import { AuthenticationResult } from "../response/AuthenticationResult";
5
+ import { CacheOutcome } from "../utils/Constants";
6
+ import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
7
+ /** @internal */
8
+ export declare class SilentFlowClient extends BaseClient {
9
+ constructor(configuration: ClientConfiguration, performanceClient?: IPerformanceClient);
10
+ /**
11
+ * Retrieves a token from cache if it is still valid, or uses the cached refresh token to renew
12
+ * the given token and returns the renewed token
13
+ * @param request
14
+ */
15
+ acquireToken(request: CommonSilentFlowRequest): Promise<AuthenticationResult>;
16
+ /**
17
+ * Retrieves token from cache or throws an error if it must be refreshed.
18
+ * @param request
19
+ */
20
+ acquireCachedToken(request: CommonSilentFlowRequest): Promise<[AuthenticationResult, CacheOutcome]>;
21
+ private setCacheOutcome;
22
+ /**
23
+ * Helper function to build response object from the CacheRecord
24
+ * @param cacheRecord
25
+ */
26
+ private generateResultFromCacheRecord;
27
+ }
28
28
  //# sourceMappingURL=SilentFlowClient.d.ts.map