@azure/msal-common 14.3.0 → 14.4.1-beta.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 (246) hide show
  1. package/dist/account/AccountInfo.d.ts +31 -31
  2. package/dist/account/AuthToken.d.ts +17 -17
  3. package/dist/account/AuthToken.mjs +58 -58
  4. package/dist/account/CcsCredential.d.ts +9 -9
  5. package/dist/account/CcsCredential.mjs +8 -8
  6. package/dist/account/ClientCredentials.d.ts +14 -14
  7. package/dist/account/ClientInfo.d.ts +19 -19
  8. package/dist/account/ClientInfo.mjs +37 -37
  9. package/dist/account/TokenClaims.d.ts +65 -65
  10. package/dist/authority/Authority.d.ts +249 -249
  11. package/dist/authority/Authority.d.ts.map +1 -1
  12. package/dist/authority/Authority.mjs +788 -789
  13. package/dist/authority/Authority.mjs.map +1 -1
  14. package/dist/authority/AuthorityFactory.d.ts +31 -31
  15. package/dist/authority/AuthorityFactory.mjs +47 -47
  16. package/dist/authority/AuthorityMetadata.d.ts +503 -503
  17. package/dist/authority/AuthorityMetadata.mjs +603 -603
  18. package/dist/authority/AuthorityOptions.d.ts +27 -27
  19. package/dist/authority/AuthorityOptions.mjs +18 -18
  20. package/dist/authority/AuthorityType.d.ts +10 -10
  21. package/dist/authority/AuthorityType.mjs +13 -13
  22. package/dist/authority/AzureRegion.d.ts +1 -1
  23. package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
  24. package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
  25. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
  26. package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs +8 -8
  27. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
  28. package/dist/authority/CloudInstanceDiscoveryResponse.mjs +8 -8
  29. package/dist/authority/ImdsOptions.d.ts +5 -5
  30. package/dist/authority/OIDCOptions.d.ts +8 -8
  31. package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
  32. package/dist/authority/OpenIdConfigResponse.mjs +10 -10
  33. package/dist/authority/ProtocolMode.d.ts +8 -8
  34. package/dist/authority/ProtocolMode.mjs +11 -11
  35. package/dist/authority/RegionDiscovery.d.ts +32 -32
  36. package/dist/authority/RegionDiscovery.mjs +106 -106
  37. package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
  38. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
  39. package/dist/cache/CacheManager.d.ts +485 -480
  40. package/dist/cache/CacheManager.d.ts.map +1 -1
  41. package/dist/cache/CacheManager.mjs +1102 -1089
  42. package/dist/cache/CacheManager.mjs.map +1 -1
  43. package/dist/cache/entities/AccessTokenEntity.d.ts +25 -25
  44. package/dist/cache/entities/AccountEntity.d.ts +101 -101
  45. package/dist/cache/entities/AccountEntity.mjs +218 -218
  46. package/dist/cache/entities/AppMetadataEntity.d.ts +39 -39
  47. package/dist/cache/entities/AppMetadataEntity.mjs +66 -66
  48. package/dist/cache/entities/AuthorityMetadataEntity.d.ts +48 -48
  49. package/dist/cache/entities/AuthorityMetadataEntity.mjs +78 -78
  50. package/dist/cache/entities/CacheRecord.d.ts +14 -14
  51. package/dist/cache/entities/CacheRecord.mjs +14 -14
  52. package/dist/cache/entities/CredentialEntity.d.ts +30 -30
  53. package/dist/cache/entities/IdTokenEntity.d.ts +8 -8
  54. package/dist/cache/entities/RefreshTokenEntity.d.ts +7 -5
  55. package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -1
  56. package/dist/cache/entities/ServerTelemetryEntity.d.ts +5 -12
  57. package/dist/cache/entities/ServerTelemetryEntity.d.ts.map +1 -1
  58. package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
  59. package/dist/cache/entities/ThrottlingEntity.mjs +23 -23
  60. package/dist/cache/interface/ICacheManager.d.ts +166 -166
  61. package/dist/cache/interface/ICachePlugin.d.ts +5 -5
  62. package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
  63. package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
  64. package/dist/cache/persistence/TokenCacheContext.mjs +25 -25
  65. package/dist/cache/utils/CacheHelpers.d.ts +64 -58
  66. package/dist/cache/utils/CacheHelpers.d.ts.map +1 -1
  67. package/dist/cache/utils/CacheHelpers.mjs +236 -217
  68. package/dist/cache/utils/CacheHelpers.mjs.map +1 -1
  69. package/dist/cache/utils/CacheTypes.d.ts +67 -67
  70. package/dist/client/AuthorizationCodeClient.d.ts +74 -73
  71. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  72. package/dist/client/AuthorizationCodeClient.mjs +402 -408
  73. package/dist/client/AuthorizationCodeClient.mjs.map +1 -1
  74. package/dist/client/BaseClient.d.ts +51 -51
  75. package/dist/client/BaseClient.mjs +100 -100
  76. package/dist/client/RefreshTokenClient.d.ts +35 -35
  77. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  78. package/dist/client/RefreshTokenClient.mjs +193 -187
  79. package/dist/client/RefreshTokenClient.mjs.map +1 -1
  80. package/dist/client/SilentFlowClient.d.ts +27 -27
  81. package/dist/client/SilentFlowClient.d.ts.map +1 -1
  82. package/dist/client/SilentFlowClient.mjs +118 -116
  83. package/dist/client/SilentFlowClient.mjs.map +1 -1
  84. package/dist/config/AppTokenProvider.d.ts +38 -38
  85. package/dist/config/ClientConfiguration.d.ts +150 -150
  86. package/dist/config/ClientConfiguration.mjs +97 -97
  87. package/dist/crypto/ICrypto.d.ts +58 -58
  88. package/dist/crypto/ICrypto.d.ts.map +1 -1
  89. package/dist/crypto/ICrypto.mjs +30 -30
  90. package/dist/crypto/ICrypto.mjs.map +1 -1
  91. package/dist/crypto/IGuidGenerator.d.ts +4 -4
  92. package/dist/crypto/JoseHeader.d.ts +22 -22
  93. package/dist/crypto/JoseHeader.d.ts.map +1 -1
  94. package/dist/crypto/JoseHeader.mjs +38 -38
  95. package/dist/crypto/JoseHeader.mjs.map +1 -1
  96. package/dist/crypto/PopTokenGenerator.d.ts +60 -60
  97. package/dist/crypto/PopTokenGenerator.d.ts.map +1 -1
  98. package/dist/crypto/PopTokenGenerator.mjs +82 -82
  99. package/dist/crypto/PopTokenGenerator.mjs.map +1 -1
  100. package/dist/crypto/SignedHttpRequest.d.ts +15 -11
  101. package/dist/crypto/SignedHttpRequest.d.ts.map +1 -1
  102. package/dist/error/AuthError.d.ts +44 -44
  103. package/dist/error/AuthError.mjs +46 -46
  104. package/dist/error/AuthErrorCodes.d.ts +5 -5
  105. package/dist/error/AuthErrorCodes.mjs +9 -9
  106. package/dist/error/ClientAuthError.d.ts +237 -237
  107. package/dist/error/ClientAuthError.mjs +249 -249
  108. package/dist/error/ClientAuthErrorCodes.d.ts +44 -44
  109. package/dist/error/ClientAuthErrorCodes.mjs +48 -48
  110. package/dist/error/ClientConfigurationError.d.ts +128 -128
  111. package/dist/error/ClientConfigurationError.mjs +135 -135
  112. package/dist/error/ClientConfigurationErrorCodes.d.ts +22 -22
  113. package/dist/error/ClientConfigurationErrorCodes.mjs +26 -26
  114. package/dist/error/InteractionRequiredAuthError.d.ts +57 -57
  115. package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
  116. package/dist/error/InteractionRequiredAuthError.mjs +78 -77
  117. package/dist/error/InteractionRequiredAuthError.mjs.map +1 -1
  118. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts +6 -5
  119. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts.map +1 -1
  120. package/dist/error/InteractionRequiredAuthErrorCodes.mjs +13 -12
  121. package/dist/error/InteractionRequiredAuthErrorCodes.mjs.map +1 -1
  122. package/dist/error/JoseHeaderError.d.ts +15 -15
  123. package/dist/error/JoseHeaderError.mjs +22 -22
  124. package/dist/error/JoseHeaderErrorCodes.d.ts +2 -2
  125. package/dist/error/JoseHeaderErrorCodes.mjs +6 -6
  126. package/dist/error/ServerError.d.ts +7 -7
  127. package/dist/error/ServerError.mjs +14 -14
  128. package/dist/index.cjs +8300 -8350
  129. package/dist/index.cjs.map +1 -1
  130. package/dist/index.d.ts +98 -97
  131. package/dist/index.d.ts.map +1 -1
  132. package/dist/index.mjs +4 -3
  133. package/dist/index.mjs.map +1 -1
  134. package/dist/logger/Logger.d.ts +95 -95
  135. package/dist/logger/Logger.mjs +188 -188
  136. package/dist/network/INetworkModule.d.ts +29 -29
  137. package/dist/network/INetworkModule.mjs +12 -12
  138. package/dist/network/NetworkManager.d.ts +33 -33
  139. package/dist/network/NetworkManager.mjs +34 -34
  140. package/dist/network/RequestThumbprint.d.ts +18 -16
  141. package/dist/network/RequestThumbprint.d.ts.map +1 -1
  142. package/dist/network/ThrottlingUtils.d.ts +42 -42
  143. package/dist/network/ThrottlingUtils.mjs +95 -95
  144. package/dist/packageMetadata.d.ts +2 -2
  145. package/dist/packageMetadata.mjs +4 -4
  146. package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
  147. package/dist/request/AuthenticationHeaderParser.mjs +55 -55
  148. package/dist/request/BaseAuthRequest.d.ts +43 -40
  149. package/dist/request/BaseAuthRequest.d.ts.map +1 -1
  150. package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
  151. package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
  152. package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
  153. package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
  154. package/dist/request/CommonEndSessionRequest.d.ts +21 -21
  155. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
  156. package/dist/request/CommonRefreshTokenRequest.d.ts +23 -22
  157. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  158. package/dist/request/CommonSilentFlowRequest.d.ts +21 -20
  159. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  160. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
  161. package/dist/request/NativeRequest.d.ts +19 -19
  162. package/dist/request/NativeSignOutRequest.d.ts +5 -5
  163. package/dist/request/RequestParameterBuilder.d.ts +217 -217
  164. package/dist/request/RequestParameterBuilder.mjs +381 -381
  165. package/dist/request/RequestValidator.d.ts +33 -33
  166. package/dist/request/RequestValidator.mjs +81 -81
  167. package/dist/request/ScopeSet.d.ts +88 -88
  168. package/dist/request/ScopeSet.mjs +197 -197
  169. package/dist/request/StoreInCache.d.ts +8 -8
  170. package/dist/response/AuthenticationResult.d.ts +41 -41
  171. package/dist/response/AuthorizationCodePayload.d.ts +13 -13
  172. package/dist/response/DeviceCodeResponse.d.ts +25 -25
  173. package/dist/response/ExternalTokenResponse.d.ts +15 -15
  174. package/dist/response/IMDSBadResponse.d.ts +4 -4
  175. package/dist/response/ResponseHandler.d.ts +67 -67
  176. package/dist/response/ResponseHandler.d.ts.map +1 -1
  177. package/dist/response/ResponseHandler.mjs +312 -312
  178. package/dist/response/ResponseHandler.mjs.map +1 -1
  179. package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
  180. package/dist/response/ServerAuthorizationTokenResponse.d.ts +46 -46
  181. package/dist/telemetry/performance/IPerformanceClient.d.ts +51 -51
  182. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
  183. package/dist/telemetry/performance/PerformanceClient.d.ts +191 -191
  184. package/dist/telemetry/performance/PerformanceClient.mjs +409 -409
  185. package/dist/telemetry/performance/PerformanceEvent.d.ts +464 -457
  186. package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -1
  187. package/dist/telemetry/performance/PerformanceEvent.mjs +253 -249
  188. package/dist/telemetry/performance/PerformanceEvent.mjs.map +1 -1
  189. package/dist/telemetry/performance/StubPerformanceClient.d.ts +24 -24
  190. package/dist/telemetry/performance/StubPerformanceClient.mjs +76 -76
  191. package/dist/telemetry/server/ServerTelemetryManager.d.ts +66 -66
  192. package/dist/telemetry/server/ServerTelemetryManager.d.ts.map +1 -1
  193. package/dist/telemetry/server/ServerTelemetryManager.mjs +201 -198
  194. package/dist/telemetry/server/ServerTelemetryManager.mjs.map +1 -1
  195. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
  196. package/dist/url/IUri.d.ts +12 -12
  197. package/dist/url/UrlString.d.ts +48 -83
  198. package/dist/url/UrlString.d.ts.map +1 -1
  199. package/dist/url/UrlString.mjs +163 -282
  200. package/dist/url/UrlString.mjs.map +1 -1
  201. package/dist/utils/Constants.d.ts +365 -366
  202. package/dist/utils/Constants.d.ts.map +1 -1
  203. package/dist/utils/Constants.mjs +376 -377
  204. package/dist/utils/Constants.mjs.map +1 -1
  205. package/dist/utils/FunctionWrappers.d.ts +27 -27
  206. package/dist/utils/FunctionWrappers.mjs +84 -84
  207. package/dist/utils/MsalTypes.d.ts +6 -6
  208. package/dist/utils/ProtocolUtils.d.ts +42 -42
  209. package/dist/utils/ProtocolUtils.mjs +69 -69
  210. package/dist/utils/StringUtils.d.ts +40 -40
  211. package/dist/utils/StringUtils.mjs +95 -95
  212. package/dist/utils/TimeUtils.d.ts +27 -27
  213. package/dist/utils/TimeUtils.mjs +45 -45
  214. package/dist/utils/UrlUtils.d.ts +11 -0
  215. package/dist/utils/UrlUtils.d.ts.map +1 -0
  216. package/dist/utils/UrlUtils.mjs +52 -0
  217. package/dist/utils/UrlUtils.mjs.map +1 -0
  218. package/package.json +92 -92
  219. package/src/authority/Authority.ts +2 -3
  220. package/src/cache/CacheManager.ts +63 -22
  221. package/src/cache/entities/RefreshTokenEntity.ts +3 -1
  222. package/src/cache/entities/ServerTelemetryEntity.ts +2 -30
  223. package/src/cache/utils/CacheHelpers.ts +27 -1
  224. package/src/client/AuthorizationCodeClient.ts +5 -14
  225. package/src/client/RefreshTokenClient.ts +20 -2
  226. package/src/client/SilentFlowClient.ts +8 -4
  227. package/src/crypto/ICrypto.ts +7 -2
  228. package/src/crypto/JoseHeader.ts +4 -4
  229. package/src/crypto/PopTokenGenerator.ts +2 -0
  230. package/src/crypto/SignedHttpRequest.ts +6 -0
  231. package/src/error/InteractionRequiredAuthError.ts +2 -0
  232. package/src/error/InteractionRequiredAuthErrorCodes.ts +1 -0
  233. package/src/index.ts +3 -1
  234. package/src/network/RequestThumbprint.ts +2 -0
  235. package/src/packageMetadata.ts +1 -1
  236. package/src/request/BaseAuthRequest.ts +3 -0
  237. package/src/request/CommonRefreshTokenRequest.ts +1 -0
  238. package/src/request/CommonSilentFlowRequest.ts +1 -0
  239. package/src/response/ResponseHandler.ts +8 -4
  240. package/src/telemetry/performance/PerformanceEvent.ts +12 -1
  241. package/src/telemetry/server/ServerTelemetryManager.ts +12 -6
  242. package/src/url/UrlString.ts +6 -153
  243. package/src/utils/Constants.ts +3 -3
  244. package/src/utils/UrlUtils.ts +60 -0
  245. package/dist/cache/entities/ServerTelemetryEntity.mjs +0 -34
  246. package/dist/cache/entities/ServerTelemetryEntity.mjs.map +0 -1
@@ -1,481 +1,486 @@
1
- import { AccountFilter, CredentialFilter, ValidCredentialType, AppMetadataFilter, AppMetadataCache, TokenKeys } from "./utils/CacheTypes";
2
- import { CacheRecord } from "./entities/CacheRecord";
3
- import { AccountEntity } from "./entities/AccountEntity";
4
- import { AccessTokenEntity } from "./entities/AccessTokenEntity";
5
- import { IdTokenEntity } from "./entities/IdTokenEntity";
6
- import { RefreshTokenEntity } from "./entities/RefreshTokenEntity";
7
- import { ICacheManager } from "./interface/ICacheManager";
8
- import { AccountInfo } from "../account/AccountInfo";
9
- import { AppMetadataEntity } from "./entities/AppMetadataEntity";
10
- import { ServerTelemetryEntity } from "./entities/ServerTelemetryEntity";
11
- import { ThrottlingEntity } from "./entities/ThrottlingEntity";
12
- import { ICrypto } from "../crypto/ICrypto";
13
- import { AuthorityMetadataEntity } from "./entities/AuthorityMetadataEntity";
14
- import { BaseAuthRequest } from "../request/BaseAuthRequest";
15
- import { Logger } from "../logger/Logger";
16
- import { StoreInCache } from "../request/StoreInCache";
17
- import { StaticAuthorityOptions } from "../authority/AuthorityOptions";
18
- /**
19
- * Interface class which implement cache storage functions used by MSAL to perform validity checks, and store tokens.
20
- * @internal
21
- */
22
- export declare abstract class CacheManager implements ICacheManager {
23
- protected clientId: string;
24
- protected cryptoImpl: ICrypto;
25
- private commonLogger;
26
- private staticAuthorityOptions?;
27
- constructor(clientId: string, cryptoImpl: ICrypto, logger: Logger, staticAuthorityOptions?: StaticAuthorityOptions);
28
- /**
29
- * fetch the account entity from the platform cache
30
- * @param accountKey
31
- */
32
- abstract getAccount(accountKey: string): AccountEntity | null;
33
- /**
34
- * set account entity in the platform cache
35
- * @param account
36
- */
37
- abstract setAccount(account: AccountEntity): void;
38
- /**
39
- * fetch the idToken entity from the platform cache
40
- * @param idTokenKey
41
- */
42
- abstract getIdTokenCredential(idTokenKey: string): IdTokenEntity | null;
43
- /**
44
- * set idToken entity to the platform cache
45
- * @param idToken
46
- */
47
- abstract setIdTokenCredential(idToken: IdTokenEntity): void;
48
- /**
49
- * fetch the idToken entity from the platform cache
50
- * @param accessTokenKey
51
- */
52
- abstract getAccessTokenCredential(accessTokenKey: string): AccessTokenEntity | null;
53
- /**
54
- * set idToken entity to the platform cache
55
- * @param accessToken
56
- */
57
- abstract setAccessTokenCredential(accessToken: AccessTokenEntity): void;
58
- /**
59
- * fetch the idToken entity from the platform cache
60
- * @param refreshTokenKey
61
- */
62
- abstract getRefreshTokenCredential(refreshTokenKey: string): RefreshTokenEntity | null;
63
- /**
64
- * set idToken entity to the platform cache
65
- * @param refreshToken
66
- */
67
- abstract setRefreshTokenCredential(refreshToken: RefreshTokenEntity): void;
68
- /**
69
- * fetch appMetadata entity from the platform cache
70
- * @param appMetadataKey
71
- */
72
- abstract getAppMetadata(appMetadataKey: string): AppMetadataEntity | null;
73
- /**
74
- * set appMetadata entity to the platform cache
75
- * @param appMetadata
76
- */
77
- abstract setAppMetadata(appMetadata: AppMetadataEntity): void;
78
- /**
79
- * fetch server telemetry entity from the platform cache
80
- * @param serverTelemetryKey
81
- */
82
- abstract getServerTelemetry(serverTelemetryKey: string): ServerTelemetryEntity | null;
83
- /**
84
- * set server telemetry entity to the platform cache
85
- * @param serverTelemetryKey
86
- * @param serverTelemetry
87
- */
88
- abstract setServerTelemetry(serverTelemetryKey: string, serverTelemetry: ServerTelemetryEntity): void;
89
- /**
90
- * fetch cloud discovery metadata entity from the platform cache
91
- * @param key
92
- */
93
- abstract getAuthorityMetadata(key: string): AuthorityMetadataEntity | null;
94
- /**
95
- *
96
- */
97
- abstract getAuthorityMetadataKeys(): Array<string>;
98
- /**
99
- * set cloud discovery metadata entity to the platform cache
100
- * @param key
101
- * @param value
102
- */
103
- abstract setAuthorityMetadata(key: string, value: AuthorityMetadataEntity): void;
104
- /**
105
- * fetch throttling entity from the platform cache
106
- * @param throttlingCacheKey
107
- */
108
- abstract getThrottlingCache(throttlingCacheKey: string): ThrottlingEntity | null;
109
- /**
110
- * set throttling entity to the platform cache
111
- * @param throttlingCacheKey
112
- * @param throttlingCache
113
- */
114
- abstract setThrottlingCache(throttlingCacheKey: string, throttlingCache: ThrottlingEntity): void;
115
- /**
116
- * Function to remove an item from cache given its key.
117
- * @param key
118
- */
119
- abstract removeItem(key: string): void;
120
- /**
121
- * Function which returns boolean whether cache contains a specific key.
122
- * @param key
123
- */
124
- abstract containsKey(key: string, type?: string): boolean;
125
- /**
126
- * Function which retrieves all current keys from the cache.
127
- */
128
- abstract getKeys(): string[];
129
- /**
130
- * Function which retrieves all account keys from the cache
131
- */
132
- abstract getAccountKeys(): string[];
133
- /**
134
- * Function which retrieves all token keys from the cache
135
- */
136
- abstract getTokenKeys(): TokenKeys;
137
- /**
138
- * Function which clears cache.
139
- */
140
- abstract clear(): Promise<void>;
141
- /**
142
- * Function which updates an outdated credential cache key
143
- */
144
- abstract updateCredentialCacheKey(currentCacheKey: string, credential: ValidCredentialType): string;
145
- /**
146
- * Returns all the accounts in the cache that match the optional filter. If no filter is provided, all accounts are returned.
147
- * @param accountFilter - (Optional) filter to narrow down the accounts returned
148
- * @returns Array of AccountInfo objects in cache
149
- */
150
- getAllAccounts(accountFilter?: AccountFilter): AccountInfo[];
151
- /**
152
- * Gets accountInfo object based on provided filters
153
- */
154
- getAccountInfoFilteredBy(accountFilter: AccountFilter): AccountInfo | null;
155
- /**
156
- * Returns a single matching
157
- * @param accountFilter
158
- * @returns
159
- */
160
- getBaseAccountInfo(accountFilter: AccountFilter): AccountInfo | null;
161
- private getAccountInfoFromEntity;
162
- private idTokenClaimsMatchAccountFilter;
163
- /**
164
- * saves a cache record
165
- * @param cacheRecord
166
- */
167
- saveCacheRecord(cacheRecord: CacheRecord, storeInCache?: StoreInCache): Promise<void>;
168
- /**
169
- * saves access token credential
170
- * @param credential
171
- */
172
- private saveAccessToken;
173
- /**
174
- * Retrieve accounts matching all provided filters; if no filter is set, get all accounts
175
- * Not checking for casing as keys are all generated in lower case, remember to convert to lower case if object properties are compared
176
- * @param accountFilter - An object containing Account properties to filter by
177
- */
178
- getAccountsFilteredBy(accountFilter: AccountFilter): AccountEntity[];
179
- /**
180
- * Returns true if the given key matches our account key schema. Also matches homeAccountId and/or tenantId if provided
181
- * @param key
182
- * @param homeAccountId
183
- * @param tenantId
184
- * @returns
185
- */
186
- isAccountKey(key: string, homeAccountId?: string, tenantId?: string): boolean;
187
- /**
188
- * Returns true if the given key matches our credential key schema.
189
- * @param key
190
- */
191
- isCredentialKey(key: string): boolean;
192
- /**
193
- * Returns whether or not the given credential entity matches the filter
194
- * @param entity
195
- * @param filter
196
- * @returns
197
- */
198
- credentialMatchesFilter(entity: ValidCredentialType, filter: CredentialFilter): boolean;
199
- /**
200
- * retrieve appMetadata matching all provided filters; if no filter is set, get all appMetadata
201
- * @param filter
202
- */
203
- getAppMetadataFilteredBy(filter: AppMetadataFilter): AppMetadataCache;
204
- /**
205
- * Support function to help match appMetadata
206
- * @param environment
207
- * @param clientId
208
- */
209
- private getAppMetadataFilteredByInternal;
210
- /**
211
- * retrieve authorityMetadata that contains a matching alias
212
- * @param filter
213
- */
214
- getAuthorityMetadataByAlias(host: string): AuthorityMetadataEntity | null;
215
- /**
216
- * Removes all accounts and related tokens from cache.
217
- */
218
- removeAllAccounts(): Promise<void>;
219
- /**
220
- * Removes the account and related tokens for a given account key
221
- * @param account
222
- */
223
- removeAccount(accountKey: string): Promise<void>;
224
- /**
225
- * Removes credentials associated with the provided account
226
- * @param account
227
- */
228
- removeAccountContext(account: AccountEntity): Promise<void>;
229
- /**
230
- * returns a boolean if the given credential is removed
231
- * @param credential
232
- */
233
- removeAccessToken(key: string): Promise<void>;
234
- /**
235
- * Removes all app metadata objects from cache.
236
- */
237
- removeAppMetadata(): boolean;
238
- /**
239
- * Retrieve the cached credentials into a cacherecord
240
- * @param account
241
- * @param clientId
242
- * @param scopes
243
- * @param environment
244
- * @param authScheme
245
- */
246
- readCacheRecord(account: AccountInfo, request: BaseAuthRequest, environment: string): CacheRecord;
247
- /**
248
- * Retrieve AccountEntity from cache
249
- * @param account
250
- */
251
- readAccountFromCache(account: AccountInfo): AccountEntity | null;
252
- /**
253
- * Retrieve IdTokenEntity from cache
254
- * @param clientId
255
- * @param account
256
- * @param inputRealm
257
- */
258
- getIdToken(account: AccountInfo, tokenKeys?: TokenKeys): IdTokenEntity | null;
259
- /**
260
- * Gets all idTokens matching the given filter
261
- * @param filter
262
- * @returns
263
- */
264
- getIdTokensByFilter(filter: CredentialFilter, tokenKeys?: TokenKeys): IdTokenEntity[];
265
- /**
266
- * Validate the cache key against filter before retrieving and parsing cache value
267
- * @param key
268
- * @param filter
269
- * @returns
270
- */
271
- idTokenKeyMatchesFilter(inputKey: string, filter: CredentialFilter): boolean;
272
- /**
273
- * Removes idToken from the cache
274
- * @param key
275
- */
276
- removeIdToken(key: string): void;
277
- /**
278
- * Removes refresh token from the cache
279
- * @param key
280
- */
281
- removeRefreshToken(key: string): void;
282
- /**
283
- * Retrieve AccessTokenEntity from cache
284
- * @param clientId
285
- * @param account
286
- * @param scopes
287
- * @param authScheme
288
- */
289
- getAccessToken(account: AccountInfo, request: BaseAuthRequest, tokenKeys?: TokenKeys): AccessTokenEntity | null;
290
- /**
291
- * Validate the cache key against filter before retrieving and parsing cache value
292
- * @param key
293
- * @param filter
294
- * @param keyMustContainAllScopes
295
- * @returns
296
- */
297
- accessTokenKeyMatchesFilter(inputKey: string, filter: CredentialFilter, keyMustContainAllScopes: boolean): boolean;
298
- /**
299
- * Gets all access tokens matching the filter
300
- * @param filter
301
- * @returns
302
- */
303
- getAccessTokensByFilter(filter: CredentialFilter): AccessTokenEntity[];
304
- /**
305
- * Helper to retrieve the appropriate refresh token from cache
306
- * @param clientId
307
- * @param account
308
- * @param familyRT
309
- */
310
- getRefreshToken(account: AccountInfo, familyRT: boolean, tokenKeys?: TokenKeys): RefreshTokenEntity | null;
311
- /**
312
- * Validate the cache key against filter before retrieving and parsing cache value
313
- * @param key
314
- * @param filter
315
- */
316
- refreshTokenKeyMatchesFilter(inputKey: string, filter: CredentialFilter): boolean;
317
- /**
318
- * Retrieve AppMetadataEntity from cache
319
- */
320
- readAppMetadataFromCache(environment: string): AppMetadataEntity | null;
321
- /**
322
- * Return the family_id value associated with FOCI
323
- * @param environment
324
- * @param clientId
325
- */
326
- isAppMetadataFOCI(environment: string): boolean;
327
- /**
328
- * helper to match account ids
329
- * @param value
330
- * @param homeAccountId
331
- */
332
- private matchHomeAccountId;
333
- /**
334
- * helper to match account ids
335
- * @param entity
336
- * @param localAccountId
337
- * @returns
338
- */
339
- private matchLocalAccountId;
340
- /**
341
- * helper to match usernames
342
- * @param entity
343
- * @param username
344
- * @returns
345
- */
346
- private matchUsername;
347
- /**
348
- * helper to match names
349
- * @param entity
350
- * @param name
351
- * @returns true if the downcased name properties are present and match in the filter and the entity
352
- */
353
- private matchName;
354
- /**
355
- * helper to match assertion
356
- * @param value
357
- * @param oboAssertion
358
- */
359
- private matchUserAssertionHash;
360
- /**
361
- * helper to match environment
362
- * @param value
363
- * @param environment
364
- */
365
- private matchEnvironment;
366
- /**
367
- * helper to match credential type
368
- * @param entity
369
- * @param credentialType
370
- */
371
- private matchCredentialType;
372
- /**
373
- * helper to match client ids
374
- * @param entity
375
- * @param clientId
376
- */
377
- private matchClientId;
378
- /**
379
- * helper to match family ids
380
- * @param entity
381
- * @param familyId
382
- */
383
- private matchFamilyId;
384
- /**
385
- * helper to match realm
386
- * @param entity
387
- * @param realm
388
- */
389
- private matchRealm;
390
- /**
391
- * helper to match nativeAccountId
392
- * @param entity
393
- * @param nativeAccountId
394
- * @returns boolean indicating the match result
395
- */
396
- private matchNativeAccountId;
397
- /**
398
- * helper to match loginHint which can be either:
399
- * 1. login_hint ID token claim
400
- * 2. username in cached account object
401
- * 3. upn in ID token claims
402
- * @param entity
403
- * @param loginHint
404
- * @returns
405
- */
406
- private matchLoginHint;
407
- /**
408
- * Helper to match sid
409
- * @param idTokenClaims
410
- * @param sid
411
- * @returns true if the sid claim is present and matches the filter
412
- */
413
- private matchSid;
414
- private matchAuthorityType;
415
- /**
416
- * Returns true if the target scopes are a subset of the current entity's scopes, false otherwise.
417
- * @param entity
418
- * @param target
419
- */
420
- private matchTarget;
421
- /**
422
- * Returns true if the credential's tokenType or Authentication Scheme matches the one in the request, false otherwise
423
- * @param entity
424
- * @param tokenType
425
- */
426
- private matchTokenType;
427
- /**
428
- * Returns true if the credential's keyId matches the one in the request, false otherwise
429
- * @param entity
430
- * @param tokenType
431
- */
432
- private matchKeyId;
433
- /**
434
- * returns if a given cache entity is of the type appmetadata
435
- * @param key
436
- */
437
- private isAppMetadata;
438
- /**
439
- * returns if a given cache entity is of the type authoritymetadata
440
- * @param key
441
- */
442
- protected isAuthorityMetadata(key: string): boolean;
443
- /**
444
- * returns cache key used for cloud instance metadata
445
- */
446
- generateAuthorityMetadataCacheKey(authority: string): string;
447
- /**
448
- * Helper to convert serialized data to object
449
- * @param obj
450
- * @param json
451
- */
452
- static toObject<T>(obj: T, json: object): T;
453
- }
454
- /** @internal */
455
- export declare class DefaultStorageClass extends CacheManager {
456
- setAccount(): void;
457
- getAccount(): AccountEntity;
458
- setIdTokenCredential(): void;
459
- getIdTokenCredential(): IdTokenEntity;
460
- setAccessTokenCredential(): void;
461
- getAccessTokenCredential(): AccessTokenEntity;
462
- setRefreshTokenCredential(): void;
463
- getRefreshTokenCredential(): RefreshTokenEntity;
464
- setAppMetadata(): void;
465
- getAppMetadata(): AppMetadataEntity;
466
- setServerTelemetry(): void;
467
- getServerTelemetry(): ServerTelemetryEntity;
468
- setAuthorityMetadata(): void;
469
- getAuthorityMetadata(): AuthorityMetadataEntity | null;
470
- getAuthorityMetadataKeys(): Array<string>;
471
- setThrottlingCache(): void;
472
- getThrottlingCache(): ThrottlingEntity;
473
- removeItem(): boolean;
474
- containsKey(): boolean;
475
- getKeys(): string[];
476
- getAccountKeys(): string[];
477
- getTokenKeys(): TokenKeys;
478
- clear(): Promise<void>;
479
- updateCredentialCacheKey(): string;
480
- }
1
+ import { AccountFilter, CredentialFilter, ValidCredentialType, AppMetadataFilter, AppMetadataCache, TokenKeys } from "./utils/CacheTypes";
2
+ import { CacheRecord } from "./entities/CacheRecord";
3
+ import { AccountEntity } from "./entities/AccountEntity";
4
+ import { AccessTokenEntity } from "./entities/AccessTokenEntity";
5
+ import { IdTokenEntity } from "./entities/IdTokenEntity";
6
+ import { RefreshTokenEntity } from "./entities/RefreshTokenEntity";
7
+ import { ICacheManager } from "./interface/ICacheManager";
8
+ import { AccountInfo } from "../account/AccountInfo";
9
+ import { AppMetadataEntity } from "./entities/AppMetadataEntity";
10
+ import { ServerTelemetryEntity } from "./entities/ServerTelemetryEntity";
11
+ import { ThrottlingEntity } from "./entities/ThrottlingEntity";
12
+ import { ICrypto } from "../crypto/ICrypto";
13
+ import { AuthorityMetadataEntity } from "./entities/AuthorityMetadataEntity";
14
+ import { BaseAuthRequest } from "../request/BaseAuthRequest";
15
+ import { Logger } from "../logger/Logger";
16
+ import { StoreInCache } from "../request/StoreInCache";
17
+ import { StaticAuthorityOptions } from "../authority/AuthorityOptions";
18
+ import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
19
+ /**
20
+ * Interface class which implement cache storage functions used by MSAL to perform validity checks, and store tokens.
21
+ * @internal
22
+ */
23
+ export declare abstract class CacheManager implements ICacheManager {
24
+ protected clientId: string;
25
+ protected cryptoImpl: ICrypto;
26
+ private commonLogger;
27
+ private staticAuthorityOptions?;
28
+ constructor(clientId: string, cryptoImpl: ICrypto, logger: Logger, staticAuthorityOptions?: StaticAuthorityOptions);
29
+ /**
30
+ * fetch the account entity from the platform cache
31
+ * @param accountKey
32
+ */
33
+ abstract getAccount(accountKey: string): AccountEntity | null;
34
+ /**
35
+ * set account entity in the platform cache
36
+ * @param account
37
+ */
38
+ abstract setAccount(account: AccountEntity): void;
39
+ /**
40
+ * fetch the idToken entity from the platform cache
41
+ * @param idTokenKey
42
+ */
43
+ abstract getIdTokenCredential(idTokenKey: string): IdTokenEntity | null;
44
+ /**
45
+ * set idToken entity to the platform cache
46
+ * @param idToken
47
+ */
48
+ abstract setIdTokenCredential(idToken: IdTokenEntity): void;
49
+ /**
50
+ * fetch the idToken entity from the platform cache
51
+ * @param accessTokenKey
52
+ */
53
+ abstract getAccessTokenCredential(accessTokenKey: string): AccessTokenEntity | null;
54
+ /**
55
+ * set idToken entity to the platform cache
56
+ * @param accessToken
57
+ */
58
+ abstract setAccessTokenCredential(accessToken: AccessTokenEntity): void;
59
+ /**
60
+ * fetch the idToken entity from the platform cache
61
+ * @param refreshTokenKey
62
+ */
63
+ abstract getRefreshTokenCredential(refreshTokenKey: string): RefreshTokenEntity | null;
64
+ /**
65
+ * set idToken entity to the platform cache
66
+ * @param refreshToken
67
+ */
68
+ abstract setRefreshTokenCredential(refreshToken: RefreshTokenEntity): void;
69
+ /**
70
+ * fetch appMetadata entity from the platform cache
71
+ * @param appMetadataKey
72
+ */
73
+ abstract getAppMetadata(appMetadataKey: string): AppMetadataEntity | null;
74
+ /**
75
+ * set appMetadata entity to the platform cache
76
+ * @param appMetadata
77
+ */
78
+ abstract setAppMetadata(appMetadata: AppMetadataEntity): void;
79
+ /**
80
+ * fetch server telemetry entity from the platform cache
81
+ * @param serverTelemetryKey
82
+ */
83
+ abstract getServerTelemetry(serverTelemetryKey: string): ServerTelemetryEntity | null;
84
+ /**
85
+ * set server telemetry entity to the platform cache
86
+ * @param serverTelemetryKey
87
+ * @param serverTelemetry
88
+ */
89
+ abstract setServerTelemetry(serverTelemetryKey: string, serverTelemetry: ServerTelemetryEntity): void;
90
+ /**
91
+ * fetch cloud discovery metadata entity from the platform cache
92
+ * @param key
93
+ */
94
+ abstract getAuthorityMetadata(key: string): AuthorityMetadataEntity | null;
95
+ /**
96
+ *
97
+ */
98
+ abstract getAuthorityMetadataKeys(): Array<string>;
99
+ /**
100
+ * set cloud discovery metadata entity to the platform cache
101
+ * @param key
102
+ * @param value
103
+ */
104
+ abstract setAuthorityMetadata(key: string, value: AuthorityMetadataEntity): void;
105
+ /**
106
+ * fetch throttling entity from the platform cache
107
+ * @param throttlingCacheKey
108
+ */
109
+ abstract getThrottlingCache(throttlingCacheKey: string): ThrottlingEntity | null;
110
+ /**
111
+ * set throttling entity to the platform cache
112
+ * @param throttlingCacheKey
113
+ * @param throttlingCache
114
+ */
115
+ abstract setThrottlingCache(throttlingCacheKey: string, throttlingCache: ThrottlingEntity): void;
116
+ /**
117
+ * Function to remove an item from cache given its key.
118
+ * @param key
119
+ */
120
+ abstract removeItem(key: string): void;
121
+ /**
122
+ * Function which returns boolean whether cache contains a specific key.
123
+ * @param key
124
+ */
125
+ abstract containsKey(key: string, type?: string): boolean;
126
+ /**
127
+ * Function which retrieves all current keys from the cache.
128
+ */
129
+ abstract getKeys(): string[];
130
+ /**
131
+ * Function which retrieves all account keys from the cache
132
+ */
133
+ abstract getAccountKeys(): string[];
134
+ /**
135
+ * Function which retrieves all token keys from the cache
136
+ */
137
+ abstract getTokenKeys(): TokenKeys;
138
+ /**
139
+ * Function which clears cache.
140
+ */
141
+ abstract clear(): Promise<void>;
142
+ /**
143
+ * Function which updates an outdated credential cache key
144
+ */
145
+ abstract updateCredentialCacheKey(currentCacheKey: string, credential: ValidCredentialType): string;
146
+ /**
147
+ * Returns all the accounts in the cache that match the optional filter. If no filter is provided, all accounts are returned.
148
+ * @param accountFilter - (Optional) filter to narrow down the accounts returned
149
+ * @returns Array of AccountInfo objects in cache
150
+ */
151
+ getAllAccounts(accountFilter?: AccountFilter): AccountInfo[];
152
+ /**
153
+ * Gets accountInfo object based on provided filters
154
+ */
155
+ getAccountInfoFilteredBy(accountFilter: AccountFilter): AccountInfo | null;
156
+ /**
157
+ * Returns a single matching
158
+ * @param accountFilter
159
+ * @returns
160
+ */
161
+ getBaseAccountInfo(accountFilter: AccountFilter): AccountInfo | null;
162
+ private getAccountInfoFromEntity;
163
+ private idTokenClaimsMatchAccountFilter;
164
+ /**
165
+ * saves a cache record
166
+ * @param cacheRecord
167
+ */
168
+ saveCacheRecord(cacheRecord: CacheRecord, storeInCache?: StoreInCache): Promise<void>;
169
+ /**
170
+ * saves access token credential
171
+ * @param credential
172
+ */
173
+ private saveAccessToken;
174
+ /**
175
+ * Retrieve accounts matching all provided filters; if no filter is set, get all accounts
176
+ * Not checking for casing as keys are all generated in lower case, remember to convert to lower case if object properties are compared
177
+ * @param accountFilter - An object containing Account properties to filter by
178
+ */
179
+ getAccountsFilteredBy(accountFilter: AccountFilter): AccountEntity[];
180
+ /**
181
+ * Returns true if the given key matches our account key schema. Also matches homeAccountId and/or tenantId if provided
182
+ * @param key
183
+ * @param homeAccountId
184
+ * @param tenantId
185
+ * @returns
186
+ */
187
+ isAccountKey(key: string, homeAccountId?: string, tenantId?: string): boolean;
188
+ /**
189
+ * Returns true if the given key matches our credential key schema.
190
+ * @param key
191
+ */
192
+ isCredentialKey(key: string): boolean;
193
+ /**
194
+ * Returns whether or not the given credential entity matches the filter
195
+ * @param entity
196
+ * @param filter
197
+ * @returns
198
+ */
199
+ credentialMatchesFilter(entity: ValidCredentialType, filter: CredentialFilter): boolean;
200
+ /**
201
+ * retrieve appMetadata matching all provided filters; if no filter is set, get all appMetadata
202
+ * @param filter
203
+ */
204
+ getAppMetadataFilteredBy(filter: AppMetadataFilter): AppMetadataCache;
205
+ /**
206
+ * Support function to help match appMetadata
207
+ * @param environment
208
+ * @param clientId
209
+ */
210
+ private getAppMetadataFilteredByInternal;
211
+ /**
212
+ * retrieve authorityMetadata that contains a matching alias
213
+ * @param filter
214
+ */
215
+ getAuthorityMetadataByAlias(host: string): AuthorityMetadataEntity | null;
216
+ /**
217
+ * Removes all accounts and related tokens from cache.
218
+ */
219
+ removeAllAccounts(): Promise<void>;
220
+ /**
221
+ * Removes the account and related tokens for a given account key
222
+ * @param account
223
+ */
224
+ removeAccount(accountKey: string): Promise<void>;
225
+ /**
226
+ * Removes credentials associated with the provided account
227
+ * @param account
228
+ */
229
+ removeAccountContext(account: AccountEntity): Promise<void>;
230
+ /**
231
+ * returns a boolean if the given credential is removed
232
+ * @param credential
233
+ */
234
+ removeAccessToken(key: string): Promise<void>;
235
+ /**
236
+ * Removes all app metadata objects from cache.
237
+ */
238
+ removeAppMetadata(): boolean;
239
+ /**
240
+ * Retrieve the cached credentials into a cacherecord
241
+ * @param account {AccountInfo}
242
+ * @param request {BaseAuthRequest}
243
+ * @param environment {string}
244
+ * @param performanceClient {?IPerformanceClient}
245
+ * @param correlationId {?string}
246
+ */
247
+ readCacheRecord(account: AccountInfo, request: BaseAuthRequest, environment: string, performanceClient?: IPerformanceClient, correlationId?: string): CacheRecord;
248
+ /**
249
+ * Retrieve AccountEntity from cache
250
+ * @param account
251
+ */
252
+ readAccountFromCache(account: AccountInfo): AccountEntity | null;
253
+ /**
254
+ * Retrieve IdTokenEntity from cache
255
+ * @param account {AccountInfo}
256
+ * @param tokenKeys {?TokenKeys}
257
+ * @param performanceClient {?IPerformanceClient}
258
+ * @param correlationId {?string}
259
+ */
260
+ getIdToken(account: AccountInfo, tokenKeys?: TokenKeys, performanceClient?: IPerformanceClient, correlationId?: string): IdTokenEntity | null;
261
+ /**
262
+ * Gets all idTokens matching the given filter
263
+ * @param filter
264
+ * @returns
265
+ */
266
+ getIdTokensByFilter(filter: CredentialFilter, tokenKeys?: TokenKeys): IdTokenEntity[];
267
+ /**
268
+ * Validate the cache key against filter before retrieving and parsing cache value
269
+ * @param key
270
+ * @param filter
271
+ * @returns
272
+ */
273
+ idTokenKeyMatchesFilter(inputKey: string, filter: CredentialFilter): boolean;
274
+ /**
275
+ * Removes idToken from the cache
276
+ * @param key
277
+ */
278
+ removeIdToken(key: string): void;
279
+ /**
280
+ * Removes refresh token from the cache
281
+ * @param key
282
+ */
283
+ removeRefreshToken(key: string): void;
284
+ /**
285
+ * Retrieve AccessTokenEntity from cache
286
+ * @param account {AccountInfo}
287
+ * @param request {BaseAuthRequest}
288
+ * @param tokenKeys {?TokenKeys}
289
+ * @param performanceClient {?IPerformanceClient}
290
+ * @param correlationId {?string}
291
+ */
292
+ getAccessToken(account: AccountInfo, request: BaseAuthRequest, tokenKeys?: TokenKeys, performanceClient?: IPerformanceClient, correlationId?: string): AccessTokenEntity | null;
293
+ /**
294
+ * Validate the cache key against filter before retrieving and parsing cache value
295
+ * @param key
296
+ * @param filter
297
+ * @param keyMustContainAllScopes
298
+ * @returns
299
+ */
300
+ accessTokenKeyMatchesFilter(inputKey: string, filter: CredentialFilter, keyMustContainAllScopes: boolean): boolean;
301
+ /**
302
+ * Gets all access tokens matching the filter
303
+ * @param filter
304
+ * @returns
305
+ */
306
+ getAccessTokensByFilter(filter: CredentialFilter): AccessTokenEntity[];
307
+ /**
308
+ * Helper to retrieve the appropriate refresh token from cache
309
+ * @param account {AccountInfo}
310
+ * @param familyRT {boolean}
311
+ * @param tokenKeys {?TokenKeys}
312
+ * @param performanceClient {?IPerformanceClient}
313
+ * @param correlationId {?string}
314
+ */
315
+ getRefreshToken(account: AccountInfo, familyRT: boolean, tokenKeys?: TokenKeys, performanceClient?: IPerformanceClient, correlationId?: string): RefreshTokenEntity | null;
316
+ /**
317
+ * Validate the cache key against filter before retrieving and parsing cache value
318
+ * @param key
319
+ * @param filter
320
+ */
321
+ refreshTokenKeyMatchesFilter(inputKey: string, filter: CredentialFilter): boolean;
322
+ /**
323
+ * Retrieve AppMetadataEntity from cache
324
+ */
325
+ readAppMetadataFromCache(environment: string): AppMetadataEntity | null;
326
+ /**
327
+ * Return the family_id value associated with FOCI
328
+ * @param environment
329
+ * @param clientId
330
+ */
331
+ isAppMetadataFOCI(environment: string): boolean;
332
+ /**
333
+ * helper to match account ids
334
+ * @param value
335
+ * @param homeAccountId
336
+ */
337
+ private matchHomeAccountId;
338
+ /**
339
+ * helper to match account ids
340
+ * @param entity
341
+ * @param localAccountId
342
+ * @returns
343
+ */
344
+ private matchLocalAccountId;
345
+ /**
346
+ * helper to match usernames
347
+ * @param entity
348
+ * @param username
349
+ * @returns
350
+ */
351
+ private matchUsername;
352
+ /**
353
+ * helper to match names
354
+ * @param entity
355
+ * @param name
356
+ * @returns true if the downcased name properties are present and match in the filter and the entity
357
+ */
358
+ private matchName;
359
+ /**
360
+ * helper to match assertion
361
+ * @param value
362
+ * @param oboAssertion
363
+ */
364
+ private matchUserAssertionHash;
365
+ /**
366
+ * helper to match environment
367
+ * @param value
368
+ * @param environment
369
+ */
370
+ private matchEnvironment;
371
+ /**
372
+ * helper to match credential type
373
+ * @param entity
374
+ * @param credentialType
375
+ */
376
+ private matchCredentialType;
377
+ /**
378
+ * helper to match client ids
379
+ * @param entity
380
+ * @param clientId
381
+ */
382
+ private matchClientId;
383
+ /**
384
+ * helper to match family ids
385
+ * @param entity
386
+ * @param familyId
387
+ */
388
+ private matchFamilyId;
389
+ /**
390
+ * helper to match realm
391
+ * @param entity
392
+ * @param realm
393
+ */
394
+ private matchRealm;
395
+ /**
396
+ * helper to match nativeAccountId
397
+ * @param entity
398
+ * @param nativeAccountId
399
+ * @returns boolean indicating the match result
400
+ */
401
+ private matchNativeAccountId;
402
+ /**
403
+ * helper to match loginHint which can be either:
404
+ * 1. login_hint ID token claim
405
+ * 2. username in cached account object
406
+ * 3. upn in ID token claims
407
+ * @param entity
408
+ * @param loginHint
409
+ * @returns
410
+ */
411
+ private matchLoginHint;
412
+ /**
413
+ * Helper to match sid
414
+ * @param idTokenClaims
415
+ * @param sid
416
+ * @returns true if the sid claim is present and matches the filter
417
+ */
418
+ private matchSid;
419
+ private matchAuthorityType;
420
+ /**
421
+ * Returns true if the target scopes are a subset of the current entity's scopes, false otherwise.
422
+ * @param entity
423
+ * @param target
424
+ */
425
+ private matchTarget;
426
+ /**
427
+ * Returns true if the credential's tokenType or Authentication Scheme matches the one in the request, false otherwise
428
+ * @param entity
429
+ * @param tokenType
430
+ */
431
+ private matchTokenType;
432
+ /**
433
+ * Returns true if the credential's keyId matches the one in the request, false otherwise
434
+ * @param entity
435
+ * @param tokenType
436
+ */
437
+ private matchKeyId;
438
+ /**
439
+ * returns if a given cache entity is of the type appmetadata
440
+ * @param key
441
+ */
442
+ private isAppMetadata;
443
+ /**
444
+ * returns if a given cache entity is of the type authoritymetadata
445
+ * @param key
446
+ */
447
+ protected isAuthorityMetadata(key: string): boolean;
448
+ /**
449
+ * returns cache key used for cloud instance metadata
450
+ */
451
+ generateAuthorityMetadataCacheKey(authority: string): string;
452
+ /**
453
+ * Helper to convert serialized data to object
454
+ * @param obj
455
+ * @param json
456
+ */
457
+ static toObject<T>(obj: T, json: object): T;
458
+ }
459
+ /** @internal */
460
+ export declare class DefaultStorageClass extends CacheManager {
461
+ setAccount(): void;
462
+ getAccount(): AccountEntity;
463
+ setIdTokenCredential(): void;
464
+ getIdTokenCredential(): IdTokenEntity;
465
+ setAccessTokenCredential(): void;
466
+ getAccessTokenCredential(): AccessTokenEntity;
467
+ setRefreshTokenCredential(): void;
468
+ getRefreshTokenCredential(): RefreshTokenEntity;
469
+ setAppMetadata(): void;
470
+ getAppMetadata(): AppMetadataEntity;
471
+ setServerTelemetry(): void;
472
+ getServerTelemetry(): ServerTelemetryEntity;
473
+ setAuthorityMetadata(): void;
474
+ getAuthorityMetadata(): AuthorityMetadataEntity | null;
475
+ getAuthorityMetadataKeys(): Array<string>;
476
+ setThrottlingCache(): void;
477
+ getThrottlingCache(): ThrottlingEntity;
478
+ removeItem(): boolean;
479
+ containsKey(): boolean;
480
+ getKeys(): string[];
481
+ getAccountKeys(): string[];
482
+ getTokenKeys(): TokenKeys;
483
+ clear(): Promise<void>;
484
+ updateCredentialCacheKey(): string;
485
+ }
481
486
  //# sourceMappingURL=CacheManager.d.ts.map