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