@azure/msal-common 14.4.0 → 14.4.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) 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.mjs +788 -788
  12. package/dist/authority/AuthorityFactory.d.ts +31 -31
  13. package/dist/authority/AuthorityFactory.mjs +47 -47
  14. package/dist/authority/AuthorityMetadata.d.ts +503 -503
  15. package/dist/authority/AuthorityMetadata.mjs +603 -603
  16. package/dist/authority/AuthorityOptions.d.ts +27 -27
  17. package/dist/authority/AuthorityOptions.mjs +18 -18
  18. package/dist/authority/AuthorityType.d.ts +10 -10
  19. package/dist/authority/AuthorityType.mjs +13 -13
  20. package/dist/authority/AzureRegion.d.ts +1 -1
  21. package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
  22. package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
  23. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
  24. package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs +8 -8
  25. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
  26. package/dist/authority/CloudInstanceDiscoveryResponse.mjs +8 -8
  27. package/dist/authority/ImdsOptions.d.ts +5 -5
  28. package/dist/authority/OIDCOptions.d.ts +8 -8
  29. package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
  30. package/dist/authority/OpenIdConfigResponse.mjs +10 -10
  31. package/dist/authority/ProtocolMode.d.ts +8 -8
  32. package/dist/authority/ProtocolMode.mjs +11 -11
  33. package/dist/authority/RegionDiscovery.d.ts +32 -32
  34. package/dist/authority/RegionDiscovery.mjs +106 -106
  35. package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
  36. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
  37. package/dist/cache/CacheManager.d.ts +485 -485
  38. package/dist/cache/CacheManager.mjs +1102 -1102
  39. package/dist/cache/entities/AccessTokenEntity.d.ts +25 -25
  40. package/dist/cache/entities/AccountEntity.d.ts +101 -101
  41. package/dist/cache/entities/AccountEntity.mjs +218 -218
  42. package/dist/cache/entities/AppMetadataEntity.d.ts +39 -39
  43. package/dist/cache/entities/AppMetadataEntity.mjs +66 -66
  44. package/dist/cache/entities/AuthorityMetadataEntity.d.ts +48 -48
  45. package/dist/cache/entities/AuthorityMetadataEntity.mjs +78 -78
  46. package/dist/cache/entities/CacheRecord.d.ts +14 -14
  47. package/dist/cache/entities/CacheRecord.mjs +14 -14
  48. package/dist/cache/entities/CredentialEntity.d.ts +30 -30
  49. package/dist/cache/entities/IdTokenEntity.d.ts +8 -8
  50. package/dist/cache/entities/RefreshTokenEntity.d.ts +7 -5
  51. package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -1
  52. package/dist/cache/entities/ServerTelemetryEntity.d.ts +5 -5
  53. package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
  54. package/dist/cache/entities/ThrottlingEntity.mjs +23 -23
  55. package/dist/cache/interface/ICacheManager.d.ts +166 -166
  56. package/dist/cache/interface/ICachePlugin.d.ts +5 -5
  57. package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
  58. package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
  59. package/dist/cache/persistence/TokenCacheContext.mjs +25 -25
  60. package/dist/cache/utils/CacheHelpers.d.ts +64 -64
  61. package/dist/cache/utils/CacheHelpers.d.ts.map +1 -1
  62. package/dist/cache/utils/CacheHelpers.mjs +234 -231
  63. package/dist/cache/utils/CacheHelpers.mjs.map +1 -1
  64. package/dist/cache/utils/CacheTypes.d.ts +67 -67
  65. package/dist/client/AuthorizationCodeClient.d.ts +74 -74
  66. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  67. package/dist/client/AuthorizationCodeClient.mjs +402 -402
  68. package/dist/client/AuthorizationCodeClient.mjs.map +1 -1
  69. package/dist/client/BaseClient.d.ts +51 -51
  70. package/dist/client/BaseClient.mjs +100 -100
  71. package/dist/client/RefreshTokenClient.d.ts +35 -35
  72. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  73. package/dist/client/RefreshTokenClient.mjs +193 -187
  74. package/dist/client/RefreshTokenClient.mjs.map +1 -1
  75. package/dist/client/SilentFlowClient.d.ts +27 -27
  76. package/dist/client/SilentFlowClient.mjs +118 -118
  77. package/dist/config/AppTokenProvider.d.ts +38 -38
  78. package/dist/config/ClientConfiguration.d.ts +150 -150
  79. package/dist/config/ClientConfiguration.mjs +97 -97
  80. package/dist/crypto/ICrypto.d.ts +58 -58
  81. package/dist/crypto/ICrypto.mjs +30 -30
  82. package/dist/crypto/IGuidGenerator.d.ts +4 -4
  83. package/dist/crypto/JoseHeader.d.ts +22 -22
  84. package/dist/crypto/JoseHeader.mjs +37 -37
  85. package/dist/crypto/PopTokenGenerator.d.ts +60 -60
  86. package/dist/crypto/PopTokenGenerator.mjs +82 -82
  87. package/dist/crypto/SignedHttpRequest.d.ts +15 -15
  88. package/dist/error/AuthError.d.ts +44 -44
  89. package/dist/error/AuthError.mjs +46 -46
  90. package/dist/error/AuthErrorCodes.d.ts +5 -5
  91. package/dist/error/AuthErrorCodes.mjs +9 -9
  92. package/dist/error/ClientAuthError.d.ts +237 -237
  93. package/dist/error/ClientAuthError.mjs +249 -249
  94. package/dist/error/ClientAuthErrorCodes.d.ts +44 -44
  95. package/dist/error/ClientAuthErrorCodes.mjs +48 -48
  96. package/dist/error/ClientConfigurationError.d.ts +128 -128
  97. package/dist/error/ClientConfigurationError.mjs +135 -135
  98. package/dist/error/ClientConfigurationErrorCodes.d.ts +22 -22
  99. package/dist/error/ClientConfigurationErrorCodes.mjs +26 -26
  100. package/dist/error/InteractionRequiredAuthError.d.ts +57 -57
  101. package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
  102. package/dist/error/InteractionRequiredAuthError.mjs +78 -77
  103. package/dist/error/InteractionRequiredAuthError.mjs.map +1 -1
  104. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts +6 -5
  105. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts.map +1 -1
  106. package/dist/error/InteractionRequiredAuthErrorCodes.mjs +13 -12
  107. package/dist/error/InteractionRequiredAuthErrorCodes.mjs.map +1 -1
  108. package/dist/error/JoseHeaderError.d.ts +15 -15
  109. package/dist/error/JoseHeaderError.mjs +22 -22
  110. package/dist/error/JoseHeaderErrorCodes.d.ts +2 -2
  111. package/dist/error/JoseHeaderErrorCodes.mjs +6 -6
  112. package/dist/error/ServerError.d.ts +7 -7
  113. package/dist/error/ServerError.mjs +14 -14
  114. package/dist/index.cjs +8290 -8278
  115. package/dist/index.cjs.map +1 -1
  116. package/dist/index.d.ts +98 -98
  117. package/dist/index.mjs +1 -1
  118. package/dist/logger/Logger.d.ts +95 -95
  119. package/dist/logger/Logger.mjs +188 -188
  120. package/dist/network/INetworkModule.d.ts +29 -29
  121. package/dist/network/INetworkModule.mjs +12 -12
  122. package/dist/network/NetworkManager.d.ts +33 -33
  123. package/dist/network/NetworkManager.mjs +34 -34
  124. package/dist/network/RequestThumbprint.d.ts +18 -18
  125. package/dist/network/ThrottlingUtils.d.ts +42 -42
  126. package/dist/network/ThrottlingUtils.mjs +95 -95
  127. package/dist/packageMetadata.d.ts +2 -2
  128. package/dist/packageMetadata.d.ts.map +1 -1
  129. package/dist/packageMetadata.mjs +4 -4
  130. package/dist/packageMetadata.mjs.map +1 -1
  131. package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
  132. package/dist/request/AuthenticationHeaderParser.mjs +55 -55
  133. package/dist/request/BaseAuthRequest.d.ts +43 -43
  134. package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
  135. package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
  136. package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
  137. package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
  138. package/dist/request/CommonEndSessionRequest.d.ts +21 -21
  139. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
  140. package/dist/request/CommonRefreshTokenRequest.d.ts +23 -22
  141. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  142. package/dist/request/CommonSilentFlowRequest.d.ts +21 -20
  143. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  144. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
  145. package/dist/request/NativeRequest.d.ts +19 -19
  146. package/dist/request/NativeSignOutRequest.d.ts +5 -5
  147. package/dist/request/RequestParameterBuilder.d.ts +217 -217
  148. package/dist/request/RequestParameterBuilder.mjs +381 -381
  149. package/dist/request/RequestValidator.d.ts +33 -33
  150. package/dist/request/RequestValidator.mjs +81 -81
  151. package/dist/request/ScopeSet.d.ts +88 -88
  152. package/dist/request/ScopeSet.mjs +197 -197
  153. package/dist/request/StoreInCache.d.ts +8 -8
  154. package/dist/response/AuthenticationResult.d.ts +41 -41
  155. package/dist/response/AuthorizationCodePayload.d.ts +13 -13
  156. package/dist/response/DeviceCodeResponse.d.ts +25 -25
  157. package/dist/response/ExternalTokenResponse.d.ts +15 -15
  158. package/dist/response/IMDSBadResponse.d.ts +4 -4
  159. package/dist/response/ResponseHandler.d.ts +67 -67
  160. package/dist/response/ResponseHandler.d.ts.map +1 -1
  161. package/dist/response/ResponseHandler.mjs +312 -312
  162. package/dist/response/ResponseHandler.mjs.map +1 -1
  163. package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
  164. package/dist/response/ServerAuthorizationTokenResponse.d.ts +46 -46
  165. package/dist/telemetry/performance/IPerformanceClient.d.ts +51 -51
  166. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
  167. package/dist/telemetry/performance/PerformanceClient.d.ts +191 -191
  168. package/dist/telemetry/performance/PerformanceClient.mjs +409 -409
  169. package/dist/telemetry/performance/PerformanceEvent.d.ts +464 -464
  170. package/dist/telemetry/performance/PerformanceEvent.mjs +253 -253
  171. package/dist/telemetry/performance/StubPerformanceClient.d.ts +24 -24
  172. package/dist/telemetry/performance/StubPerformanceClient.mjs +76 -76
  173. package/dist/telemetry/server/ServerTelemetryManager.d.ts +66 -66
  174. package/dist/telemetry/server/ServerTelemetryManager.mjs +201 -201
  175. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
  176. package/dist/url/IUri.d.ts +12 -12
  177. package/dist/url/UrlString.d.ts +48 -48
  178. package/dist/url/UrlString.mjs +161 -161
  179. package/dist/utils/Constants.d.ts +365 -365
  180. package/dist/utils/Constants.mjs +375 -375
  181. package/dist/utils/FunctionWrappers.d.ts +27 -27
  182. package/dist/utils/FunctionWrappers.mjs +84 -84
  183. package/dist/utils/MsalTypes.d.ts +6 -6
  184. package/dist/utils/ProtocolUtils.d.ts +42 -42
  185. package/dist/utils/ProtocolUtils.mjs +69 -69
  186. package/dist/utils/StringUtils.d.ts +40 -40
  187. package/dist/utils/StringUtils.mjs +95 -95
  188. package/dist/utils/TimeUtils.d.ts +27 -27
  189. package/dist/utils/TimeUtils.mjs +45 -45
  190. package/dist/utils/UrlUtils.d.ts +10 -10
  191. package/dist/utils/UrlUtils.mjs +44 -44
  192. package/package.json +92 -92
  193. package/src/cache/entities/RefreshTokenEntity.ts +3 -1
  194. package/src/cache/utils/CacheHelpers.ts +6 -1
  195. package/src/client/AuthorizationCodeClient.ts +2 -1
  196. package/src/client/RefreshTokenClient.ts +13 -1
  197. package/src/error/InteractionRequiredAuthError.ts +2 -0
  198. package/src/error/InteractionRequiredAuthErrorCodes.ts +1 -0
  199. package/src/packageMetadata.ts +1 -1
  200. package/src/request/CommonRefreshTokenRequest.ts +1 -0
  201. package/src/request/CommonSilentFlowRequest.ts +1 -0
  202. package/src/response/ResponseHandler.ts +8 -4
@@ -1,250 +1,250 @@
1
- import { AuthorityType } from "./AuthorityType";
2
- import { OpenIdConfigResponse } from "./OpenIdConfigResponse";
3
- import { IUri } from "../url/IUri";
4
- import { INetworkModule } from "../network/INetworkModule";
5
- import { ProtocolMode } from "./ProtocolMode";
6
- import { ICacheManager } from "../cache/interface/ICacheManager";
7
- import { AuthorityOptions, StaticAuthorityOptions } from "./AuthorityOptions";
8
- import { CloudDiscoveryMetadata } from "./CloudDiscoveryMetadata";
9
- import { RegionDiscoveryMetadata } from "./RegionDiscoveryMetadata";
10
- import { AzureCloudOptions } from "../config/ClientConfiguration";
11
- import { Logger } from "../logger/Logger";
12
- import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
13
- /**
14
- * The authority class validates the authority URIs used by the user, and retrieves the OpenID Configuration Data from the
15
- * endpoint. It will store the pertinent config data in this object for use during token calls.
16
- * @internal
17
- */
18
- export declare class Authority {
19
- private _canonicalAuthority;
20
- private _canonicalAuthorityUrlComponents;
21
- protected networkInterface: INetworkModule;
22
- protected cacheManager: ICacheManager;
23
- private authorityOptions;
24
- private metadata;
25
- private regionDiscovery;
26
- regionDiscoveryMetadata: RegionDiscoveryMetadata;
27
- private logger;
28
- protected performanceClient: IPerformanceClient | undefined;
29
- protected correlationId: string | undefined;
30
- private static reservedTenantDomains;
31
- constructor(authority: string, networkInterface: INetworkModule, cacheManager: ICacheManager, authorityOptions: AuthorityOptions, logger: Logger, performanceClient?: IPerformanceClient, correlationId?: string);
32
- /**
33
- * Get {@link AuthorityType}
34
- * @param authorityUri {@link IUri}
35
- * @private
36
- */
37
- private getAuthorityType;
38
- get authorityType(): AuthorityType;
39
- /**
40
- * ProtocolMode enum representing the way endpoints are constructed.
41
- */
42
- get protocolMode(): ProtocolMode;
43
- /**
44
- * Returns authorityOptions which can be used to reinstantiate a new authority instance
45
- */
46
- get options(): AuthorityOptions;
47
- /**
48
- * A URL that is the authority set by the developer
49
- */
50
- get canonicalAuthority(): string;
51
- /**
52
- * Sets canonical authority.
53
- */
54
- set canonicalAuthority(url: string);
55
- /**
56
- * Get authority components.
57
- */
58
- get canonicalAuthorityUrlComponents(): IUri;
59
- /**
60
- * Get hostname and port i.e. login.microsoftonline.com
61
- */
62
- get hostnameAndPort(): string;
63
- /**
64
- * Get tenant for authority.
65
- */
66
- get tenant(): string;
67
- /**
68
- * OAuth /authorize endpoint for requests
69
- */
70
- get authorizationEndpoint(): string;
71
- /**
72
- * OAuth /token endpoint for requests
73
- */
74
- get tokenEndpoint(): string;
75
- get deviceCodeEndpoint(): string;
76
- /**
77
- * OAuth logout endpoint for requests
78
- */
79
- get endSessionEndpoint(): string;
80
- /**
81
- * OAuth issuer for requests
82
- */
83
- get selfSignedJwtAudience(): string;
84
- /**
85
- * Jwks_uri for token signing keys
86
- */
87
- get jwksUri(): string;
88
- /**
89
- * Returns a flag indicating that tenant name can be replaced in authority {@link IUri}
90
- * @param authorityUri {@link IUri}
91
- * @private
92
- */
93
- private canReplaceTenant;
94
- /**
95
- * Replaces tenant in url path with current tenant. Defaults to common.
96
- * @param urlString
97
- */
98
- private replaceTenant;
99
- /**
100
- * Replaces path such as tenant or policy with the current tenant or policy.
101
- * @param urlString
102
- */
103
- private replacePath;
104
- /**
105
- * The default open id configuration endpoint for any canonical authority.
106
- */
107
- protected get defaultOpenIdConfigurationEndpoint(): string;
108
- /**
109
- * Boolean that returns whethr or not tenant discovery has been completed.
110
- */
111
- discoveryComplete(): boolean;
112
- /**
113
- * Perform endpoint discovery to discover aliases, preferred_cache, preferred_network
114
- * and the /authorize, /token and logout endpoints.
115
- */
116
- resolveEndpointsAsync(): Promise<void>;
117
- /**
118
- * Returns metadata entity from cache if it exists, otherwiser returns a new metadata entity built
119
- * from the configured canonical authority
120
- * @returns
121
- */
122
- private getCurrentMetadataEntity;
123
- /**
124
- * Updates cached metadata based on metadata source and sets the instance's metadata
125
- * property to the same value
126
- * @param metadataEntity
127
- * @param cloudDiscoverySource
128
- * @param endpointMetadataResult
129
- */
130
- private updateCachedMetadata;
131
- /**
132
- * Update AuthorityMetadataEntity with new endpoints and return where the information came from
133
- * @param metadataEntity
134
- */
135
- private updateEndpointMetadata;
136
- /**
137
- * Updates endpoint metadata from local sources and returns where the information was retrieved from and the metadata config
138
- * response if the source is hardcoded metadata
139
- * @param metadataEntity
140
- * @returns
141
- */
142
- private updateEndpointMetadataFromLocalSources;
143
- /**
144
- * Compares the number of url components after the domain to determine if the cached
145
- * authority metadata can be used for the requested authority. Protects against same domain different
146
- * authority such as login.microsoftonline.com/tenant and login.microsoftonline.com/tfp/tenant/policy
147
- * @param metadataEntity
148
- */
149
- private isAuthoritySameType;
150
- /**
151
- * Parse authorityMetadata config option
152
- */
153
- private getEndpointMetadataFromConfig;
154
- /**
155
- * Gets OAuth endpoints from the given OpenID configuration endpoint.
156
- *
157
- * @param hasHardcodedMetadata boolean
158
- */
159
- private getEndpointMetadataFromNetwork;
160
- /**
161
- * Get OAuth endpoints for common authorities.
162
- */
163
- private getEndpointMetadataFromHardcodedValues;
164
- /**
165
- * Update the retrieved metadata with regional information.
166
- * User selected Azure region will be used if configured.
167
- */
168
- private updateMetadataWithRegionalInformation;
169
- /**
170
- * Updates the AuthorityMetadataEntity with new aliases, preferred_network and preferred_cache
171
- * and returns where the information was retrieved from
172
- * @param metadataEntity
173
- * @returns AuthorityMetadataSource
174
- */
175
- private updateCloudDiscoveryMetadata;
176
- private updateCloudDiscoveryMetadataFromLocalSources;
177
- /**
178
- * Parse cloudDiscoveryMetadata config or check knownAuthorities
179
- */
180
- private getCloudDiscoveryMetadataFromConfig;
181
- /**
182
- * Called to get metadata from network if CloudDiscoveryMetadata was not populated by config
183
- *
184
- * @param hasHardcodedMetadata boolean
185
- */
186
- private getCloudDiscoveryMetadataFromNetwork;
187
- /**
188
- * Helper function to determine if this host is included in the knownAuthorities config option
189
- */
190
- private isInKnownAuthorities;
191
- /**
192
- * helper function to populate the authority based on azureCloudOptions
193
- * @param authorityString
194
- * @param azureCloudOptions
195
- */
196
- static generateAuthority(authorityString: string, azureCloudOptions?: AzureCloudOptions): string;
197
- /**
198
- * Creates cloud discovery metadata object from a given host
199
- * @param host
200
- */
201
- static createCloudDiscoveryMetadataFromHost(host: string): CloudDiscoveryMetadata;
202
- /**
203
- * helper function to generate environment from authority object
204
- */
205
- getPreferredCache(): string;
206
- /**
207
- * Returns whether or not the provided host is an alias of this authority instance
208
- * @param host
209
- */
210
- isAlias(host: string): boolean;
211
- /**
212
- * Returns whether or not the provided host is an alias of a known Microsoft authority for purposes of endpoint discovery
213
- * @param host
214
- */
215
- isAliasOfKnownMicrosoftAuthority(host: string): boolean;
216
- /**
217
- * Checks whether the provided host is that of a public cloud authority
218
- *
219
- * @param authority string
220
- * @returns bool
221
- */
222
- static isPublicCloudAuthority(host: string): boolean;
223
- /**
224
- * Rebuild the authority string with the region
225
- *
226
- * @param host string
227
- * @param region string
228
- */
229
- static buildRegionalAuthorityString(host: string, region: string, queryString?: string): string;
230
- /**
231
- * Replace the endpoints in the metadata object with their regional equivalents.
232
- *
233
- * @param metadata OpenIdConfigResponse
234
- * @param azureRegion string
235
- */
236
- static replaceWithRegionalInformation(metadata: OpenIdConfigResponse, azureRegion: string): OpenIdConfigResponse;
237
- /**
238
- * Transform CIAM_AUTHORIY as per the below rules:
239
- * If no path segments found and it is a CIAM authority (hostname ends with .ciamlogin.com), then transform it
240
- *
241
- * NOTE: The transformation path should go away once STS supports CIAM with the format: `tenantIdorDomain.ciamlogin.com`
242
- * `ciamlogin.com` can also change in the future and we should accommodate the same
243
- *
244
- * @param authority
245
- */
246
- static transformCIAMAuthority(authority: string): string;
247
- }
248
- export declare function formatAuthorityUri(authorityUri: string): string;
249
- export declare function buildStaticAuthorityOptions(authOptions: Partial<AuthorityOptions>): StaticAuthorityOptions;
1
+ import { AuthorityType } from "./AuthorityType";
2
+ import { OpenIdConfigResponse } from "./OpenIdConfigResponse";
3
+ import { IUri } from "../url/IUri";
4
+ import { INetworkModule } from "../network/INetworkModule";
5
+ import { ProtocolMode } from "./ProtocolMode";
6
+ import { ICacheManager } from "../cache/interface/ICacheManager";
7
+ import { AuthorityOptions, StaticAuthorityOptions } from "./AuthorityOptions";
8
+ import { CloudDiscoveryMetadata } from "./CloudDiscoveryMetadata";
9
+ import { RegionDiscoveryMetadata } from "./RegionDiscoveryMetadata";
10
+ import { AzureCloudOptions } from "../config/ClientConfiguration";
11
+ import { Logger } from "../logger/Logger";
12
+ import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
13
+ /**
14
+ * The authority class validates the authority URIs used by the user, and retrieves the OpenID Configuration Data from the
15
+ * endpoint. It will store the pertinent config data in this object for use during token calls.
16
+ * @internal
17
+ */
18
+ export declare class Authority {
19
+ private _canonicalAuthority;
20
+ private _canonicalAuthorityUrlComponents;
21
+ protected networkInterface: INetworkModule;
22
+ protected cacheManager: ICacheManager;
23
+ private authorityOptions;
24
+ private metadata;
25
+ private regionDiscovery;
26
+ regionDiscoveryMetadata: RegionDiscoveryMetadata;
27
+ private logger;
28
+ protected performanceClient: IPerformanceClient | undefined;
29
+ protected correlationId: string | undefined;
30
+ private static reservedTenantDomains;
31
+ constructor(authority: string, networkInterface: INetworkModule, cacheManager: ICacheManager, authorityOptions: AuthorityOptions, logger: Logger, performanceClient?: IPerformanceClient, correlationId?: string);
32
+ /**
33
+ * Get {@link AuthorityType}
34
+ * @param authorityUri {@link IUri}
35
+ * @private
36
+ */
37
+ private getAuthorityType;
38
+ get authorityType(): AuthorityType;
39
+ /**
40
+ * ProtocolMode enum representing the way endpoints are constructed.
41
+ */
42
+ get protocolMode(): ProtocolMode;
43
+ /**
44
+ * Returns authorityOptions which can be used to reinstantiate a new authority instance
45
+ */
46
+ get options(): AuthorityOptions;
47
+ /**
48
+ * A URL that is the authority set by the developer
49
+ */
50
+ get canonicalAuthority(): string;
51
+ /**
52
+ * Sets canonical authority.
53
+ */
54
+ set canonicalAuthority(url: string);
55
+ /**
56
+ * Get authority components.
57
+ */
58
+ get canonicalAuthorityUrlComponents(): IUri;
59
+ /**
60
+ * Get hostname and port i.e. login.microsoftonline.com
61
+ */
62
+ get hostnameAndPort(): string;
63
+ /**
64
+ * Get tenant for authority.
65
+ */
66
+ get tenant(): string;
67
+ /**
68
+ * OAuth /authorize endpoint for requests
69
+ */
70
+ get authorizationEndpoint(): string;
71
+ /**
72
+ * OAuth /token endpoint for requests
73
+ */
74
+ get tokenEndpoint(): string;
75
+ get deviceCodeEndpoint(): string;
76
+ /**
77
+ * OAuth logout endpoint for requests
78
+ */
79
+ get endSessionEndpoint(): string;
80
+ /**
81
+ * OAuth issuer for requests
82
+ */
83
+ get selfSignedJwtAudience(): string;
84
+ /**
85
+ * Jwks_uri for token signing keys
86
+ */
87
+ get jwksUri(): string;
88
+ /**
89
+ * Returns a flag indicating that tenant name can be replaced in authority {@link IUri}
90
+ * @param authorityUri {@link IUri}
91
+ * @private
92
+ */
93
+ private canReplaceTenant;
94
+ /**
95
+ * Replaces tenant in url path with current tenant. Defaults to common.
96
+ * @param urlString
97
+ */
98
+ private replaceTenant;
99
+ /**
100
+ * Replaces path such as tenant or policy with the current tenant or policy.
101
+ * @param urlString
102
+ */
103
+ private replacePath;
104
+ /**
105
+ * The default open id configuration endpoint for any canonical authority.
106
+ */
107
+ protected get defaultOpenIdConfigurationEndpoint(): string;
108
+ /**
109
+ * Boolean that returns whethr or not tenant discovery has been completed.
110
+ */
111
+ discoveryComplete(): boolean;
112
+ /**
113
+ * Perform endpoint discovery to discover aliases, preferred_cache, preferred_network
114
+ * and the /authorize, /token and logout endpoints.
115
+ */
116
+ resolveEndpointsAsync(): Promise<void>;
117
+ /**
118
+ * Returns metadata entity from cache if it exists, otherwiser returns a new metadata entity built
119
+ * from the configured canonical authority
120
+ * @returns
121
+ */
122
+ private getCurrentMetadataEntity;
123
+ /**
124
+ * Updates cached metadata based on metadata source and sets the instance's metadata
125
+ * property to the same value
126
+ * @param metadataEntity
127
+ * @param cloudDiscoverySource
128
+ * @param endpointMetadataResult
129
+ */
130
+ private updateCachedMetadata;
131
+ /**
132
+ * Update AuthorityMetadataEntity with new endpoints and return where the information came from
133
+ * @param metadataEntity
134
+ */
135
+ private updateEndpointMetadata;
136
+ /**
137
+ * Updates endpoint metadata from local sources and returns where the information was retrieved from and the metadata config
138
+ * response if the source is hardcoded metadata
139
+ * @param metadataEntity
140
+ * @returns
141
+ */
142
+ private updateEndpointMetadataFromLocalSources;
143
+ /**
144
+ * Compares the number of url components after the domain to determine if the cached
145
+ * authority metadata can be used for the requested authority. Protects against same domain different
146
+ * authority such as login.microsoftonline.com/tenant and login.microsoftonline.com/tfp/tenant/policy
147
+ * @param metadataEntity
148
+ */
149
+ private isAuthoritySameType;
150
+ /**
151
+ * Parse authorityMetadata config option
152
+ */
153
+ private getEndpointMetadataFromConfig;
154
+ /**
155
+ * Gets OAuth endpoints from the given OpenID configuration endpoint.
156
+ *
157
+ * @param hasHardcodedMetadata boolean
158
+ */
159
+ private getEndpointMetadataFromNetwork;
160
+ /**
161
+ * Get OAuth endpoints for common authorities.
162
+ */
163
+ private getEndpointMetadataFromHardcodedValues;
164
+ /**
165
+ * Update the retrieved metadata with regional information.
166
+ * User selected Azure region will be used if configured.
167
+ */
168
+ private updateMetadataWithRegionalInformation;
169
+ /**
170
+ * Updates the AuthorityMetadataEntity with new aliases, preferred_network and preferred_cache
171
+ * and returns where the information was retrieved from
172
+ * @param metadataEntity
173
+ * @returns AuthorityMetadataSource
174
+ */
175
+ private updateCloudDiscoveryMetadata;
176
+ private updateCloudDiscoveryMetadataFromLocalSources;
177
+ /**
178
+ * Parse cloudDiscoveryMetadata config or check knownAuthorities
179
+ */
180
+ private getCloudDiscoveryMetadataFromConfig;
181
+ /**
182
+ * Called to get metadata from network if CloudDiscoveryMetadata was not populated by config
183
+ *
184
+ * @param hasHardcodedMetadata boolean
185
+ */
186
+ private getCloudDiscoveryMetadataFromNetwork;
187
+ /**
188
+ * Helper function to determine if this host is included in the knownAuthorities config option
189
+ */
190
+ private isInKnownAuthorities;
191
+ /**
192
+ * helper function to populate the authority based on azureCloudOptions
193
+ * @param authorityString
194
+ * @param azureCloudOptions
195
+ */
196
+ static generateAuthority(authorityString: string, azureCloudOptions?: AzureCloudOptions): string;
197
+ /**
198
+ * Creates cloud discovery metadata object from a given host
199
+ * @param host
200
+ */
201
+ static createCloudDiscoveryMetadataFromHost(host: string): CloudDiscoveryMetadata;
202
+ /**
203
+ * helper function to generate environment from authority object
204
+ */
205
+ getPreferredCache(): string;
206
+ /**
207
+ * Returns whether or not the provided host is an alias of this authority instance
208
+ * @param host
209
+ */
210
+ isAlias(host: string): boolean;
211
+ /**
212
+ * Returns whether or not the provided host is an alias of a known Microsoft authority for purposes of endpoint discovery
213
+ * @param host
214
+ */
215
+ isAliasOfKnownMicrosoftAuthority(host: string): boolean;
216
+ /**
217
+ * Checks whether the provided host is that of a public cloud authority
218
+ *
219
+ * @param authority string
220
+ * @returns bool
221
+ */
222
+ static isPublicCloudAuthority(host: string): boolean;
223
+ /**
224
+ * Rebuild the authority string with the region
225
+ *
226
+ * @param host string
227
+ * @param region string
228
+ */
229
+ static buildRegionalAuthorityString(host: string, region: string, queryString?: string): string;
230
+ /**
231
+ * Replace the endpoints in the metadata object with their regional equivalents.
232
+ *
233
+ * @param metadata OpenIdConfigResponse
234
+ * @param azureRegion string
235
+ */
236
+ static replaceWithRegionalInformation(metadata: OpenIdConfigResponse, azureRegion: string): OpenIdConfigResponse;
237
+ /**
238
+ * Transform CIAM_AUTHORIY as per the below rules:
239
+ * If no path segments found and it is a CIAM authority (hostname ends with .ciamlogin.com), then transform it
240
+ *
241
+ * NOTE: The transformation path should go away once STS supports CIAM with the format: `tenantIdorDomain.ciamlogin.com`
242
+ * `ciamlogin.com` can also change in the future and we should accommodate the same
243
+ *
244
+ * @param authority
245
+ */
246
+ static transformCIAMAuthority(authority: string): string;
247
+ }
248
+ export declare function formatAuthorityUri(authorityUri: string): string;
249
+ export declare function buildStaticAuthorityOptions(authOptions: Partial<AuthorityOptions>): StaticAuthorityOptions;
250
250
  //# sourceMappingURL=Authority.d.ts.map