@azure/msal-common 14.1.0-alpha.0 → 14.1.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 (205) 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 +235 -235
  12. package/dist/authority/Authority.mjs +738 -738
  13. package/dist/authority/AuthorityFactory.d.ts +31 -31
  14. package/dist/authority/AuthorityFactory.mjs +47 -47
  15. package/dist/authority/AuthorityMetadata.d.ts +623 -623
  16. package/dist/authority/AuthorityMetadata.mjs +884 -884
  17. package/dist/authority/AuthorityOptions.d.ts +21 -21
  18. package/dist/authority/AuthorityOptions.mjs +18 -18
  19. package/dist/authority/AuthorityType.d.ts +10 -10
  20. package/dist/authority/AuthorityType.mjs +13 -13
  21. package/dist/authority/AzureRegion.d.ts +1 -1
  22. package/dist/authority/AzureRegionConfiguration.d.ts +5 -5
  23. package/dist/authority/CloudDiscoveryMetadata.d.ts +5 -5
  24. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +13 -13
  25. package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs +8 -8
  26. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +9 -9
  27. package/dist/authority/CloudInstanceDiscoveryResponse.mjs +8 -8
  28. package/dist/authority/ImdsOptions.d.ts +5 -5
  29. package/dist/authority/OIDCOptions.d.ts +8 -8
  30. package/dist/authority/OpenIdConfigResponse.d.ts +11 -11
  31. package/dist/authority/OpenIdConfigResponse.mjs +10 -10
  32. package/dist/authority/ProtocolMode.d.ts +8 -8
  33. package/dist/authority/ProtocolMode.mjs +11 -11
  34. package/dist/authority/RegionDiscovery.d.ts +32 -32
  35. package/dist/authority/RegionDiscovery.mjs +106 -106
  36. package/dist/authority/RegionDiscoveryMetadata.d.ts +6 -6
  37. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +15 -15
  38. package/dist/cache/CacheManager.d.ts +464 -446
  39. package/dist/cache/CacheManager.d.ts.map +1 -1
  40. package/dist/cache/CacheManager.mjs +1049 -998
  41. package/dist/cache/CacheManager.mjs.map +1 -1
  42. package/dist/cache/entities/AccessTokenEntity.d.ts +56 -56
  43. package/dist/cache/entities/AccessTokenEntity.mjs +109 -109
  44. package/dist/cache/entities/AccountEntity.d.ts +101 -101
  45. package/dist/cache/entities/AccountEntity.mjs +220 -220
  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 +88 -88
  53. package/dist/cache/entities/CredentialEntity.mjs +136 -136
  54. package/dist/cache/entities/IdTokenEntity.d.ts +34 -34
  55. package/dist/cache/entities/IdTokenEntity.mjs +56 -56
  56. package/dist/cache/entities/RefreshTokenEntity.d.ts +36 -36
  57. package/dist/cache/entities/RefreshTokenEntity.mjs +59 -59
  58. package/dist/cache/entities/ServerTelemetryEntity.d.ts +12 -12
  59. package/dist/cache/entities/ServerTelemetryEntity.mjs +27 -27
  60. package/dist/cache/entities/ThrottlingEntity.d.ts +13 -13
  61. package/dist/cache/entities/ThrottlingEntity.mjs +23 -23
  62. package/dist/cache/interface/ICacheManager.d.ts +166 -166
  63. package/dist/cache/interface/ICachePlugin.d.ts +5 -5
  64. package/dist/cache/interface/ISerializableTokenCache.d.ts +4 -4
  65. package/dist/cache/persistence/TokenCacheContext.d.ts +23 -23
  66. package/dist/cache/persistence/TokenCacheContext.mjs +25 -25
  67. package/dist/cache/utils/CacheTypes.d.ts +66 -69
  68. package/dist/cache/utils/CacheTypes.d.ts.map +1 -1
  69. package/dist/client/AuthorizationCodeClient.d.ts +73 -73
  70. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  71. package/dist/client/AuthorizationCodeClient.mjs +408 -407
  72. package/dist/client/AuthorizationCodeClient.mjs.map +1 -1
  73. package/dist/client/BaseClient.d.ts +51 -51
  74. package/dist/client/BaseClient.mjs +98 -98
  75. package/dist/client/RefreshTokenClient.d.ts +35 -35
  76. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  77. package/dist/client/RefreshTokenClient.mjs +187 -179
  78. package/dist/client/RefreshTokenClient.mjs.map +1 -1
  79. package/dist/client/SilentFlowClient.d.ts +26 -26
  80. package/dist/client/SilentFlowClient.mjs +123 -123
  81. package/dist/config/AppTokenProvider.d.ts +38 -38
  82. package/dist/config/ClientConfiguration.d.ts +150 -150
  83. package/dist/config/ClientConfiguration.mjs +97 -97
  84. package/dist/crypto/ICrypto.d.ts +58 -62
  85. package/dist/crypto/ICrypto.d.ts.map +1 -1
  86. package/dist/crypto/ICrypto.mjs +30 -33
  87. package/dist/crypto/ICrypto.mjs.map +1 -1
  88. package/dist/crypto/IGuidGenerator.d.ts +4 -4
  89. package/dist/crypto/JoseHeader.d.ts +22 -22
  90. package/dist/crypto/JoseHeader.mjs +37 -37
  91. package/dist/crypto/PopTokenGenerator.d.ts +60 -60
  92. package/dist/crypto/PopTokenGenerator.mjs +82 -82
  93. package/dist/crypto/SignedHttpRequest.d.ts +11 -11
  94. package/dist/error/AuthError.d.ts +44 -44
  95. package/dist/error/AuthError.mjs +46 -46
  96. package/dist/error/AuthErrorCodes.d.ts +5 -5
  97. package/dist/error/AuthErrorCodes.mjs +9 -9
  98. package/dist/error/ClientAuthError.d.ts +232 -232
  99. package/dist/error/ClientAuthError.mjs +244 -244
  100. package/dist/error/ClientAuthErrorCodes.d.ts +43 -43
  101. package/dist/error/ClientAuthErrorCodes.mjs +47 -47
  102. package/dist/error/ClientConfigurationError.d.ts +128 -128
  103. package/dist/error/ClientConfigurationError.mjs +135 -135
  104. package/dist/error/ClientConfigurationErrorCodes.d.ts +22 -22
  105. package/dist/error/ClientConfigurationErrorCodes.mjs +26 -26
  106. package/dist/error/InteractionRequiredAuthError.d.ts +57 -57
  107. package/dist/error/InteractionRequiredAuthError.mjs +76 -76
  108. package/dist/error/InteractionRequiredAuthErrorCodes.d.ts +5 -5
  109. package/dist/error/InteractionRequiredAuthErrorCodes.mjs +11 -11
  110. package/dist/error/JoseHeaderError.d.ts +15 -15
  111. package/dist/error/JoseHeaderError.mjs +22 -22
  112. package/dist/error/JoseHeaderErrorCodes.d.ts +2 -2
  113. package/dist/error/JoseHeaderErrorCodes.mjs +6 -6
  114. package/dist/error/ServerError.d.ts +7 -7
  115. package/dist/error/ServerError.mjs +14 -14
  116. package/dist/index.cjs +8672 -8608
  117. package/dist/index.cjs.map +1 -1
  118. package/dist/index.d.ts +96 -96
  119. package/dist/index.d.ts.map +1 -1
  120. package/dist/index.mjs +1 -1
  121. package/dist/logger/Logger.d.ts +95 -95
  122. package/dist/logger/Logger.mjs +188 -188
  123. package/dist/network/INetworkModule.d.ts +29 -29
  124. package/dist/network/INetworkModule.mjs +12 -12
  125. package/dist/network/NetworkManager.d.ts +33 -33
  126. package/dist/network/NetworkManager.mjs +34 -34
  127. package/dist/network/RequestThumbprint.d.ts +16 -16
  128. package/dist/network/ThrottlingUtils.d.ts +42 -42
  129. package/dist/network/ThrottlingUtils.mjs +95 -95
  130. package/dist/packageMetadata.d.ts +2 -2
  131. package/dist/packageMetadata.mjs +4 -4
  132. package/dist/request/AuthenticationHeaderParser.d.ts +19 -19
  133. package/dist/request/AuthenticationHeaderParser.mjs +55 -55
  134. package/dist/request/BaseAuthRequest.d.ts +40 -40
  135. package/dist/request/CommonAuthorizationCodeRequest.d.ts +27 -27
  136. package/dist/request/CommonAuthorizationUrlRequest.d.ts +50 -50
  137. package/dist/request/CommonClientCredentialRequest.d.ts +17 -17
  138. package/dist/request/CommonDeviceCodeRequest.d.ts +21 -21
  139. package/dist/request/CommonEndSessionRequest.d.ts +21 -21
  140. package/dist/request/CommonOnBehalfOfRequest.d.ts +13 -13
  141. package/dist/request/CommonRefreshTokenRequest.d.ts +22 -19
  142. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  143. package/dist/request/CommonSilentFlowRequest.d.ts +20 -18
  144. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  145. package/dist/request/CommonUsernamePasswordRequest.d.ts +17 -17
  146. package/dist/request/NativeRequest.d.ts +19 -19
  147. package/dist/request/NativeSignOutRequest.d.ts +5 -5
  148. package/dist/request/RequestParameterBuilder.d.ts +217 -217
  149. package/dist/request/RequestParameterBuilder.mjs +381 -381
  150. package/dist/request/RequestValidator.d.ts +33 -33
  151. package/dist/request/RequestValidator.mjs +81 -81
  152. package/dist/request/ScopeSet.d.ts +88 -88
  153. package/dist/request/ScopeSet.mjs +197 -197
  154. package/dist/request/StoreInCache.d.ts +8 -8
  155. package/dist/response/AuthenticationResult.d.ts +41 -41
  156. package/dist/response/AuthorizationCodePayload.d.ts +13 -13
  157. package/dist/response/DeviceCodeResponse.d.ts +25 -25
  158. package/dist/response/ExternalTokenResponse.d.ts +15 -15
  159. package/dist/response/IMDSBadResponse.d.ts +4 -4
  160. package/dist/response/ResponseHandler.d.ts +67 -67
  161. package/dist/response/ResponseHandler.mjs +311 -311
  162. package/dist/response/ServerAuthorizationCodeResponse.d.ts +25 -25
  163. package/dist/response/ServerAuthorizationTokenResponse.d.ts +46 -46
  164. package/dist/telemetry/performance/IPerformanceClient.d.ts +51 -51
  165. package/dist/telemetry/performance/IPerformanceMeasurement.d.ts +5 -5
  166. package/dist/telemetry/performance/PerformanceClient.d.ts +191 -191
  167. package/dist/telemetry/performance/PerformanceClient.mjs +409 -409
  168. package/dist/telemetry/performance/PerformanceEvent.d.ts +441 -433
  169. package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -1
  170. package/dist/telemetry/performance/PerformanceEvent.mjs +242 -234
  171. package/dist/telemetry/performance/PerformanceEvent.mjs.map +1 -1
  172. package/dist/telemetry/performance/StubPerformanceClient.d.ts +24 -24
  173. package/dist/telemetry/performance/StubPerformanceClient.mjs +76 -76
  174. package/dist/telemetry/server/ServerTelemetryManager.d.ts +66 -66
  175. package/dist/telemetry/server/ServerTelemetryManager.mjs +197 -197
  176. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +8 -8
  177. package/dist/url/IUri.d.ts +12 -12
  178. package/dist/url/UrlString.d.ts +83 -83
  179. package/dist/url/UrlString.mjs +279 -279
  180. package/dist/utils/Constants.d.ts +366 -366
  181. package/dist/utils/Constants.mjs +376 -376
  182. package/dist/utils/FunctionWrappers.d.ts +27 -27
  183. package/dist/utils/FunctionWrappers.d.ts.map +1 -1
  184. package/dist/utils/FunctionWrappers.mjs +84 -85
  185. package/dist/utils/FunctionWrappers.mjs.map +1 -1
  186. package/dist/utils/MsalTypes.d.ts +6 -6
  187. package/dist/utils/ProtocolUtils.d.ts +42 -42
  188. package/dist/utils/ProtocolUtils.mjs +69 -69
  189. package/dist/utils/StringUtils.d.ts +40 -40
  190. package/dist/utils/StringUtils.mjs +95 -95
  191. package/dist/utils/TimeUtils.d.ts +27 -27
  192. package/dist/utils/TimeUtils.mjs +45 -45
  193. package/package.json +1 -1
  194. package/src/account/AccountInfo.ts +0 -1
  195. package/src/cache/CacheManager.ts +96 -18
  196. package/src/cache/utils/CacheTypes.ts +6 -6
  197. package/src/client/AuthorizationCodeClient.ts +3 -1
  198. package/src/client/RefreshTokenClient.ts +19 -2
  199. package/src/crypto/ICrypto.ts +0 -7
  200. package/src/index.ts +1 -0
  201. package/src/packageMetadata.ts +1 -1
  202. package/src/request/CommonRefreshTokenRequest.ts +3 -0
  203. package/src/request/CommonSilentFlowRequest.ts +2 -0
  204. package/src/telemetry/performance/PerformanceEvent.ts +9 -0
  205. package/src/utils/FunctionWrappers.ts +0 -1
@@ -1,236 +1,236 @@
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 } 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
- * Update AuthorityMetadataEntity with new endpoints and return where the information came from
119
- * @param metadataEntity
120
- */
121
- private updateEndpointMetadata;
122
- /**
123
- * Compares the number of url components after the domain to determine if the cached
124
- * authority metadata can be used for the requested authority. Protects against same domain different
125
- * authority such as login.microsoftonline.com/tenant and login.microsoftonline.com/tfp/tenant/policy
126
- * @param metadataEntity
127
- */
128
- private isAuthoritySameType;
129
- /**
130
- * Parse authorityMetadata config option
131
- */
132
- private getEndpointMetadataFromConfig;
133
- /**
134
- * Gets OAuth endpoints from the given OpenID configuration endpoint.
135
- *
136
- * @param hasHardcodedMetadata boolean
137
- */
138
- private getEndpointMetadataFromNetwork;
139
- /**
140
- * Get OAuth endpoints for common authorities.
141
- */
142
- private getEndpointMetadataFromHardcodedValues;
143
- /**
144
- * Update the retrieved metadata with regional information.
145
- * User selected Azure region will be used if configured.
146
- */
147
- private updateMetadataWithRegionalInformation;
148
- /**
149
- * Updates the AuthorityMetadataEntity with new aliases, preferred_network and preferred_cache
150
- * and returns where the information was retrieved from
151
- * @param metadataEntity
152
- * @returns AuthorityMetadataSource
153
- */
154
- private updateCloudDiscoveryMetadata;
155
- /**
156
- * Parse cloudDiscoveryMetadata config or check knownAuthorities
157
- */
158
- private getCloudDiscoveryMetadataFromConfig;
159
- /**
160
- * Called to get metadata from network if CloudDiscoveryMetadata was not populated by config
161
- *
162
- * @param hasHardcodedMetadata boolean
163
- */
164
- private getCloudDiscoveryMetadataFromNetwork;
165
- /**
166
- * Get cloud discovery metadata for common authorities
167
- */
168
- private getCloudDiscoveryMetadataFromHardcodedValues;
169
- /**
170
- * Helper function to determine if this host is included in the knownAuthorities config option
171
- */
172
- private isInKnownAuthorities;
173
- /**
174
- * helper function to populate the authority based on azureCloudOptions
175
- * @param authorityString
176
- * @param azureCloudOptions
177
- */
178
- static generateAuthority(authorityString: string, azureCloudOptions?: AzureCloudOptions): string;
179
- /**
180
- * Creates cloud discovery metadata object from a given host
181
- * @param host
182
- */
183
- static createCloudDiscoveryMetadataFromHost(host: string): CloudDiscoveryMetadata;
184
- /**
185
- * Searches instance discovery network response for the entry that contains the host in the aliases list
186
- * @param response
187
- * @param authority
188
- */
189
- static getCloudDiscoveryMetadataFromNetworkResponse(response: CloudDiscoveryMetadata[], authority: string): CloudDiscoveryMetadata | null;
190
- /**
191
- * helper function to generate environment from authority object
192
- */
193
- getPreferredCache(): string;
194
- /**
195
- * Returns whether or not the provided host is an alias of this authority instance
196
- * @param host
197
- */
198
- isAlias(host: string): boolean;
199
- /**
200
- * Returns whether or not the provided host is an alias of a known Microsoft authority for purposes of endpoint discovery
201
- * @param host
202
- */
203
- isAliasOfKnownMicrosoftAuthority(host: string): boolean;
204
- /**
205
- * Checks whether the provided host is that of a public cloud authority
206
- *
207
- * @param authority string
208
- * @returns bool
209
- */
210
- static isPublicCloudAuthority(host: string): boolean;
211
- /**
212
- * Rebuild the authority string with the region
213
- *
214
- * @param host string
215
- * @param region string
216
- */
217
- static buildRegionalAuthorityString(host: string, region: string, queryString?: string): string;
218
- /**
219
- * Replace the endpoints in the metadata object with their regional equivalents.
220
- *
221
- * @param metadata OpenIdConfigResponse
222
- * @param azureRegion string
223
- */
224
- static replaceWithRegionalInformation(metadata: OpenIdConfigResponse, azureRegion: string): OpenIdConfigResponse;
225
- /**
226
- * Transform CIAM_AUTHORIY as per the below rules:
227
- * If no path segments found and it is a CIAM authority (hostname ends with .ciamlogin.com), then transform it
228
- *
229
- * NOTE: The transformation path should go away once STS supports CIAM with the format: `tenantIdorDomain.ciamlogin.com`
230
- * `ciamlogin.com` can also change in the future and we should accommodate the same
231
- *
232
- * @param authority
233
- */
234
- static transformCIAMAuthority(authority: string): string;
235
- }
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 } 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
+ * Update AuthorityMetadataEntity with new endpoints and return where the information came from
119
+ * @param metadataEntity
120
+ */
121
+ private updateEndpointMetadata;
122
+ /**
123
+ * Compares the number of url components after the domain to determine if the cached
124
+ * authority metadata can be used for the requested authority. Protects against same domain different
125
+ * authority such as login.microsoftonline.com/tenant and login.microsoftonline.com/tfp/tenant/policy
126
+ * @param metadataEntity
127
+ */
128
+ private isAuthoritySameType;
129
+ /**
130
+ * Parse authorityMetadata config option
131
+ */
132
+ private getEndpointMetadataFromConfig;
133
+ /**
134
+ * Gets OAuth endpoints from the given OpenID configuration endpoint.
135
+ *
136
+ * @param hasHardcodedMetadata boolean
137
+ */
138
+ private getEndpointMetadataFromNetwork;
139
+ /**
140
+ * Get OAuth endpoints for common authorities.
141
+ */
142
+ private getEndpointMetadataFromHardcodedValues;
143
+ /**
144
+ * Update the retrieved metadata with regional information.
145
+ * User selected Azure region will be used if configured.
146
+ */
147
+ private updateMetadataWithRegionalInformation;
148
+ /**
149
+ * Updates the AuthorityMetadataEntity with new aliases, preferred_network and preferred_cache
150
+ * and returns where the information was retrieved from
151
+ * @param metadataEntity
152
+ * @returns AuthorityMetadataSource
153
+ */
154
+ private updateCloudDiscoveryMetadata;
155
+ /**
156
+ * Parse cloudDiscoveryMetadata config or check knownAuthorities
157
+ */
158
+ private getCloudDiscoveryMetadataFromConfig;
159
+ /**
160
+ * Called to get metadata from network if CloudDiscoveryMetadata was not populated by config
161
+ *
162
+ * @param hasHardcodedMetadata boolean
163
+ */
164
+ private getCloudDiscoveryMetadataFromNetwork;
165
+ /**
166
+ * Get cloud discovery metadata for common authorities
167
+ */
168
+ private getCloudDiscoveryMetadataFromHardcodedValues;
169
+ /**
170
+ * Helper function to determine if this host is included in the knownAuthorities config option
171
+ */
172
+ private isInKnownAuthorities;
173
+ /**
174
+ * helper function to populate the authority based on azureCloudOptions
175
+ * @param authorityString
176
+ * @param azureCloudOptions
177
+ */
178
+ static generateAuthority(authorityString: string, azureCloudOptions?: AzureCloudOptions): string;
179
+ /**
180
+ * Creates cloud discovery metadata object from a given host
181
+ * @param host
182
+ */
183
+ static createCloudDiscoveryMetadataFromHost(host: string): CloudDiscoveryMetadata;
184
+ /**
185
+ * Searches instance discovery network response for the entry that contains the host in the aliases list
186
+ * @param response
187
+ * @param authority
188
+ */
189
+ static getCloudDiscoveryMetadataFromNetworkResponse(response: CloudDiscoveryMetadata[], authority: string): CloudDiscoveryMetadata | null;
190
+ /**
191
+ * helper function to generate environment from authority object
192
+ */
193
+ getPreferredCache(): string;
194
+ /**
195
+ * Returns whether or not the provided host is an alias of this authority instance
196
+ * @param host
197
+ */
198
+ isAlias(host: string): boolean;
199
+ /**
200
+ * Returns whether or not the provided host is an alias of a known Microsoft authority for purposes of endpoint discovery
201
+ * @param host
202
+ */
203
+ isAliasOfKnownMicrosoftAuthority(host: string): boolean;
204
+ /**
205
+ * Checks whether the provided host is that of a public cloud authority
206
+ *
207
+ * @param authority string
208
+ * @returns bool
209
+ */
210
+ static isPublicCloudAuthority(host: string): boolean;
211
+ /**
212
+ * Rebuild the authority string with the region
213
+ *
214
+ * @param host string
215
+ * @param region string
216
+ */
217
+ static buildRegionalAuthorityString(host: string, region: string, queryString?: string): string;
218
+ /**
219
+ * Replace the endpoints in the metadata object with their regional equivalents.
220
+ *
221
+ * @param metadata OpenIdConfigResponse
222
+ * @param azureRegion string
223
+ */
224
+ static replaceWithRegionalInformation(metadata: OpenIdConfigResponse, azureRegion: string): OpenIdConfigResponse;
225
+ /**
226
+ * Transform CIAM_AUTHORIY as per the below rules:
227
+ * If no path segments found and it is a CIAM authority (hostname ends with .ciamlogin.com), then transform it
228
+ *
229
+ * NOTE: The transformation path should go away once STS supports CIAM with the format: `tenantIdorDomain.ciamlogin.com`
230
+ * `ciamlogin.com` can also change in the future and we should accommodate the same
231
+ *
232
+ * @param authority
233
+ */
234
+ static transformCIAMAuthority(authority: string): string;
235
+ }
236
236
  //# sourceMappingURL=Authority.d.ts.map