<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Microsoft.Developer.IdentityService</name>
    </assembly>
    <members>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices">
            <summary>
            Set of services the Aad account provider needs to abstract for testing and future changes.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.#ctor(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,System.Diagnostics.TraceSource)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices" /> class.
            </summary>
            <param name="aadConfiguration">Configuration to use.</param>
            <param name="logger">logger.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.Rpc">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.Configuration">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.CommonTenant">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.UtcNow">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.AcquireTokenWithPromptAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.AcquireTokenSilentAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetSessionTokenFromVsoAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetTenantMembershipAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.ClearAllAccountStateAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetProfileInfoAsync(System.Boolean,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.AcquireTokenWithPromptIfNeededAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.AcquireDeviceCodeAsync(System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            Get the message and code the user needs in order to find the correct website to authenticate against.
            </summary>
            <param name="tenant">Authentication context.</param>
            <param name="queryParameters">Extra query parameters to pass to the login url once the user has entered their code in the verification url.</param>
            <param name="cancellationToken">cancellation token.</param>
            <returns>things.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetDeviceFlowAuthenticationResultAsync(Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult,System.Threading.CancellationToken)">
            <summary>
            Get the authentication result of device flow.
            </summary>
            <param name="code">Device code.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Authentication info.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetChallengeClaims(System.Exception)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetTenantInformationAsync(System.Net.Http.HttpClient,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetAADOrganizationInformationAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetTenantDetailsAsync(Microsoft.Developer.IdentityService.AccountProvider.TenantInformation,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.GetContractsAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.RemoveCredentialsForAccountAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServices.AcquireAuthenticationInfoForDefaultOSAccount(System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase">
            <summary>
            Set of services the Aad account provider needs to abstract for testing and future changes.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.NetworkRetryCount">
            <summary>
            How often we should retry our graph call.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.#ctor(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,Microsoft.Developer.IdentityService.Network.INetworkClientFactory,System.Diagnostics.TraceSource)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase" /> class.
            </summary>
            <param name="aadConfiguration">Configuration to use.</param>
            <param name="networkClientFactory">Network client factory to provide network communication. If null is passed, a default value is used.</param>
            <param name="logger">logger.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.NetworkClientFactory">
            <summary>
            Gets an <see cref="T:Microsoft.Developer.IdentityService.Network.INetworkClientFactory" /> to provide objects to use for network communication.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.Rpc">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.Configuration">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.CommonTenant">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.Logger">
            <summary>
            Gets logger.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.UtcNow">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.AcquireTokenWithPromptAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.AcquireTokenSilentAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetTenantDetailsAsync(Microsoft.Developer.IdentityService.AccountProvider.TenantInformation,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.AcquireGraphTokenAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.String,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Aquires an authentication token from the graph for the provided resource.
            </summary>
            <param name="resourceOrScopes">The resource or scopes to get an authentication token for.</param>
            <param name="userInfo">User to get the authentication token from.</param>
            <param name="tenantId">Tenant to get the authentication token from.</param>
            <param name="promptIfNeeded">If true, prompt the user for credentials if needed. Otherwise aquire silently.</param>
            <param name="queryParameters">Additional parameters to pass to the query.</param>
            <param name="authenticationFlowType">The authentication flow being used.</param>
            <param name="additionalAuthProperties">Additional properties which can affect auth</param>
            <param name="ct">Cancellation Token.</param>
            <returns>An <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo" /> representing the result.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetSessionTokenFromVsoAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetTenantInformationAsync(System.Net.Http.HttpClient,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetTenantMembershipAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetAADOrganizationInformationAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ClearAllAccountStateAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetProfileInfoAsync(System.Boolean,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.AcquireTokenWithPromptIfNeededAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetChallengeClaims(System.Exception)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ConstructGraphRequestWithAuthorizationHeader(System.Uri,System.Net.Http.Headers.AuthenticationHeaderValue,System.Net.Http.HttpMethod)">
            <summary>
            Constructs and HttpRequestMessage with an authorization header.
            </summary>
            <param name="graphEndpoint">Uri to use for the request.</param>
            <param name="authorizationHeader">Authorization header.</param>
            <param name="httpMethod">Optional. Http verb to use.</param>
            <returns>An HttpRequestMessage.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.AcquireTokenWithPromptInternalAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Call back to the client to ask it to prompt with UI.
            </summary>
            <param name="resourceOrScopes">resourceOrScopes to get access token for.</param>
            <param name="tenant">Tenant to get the access token for.</param>
            <param name="userId">Authetnication information used to access the users list of tenants.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType">Type of flow to use.</param>
            <param name="additionalAuthProperties">additonal authentication properties</param>
            <param name="cancellationToken">cancellationToken.</param>
            <returns>Authentication information including the access token.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetContractsAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ClientSupportsWebUIFlowAsync">
            <summary>
            Does the client support the webui flow.
            </summary>
            <returns>True if the flow is supported, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ClientSupportsUserNamePasswordFlowAsync">
            <summary>
            Checks to see if the client can support the username and password flow.
            </summary>
            <returns>true if the flow is supported, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.GetTokenInteractiveContextAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,System.String,System.Collections.Generic.Dictionary{System.String,System.String},Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation)">
            <summary>
            Gets the context for either msal or adal based on the parameters passed in.
            </summary>
            <param name="resourceOrScope">Resource to get access token for.</param>
            <param name="tenant">Tenant to get the access token for.</param>
            <param name="userId">Authetnication information used to access the users list of tenants.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType"> Authentication flow type</param>
            <param name="additionalAuthProperties">Additional authentication properties</param>
            <param name="parentTelemetryOperation">parent telemetry operation if it exists</param>
            <returns>An interface that can be cast to the correct context.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ExecuteInteractiveFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Threading.CancellationToken)">
            <summary>
            Gets an authentication info using the interactive flow.
            </summary>
            <param name="getTokenContext">Context to get the correct token.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Authentication information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ExecuteWebUIFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Threading.CancellationToken)">
            <summary>
             Execute the webUI flow.
            </summary>
            <param name="getTokenContext">Context to execute the flow.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Authentication info.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ExecuteDeviceCodeFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Threading.CancellationToken)">
            <summary>
            Execute the device code flow.
            </summary>
            <param name="getTokenContext">Object containing the token context.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Authentication information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.ExecuteUserNamePasswordFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            Execute the username password flow.
            </summary>
            <param name="getTokenContex">Gets the username.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <param name="brokered">Should the flow use the broker or not from MSAL</param>
            <returns>Authentication information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.RemoveCredentialsForAccountAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase.AcquireAuthenticationInfoForDefaultOSAccount(System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService">
            <summary>
            Aad account provider for communicating with AAD accounts.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.EmailAddressKeyName">
            <summary>
            Key for adding email address to the exception data.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.ignorableErrorCodes">
            <summary>
            Error codes which can be ignored on error verbosity
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.logger">
            <summary>
            Logger to log events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.networkClientFactory">
            <summary>
            INetworkClientFactory to provide objects to use for network communication.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.rpc">
            <summary>
            Remote channel to send data back to the client that connects to this service.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.sessionTokenStorage">
            <summary>
            SessionToken storage.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.networkServices">
            <summary>
            Set of services used to get tokens and other information from the network.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.configuration">
            <summary>
            Aad configuration to use.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.sessionTokenManager">
            <summary>
            SessionTokenManager.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.initialized">
            <summary>
            Has the service been initialzied.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.groupPolicyReader">
            <summary>
            Group policy reader
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.VsUICulture">
            <summary>
            UI culture of visual studio
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.#ctor(System.IO.Stream,System.IServiceProvider)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService" /> class.
            </summary>
            <param name="stream">Stream.</param>
            <param name="serviceProvider">Provider.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when stream or serviceProvider are null.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.#ctor(System.IO.Stream,Microsoft.Developer.IdentityService.Network.INetworkClientFactory,System.IServiceProvider)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService" /> class.
            </summary>
            <param name="stream">Stream.</param>
            <param name="networkClientFactory">A factory object which provides network communication objects.</param>
            <param name="serviceProvider">Provider.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when stream or serviceProvider are null.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.#ctor(System.IO.Stream,System.IServiceProvider,Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderNetworkServicesBase,Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenStorage)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService" /> class.
            </summary>
            <param name="stream">Stream, can be null.</param>
            <param name="serviceProvider">Provider.</param>
            <param name="networkServices">Services to talk to network resources with. If null a default network service will be used.</param>
            <param name="sessionTokenStorage">sessionTokenStorage.</param>
            <exception cref="T:System.ArgumentNullException">Thrown when stream or serviceProvider are null.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.InitializeAsync(Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration,System.String,System.Threading.CancellationToken)">
            <summary>
            Initialze the service with the configuration it is going to use.
            </summary>
            <param name="configuration">Configuration to use.</param>
            <param name="appName">Name of the application. Eg: Visual Studio, Blend, etc.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
            <exception cref="T:System.ArgumentNullException">Thrown when configuration is null.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AcquireTokenAsync(System.String,System.String,Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Acquires an access token for a given resource using an account.
            </summary>
            <param name="resource">Resource to get the access token for.</param>
            <param name="tenantId">TenantId where the resource is registered.</param>
            <param name="account">Account to use as the user to get the acess token for.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>An AccessTokenResult that contains the access token. Null if no access token could be found.</returns>
            <exception cref="T:System.ArgumentNullException">If resource, tenantId, or account is null.</exception>
            <exception cref="T:System.ArgumentException">If resource or tenantId are empty or contain only whitespace.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AcquireTokenAsync(System.String[],System.String,Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Acquires an access token for a given resource using an account.
            </summary>
            <param name="scopes">Scopes to get the access token for.</param>
            <param name="tenantId">TenantId where the resource is registered.</param>
            <param name="account">Account to use as the user to get the acess token for.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>An AccessTokenResult that contains the access token. Null if no access token could be found.</returns>
            <exception cref="T:System.ArgumentNullException">If resource, tenantId, or account is null.</exception>
            <exception cref="T:System.ArgumentException">If resource or tenantId are empty or contain only whitespace.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AcquireAuthenticationInfoSilentAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Threading.CancellationToken)">
            <summary>
            Get an authentication result.
            </summary>
            <param name="resourceOrScopes">resourceOrScopes to get a token for.</param>
            <param name="tenantId">tenant to get a token for.</param>
            <param name="account">Account to get a token for.</param>
            <param name="authenticationFlowType">flow type</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Authentication result data.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.String,System.Threading.CancellationToken)">
            <summary>
            Authenticate an already existing account. This may cause the service to call back
            into the client to launch UI.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="queryParameters">Tarameters to use during interactive authentication. This can be null or empty.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A new account after authentication.</returns>
            <exception cref="T:System.ArgumentNullException">If account is null.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.String,System.Boolean,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Error},System.String,System.Boolean,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.String,System.String,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Error},System.String,System.String,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Error},System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.ApplyScopeAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo[],System.Threading.CancellationToken)">
            <summary>
            Authenticate an account any apply the passed in scopes.
            This may call back to the client to prompt for UI if required.
            </summary>
            <param name="account">Account to apply scopes to.</param>
            <param name="scopes">Scopes to apply to the account.</param>
            <param name="cancellationToken">cancellation token</param>
            <returns>An account with the scopes applied.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.RefreshAccountStateAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Refresh the account information without prompting.
            This can include tenant information, display information, and scope information.
            </summary>
            <param name="account">Account to refresh.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>Result with refreshed account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.ClearAllAccountStateAsync(System.Threading.CancellationToken)">
            <summary>
            Clear any authenticated state for all accounts.
            </summary>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.CreateAccountAsync(System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            Create a new account. This will call back to the client
            to launch UI.
            </summary>
            <param name="userName">Optional user name to pre fill out the sign in dialog with.</param>
            <param name="queryParameters">Parameters to use during interactive authentication. Can be null or empty.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>An account after it has been created.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.CreateAccountAsync(System.String,System.String,System.Boolean,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.CreateAccountAsync(System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.CreateAccountAsync(System.String,System.String,System.String,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.RefreshDisplayInfoAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Refresh the display information on an account.
            </summary>
            <param name="account">Account to get the updated display information for.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>An account with the updated display information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.AcquireSessionTokenAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor,System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.GetOidForTidAsync(System.String,Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.CreateAccountFromAadAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Immutable.ImmutableArray{Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo},System.Collections.Generic.List{System.Exception},Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Create an account from an AAD token.
            </summary>
            <param name="account">Account to use for re-authentication.</param>
            <param name="scopes">Artimis scopes to use.</param>
            <param name="errors">List to put errors in.</param>
            <param name="authInfo">AUthentication info to create the account from. </param>
            <param name="promptIfNeeded">Prompt if needed.</param>
            <param name="queryParameters">Are there any additional query parameters.</param>
            <param name="authenticationFlowType">Authentication flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Account to be added to the store.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.GetDefaultProviderImage">
            <summary>
            Get the default image for an Work/School account.
            </summary>
            <returns>Bitmap for the work or school account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.GetMSAImage">
            <summary>
            Get the default image for an MSA account.
            </summary>
            /// <returns>Bitmap for the microsoft account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.RefreshAccountAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo[],System.Threading.CancellationToken)">
            <summary>
            Refresh the account tenant and other infomation, and apply any additional scopes if required.
            </summary>
            <param name="account">Account to refresh.</param>
            <param name="scopes">Scopes.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Account result with refreshed data.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.VerifyAccount(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Verify an account is for this account provider.
            </summary>
            <param name="account">Account to verify.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.GetTenantInfoAndScopeInfoAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Collections.Immutable.ImmutableArray{Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo},System.Boolean,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Get the set of tenants a user is a member of and the associated scope information if any is provided.
            </summary>
            <param name="authInfo">Authentication information for the user.</param>
            <param name="scopes">Scopes for the user.</param>
            <param name="isMSA">Is the account an MSA account or not.</param>
            <param name="promptIfNeeded">If attempting to acquire tokens silently fails should the user be prompted for credentials.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library. They are only used if <see param="promptIfNeeded" /> is set to true.</param>
            <param name="authenticationFlowType">Type of authentication flow</param>
            <param name="additionalAuthProperties">Additional authentication properties</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Set of tenant information based on the users tenant membership and passed in scopes. And an updated set of scope info with tenantId filled in in the case where domain was used for the scope.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.GetAADOrganizationsInfoAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Get the list of AAD organizations a user is a member of.
            </summary>
            <param name="authInfo">Authentication information for the user.</param>
            <param name="promptIfNeeded">If attempting to acquire tokens silently fails should the user be prompted for credentials.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library. They are only used if <see param="promptIfNeeded" /> is set to true.</param>
            <param name="authenticationFlowType">Type of authentication flow.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Set of tenant information based on the users tenant membership and passed in scopes. And an updated set of scope info with tenantId filled in in the case where domain was used for the scope.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.VerifyInitialized">
            <summary>
            Throw if the service has not been initialzied when this method is called.
            </summary>
            <exception cref="T:System.InvalidOperationException">Thrown when this method is called before the service has been initialized.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.SetAdditionalContextPropertiesAsync(System.Collections.Generic.IDictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.RemoveAccountCredentialsAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderService.GetSignedWindowsAccountIDsAsync">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo">
            <summary>
            Info returned after an authentication that is used to create an account.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.#ctor(System.String,System.String,System.String,System.String,System.String,System.String,Microsoft.Developer.IdentityService.AccountProvider.AccessTokenResult)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo" /> class.
            Information retrieved after a sucessful authentication.
            </summary>
            <param name="displayName">Display name such as first, last name. This can be empty, but not null.</param>
            <param name="displayableUserId">Email address, or other displayable user identifier.</param>
            <param name="tenantId">Id of the tenant where the user authenticated with.</param>
            <param name="identityProvider">Identity provider that authenticated the user.</param>
            <param name="uniqueIdForTenantId">UniqueId from AAD for the user in their home tenant.</param>
            <param name="idToken">Identity Token, may not be available.</param>
            <param name="authenticationResult">Access token and its type.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.DisplayName">
            <summary>
            Gets the displayable name the user has chosen in aad.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.DisplayableUserId">
            <summary>
            Gets the displayable Id such as email address.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.TenantId">
            <summary>
            Gets the tenant id for this authentication.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.IdentityProvider">
            <summary>
            Gets the Identity provider for the account.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.UniqueIdForTenantId">
            <summary>
            Gets the unique Id for the tenant Id.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.IdToken">
            <summary>
            Gets the id token may be empty.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo.AuthenticationResult">
            <summary>
            Gets the access token and its type.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.CustomWebUI">
            <summary>
            Provides callback functionality for Custom Web UI flows.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.CustomWebUI.rpc">
            <summary>
            Gets or sets gets the Json stream that can be used to callback to the client.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.CustomWebUI.#ctor(StreamJsonRpc.JsonRpc,System.Diagnostics.TraceSource)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.CustomWebUI" /> class.
            Custom web UI for getting an access token interactivly.
            </summary>
            <param name="rpc">RPC callback.</param>
            <param name="logger">Logger.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.CustomWebUI.AcquireAuthorizationCodeAsync(System.Uri,System.Uri,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.CustomWebUI.AcquireAuthorizationCodeImplAsync(System.Uri,System.Uri,System.Threading.CancellationToken)">
            <summary>
            Acquire a token interactivly by handling the sign in flow.
            </summary>
            <param name="authorizationUri">Initial URI to browse to.</param>
            <param name="redirectUri">URI to redirect to when finished.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>URI with an authorization code.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.GraphRestResponseException">
            <summary>
            Thrown when the graph rest api responds with a non-success.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.GraphRestResponseException.ResponseCode">
            <summary>
            The http status code of the response that triggered this exception.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.GraphRestResponseException.#ctor(System.Net.HttpStatusCode)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.GraphRestResponseException" /> class with a standard message.
            </summary>
            <param name="responseCode">The HTTP status code of the response that triggered this exception.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.GraphRestResponseException.#ctor(System.Net.HttpStatusCode,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.GraphRestResponseException" /> class with a custom message.
            </summary>
            <param name="responseCode">The HTTP status code of the response that triggered this exception.</param>
            <param name="message">Custom message.</param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices">
            <summary>
            Methods which access the network.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.Rpc">
            <summary>
            Gets or sets gets the Json stream that can be used to callback to the client.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.Configuration">
            <summary>
            Gets the configuration to use to call over the network.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.CommonTenant">
            <summary>
            Gets the name of the common tenant for this network service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.UtcNow">
            <summary>
            Get the current UTC time.
            </summary>
            <returns>The current UTC time.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.AcquireTokenWithPromptAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Acquire a token. This method will call back to the client to ask it to prompt with UI.
            </summary>
            <param name="resourceOrScopes">Resource or scopes to get access token for.</param>
            <param name="tenant">Tenant to get the access token for.</param>
            <param name="userId">User identifier to get the access token for.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType">Which flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">cancellationToken.</param>
            <returns>Authentication information including the access token.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.AcquireTokenSilentAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Threading.CancellationToken)">
            <summary>
            Acquire a token with no prompting allowed.
            </summary>
            <param name="resourceOrScopes">ResourceOrScopes to get access token for.</param>
            <param name="tenant">Tenant to get the access token for.</param>
            <param name="userId">User identifier to get the access token for.</param>
            <param name="authenticationFlowType">kind of auth flow used</param>
            <param name="cancellationToken">cancellationToken.</param>
            <returns>Authentication information including the access token.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetTenantDetailsAsync(Microsoft.Developer.IdentityService.AccountProvider.TenantInformation,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Given a <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation" /> with at least <see cref="P:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.TenantId" />, gets and updates values for
            <see cref="P:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.DefaultDomain" /> in the supplied partial tenant object.
            </summary>
            <param name="partialTenantInfo">The object to be augmented with a friendly name and/or default domain.</param>
            <param name="authInfo">Authentication information used to access tenant details.</param>
            <param name="promptIfNeeded">If attempting to acquire tokens silently fails, should the user be prompted for credentials.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType">Which flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">Cancellation Token.</param>
            <returns>A task to track completion of async work.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetSessionTokenFromVsoAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor,System.Threading.CancellationToken)">
            <summary>
            Get a session token from VSO.
            </summary>
            <param name="account">Account to get the session token for.</param>
            <param name="tokenDescriptor">Descriptor to tell us what parameters to use.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A session token entry.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetTenantMembershipAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Gets a set of tenant identifiers the user is a member of.
            </summary>
            <param name="authInfo">Authentication information.</param>
            <param name="promptIfNeeded">If attempting to acquire tokens silently fails should the user be prompted for credentials.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType">Which flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Set of tenantIdentifiers.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetTenantInformationAsync(System.Net.Http.HttpClient,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Gets a list of <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation" /> objects representing all the tenants the user is a member of.
            </summary>
            <param name="client">The client to use for network requests.</param>
            <param name="authInfo">Authentication information.</param>
            <param name="promptIfNeeded">If attempting to acquire tokens silently fails should the user be prompted for credentials.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType">Which flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A set of <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation" />.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetAADOrganizationInformationAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Gets a list of strings representing all the AAD organizations the user is a member of.
            </summary>
            <param name="authInfo">Authentication information.</param>
            <param name="promptIfNeeded">If attempting to acquire tokens silently fails should the user be prompted for credentials.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType">Which flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A set of strings.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetContractsAsync(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Threading.CancellationToken)">
            <summary>
            Gets a list of <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo" /> objects representing all contracts that the user has access to.
            </summary>
            <param name="authInfo">Authentication information.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A set of <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo" />.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.ClearAllAccountStateAsync(System.Threading.CancellationToken)">
            <summary>
            Clear account state for all accounts.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetProfileInfoAsync(System.Boolean,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.Boolean,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Get profile information.
            </summary>
            <param name="isMSA"> is the account an MSA account</param>
            <param name="authInfo">Authorization information.</param>
            <param name="promptIfNeeded">If attempting to acquire tokens silently fails should the user be prompted for credentials.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library. They are only used if <see param="promptIfNeeded" /> is set to true.</param>
            <param name="authenticationFlowType">Which flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A dictionary of configuration information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.AcquireTokenWithPromptIfNeededAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationInfo,System.String,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Try to acquire a token silently. If that fails then call back to the client to ask it to prompt with UI.
            </summary>
            <param name="resourceOrScopes">Resource or scopes to get access token for.</param>
            <param name="tenant">Tenant to get the access token for.</param>
            <param name="userInfo">Authetnication information used to access the users list of tenants.</param>
            <param name="queryParameters">Query parameters to pass to the authentication library.</param>
            <param name="authenticationFlowType">Which flow to use.</param>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">cancellationToken.</param>
            <returns>Authentication information including the access token.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.GetChallengeClaims(System.Exception)">
            <summary>
            Given an exception check to see if it has additional claims due to a claims challenge and return them.
            Return null if no claims are on the exception or the exception is not understood by the network service.
            </summary>
            <param name="e">exception to check for claims.</param>
            <returns>string of claims.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.RemoveCredentialsForAccountAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Removes the credentials for the given account from the machine.
            </summary>
            <param name="account">The account to remove credentials for.</param>
            <param name="cancellationToken">Cancellation Token.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the result of the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices.AcquireAuthenticationInfoForDefaultOSAccount(System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Try to acquire a token silently using the OS broker.
            </summary>
            <param name="additionalAuthProperties">Additional authentication properties.</param>
            <param name="cancellationToken">cancellationToken.</param>
            <returns>Authentication information including the access token.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IProfileInformation">
            <summary>
            Users profile information.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.IProfileInformation.DisplayName">
            <summary>
            Gets a users display name.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.IProfileInformation.Id">
            <summary>
            Gets the users profile identifier.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.IProfileInformation.ProfileLogo">
            <summary>
            Gets the users profile logo.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl">
            <summary>
            Set of methods the identity services uses to communicates with network resources.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.HomeTenant">
            <summary>
            The common tenant.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.Interactivesemaphore">
            <summary>
            Need to synchronize the call to MSAL interactive
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.#ctor(Microsoft.Developer.IdentityService.Network.INetworkClientFactory,Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,System.Diagnostics.TraceSource,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl" /> class.
            </summary>
            <param name="networkClientFactory">IMsalHttpClientFactory to provide to msal.</param>
            <param name="aadConfiguration">Aad configuration.</param>
            <param name="logger">Logger.</param>
            <param name="appName">The name of the application. Eg: Visual Studio, Blend, etc.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.CommonTenant">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.AcquireTokenSilentAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.GetChallengeClaims(System.Exception)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.ClearAllAccountStateAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.GetTokenInteractiveContextAsync(Microsoft.Developer.IdentityService.ResourceOrScopes,System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier,System.String,System.Collections.Generic.Dictionary{System.String,System.String},Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.ExecuteInteractiveFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.ExecuteWebUIFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.ExecuteDeviceCodeFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.ExecuteUserNamePasswordFlowAsync(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext,System.Boolean,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.AddLoginHintToQueryParameters(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext)">
            <summary>
            Add login hint to the set of query parameters.
            </summary>
            <param name="context">context which contains the query parameters.</param>
            <returns>The query parameters in dictionary and string form.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.IsReauth(Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext)">
            <summary>
            Determines whether this context is for a Reauth scenario or not.
            </summary>
            <param name="context">Context for authentication.</param>
            <returns>Whether or not this is reauth.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.GetFeatureTextForWAM(System.String,System.String,System.String)">
            <summary>
            Gets the header text for the WAM
            </summary>
            <param name="featureText">Feature text to display</param>
            <param name="domain">domain if available</param>
            <param name="tenant">tenant if no domain is available</param>
            <returns>Localized string</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.RedirectUriIsAvailableAsync(System.Threading.CancellationToken)">
            <summary>
            Checks to see if we can contact the server which is hosting the successful redirect.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>True if a connection could be made, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MsalNetworkServicesImpl.RemoveCredentialsForAccountAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.OSAccountUtilities.IsADFSAuthority(System.Uri)">
            <summary>
            Determines if the authority is an ADFS authority.
            </summary>
            <param name="authority">Uri to check if it is ADFS or not.</param>
            <returns>true if the authority is an adfs authority, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.ProfileInformation">
            <summary>
            Users profile infomation.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.ProfileInformation.#ctor(System.Byte[],System.String,System.Guid)">
             <summary>
             Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.ProfileInformation" /> class.
            
             </summary>
             <param name="profileLogo">Profile logo. Could be null.</param>
             <param name="displayName">Display Name. Could be null.</param>
             <param name="id">Identitifer.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ProfileInformation.DisplayName">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ProfileInformation.Id">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ProfileInformation.ProfileLogo">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifierType">
            <summary>
            Indicates the type of <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier" />.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifierType.UniqueId">
            <summary>
            UniqueId from active directory
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifierType.OptionalDisplayableId">
            <summary>
            The identitifer is an email address and the user is allowed to change the email address during authentication
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifierType.RequiredDisplayableId">
            <summary>
            The identifier is a displayableId and the user is not allowed to change the authenticated user during authentication.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier">
            <summary>
            Contains identifier for a user.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier.#ctor(System.String,Microsoft.Developer.IdentityService.AccountProvider.UserIdentifierType)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier" /> class.
            </summary>
            <param name="id">Identifier.</param>
            <param name="type">Type of id.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier.Type">
            <summary>
            Gets type of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier" />.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier.Id">
            <summary>
            Gets Id of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.UserIdentifier" />.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties">
            <summary>
            Definition for properties on accounts created by the Aad account provider.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.IdentityAndConfigurationHashPropertyName">
            <summary>
            Identity and Configuration hash.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AccountHomeTenantPropertyName">
            <summary>
            This is the tenantId of the home tenant for the user. This is a GUID and its friendly name can be looked up in the TenantIdToNameMap property.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AccountIdentityProviderProperty">
            <summary>
             The name of the identity provider used to authenticate the account, this is set when the account is created.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AccountTenantInformationPropertyName">
            <summary>
            This is an internal property that contains the tenant information for the account.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.TenantIdToDefaultDomainMappingPropertyName">
            <summary>
            A dictionary of tenantId to default domain name for a given tenant.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.IdTokenPayloadPropertyName">
            <summary>
            This is an private property that contains the id token information for the account.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.ScopesPropertyName">
            <summary>
            This is an internal property that contains the scope information for the account.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AadConfigurationInfo">
            <summary>
            This is an internal property that contains the scope information for the account.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.IsMSAPropertyName">
            <summary>
            Is this account an MSA or WSA.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.MissingTenantsPropertyName">
            <summary>
            Tenants which the user is a member of but we could not get tokens for.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AADAccountOrganizations">
            <summary>
            AAD account organizations that a user is a member of.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.ContractsPropertyName">
            <summary>
            Tenants which the user has been granted partner access, but is not a member.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.DefaultExtraQueryParameters">
            <summary>
            Default query parameters for use with during sign in for the embedded web browser flow.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.DisableMsaFedQueryParameter">
            <summary>
            A query parameter that tells AAD that we do not want to use the MSA login in screen. This forces users onto the work or school account screen.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.Providers">
            <summary>
            The list of providers for the account.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.LiveDomainHintQueryParameter">
            <summary>
            A query parameter that tells AAD that we would like to authenticate with live.com. This also works with PPE so we do not need a different address for that.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GitHubProviderHintQueryParameter">
            <summary>
            A query parameter that tells AAD that we would like to authenticate with github.com. This also works with PPE so we do not need a different address for that.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.KmsiQueryParameter">
            <summary>
            Keep me signed in query parameter
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.VsidPropertyName">
            <summary>
            Property that contains the VSID for the account in the VSO system.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.RequiresMfaAuthentication">
            <summary>
            The account is not un-authenticated but does need MFA authentication.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.MfaEndpoint">
            <summary>
            The endpoint that should be used when creating an account in order to get the user to MFA. The endpoint should be one that has MFA enabled.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.MfaTenantId">
            <summary>
            The tenantId that has MFA enabled.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.ClaimsForChallenge">
            <summary>
            Additional claims to pass to the server due to a claims challenge.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.TenantIdComparison">
            <summary>
            String comparison to use when comparing two tenant identifiers. The tenantIds can come from active directory and we do not want to break if the casing changes
            for some reason. Currently tenants are normally guids or domain names both of which are currently case insensitive.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.TenantIdComparer">
            <summary>
            What kind of comparer to use when comparing tenantId's.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AccountProviderIdentifier">
            <summary>
            Account providerId for the Aad account provider.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.TenantIdToOidMap">
            <summary>
            Map of tenantId to Oid.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.LoginHintQueryParameter">
            <summary>
            A query parameter that tells AAD which email address to pre-populate the sign in forms with.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.ClaimQueryParameter">
            <summary>
            A query parameter that tells AAD additional claims to use during authentication.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.DisplayPopupQueryParameter">
            <summary>
            Display type query parameter.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.SiteIdQueryParameter">
            <summary>
            Extra sign in query parameters for use with during sign in.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.NuxQueryParameter">
            <summary>
            Nux query parameter, used by AAD to make sure we use the correct sign in page.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.FormatGuidAsString(System.Guid)">
            <summary>
            Format the guid as a string.
            </summary>
            <param name="guid">Guid to format.</param>
            <returns>Formatted guid in string format.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetTenantIdToDefaultDomainMappingProperty(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets a dictionary of tenants mapped to verified domains for a given account.
            </summary>
            <param name="account">The account to get tenant-domain pairs for.</param>
            <returns>A dictionary of tenant-domain pairs for the given account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetIdentityProviderProperty(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Returns the value of the identity provider used for this account.
            </summary>
            <param name="account">Account to get identity provider property from.</param>
            <returns>The identity provider. This may be null, a guid(in string format), or some name.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetProvidersProperty(Microsoft.Developer.IdentityService.Account,System.String)">
            <summary>
            Parses the Providers JSON array to get a list of providers.
            </summary>
            <param name="account">Account to get providers from.</param>
            <param name="separator">The separator to use in the return list.</param>
            <returns>A `separator`-separated list of providers, or the empty string if the providers property is missing or set to "null".</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetIdentityAndConfigurationHashPropertyNameProperty(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Returns the value of the identity combined with the configuration hash.
            This is used when converting between a identity service account and a visual studio online account.
            </summary>
            <param name="account">Account to get provider property from.</param>
            <returns>Will be normally be the uniqueId of the provider combined with the hash of the configuration.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetVisualStudioIdentifier(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Returns the visual studio identifier if it exists on the account.
            </summary>
            <param name="account">Account to get vsid from.</param>
            <returns>The visual studio identifier. This may be null if it does not exist on the account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AccountUsesConfiguration(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration)">
            <summary>
            Determines if the account has the same configuration as the passed in configuration.
            This can be used to filter accounts with different configurations.
            </summary>
            <param name="account">Account.</param>
            <param name="configuration">Configuration.</param>
            <returns>True if the accounts configuration matches the passed in configuration. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetHomeTenantId(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the tenantId of the home tenant for the user of this account.
            This may be null if no home tenant is found.
            </summary>
            <param name="account">Account to get Home tenant Id for.</param>
            <returns>The home tenant Id for the account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetNativeMSAHomeTenantId(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the tenantId of the home tenant for the user of this account. This will only return a tenant if the account is an MSA&gt;
            This will return null if the account is not an MSA&gt;
            </summary>
            <param name="account">Account to get Home tenant Id for.</param>
            <returns>The home tenant Id for the account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetIdTokenPayload(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Returns the payload of the id token
            This may be null if no id token is found.
            </summary>
            <param name="account">Account to get IdToken payload for.</param>
            <returns>The IdTokenPayload for the account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetConfiguration(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the AadConfiguration for an account.
            </summary>
            <param name="account">Account to get configuration for.</param>
            <returns>AadConfiguration for the account or null if configuration cannot be retrieved.</returns>
            <exception cref="T:Newtonsoft.Json.JsonException">Json exception if the json is malformed in some way.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetMfaResource(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the MFA resource if one exists in the account.
            </summary>
            <param name="account">Account.</param>
            <returns>The MFA resource to use during re-authentication for the account or null if endpoint cannot be retrieved.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetMfaTenantId(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the MFA tenantId if one exists in the account.
            </summary>
            <param name="account">Account.</param>
            <returns>The tenantId for which MFA is enabled or null if tenantId cannot be retrieved.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetAdditionalClaims(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the additional claims if they exists on the account.
            </summary>
            <param name="account">Account.</param>
            <returns>Additional claims to use on the next authentication.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetNeedsMfaAuth(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the MFA resource if one exists in the account.
            </summary>
            <param name="account">Account.</param>
            <returns>Does the account need MFAAuthentication.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetScopesForAccount(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the scopes for an account.
            </summary>
            <param name="account">Account to get scopes for.</param>
            <returns>Array of scopes or Empty array if none exists.</returns>
            <exception cref="T:Newtonsoft.Json.JsonException">Json exception if the json is malformed in some way.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetTenantsInScope(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Get tenants in scope for an account. If the account cannot be found an argument exception will be thrown.
            </summary>
            <param name="account">Account to find tenants in scope for.</param>
            <returns>Tenants in scope for an account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetContractsForAccount(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the set of contracts that the given account is a member of.
            </summary>
            <param name="account">Account to find contracts for.</param>
            <returns>Array of contracts or empty array if none exists.</returns>
            <exception cref="T:Newtonsoft.Json.JsonException">Json exception if the json is malformed in some way.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetHomeTenantInfo(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets the tenant information for the home tenant of the account. This will return a tenantInformation structure even if the home tenant is not in the scope of the account.
             If the account cannot be found an argument exception will be thrown.
             If no home tenand could be found null is returned.
            </summary>
            <param name="account">Account to find home tenant info for.</param>
            <returns>Home tenant info for the account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetTenantInformation(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Get the tenant information data off of an account.
            </summary>
            <param name="account">Account to get tenant information for.</param>
            <returns>A list of tenant information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetMissingTenantInformation(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Get the missing tenant information data off of an account.
            </summary>
            <param name="account">Account to get the missing tenant information for.</param>
            <returns>A list of missing tenants and some associated error information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetAADAccountOrganizations(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Get the Azure Active Directory organization information data of an account.
            </summary>
            <param name="account">Account to get the organization information for.</param>
            <returns>A list of the organization the user belongs to in AAD.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.IsMSAAccount(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Get a value indicating if the account is an MSA account or not.
            </summary>
            <param name="account">Account to get the property form.</param>
            <returns>True if the account is an MSA account, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.DefaultQueryParameters(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType,System.String)">
            <summary>
            Get extra query parameters for an account to be passed to AAD.
            </summary>
            <param name="account">Account to get query parameters for.</param>
            <param name="authenticationFlow">Authentication flow to use.</param>
            <param name="overrideQueryParameters">Overrides the query parameters with these if not null.</param>
            <returns>Query parameters.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AddLoginHintQueryParameter(System.String,System.String)">
            <summary>
            Add the login hint to the query parameters string.
            </summary>
            <param name="queryParameters">Existing query parameters.</param>
            <param name="userName">User name to add for the login hint.</param>
            <returns>Query parameters.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AddKmsiQueryParameter(System.String)">
            <summary>
            Add the kmsi to the query parameters string.
            </summary>
            <param name="queryParameters">Existing query parameters.</param>
            <returns>Query parameters.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AddClaimQueryParameter(System.String,System.String)">
            <summary>
            Add the additional claims to the query parameters string.
            </summary>
            <param name="queryParameters">Existing query parameters.</param>
            <param name="claims">Extra claim to add.</param>
            <returns>Query parameters.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.GetOidForTenant(Microsoft.Developer.IdentityService.Account,System.String)">
            <summary>
            Gets the Oid for a given tenantId  can return null if there is no oid available.
            </summary>
            <param name="account">Account to get Oid for.</param>
            <param name="tenantId">TenantId to get Oid for.</param>
            <returns>An oid or null.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.AddQueryParameter(System.String,System.String,System.String)">
            <summary>
            Add query parameter to the query parameter string.
            </summary>
            <param name="queryParameters">Existing set of parameters.</param>
            <param name="parameterName">Name of the parameter.</param>
            <param name="parameterValue">Value of the parameter.</param>
            <returns>The updated query parameter string.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadClientType">
            <summary>
            Defines what type of AAD client would be used.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadClientType.Default">
            <summary>
            VS client would be selected based on the user settings.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadClientType.VsClientWithNativeMsa">
            <summary>
            VS client that supports AAD along with MSA pass through and native MSA.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadClientType.VsClient">
            <summary>
            VS client that supports AAD and MSA pass through.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration">
            <summary>
            Aad configuration.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.#ctor(System.Uri,System.Uri,System.Uri,System.Uri[],System.String,System.String,System.Uri,System.String,System.Uri,System.Uri,System.Uri,System.Boolean,System.String,System.Uri,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration" /> class.
            </summary>
            <param name="asmEndpoint">Asm Endpoint.</param>
            <param name="authority">Authentication authority.</param>
            <param name="azureResourceManagementEndpoint">Resource management endpoint.</param>
            <param name="azureResourceManagementAudienceEndpoints">Audiences for the azure management endpoint.</param>
            <param name="clientIdentifier">Client identitifer.</param>
            <param name="environmentName">Environment name.</param>
            <param name="graphEndpoint">Graph endpoint.</param>
            <param name="msaHomeTenantId">Home tenantId for microsoft accounts.</param>
            <param name="nativeClientRedirect">Native client redirect.</param>
            <param name="portalEndpoint">Azure portal endpoint.</param>
            <param name="resourceEndpoint">Resource endpoint used to acquire tokens by default.</param>
            <param name="validateAuthority">Should the authority be validated.</param>
            <param name="authenticationQueryParameters">Extra query parameters to use during authentication. Can be null or empty.</param>
            <param name="visualStudioOnlineEndpoint">Visual studio online endpoint. Can be null if the configuration does not support the endpoint.</param>
            <param name="visualStudioOnlineAudience">VSTS service principal. Can be null.</param>
            <remarks>
            Constructor for backward compatibility.
            </remarks>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.#ctor(System.Uri,System.Uri,System.Uri,System.Uri[],System.String,System.String,System.Uri,System.String,System.Uri,System.Uri,System.Uri,System.Boolean,System.String,System.Uri,System.String,System.Uri)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration" /> class.
            </summary>
            <param name="asmEndpoint">Asm Endpoint.</param>
            <param name="authority">Authentication authority.</param>
            <param name="azureResourceManagementEndpoint">Resource management endpoint.</param>
            <param name="azureResourceManagementAudienceEndpoints">Audiences for the azure management endpoint.</param>
            <param name="clientIdentifier">Client identitifer.</param>
            <param name="environmentName">Environment name.</param>
            <param name="graphEndpoint">Graph endpoint.</param>
            <param name="msaHomeTenantId">Home tenantId for microsoft accounts.</param>
            <param name="nativeClientRedirect">Native client redirect.</param>
            <param name="portalEndpoint">Azure portal endpoint.</param>
            <param name="resourceEndpoint">Resource endpoint used to acquire tokens by default.</param>
            <param name="validateAuthority">Should the authority be validated.</param>
            <param name="authenticationQueryParameters">Extra query parameters to use during authentication. Can be null or empty.</param>
            <param name="visualStudioOnlineEndpoint">Visual studio online endpoint. Can be null if the configuration does not support the endpoint.</param>
            <param name="visualStudioOnlineAudience">VSTS service principal. Can be null.</param>
            <param name="msGraphEndpoint">Microsoft Graph endpoint.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.AuthenticationQueryParameters">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.AsmEndPoint">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.Authority">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.AzureResourceManagementEndpoint">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.AzureResourceManagementAudienceEndpoints">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.ClientIdentifier">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.ConfigurationHash">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.EnvironmentName">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.GraphEndpoint">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.MsaHomeTenantId">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.NativeClientRedirect">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.PortalEndpoint">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.ResourceEndpoint">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.ValidateAuthority">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.VisualStudioOnlineEndpoint">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.VisualStudioOnlineAudience">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.GenerateConfigHash">
            <summary>
            Generate the SHA256 hash of this object.
            </summary>
            <returns>String representation of the hash.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.GetMsGraphEndpointAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration.CloneWithClientId(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,System.String)">
            <summary>
            Clone with a new clientId
            </summary>
            <param name="configuration">config to clone</param>
            <param name="clientIdentifier">client id to clone with</param>
            <returns>new configuration</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadConfigurationExtensions">
            <summary>
            Extensions for IAadConfiguration
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadConfigurationExtensions.GetMsGraphEndpointAsync(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,System.Threading.CancellationToken)">
            <inheridoc cref="M:Microsoft.Developer.IdentityService.AccountProvider.IMsGraphConfiguration.GetMsGraphEndpointAsync(System.Threading.CancellationToken)" />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder">
            <summary>
            Builds a AadConfiguration with default values for VS.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.DefaultFileName">
            <summary>
            Default file name for the json store.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.ConfigFileExtension">
            <summary>
            Aad configuration file extension.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.ClientIdentifierNativeMSA">
            <summary>
            Used for VS version 17.3 and above unless working with systems that haven't been upgraded yet.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.LegacyClientIdentifier">
            <summary>
            Generally used for VS up to version 17.2, still occasionally needed for things like Azure Stack which have
            a slow update velocity. Anywhere you can limit usage of this, please do.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.LegacyClientIdentifierStgExp">
            <summary>
            Generally used for Storage Explorer up to around version 1.34.0. Still occasionally needed for things like
            Azure Stack which have a slow update velocity. Anywhere you can limit usage of this, please do.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.ClientIdentifierStgExp">
            <summary>
            Storage Explorer client id.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.ClientIdentifier">
            <summary>
            Visual studio client id.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.DefaultBufferSize">
            <summary>
            Default buffer size for file streams.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.GetAadProviderConfigurationAsync(System.String,System.Threading.CancellationToken)">
            <summary>
            Gets a AadConfiguration with default values for VS
            The order of picking configuration values are -
            1. Specified file path
            2. Default file
            3. Registry override
            4. Default values specified above.
            </summary>
            <param name="path">path to the file containing json configuration.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>An AadConfiguration with default VS values.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.GetAadProviderConfigurationbyNameAsync(System.String,System.Threading.CancellationToken)">
            <summary>
            Gets an AadProviderConfiguration for the given configuration name
            Searches in the home directory\identityservice, if none found returns null.
            </summary>
            <param name="configName">Name of the configuration without the file extension.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>An AadConfiguration matching the name if exists, otherwise returns null.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.GetAadProviderConfigurationbyNameAsync(System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            Gets an AadProviderConfiguration for the given configuration name
            Searches in the <paramref name="configPath" />, if none found returns null.
            </summary>
            <param name="configName">Name of the configuration without the file extension.</param>
            <param name="configPath">Location to search for config files.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>An AadConfiguration matching the name if exists, otherwise returns null.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.GetAllProviderConfigurationNamesAsync(System.String,System.Threading.CancellationToken)">
            <summary>
            Gets a list of names for all the configuration available in the specific location.
            </summary>
            <param name="configPath">Optional location to search for config files.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>list of account provider configuration names.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.CreateConfigurationFileIfNeededAsync(Microsoft.Developer.IdentityService.Account,System.String,System.Threading.CancellationToken)">
            <summary>
            Creates a configuration file on disk for the input configuration if one doesn't already exist.
            </summary>
            <param name="account">Input account whose configuration will be used to create the new configuration file.</param>
            <param name="configPath">Optional directory where the configuration file is to be created.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Task.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.CreateConfigurationfromManagementEndpointAsync(System.Uri,Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,System.String,System.Threading.CancellationToken)">
            <summary>
            Creates a configuration and writes it to disk if needed from a given management endpoint
            could throw webexception if fails to get a response from the management endpoint.
            </summary>
            <param name="managementEndpoint">Management endpoint for the provider.</param>
            <param name="configuration">IAadConfiguration if well known provider.</param>
            <param name="configPath">Optional directory where the configuration file is to be created.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>configuration.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.AadProviderConfigurationBuilder.IsADFSAuthority(System.Uri)">
            <summary>
            Is the authority an ADFS authority or not.
            </summary>
            <param name="authority">Authority.</param>
            <returns>True if the authority is an ADFS authority. False otherwise.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AccountIdentifierResult">
            <summary>
            Result of an authorization.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AccountIdentifierResult.AccountIdentifier">
            <summary>
            Gets or sets the account identifier.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AccountIdentifierResult.TenantId">
            <summary>
            Gets or sets the tenant Id the account identifier is relative to.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.AccountIdentifierResult.SerializedException">
            <summary>
            Gets or sets the serialized exception if one exists. Null if no exception occured.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType">
            <summary>
            Which authentication flow to use.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType.Default">
            <summary>
            Use a default flow type the service decides.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType.Embedded">
            <summary>
             Use the embedded flow, this uses an embedded IE control.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType.DeviceCode">
            <summary>
            Use the device code flow.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType.SystemWebBrowser">
            <summary>
            Use the system web browser flow.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType.WAM">
            <summary>
            Use WAM flow.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ConnectedAccountInformation.ConnectedAccountId">
            <summary>
            Gets a value indicating the account connected to windows OS.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ConnectedAccountInformation.ConnectedAccountUserName">
            <summary>
            Gets a value indicating the account connected to windows OS.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ConnectedAccountInformation.UserTile">
            <summary>
            Gets a value that represents the user profile image.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ConnectedAccountInformation.ConnectedAccountExists">
            <summary>
            Gets a value indicating whether an account is connected to windows OS.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult">
            <summary>
            Device code result.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.#ctor(System.String,System.String,System.String,System.DateTimeOffset,System.Int64,System.String,System.String,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult" /> class.
            </summary>
            <param name="userCode">User code returned by the service.</param>
            <param name="deviceCode">Device code.</param>
            <param name="verificationUrl">Verificaton url.</param>
            <param name="expiresOn">When the device code expires.</param>
            <param name="interval">How often to poll.</param>
            <param name="message">Message to display.</param>
            <param name="clientId">Client Id.</param>
            <param name="resource">Resource code is for.</param>
            <param name="tenant">tenant the code is for.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult" /> class.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.UserCode">
            <summary>
            Gets the User code returned by the service.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.DeviceCode">
            <summary>
            Gets the Device code returned by the service.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.VerificationUrl">
            <summary>
            Gets the Verification URL where the user must navigate to authenticate using the device code and credentials.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.ExpiresOn">
            <summary>
            Gets the Time when the device code will expire.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.Interval">
            <summary>
            Gets the Polling interval time to check for completion of authentication flow.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.Message">
            <summary>
            Gets the User friendly text response that can be used for display purpose.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.ClientId">
            <summary>
            Gets the Identifier of the client requesting device code.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.Resource">
            <summary>
            Gets the Identifier of the target resource that would be the recipient of the token.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult.Tenant">
            <summary>
            Gets the the tenant for the request.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService">
            <summary>
            Service method that a service will expose to clients.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.String,System.Threading.CancellationToken)">
            <summary>
            This method is used to authenticate an account from an unauthenticated state.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="extraQueryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="cancellation">cancellation token</param>
            <returns>The account which has been authenticated or null if authentication fails or is cancelled.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.CreateAccountAsync(System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            Creates an account on the keychain by launching a sign in window and asking for credentials.
            If the account already exists on the keychain the account will be updated. No additional account will be created.
            This should be called on the UI thread.
            </summary>
            <param name="userName">user name to optionally use to create the account with. This may be null or empty.</param>
            <param name="extraQueryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="cancellation">Cancellation token</param>
            <returns>The created account which has been created.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.ClearAllAccountStateAsync(System.Threading.CancellationToken)">
            <summary>
            Clear any authentication tokens for all acounts.
            </summary>
            <param name="cancellation">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.AcquireTokenAsync(System.String,System.String,Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Acquires an access token for the resource based on the tenant and account requested.
            </summary>
            <param name="resource">Resource to get the token for.</param>
            <param name="tenantId">Tenant to get the token within.</param>
            <param name="account">Account to get the uniqueId or display name for requesting a token.</param>
            <param name="cancellation">Cancellation token</param>
            <returns>An IAuthResult which contains the access token and the token type.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.ApplyScopeAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo[],System.Threading.CancellationToken)">
            <summary>
            Authenticate an account and apply a set of scopes to it.
            </summary>
            <param name="account">Account to apply scopes to.</param>
            <param name="scopes">Scopes to apply to the account.</param>
            <param name="cancellation">Cancellation token</param>
            <returns>An account with the scopes applied to it.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.RefreshAccountStateAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Refreshes the account data from the server, this can include
            tenants, domains, display information. This is done without prompting
            for re-authentication.
            </summary>
            <param name="account">Account to refresh information for.</param>
            <param name="cancellation">Cancellation token</param>
            <returns>A result that contains a refreshed account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.RefreshDisplayInfoAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Refresh the display info for an account.
            </summary>
            <param name="account">Account to get updated display information for.</param>
            <param name="cancellation">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService.InitializeAsync(Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration,System.String,System.Threading.CancellationToken)">
            <summary>
            Initialzie the service.
            </summary>
            <param name="configuration">Configuration to initialize with.</param>
            <param name="appName">Name of the application. Eg: Visual Studio, Blend, etc.</param>
            <param name="cancellation">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService2">
            <summary>
            Service method that a service will expose to clients.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService2.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.String,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            This method is used to authenticate an account from an unauthenticated state.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="queryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="useDeviceFlow">Use the device flow.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The account which has been authenticated or null if authentication fails or is cancelled.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService2.CreateAccountAsync(System.String,System.String,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            Creates an account on the keychain by launching a sign in window and asking for credentials.
            If the account already exists on the keychain the account will be updated. No additional account will be created.
            This should be called on the UI thread.
            </summary>
            <param name="userName">user name to optionally use to create the account with. This may be null or empty.</param>
            <param name="queryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="useDeviceFlow">Use the device flow.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The created account which has been created.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService3">
            <summary>
            Service method that a service will expose to clients.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService3.GetOidForTidAsync(System.String,Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Get an Oid for a tenantId in an account. Can be null if the oid could not be retrieved.
            </summary>
            <param name="tenantId">TenantId.</param>
            <param name="account">Account.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>An Oid if one exists for the account and tenant, else returns null.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService4">
            <summary>
            Service method that a service will expose to clients.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService4.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            This method is used to authenticate an account from an unauthenticated state.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="queryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="authenticationFlow">Authentication flow.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The account which has been authenticated or null if authentication fails or is cancelled.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService4.CreateAccountAsync(System.String,System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            Creates an account on the keychain by launching a sign in window and asking for credentials.
            If the account already exists on the keychain the account will be updated. No additional account will be created.
            This should be called on the UI thread.
            </summary>
            <param name="userName">user name to optionally use to create the account with. This may be null or empty.</param>
            <param name="queryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="authenticationFlow">Authentication flow.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The created account which has been created.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService5">
            <summary>
            Service method that a service will expose to clients.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService5.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            This method is used to authenticate an account from an unauthenticated state.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="additionalAuthProperties">Properties to define the behavior of authentication.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The account which has been authenticated or null if authentication fails or is cancelled.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService5.CreateAccountAsync(System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Creates an account on the keychain by launching a sign in window and asking for credentials.
            If the account already exists on the keychain the account will be updated. No additional account will be created.
            This should be called on the UI thread.
            </summary>
            <param name="additionalAuthProperties">Properties to define the behavior of authentication.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The created account which has been created.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService6">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService7">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService7.RemoveAccountCredentialsAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Allows a caller to asyncrhonously delete authentication information for the given account.
            </summary>
            <param name="account">The account to clear authentication for.</param>
            <param name="cancellationToken">Cancellation Token.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the result of the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService7.CreateAccountFromOSUserAsync(System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Creates an account using WAM and the default OS account.
            </summary>
            <param name="additionalProperties">Additional properties</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the result of the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService7.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Error},System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            This method is used to authenticate an account from an unauthenticated state.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="errorsToFix"><see cref="T:Microsoft.Developer.IdentityService.ErrorStorageService.Error" />s that need to be fixed. Each of these might launch a UI prompt.</param>
            <param name="additionalAuthProperties">Properties to define the behavior of authentication.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The account which has been authenticated or null if authentication fails or is cancelled.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService7.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Error},System.String,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            This method is used to authenticate an account from an unauthenticated state.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="errorsToFix"><see cref="T:Microsoft.Developer.IdentityService.ErrorStorageService.Error" />s that need to be fixed. Each of these might launch a UI prompt.</param>
            <param name="queryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="useDeviceFlow">Use the device flow.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The account which has been authenticated or null if authentication fails or is cancelled.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService7.AuthenticateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Error},System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            This method is used to authenticate an account from an unauthenticated state.
            </summary>
            <param name="account">Account to authenticate.</param>
            <param name="errorsToFix"><see cref="T:Microsoft.Developer.IdentityService.ErrorStorageService.Error" />s that need to be fixed. Each of these might launch a UI prompt.</param>
            <param name="queryParameters">Extra parameters used for the UI portion of the call.</param>
            <param name="authenticationFlow">Authentication flow.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>The account which has been authenticated or null if authentication fails or is cancelled.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService8">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderService8.AcquireTokenAsync(System.String[],System.String,Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Acquires an access token for a given resource using an account.
            </summary>
            <param name="scopes">Scopes to get the access token for.</param>
            <param name="tenantId">TenantId where the resource is registered.</param>
            <param name="account">Account to use as the user to get the acess token for.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>An AccessTokenResult that contains the access token. Null if no access token could be found.</returns>
            <exception cref="T:System.ArgumentNullException">If resource, tenantId, or account is null.</exception>
            <exception cref="T:System.ArgumentException">If resource or tenantId are empty or contain only whitespace.</exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IMsGraphConfiguration.GetMsGraphEndpointAsync(System.Threading.CancellationToken)">
            <summary>
            Gets the Microsoft Graph endpoint to use which matches with the AAD authority.
            </summary>
            <remarks>
            Can return null if Microsoft Graph not available (ex. on Azure Stack).
            </remarks>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo">
            <summary>
            Represents a missing tenant during account creation.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo.#ctor(System.String,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo" /> class.
            Constructor.
            </summary>
            <param name="tenantId">Missing tenant id.</param>
            <param name="exceptionTypeName">exceptionTypeName.</param>
            <param name="errorMessage">Error that caused the missing tenant.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo.TenantId">
            <summary>
            Gets the missing tenantid.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo.ExceptionTypeName">
            <summary>
            Gets the type name of the exception that caused the error.
            Can be null or empty if the error was not due to an exception.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo.ErrorMessage">
            <summary>
            Gets the error message that caused the missing tenantid.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo.Equals(System.Object)">
            <summary>
            Check the equality of an object with this one.
            </summary>
            <param name="obj">object to check equality for.</param>
            <returns>are the objects equal.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo.GetHashCode">
            <summary>
            Gets the hash code for the tenantId.
            </summary>
            <returns>hash code.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfoEqualityComparer">
            <summary>
            Comparer to compare two missing tenant info objects.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfoEqualityComparer.Comparer">
            <summary>
            Equality comparer singleton to compare two MissingTenantInfos.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfoEqualityComparer.Equals(Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo,Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo)">
            <summary>
            Check equality for the two missing tenant info.
            </summary>
            <param name="x">First object.</param>
            <param name="y">Second object.</param>
            <returns>Are the object equal.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfoEqualityComparer.GetHashCode(Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo)">
            <summary>
            Gets the hash code for the tenantId.
            </summary>
            <param name="obj">object to get hash code for.</param>
            <returns>hash code.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo">
            <summary>
            Contains information about how an account should be scoped.
            This will contain one scope element which is either a tenantId guid or a domain name which will
            be converted to a tenantId at a later point.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo" /> class
            with domain.
            </summary>
            <param name="domain">Domain for the scope.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo.#ctor(System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo" /> class
            with tenant Id and domain.
            </summary>
            <param name="tenantId">tenant id for the scope.</param>
            <param name="domain">Domain for the scope.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo.Domain">
            <summary>
            Gets a domain to scope an account to.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo.TenantId">
            <summary>
            Gets a tenantId to scope the account to.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo.UpdateTenantIdForDomain(System.String)">
            <summary>
            After we transform a domain to a tenantId we need to update the scope info with the tenantId guid.
            </summary>
            <param name="tenantId">Updated tenant Id for the domain.</param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation">
            <summary>
            Structure to contain the information about a tenant.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.#ctor(System.String,System.String,System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation" /> class.
            The uniqueId cannot be null or empty.
            The tenantId cannot be null or empty.
            The friendly name can be null or empty.
            </summary>
            <param name="uniqueId">unique Id that belongs to the tenant.</param>
            <param name="tenantId">tenant id guid.</param>
            <param name="friendlyName">friendly name of the tenant.</param>
            <param name="isOwned">whether the tenant is owned by the account.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.UniqueId">
            <summary>
            Gets the set of uniqueId's that belong to a tenant. Normally this is only one. But if we are authenticating an MSA that is a dual headed
            account we will get get one from live and one from AAD.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.TenantId">
            <summary>
            Gets the TenantId identifier from AAD.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.FriendlyName">
            <summary>
            Gets the friendly name of the tenant if it is available. If the tenant came from a filter
            this will be null or empty. If it came from VSTS it will normally have a friendly anme.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.IsOwned">
            <summary>
            Gets a value indicating whether the tenant is owned by this account. This list comes from VSTS.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation.DefaultDomain">
            <summary>
            Gets the name of the default domain associated with the tenant. This is not serialized as part of <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.TenantInformation" /> to maintain
            backward compatibility, but is instead put into account properties under the name <see cref="F:Microsoft.Developer.IdentityService.AccountProvider.AadAccountProviderAccountProperties.TenantIdToDefaultDomainMappingPropertyName" />.
            The default domain of the home tenant of an MSA account is null, since MSA accounts don't really have a home tenant.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.WebUiResult">
            <summary>
            Result of an authorization.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.WebUiResult.AuthorizationUriWithCode">
            <summary>
            Gets or sets the URI which contains the authorization code.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.WebUiResult.ErrorDescription">
            <summary>
            Gets or sets the error description if one exists.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.WebUiResult.ErrorCode">
            <summary>
            Gets or sets the error code if one exists.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo">
            <summary>
            Represents information about a single account, that would transfered via rpc.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo.#ctor(System.String,System.String,Microsoft.Identity.Client.AccountId)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo" /> class
            with username, environment and homeAccountId.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo.#ctor(Microsoft.Identity.Client.IAccount)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo" /> class from see <see cref="T:Microsoft.Identity.Client.IAccount" />.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo.Username">
            <inheritdoc cref="P:Microsoft.Identity.Client.IAccount.Username" />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo.Environment">
            <inheritdoc cref="P:Microsoft.Identity.Client.IAccount.Environment" />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.WindowsAccountInfo.HomeAccountId">
            <inheritdoc cref="P:Microsoft.Identity.Client.IAccount.HomeAccountId" />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.ClientProxyCallbackConstants">
            <summary>
            Set of constants to make calls between the service and the client.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.ClientProxyCallbackConstants.UserName">
            <summary>
            User Name.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProvider.ClientProxyCallbackConstants.Password">
            <summary>
            Password.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks">
            <summary>
            Methods that we can call back on the client to assist in adal authentication.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks.SupportsUIAsync">
            <summary>
            Does the client support UI.
            </summary>
            <returns>True if the client supports UI. False if we need to ask for a username and password.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks.GetNonUIAuthenticationDataAsync">
            <summary>
            Gets the user name and password to use with adal.
            </summary>
            <returns>Dictionary of username and password or other credential data.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks2">
            <summary>
            Methods that we can call back on the client to assist in adal authentication.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks2.PresentDeviceCodeFlowAsync(Microsoft.Developer.IdentityService.AccountProvider.DeviceCodeResult,System.Threading.CancellationToken)">
            <summary>
            Present the user the device flow message.
            </summary>
            <param name="deviceCode">Device code with uri and message.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Should we start polling for the authorization to complete.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks3">
            <summary>
            Methods that we can call back on the client to assist in adal authentication.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks3.SupportsWebUIAsync">
            <summary>
            Does the client support web UI.
            </summary>
            <returns>True if the client supports web UI. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks3.AcquireMSALAuthorizationResultAsync(System.String[],System.String,System.String,System.Boolean,System.String,System.String,System.Threading.CancellationToken)">
            <summary>
            Acquire authorization result.
            </summary>
            <param name="scopes">scopes for the token.</param>
            <param name="clientId">clientId of the app.</param>
            <param name="authority">authority for the account.</param>
            <param name="validateAuthority">Should the authority be validated.</param>
            <param name="accountIdentifier">Msal identifier for the account in case of reauth.</param>
            <param name="extraQueryParameters">query parameters to add to the network call during authorization.</param>
            <param name="cancellationToken">cancellation token.</param>
            <returns>AccountIdentifierResult.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks3.GetAuthorizationUriWithCodeAsync(System.String,System.String)">
             <summary>
             Gets the authorization uri with the authorization code attached.
             </summary>
             <param name="authorizationUri">Initial authorization uri without code.</param>
             <param name="redirectUri">The redirect uri.</param>
             <returns>
             Successful calls will return an authorization uri with the code attached.
             Error cases will return error code and error description.
             </returns>
             <remarks>
             Keys for the dictionary are:
             "AuthorizationUriWithCode"
             "ErrorCode"
             "ErrorDescription"
            
             If the error was user cancellation, the error code will be: "authentication_canceled".
             </remarks>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks4">
            <summary>
            Methods that we can call back on the client to assist in authentication.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks4.AcquireMSALAuthorizationResultAsync(System.String[],System.String,System.String,System.Boolean,System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Acquire authorization result.
            </summary>
            <param name="scopes">scopes for the token.</param>
            <param name="clientId">clientId of the app.</param>
            <param name="authority">authority for the account.</param>
            <param name="validateAuthority">Should the authority be validated.</param>
            <param name="accountIdentifier">Msal identifier for the account in case of reauth.</param>
            <param name="extraQueryParameters">query parameters to add to the network call during authorization.</param>
            <param name="additionalAuthProperties">Additional authentication properties from the client or service</param>
            <param name="cancellationToken">cancellation token.</param>
            <returns>AccountIdentifierResult.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks5">
            <summary>
            Methods that we can call back on the client to assist in authentication.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks5.AuthenticationFlowType">
            <summary>
            Auth flow type currently configured
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProvider.IAdalProxyClientCallbacks5.GetClientAuthenticationFlowTypeAsync">
            <summary>
            Method to get the authentication flow type.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AccessTokenResultExtensions">
            <summary>
            Provides extensions methods for <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AccessTokenResult" />.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AccessTokenResultExtensions.AddMetaDataToTelemetryOp(Microsoft.Developer.IdentityService.AccountProvider.AccessTokenResult,Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation)">
            <summary>
            Add metadata to a telemetry operation.
            </summary>
            <param name="source">Source of data.</param>
            <param name="telOp">Teletmetry operation to add metadata to.</param>
            <returns>Original <see cref="T:Microsoft.Developer.IdentityService.AccountProvider.AccessTokenResult" />.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext">
            <summary>
            Allows switching between different token contexts.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext.AdditionalAuthProperties">
            <summary>
            Gets or sets Additional authentication properties.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext.ParentTelemetryOperation">
            <summary>
            Will contain the parent telemetry operation if available, may be null
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.IGetTokenInteractiveContext.AuthenticationFlowType">
            <summary>
            Authentication flow type
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext">
            <summary>
            Parameters to get an msal token interactivly.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext.Authority">
            <summary>
            Gets or sets the authority to use to acquire tokens.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext.Scopes">
            <summary>
            Gets or sets the scopes to use for access.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext.QueryParameters">
            <summary>
            Gets or sets the query parameters.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext.UserIdentifier">
            <summary>
            Gets or sets the User identifier if available.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext.AdditionalAuthProperties">
            <summary>
            Gets or sets Additional auth properties passed from the caller.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.MsalGetTokenInteractiveContext.AuthenticationFlowType">
            <summary>
            Authentication flow type to use during authentication
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.TenantAndScopeResult">
            <summary>
            The result of asking for a list of tenants and scopes for a user.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.TenantAndScopeResult.#ctor(System.Collections.Immutable.ImmutableArray{Microsoft.Developer.IdentityService.AccountProvider.TenantInformation},System.Collections.Immutable.ImmutableArray{Microsoft.Developer.IdentityService.AccountProvider.ScopeInfo},System.Collections.Immutable.ImmutableArray{Microsoft.Developer.IdentityService.AccountProvider.MissingTenantInfo},System.Collections.Immutable.ImmutableDictionary{System.String,System.String})">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.TenantAndScopeResult" /> class.
            </summary>
            <param name="tenantInformation">Tenant information.</param>
            <param name="scopes">Scopes for the user.</param>
            <param name="missingTenants">Missing tenants if any.</param>
            <param name="tenantToDefaultDomainMapping">Dictionary mapping tenantIds to default domain names.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.TenantAndScopeResult.TenantInformation">
            <summary>
            Gets tenants which have been found for the user and have had a token retrieved for them.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.TenantAndScopeResult.Scopes">
            <summary>
            Gets Scopes for the user.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.TenantAndScopeResult.MissingTenantInfo">
            <summary>
            Gets a set of information that descrbes a missing tenant and why we would not get tokens for it.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.TenantAndScopeResult.TenantToDefaultDomainMapping">
            <summary>
            Gets a dictionary of tenantId to default domain names.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities">
            <summary>
            Utilities.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.ForceIdentityDeviceCodeFlowEnvironmentVariable">
            <summary>
            Environment variable used to force the use of the device code flow with the AadAccountProvider client.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.DisableWAMClientIdForVS">
            <summary>
            Environment variable used to disable the WAM clientID for VS and use the old clientId.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.ForceIdentityAuthenticationType">
            <summary>
            Environment variable which indicates which authentication to use for the AadAccountProvider client.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.IdentityAuthenticationTypeRegKey">
            <summary>
            Reg key which indicates which authentication to use for the AadAccountProvider client.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.SignInWithHomeTenantOnlyEnvironmentVariable">
            <summary>
            Environment variable which indicates that signing in should only authenticate against the home tenant.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.GetEnvironmentVariableMethod">
            <summary>
            Gets or sets a func that is used to read environment variables.
            Internal for testing, this func can be short-circuited by unit tests to provide.
            mock data.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.GetDeviceCodeFlowGlobalOverride(System.Boolean@)">
            <summary>
            Gets a value indicating whether or not to use DeviceCodeFlow for ALL AadAccountProviderClients in the process.
            </summary>
            <param name="value">Should device code flow be used for all aad acount provider clients.</param>
            <returns>Value indicating if the global override is set or not.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.GetIsWamClientIdEnabled">
            <summary>
            Gets a value indicating whether or not the new clientId should be used.
            </summary>
            <returns>Value indicating if the WAM clientId should be used</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.GetSignInWithHomeTenantOnlyGlobalOverride(System.Boolean@)">
            <summary>
            Gets a value indicating whether or not to sign in only against the home tenant.
            </summary>
            <param name="value">Whether sign-in should only authenticate against the home tenant.</param>
            <returns>Value indicating if the global override is set or not.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.GetIdentityAuthenticationType(Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType)">
            <summary>
            Gets selected authentication flow type.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.SetDeviceCodeFlowGlobalOverride(System.Nullable{System.Boolean})">
            <summary>
            Sets a value indicating whether or not to use DeviceCodeFlow for ALL AadAccountProviderClients in the process.
            </summary>
            <param name="value">Should device code flow be used for all aad acount provider clients.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.SetSignInWithHomeTenantOnlyGlobalOverride(System.Nullable{System.Boolean})">
            <summary>
            Sets a value indicating whether or not signing in should only authenticate against the home tenant.
            </summary>
            <param name="value">Should authentication only use the home tenant.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountProviders.AadAccountProvider.AadAccountProviderUtilities.SetAuthenticationFlowGlobalOverride(System.Nullable{Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType})">
            <summary>
            Sets a value indicating whether or not to use SystemBrowser flow for ALL AadAccountProviderClients in the process.
            </summary>
            <param name="value">Should system browser flow be used for all aad acount provider clients.</param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenStorage">
            <summary>
            Define interface used to to store session tokens.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenStorage.WriteSessionTokensAsync(System.Collections.Immutable.ImmutableHashSet{Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry},System.Threading.CancellationToken)">
            <summary>
            Writes a list of session tokens into storage.
            </summary>
            <param name="sessionTokens">Writes session tokens and some metadata to storage.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenStorage.ReadSessionTokensAsync(System.Threading.CancellationToken)">
            <summary>
            Read accounts from storage.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Read only list of accounts.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenStorage.ClearSessionTokenStoreAsync(System.Threading.CancellationToken)">
            <summary>
            Clear out the session token storage.
            </summary>
            <param name="cancellationToken">Cancel the operation if it has not started by the time the cancellation token is set.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry">
            <summary>
            Entry in session token storage.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry.#ctor(Microsoft.VisualStudio.Services.DelegatedAuthorization.SessionToken,System.String,System.Guid,System.String,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenType)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry" /> class.
            </summary>
            <param name="sessionToken">Session token from VSO.</param>
            <param name="accountId">"Account unique identifier".</param>
            <param name="accountProviderId">Account provider for the account.</param>
            <param name="tenantId">Tenant used to generate the session token.</param>
            <param name="type">SessionToken type.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry.SessionToken">
            <summary>
            Gets the session token from VSO.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry.AccountId">
            <summary>
            Gets the account unique identitifer that was used to get the session token for.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry.AccountProviderId">
            <summary>
            Gets the account provider identifier for the account used to get the session token.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry.TenantId">
            <summary>
            Gets the tenant used to acquire the session token with.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry.Type">
            <summary>
            Gets the session Token type.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore">
            <summary>
            Store the session tokens in a file store. If two threads are writing to the store at the same time
            the last one to write will have written its contents to the storage.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.DefaultFileName">
            <summary>
            Default file name for the json store.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.DefaultBufferSize">
            <summary>
            Default buffer size for file streams.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.StoreLockRetryCount">
            <summary>
            How many times to retry a locked file.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.storeLockRetryWait">
            <summary>
            How long to wait between retries to access a locked file.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.logger">
            <summary>
            Logger to log information to tracelog.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.#ctor(System.Diagnostics.TraceSource)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore" /> class.
            </summary>
            <param name="logger">Logger.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.#ctor(System.Diagnostics.TraceSource,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore" /> class.
            </summary>
            <param name="path">Path to write the account storage file.</param>
            <param name="logger">Logger to log with.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.FilePath">
            <summary>
            Gets location of the account file.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.ReadSessionTokensAsync(System.Threading.CancellationToken)">
            <summary>
            Read accounts from storage.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Collection of accounts from storage.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.WriteSessionTokensAsync(System.Collections.Immutable.ImmutableHashSet{Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry},System.Threading.CancellationToken)">
            <summary>
            Write session tokens to storage.
            </summary>
            <param name="sessionTokens">Set of accounts.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenFileStore.ClearSessionTokenStoreAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager">
            <summary>
            This class allows the acquisition and storage of session tokens which can be used to talk to Visual Studio Team Services accounts.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.logger">
            <summary>
            Logger.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.networkServices">
            <summary>
            Netwok mocks.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.sessionTokenStore">
            <summary>
            Store for the session tokens.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.#ctor(Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenStorage,System.Diagnostics.TraceSource,Microsoft.Developer.IdentityService.AccountProvider.IAadAccountProviderNetworkServices,System.Globalization.CultureInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager" /> class.
            </summary>
            <param name="store">Storage for the session tokens.</param>
            <param name="logger">logger.</param>
            <param name="networkServices">network services.</param>
            <param name="uiCulture">UiCulture</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.ClearSessionTokenStorageAsync(System.Threading.CancellationToken)">
            <summary>
            Clear out any Session tokens from the token storage.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>"
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.GetSessionTokenImplAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            Gets a session token from storage or VSO.
            </summary>
            <param name="account">Account to get the session token from.</param>
            <param name="tokenParameter">Parameters to configure the session token.</param>
            <param name="forceRefresh">Should the storage by bypassed.</param>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>A session token result. Will contain the session token and any errors.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.CalculateDateToRefreshSessionToken(System.DateTime,System.DateTime)">
            <summary>
            Calculate the date to refresh the token by taking the length of the token and then
            calculating the date it will reach 80% of its lifetime remaining.
            </summary>
            <param name="validFrom">Date the token is valid from.</param>
            <param name="validTo">Date the token is valid to.</param>
            <returns>Date the token should be attempted to be refreshed even if it is still valid.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.DoesSessionTokenRequireRefresh(Microsoft.VisualStudio.Services.DelegatedAuthorization.SessionToken,System.Boolean@)">
             <summary>
             From a session token stored in session token storage, determine if the token has reached a point where
             it should be refreshed. This can happen if the token is already expired or the token has reach a percentage of
             its usefull life span.
            
             The data as to how many days before the token needs to be refreshed is encoded as a property in the token and set
             when the token is created or refreshed.
             </summary>
             <param name="token">Session Token.</param>
             <param name="expired">Is the token expired.</param>
             <returns>Does the token need refresh.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenManager.FindRequestedSessionToken(System.Collections.Immutable.ImmutableHashSet{Microsoft.Developer.IdentityService.SessionTokens.SessionTokenEntry},Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor,System.Boolean,System.Boolean@)">
            <summary>
            Go through token storage for the list of scopes we would like to get tokens for and see if they are in token storage and have enough lifetime such that
            they do not need to be refreshed. The scopesAndTokenValues dictionary will contain scopes and their session tokens if they are found in token storage.
            This will include tokens that are fresh and those that need to be refreshed. The reason is that the tokens may have enough lifetime on them to be used even if they are passed
            their refresh date. We will also check to see which scopes need to be refreshed. This will be passed back in the scopedNeedingRefreshing.
            </summary>
            <param name="sessionTokensFromStorage">Session tokens from storage.</param>
            <param name="account">Account to refresh the session token with.</param>
            <param name="tokenParameter">Token parameters.</param>
            <param name="forceRefresh">Should the storage be used or should we go right to VSO.</param>
            <param name="tokenNeedsRefresh">What tokens need to be refreshed.</param>
            <returns>Session token if one matches the description. Null if the token could not be found or is expired.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenService">
            <summary>
            This service provides access to session tokens from visual studio online for a given account.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.ISessionTokenService.AcquireSessionTokenAsync(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor,System.Boolean)">
            <summary>
            Acquires a session token if it exists in storage, and if not will request a new one.
            </summary>
            <param name="account">Account to get the session tokens from.</param>
            <param name="tokenDescriptor">Token parameters to configure the session token.</param>
            <param name="forceRefresh">Should force the refresh of the session token in storage and bypass the token cache if it exists.</param>
            <returns>An AccessTokenResult which contains the access token and the token type. If there was a problem an exception will be attached to the SessionTokenResult.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor">
            <summary>
            Descriptor used to acquire a session token.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.ScopeNameComparison">
            <summary>
            Compare scope names case without considering case. This is because they can be entered by the user and the
            server does not consider them case sensitive.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.ScopeNameComparer">
            <summary>
            Have matching comparer so in getHashCode we use the same kind of comparison we are using to compare the scope names.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.#ctor(System.String,System.Collections.Generic.IList{System.Guid},System.String,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenType)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor" /> class.
            </summary>
            <param name="scope">Scope for the session token. Can be null or empty to indicate an unscoped token.</param>
            <param name="targetAccounts">Set of account guids to target. can be a null.</param>
            <param name="tenantId">TenantId for the account. Cannot be empty or null.</param>
            <param name="tokenType">Token type requested.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.Scope">
            <summary>
            Gets the scope used to retrieve the session token. If this is null then an unscoped token will be requested.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.TargetAccounts">
            <summary>
            Gets the set of target accounts to get the session token for. If this is empty a default set of targets will be used.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.TenantId">
            <summary>
            Gets the tenant to get the session token for. If this is null we will get the session token for the home tenant.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.TokenType">
            <summary>
            Gets what kind of session token is being requested.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.Equals(System.Object)">
            <summary>
            Override equals.
            </summary>
            <param name="obj">Object to compare to.</param>
            <returns>Are the object equal or not.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenDescriptor.GetHashCode">
            <summary>
            Get the hash code for the descriptor.
            </summary>
            <returns>the hash code.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenType">
            <summary>
            Kind of session token.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenType.SelfDescribing">
            <summary>
            Self describing token
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenType.Compact">
            <summary>
            Compact token
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult">
            <summary>
            Result of an authorization.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult.#ctor(System.String,Microsoft.Developer.IdentityService.SessionTokens.SessionTokenType,Microsoft.Developer.IdentityService.AccountProvider.ErrorResult)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult" /> class.
            </summary>
            <param name="token">Token string.</param>
            <param name="tokenType">SessionToken type.</param>
            <param name="error">An error which is related to this result. Will be null if no error occured.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult.#ctor(Microsoft.Developer.IdentityService.SessionTokens.SessionTokenType,Microsoft.Developer.IdentityService.AccountProvider.ErrorResult)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult" /> class.
            Create a new session token result due to an error.
            </summary>
            <param name="tokenType">SessionToken type.</param>
            <param name="error">An error which is related to this result. Will be null if no error occured.</param>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult.Token">
            <summary>
            Gets the access token.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult.TokenType">
            <summary>
            Gets the session token type.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.SessionTokens.SessionTokenResult.Error">
            <summary>
            Gets an error related to this result.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.ErrorStorageService.CachingErrorStorageServiceProvider">
            <summary>
            This factory class maintains a cache of <see cref="T:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService" /> objects based on the path
            that they are created using. It is thread safe.
            </summary>
        </member>
        <member name="E:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.Changed">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.AddOrUpdateAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Error,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.GetAllAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.RemoveAllAsync(System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Source},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.RemoveAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Source,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.RemoveAllForAccountsAsync(System.Collections.Generic.IEnumerable{System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.SetAdditionalContextPropertiesAsync(System.Collections.Generic.IDictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.SetStoragePrefixAsync(System.String,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.Dispose">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ConcurrentErrorStorageService.executeUnderLockAsync``1(System.Func{System.Threading.CancellationToken,System.Threading.Tasks.Task{``0}},System.Threading.CancellationToken,System.String)">
            <summary>
            Execute the critical code path using a SemaphoreSlim lock asynchronously.
            </summary>
            <param name="function">Critical code path</param>
            <param name="cancellationToken">Cancellation token</param>
            <param name="name">name of caller</param>
            <returns>Returns the value returned by the critical code path after unwrapping the task.</returns>
            <exception cref="T:System.ObjectDisposedException"></exception>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.#ctor(System.IO.Stream,System.IServiceProvider)">
            <summary>
            This constructor is used as an entry point for the service to start up. It should not do anything but call the
            other ctor with the correct deps.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.#ctor(System.IO.Stream,System.IServiceProvider,System.Diagnostics.TraceSource,Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageServiceProvider)">
            <summary>
            This exists so we can easily inject dependencies for testing. The other ctor should just be passing
            deps to this one and not doing anything else.
            </summary>
        </member>
        <member name="E:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.Changed">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.AddOrUpdateAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Error,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.GetAllAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.RemoveAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Source,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.RemoveAllAsync(System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Source},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.RemoveAllForAccountsAsync(System.Collections.Generic.IEnumerable{System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.SetAdditionalContextPropertiesAsync(System.Collections.Generic.IDictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.SetStoragePrefixAsync(System.String,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageService.Dispose">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageServiceImpl.AddOrUpdateAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Error,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageServiceImpl.GetAllAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageServiceImpl.RemoveAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Source,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageServiceImpl.RemoveAllAsync(System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Source},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorStorageServiceImpl.RemoveAllForAccountsAsync(System.Collections.Generic.IEnumerable{System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="E:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.Changed">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.AddOrUpdateAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Error,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.GetAllAsync(System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.RemoveAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Source,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.RemoveAllAsync(System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Source},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.RemoveAllForAccountsAsync(System.Collections.Generic.IEnumerable{System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.SetAdditionalContextPropertiesAsync(System.Collections.Generic.IDictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.SetStoragePrefixAsync(System.String,System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.TelemetrizedErrorStorageService.Dispose">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageServiceClientCallback">
            <summary>
            Interface that error storage service clients need to implement.
            Currently we are not using dynamic proxies over JsonRpc, which enable .net events
            as a notification. For now, the client needs to implement this interface. The OnStoreChange
            method is called from the service whenever it detects a change. Once dynamic proxies are
            enabled, this interface can be deleted.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageServiceClientCallback.OnStoreChange(Microsoft.Developer.IdentityService.ErrorStorageService.StoreChangedEventArgs)">
            <summary>
            When the service has detected the error store has changed it will callback to the client
            and issue a StoreChangedEventArgs which contains the changes.
            </summary>
            <param name="args">Store changed arguments.</param>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.ErrorStorageService.ErrorSourceComparer.Comparer">
            <summary>
            Comparer to compare two errors only using their keys.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageService.AddOrUpdateAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Error,System.Threading.CancellationToken)">
            <summary>
            Add or update an error in the error store.
            If the store contains an error with the same error source, it will be updated.
            Otherwise a new error will be added to the store.
            </summary>
            <param name="error">Error to add or update in the error store.</param>
            <param name="cancellationToken"></param>
            <returns>The added or updated error</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageService.GetAllAsync(System.Threading.CancellationToken)">
            <summary>
            Get all errors stored in the error store.
            </summary>
            <param name="cancellationToken"></param>
            <returns>
            An IEnumerable containing errors.
            </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageService.RemoveAsync(Microsoft.Developer.IdentityService.ErrorStorageService.Source,System.Threading.CancellationToken)">
            <summary>
            Remove an error from the error store based on the source of the error.
            </summary>
            <param name="source">The source of the error to search for in the error store.</param>
            <param name="cancellationToken"></param>
            <returns>
            Error if it was removed from the store, null if no matching error was found.
            </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageService.RemoveAllAsync(System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.ErrorStorageService.Source},System.Threading.CancellationToken)">
            <summary>
            Remove multiple errors from the error store based on the error sources.
            </summary>
            <param name="sources">The sources of the errors to search for in the error store.</param>
            <param name="cancellationToken"></param>
            <returns>
            An IEnumerable containing all the removed errors.
            </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageService.RemoveAllForAccountsAsync(System.Collections.Generic.IEnumerable{System.String},System.Threading.CancellationToken)">
            <summary>
            Remove all errors from the error store if are for any of the provided accounts.
            </summary>
            <param name="accountIds">Ids of the accounts for which the errors should be removed.</param>
            <param name="cancellationToken"></param>
            <returns>
            An IEnumerable containing all the removed errors.
            </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.ErrorStorageService.IErrorStorageService.SetStoragePrefixAsync(System.String,System.Threading.CancellationToken)">
            <summary>
            Set the prefix of the file on disk used to store errors.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.FileStore.IFileStore`1">
            <summary>
            Interface to read and write data of type T to a file.
            </summary>
            <typeparam name="T">Type of the data structure stored in a file</typeparam>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.FileStore.IFileStore`1.Path">
            <summary>
            The path of the file.
            </summary>
        </member>
        <member name="E:Microsoft.Developer.IdentityService.FileStore.IFileStore`1.Changed">
            <summary>
            Raised when the file is changed.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.FileStore.IFileStore`1.ReadCached">
            <summary>
            Gets the file stored in cache.
            </summary>
            <returns>Returns T or null if file does not exist.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.FileStore.IFileStore`1.ReadAsync(System.Threading.CancellationToken)">
            <summary>
            Reads the file stored on disk and refreshes the cache.
            </summary>
            <returns>Returns T or null if file does not exist.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.FileStore.IFileStore`1.ReadAsync``1(System.Func{`0,``0},System.Threading.CancellationToken)">
            <summary>
            Reads the file stored on disk and refreshes the cache.
            In most concrete implementations T is normally the string representation
            of a file. The result of the transformation will be the returned as a task.
            </summary>
            <param name="transformation">
            Apply a transformation to the file while holding a lock to the file.
            Returning null as part of the transformation will clear the file.
            </param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>Returns U (the result of the transformation) or null if file does not exist.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.FileStore.IFileStore`1.MutateAsync(System.Func{`0,System.Threading.Tasks.Task{`0}},System.Threading.CancellationToken)">
            <summary>
            Mutates the file and writes it to disk.
            </summary>
            <param name="mutation">
            Function where the parameter is the result of the latest file read.
            The return value is used as the data to write to file
            </param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>The return value of the mutation function</returns>
        </member>
        <member name="E:Microsoft.Developer.IdentityService.FileStore.JsonFileStore`1.Changed">
            <inheritdoc />
        </member>
        <member name="P:Microsoft.Developer.IdentityService.FileStore.JsonFileStore`1.Path">
            <inheritdoc />
        </member>
        <member name="F:Microsoft.Developer.IdentityService.FileStore.StringFileStore.DefaultBufferSize">
            <summary>
            Default buffer size for file streams.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.FileStore.StringFileStore.StoreLockRetryCount">
            <summary>
            How many times to retry a locked file.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.FileStore.StringFileStore.StoreLockRetryWait">
            <summary>
            How long to wait between retries to access a locked file.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.FileStore.StringFileStore.Watcher">
            <summary>
            File watcher to watch for changes to the store.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.FileStore.StringFileStore.PreviousSnapshot">
            <summary>
            Old copy of the file used for firing change events
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.FileStore.StringFileStore.Snapshot">
            <summary>
            Cached version of the file.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialLayer">
            <summary>
            Holds all parts needed to instantiate an instance of GitHubCredentialStoreService
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialLayer.#ctor(Microsoft.Developer.IdentityService.GithubCredentialStorage.IGithubCredentialStoreService,Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore,Microsoft.Developer.IdentityService.GithubCredentialStorage.IEnumerableCredentialStore,Microsoft.Developer.IdentityService.BehaviorContracts.GitHub.IGitHubCredentialKeyGenerator)">
            <summary>
            Holds all parts needed to instantiate an instance of GitHubCredentialStoreService
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.CredentialExtensions">
            <summary>
            Extension methods for objects implementing Credential.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.CredentialExtensions.ToOctokitCredentials(Microsoft.Developer.IdentityService.GithubCredentialStorage.Credential)">
            <summary>
            Converts an Credential to an Octokit.Credential object.
            </summary>
            <param name="credential">Credential object.</param>
            <returns>A new Octokit.Credential object.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.CredentialExtensions.HashPassword(Microsoft.Developer.IdentityService.GithubCredentialStorage.Credential)">
            <summary>
            Hashes the password of the Credential using SHA256.
            </summary>
            <param name="credential"></param>
            <returns>A hash of the value of the Password property.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore">
            <summary>
            A wrapper around an ICredentialStore that provides methods for accessing GitHub credentials specifically.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore.GitHubForVisualStudioPrefix">
            <summary>Prefix of the key of credentials stored by GitHub For Visual Studio. Needed for legacy credential enumeration.</summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore.gitPrefix">
            <summary>Prefix of the key of credentials stored by GCM. Needed for credential enumeration.</summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore.#ctor(System.Boolean,Microsoft.Developer.IdentityService.Telemetry.ITelemetryLogger,Microsoft.Developer.IdentityService.Telemetry.ITelemetryNameGenerator,Microsoft.Developer.IdentityService.GithubCredentialStorage.IEnumerableCredentialStore,Microsoft.Developer.IdentityService.BehaviorContracts.GitHub.IGitHubCredentialKeyGenerator,System.Diagnostics.TraceSource)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore" /> class.
            </summary>
            <param name="useGitHubMultiAccount">Use multi account mode. This would be default in the future.</param>
            <param name="telemetryLogger">Telemetry Logger for sending telemetry</param>
            <param name="nameGenerator">Generates event and property names for telemetry</param>
            <param name="credentialStorage">The Credential Store that backs this GithubCredentialStorage instance.</param>
            <param name="traceSource"><see cref="T:System.Diagnostics.TraceSource" /> to use for exception handling.</param>
            <param name="keyGenerator">Generates key names for storing credentials.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore.SearchAllCredentials">
            <summary>
            Finds all credentials whos keys start with git prefixes in the credential store.
            </summary>
            <returns>A dictionary mapping Uris to Credential objects.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore.SearchAllGitCredentials">
            <summary>
            Finds all credentials whos keys start with git prefixes in the credential store.
            </summary>
            <returns>A dictionary mapping Uris to Credential objects.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.GitHubCredentialStore.SearchAllDevHomeCredentials">
            <summary>
            Finds all credentials who's keys start with GitHubDevHomeExtension prefixes in the credential store.
            </summary>
            <returns>A dictionary mapping Uris to Credential objects.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.GithubCredentialStoreService.SearchGitHubCredentialsAsync">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore">
            <summary>
            Interface whcih credential stores implement.
            </summary>
            <remarks>
            Because any credential store is effectively a Key/Value storage, this interface attempts to replicate <see cref="T:System.Collections.Generic.IDictionary`2" /> as closely as possible. However, credential stores are <b>not</b> collections,
            so this interface omits many methods that would be present in IDictionary -- such as item[key], ContainsValue, and Count -- since they would create opposing semantics, be impossible to implement, or provide no useful function in the context of a credential store.
            </remarks>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore.Get(System.String)">
            <summary>Returns the credential associate with the key.</summary>
            <param name="key">The key associated with the credential.</param>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if the key does not exist in the credential store.</exception>
            <returns>A username/password pair.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore.TryGetValue(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Credential@)">
            <summary>Returns the credential associated with the key, without throwing an exception.</summary>
            <param name="key">Tke key associated with the credential.</param>
            <param name="credential">The credential associated with the key. Will be null if the credential does not exist.</param>
            <returns>True if success. False if failure.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore.AddOrUpdate(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Credential)">
            <summary>Inserts a new credential into the credential store, overriding if the key exists already.</summary>
            <param name="key">The key to put the credential under.</param>
            <param name="credential">The credential to store.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore.AddOrUpdate(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Credential,System.Collections.Generic.IEnumerable{System.Tuple{Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialPersist,System.Int32}}@)">
            <summary>Inserts a new credential into the credential store, overriding if the key exists already and provides list of attempts.</summary>
            <param name="key">The key to put the credential under.</param>
            <param name="credential">The credential to store.</param>
            <param name="attemptsList">List of attempts to write the credential.</param>
            <remarks>
            See https://docs.microsoft.com/en-us/windows/win32/api/wincred/nf-wincred-credwritew for potential error codes.
            </remarks>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore.Remove(System.String)">
            <summary>Removes the credential with the specified key from the credential store.</summary>
            <param name="key">The key of the credential to remove.</param>
            <returns>Returns true if the credential was found and was successfully removed, false otherwise. If no element exists, false is returned.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore.ContainsKey(System.String)">
            <summary>Checks if the credential exists in the credential store.</summary>
            <param name="key">The key to locate in the credential store.</param>
            <returns>Returns true if a credential with the associated key was found in the credential store, false otherwise.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.IEnumerableCredentialStore">
            <summary>
            An <see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.ICredentialStore" /> that also allows enumeration over the credentials in the store.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.IEnumerableCredentialStore.Enumerate(System.String)">
            <summary>
            Enumerates over all credentials in the credential store, returning those that begin with the specified filter.
            </summary>
            <param name="filter">The filter to apply to the enumeration. If null or empty, all credentials will be returned.</param>
            <returns>An IDictionary object holding the credential key mapped to the credential itself.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.InteropException">
            <summary>
            An exception in interop code.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.InteropException.ErrorCode">
            <summary>
            Native error code.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredWrite(Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential@,System.UInt32)">
            <summary>
            <para>The CredWrite function creates a new credential or modifies an existing
            credential in the user's credential set. </para>
            <para>The new credential is associated with the logon session of the current token. </para>
            <para>The token must not have the user's security identifier (SID) disabled.</para>
            </summary>
            <param name="credential">A pointer to the credential structure to be written.</param>
            <param name="flags">Flags that control the function's operation. Must be set to 0.</param>
            <returns>True if success; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredRead(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType,System.UInt32,System.IntPtr@)">
            <summary>
            <para>Reads a credential from the user's credential set. </para>
            <para>The credential set used is the one associated with the logon session of the
            current token. </para>
            <para>The token must not have the user's SID disabled.</para>
            </summary>
            <param name="targetName">Pointer to a null-terminated string that contains the name of
            the credential to read.</param>
            <param name="type">Type of the credential to read. Type must be one of the `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType" />`
            defined types.</param>
            <param name="flags">Currently reserved and must be zero.</param>
            <param name="credential">
            <para>Pointer to a single allocated block buffer to return the credential. </para>
            <para>Any pointers contained within the buffer are pointers to locations within this
            single allocated block. </para>
            <para>The single returned buffer must be freed by calling `<see cref="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredFree(System.IntPtr)" />`.</para>
            </param>
            <returns>True if success; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredDelete(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType,System.UInt32)">
            <summary>
            The CredDelete function deletes a credential from the user's credential set. The
            credential set used is the one associated with the logon session of the current
            token. The token must not have the user's SID disabled.
            </summary>
            <param name="targetName">The name of the credential to delete.</param>
            <param name="type">Type of the credential to delete. If the value of this parameter
            is DomainExtended, this function can delete a credential that specifies a user name
            when there are multiple credentials for the same target. The value of the
            TargetName parameter must specify the user name as Target|UserName.</param>
            <param name="flags">Reserved and must be zero.</param>
            <returns>The function returns TRUE on success and FALSE on failure.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredFree(System.IntPtr)">
            <summary>
            The CredFree function frees a buffer returned by any of the credentials management
            functions.
            </summary>
            <param name="credential">Pointer to the buffer to be freed.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredEnumerate(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialEnumerateFlags,System.Int32@,System.IntPtr@)">
            <summary>
            Enumerates the credentials from the user's credential set. The credential set used
            is the one associated with the logon session of the current token. The token must
            not have the user's SID disabled.
            </summary>
            <param name="targetNameFilter">
            <para>Pointer to a null-terminated string that contains the filter for the returned
            credentials. Only credentials with a TargetName matching the filter will be returned.
            The filter specifies a name prefix followed by an asterisk. For instance, the filter
            "FRED*" will return all credentials with a TargetName beginning with the string
            "FRED".</para>
            <para>If <see langword="null" /> is specified, all credentials will be returned.</para>
            </param>
            <param name="flags">The value of this parameter can be zero or more values combined
            with a bitwise-OR operation.</param>
            <param name="count">Count of the credentials returned in the <paramref name="credenitalsArrayPtr" />.</param>
            <param name="credenitalsArrayPtr">
            <para>Pointer to an array of pointers to credentials. The returned credential is a
            single allocated block. Any pointers contained within the buffer are pointers to
            locations within this single allocated block.</para>
            <para>The single returned buffer must be freed by calling <see cref="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredFree(System.IntPtr)" />.</para>
            </param>
            <returns></returns>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialFlags.PromptNow">
            <summary>
            <para>Bit set if the `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` does not persist the `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob" />`
            and the credential has not been written during this logon session. This bit is
            ignored on input and is set automatically when queried.</para>
            <para>If `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Type" />` is <see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainCertificate" />,
            the `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob" />` is not persisted across logon
            sessions because the PIN of a certificate is very sensitive information.</para>
            <para>Indeed, when the credential is written to credential manager, the PIN is
            passed to the CSP associated with the certificate. The CSP will enforce a PIN
            retention policy appropriate to the certificate.</para>
            <para>If Type is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainPassword" />` or
            `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainCertificate" />`, an authentication package always
            fails an authentication attempt when using credentials marked as `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialFlags.PromptNow" />`.</para>
            <para>The application (typically through the key ring UI) prompts the user for the
            password. The application saves the credential and retries the authentication. </para>
            <para>Because the credential has been recently written, the authentication package
            now gets a credential that is not marked as `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialFlags.PromptNow" />`.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialFlags.UsernameTarget">
            <summary>
            <para>Bit is set if this `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` has a `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.TargetName" />`
            member set to the same value as the `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.UserName" />` member.</para>
            <para>Such a credential is one designed to store the `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob" />`
            for a specific user.</para>
            <para>This bit can only be specified if `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Type" />` is
            `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainPassword" />` or <see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainCertificate" />.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialPersist.Session">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` persists for the life of the logon session.</para>
            <para>It will not be visible to other logon sessions of this same user.</para>
            <para>It will not exist after this user logs off and back on.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialPersist.LocalMachine">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` persists for all subsequent logon sessions on
            this same computer.</para>
            <para>It is visible to other logon sessions of this same user on this same computer
            and not visible to logon sessions for this user on other computers.</para>
            </summary>
            <remarks>
            Windows Vista Home Basic, Windows Vista Home Premium, Windows Vista Starter, and
            Windows XP Home Edition:  This value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialPersist.Enterprise">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` persists for all subsequent logon sessions on
            this same computer. </para>
            <para>It is visible to other logon sessions of this same user on this same computer
            and to logon sessions for this user on other computers.</para>
            </summary>
            <remarks>
            Windows Vista Home Basic, Windows Vista Home Premium, Windows Vista Starter, and
            Windows XP Home Edition:  This value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.Generic">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` is a generic credential. The credential will
            not be used by any particular authentication package.</para>
            <para>The credential will be stored securely but has no other significant
            characteristics.</para>para&gt;
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainPassword">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` is a password credential and is specific to
            Microsoft's authentication packages. </para>
            <para>The NTLM, Kerberos, and Negotiate authentication packages will automatically
            use this credential when connecting to the named target.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainCertificate">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` is a certificate credential and is specific to
            Microsoft's authentication packages. </para>
            <para>The Kerberos, Negotiate, and Schannel authentication packages automatically
            use this credential when connecting to the named target.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainVisiblePassword">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` is a password credential and is specific to
            authentication packages from Microsoft. </para>
            <para>The Passport authentication package will automatically use this credential
            when connecting to the named target.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.GenericCertificate">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` is a certificate credential that is a generic
            authentication package.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainExtended">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential" />` is supported by extended Negotiate packages.</para>
            </summary>
            <remarks>
            Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP:  This
            value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.Maximum">
            <summary>
            <para>The maximum number of supported credential types.</para>
            </summary>
            <remarks>
            Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP:  This
            value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.MaximumEx">
            <summary>
            <para>The extended maximum number of supported credential types that now allow new
            applications to run on older operating systems.</para>
            </summary>
            <remarks>
            Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP:  This
            value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Flags">
            <summary>
            <para>A bit member that identifies characteristics of the credential. </para>
            <para>Undefined bits should be initialized as zero and not otherwise altered to
            permit future enhancement.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Type">
            <summary>
            <para>The type of the credential. This member cannot be changed after the credential
            is created. </para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Comment">
            <summary>
            <para>A string comment from the user that describes this credential. </para>
            <para>This member cannot be longer than `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.StringMaxLength" />` characters.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.LastWritten">
            <summary>
            <para>The time, in Coordinated Universal Time (Greenwich Mean Time), of the last
            modification of the credential. </para>
            <para>For write operations, the value of this member is ignored.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlobSize">
            <summary>
            <para>The size, in bytes, of the `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob" />` member. </para>
            <para>This member cannot be larger than `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.PasswordMaxLength" />` bytes.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob">
            <summary>
            <para>Secret data for the credential. The CredentialBlob member can be both read
            and written.</para>
            <para>If the `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Type" />` member is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainPassword" />`,
            this member contains the plaintext Unicode password for `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.UserName" />`.</para>
            <para>The `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob" />` and `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlobSize" />`
            members do not include a trailing zero character.</para>
            <para>Also, for `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainPassword" />`, this member can only
            be read by the authentication packages.</para>
            <para>If the Type member is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainCertificate" />`, this
            member contains the clear test Unicode PIN for `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.UserName" />`.</para>
            <para>The `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob" />` and `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlobSize" />`
            members do not include a trailing zero character. </para>
            <para>Also, this member can only be read by the authentication packages.</para>
            <para>If the `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Type" />` member is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.Generic" />`,
            this member is defined by the application.</para>
            <para>Credentials are expected to be portable. Applications should ensure that the
            data in `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.CredentialBlob" />` is portable.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Persist">
            <summary>
            <para>Defines the persistence of this credential. This member can be read and
            written.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.AttributeCount">
            <summary>
            <para>The number of application-defined attributes to be associated with the
            credential. </para>
            <para>This member can be read and written. Its value cannot be greater than `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.AttributeMaxLengh" />`.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.Attributes">
            <summary>
            <para>Application-defined attributes that are associated with the credential. This
            member can be read and written.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.TargetAlias">
            <summary>
            <para>Alias for the TargetName member. This member can be read and written. It
            cannot be longer than `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.StringMaxLength" />` characters.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.Generic" />`, this member
            can be non-NULL, but the credential manager ignores the member.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.Win32Credential.UserName">
            <summary>
            <para>The user name of the account used to connect to TargetName.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainPassword" />`, this
            member can be either a DomainName\UserName or a UPN.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.DomainCertificate" />`,
            this member must be a marshaled certificate reference created by calling
            `CredMarshalCredential` with a `CertCredential`.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialType.Generic" />`, this member
            can be non-NULL, but the credential manager ignores the member.</para>
            <para>This member cannot be longer than CRED_MAX_USERNAME_LENGTH(513) characters.</para>
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error">
            <summary>
            The System Error Codes are very broad. Each one can occur in one of many hundreds of
            locations in the system. Consequently the descriptions of these codes cannot be very
            specific. Use of these codes requires some amount of investigation and analysis. You
            need to note both the programmatic and the run-time context in which these errors occur.
            Because these codes are defined in WinError.h for anyone to use, sometimes the codes
            are returned by non-system software. Sometimes the code is returned by a function deep
            in the stack and far removed from your code that is handling the error.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.Success">
            <summary>
            The operation completed successfully.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.FileNotFound">
            <summary>
            The system cannot find the file specified.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.InvalidHandle">
            <summary>
            The handle is invalid.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.NotEnoughMemory">
            <summary>
            Not enough storage is available to process this command.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.SharingViloation">
            <summary>
            The process cannot access the file because it is being used by another process.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.FileExists">
            <summary>
            The file exists.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.AlreadExists">
            <summary>
            Cannot create a file when that file already exists.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.NotFound">
            <summary>
            Element not found.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.NoSuchLogonSession">
            <summary>
            A specified logon session does not exist. It may already have been terminated.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.ThrowIfError(System.Int32,System.String,System.String)">
            <summary>
            Throws a <see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.InteropException" /> if errorCode is not Success.
            </summary>
            <param name="errorCode">Error code of the operation.</param>
            <param name="function">Function that caused an error.</param>
            <param name="errorMessage">Error message.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.GetLastErrorCode(System.Boolean)">
            <summary>
            Gets last Win32 error code if call was not successful.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Win32Error.CreateException(System.Int32,System.String,System.String)">
            <summary>
            Creates instance of <see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.InteropException" /> with detailed error message.
            </summary>
            <param name="errorCode">Error code of the operation.</param>
            <param name="function">Function that caused an error.</param>
            <param name="errorMessage">Error message.</param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore">
            <summary>
            Credential store implementation for Windows platforms
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore.Enumerate(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore.AddOrUpdate(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Credential,System.Collections.Generic.IEnumerable{System.Tuple{Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.Native.Advapi32.CredentialPersist,System.Int32}}@)">
            <inheritdoc />
            <remarks>
            See https://docs.microsoft.com/en-us/windows/win32/api/wincred/nf-wincred-credwritew for potential error codes.
            </remarks>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore.ContainsKey(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore.Get(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore.Remove(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore.TryGetValue(System.String,Microsoft.Developer.IdentityService.GithubCredentialStorage.Credential@)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStoreWithCaching">
            <summary>
            Cache wrapper on top of <see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStore" /> to handle cases when credentials not available for read right after they are written.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStoreWithCaching.#ctor(Microsoft.Developer.IdentityService.GithubCredentialStorage.IEnumerableCredentialStore,System.String)">
            <param name="innerStore">Inner credential store to wrap and delegate calls to.</param>
            <param name="filterForPrefilling">Filter for credentials that should be added to cache on initialization.
            This is needed since reading from cred store could fail when write is in progress, so we would like to have current cred store values in cache.
            </param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStoreWithErrorSuppression">
            <summary>
            Allows suppressing exceptions to keep regular workflow. Should be combined with <see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStoreWithTelemetry" />
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStoreWithErrorSuppression.#ctor(Microsoft.Developer.IdentityService.GithubCredentialStorage.IEnumerableCredentialStore)">
            <summary>
            Allows suppressing exceptions to keep regular workflow. Should be combined with <see cref="T:Microsoft.Developer.IdentityService.GithubCredentialStorage.Interop.Windows.WindowsCredentialStoreWithTelemetry" />
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Resources">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.AdditionalContextMustBeJsonRpc">
            <summary>
              Looks up a localized string similar to additionalContext must be of type JsonRpc.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.CreateNewAccountHeaderText">
            <summary>
              Looks up a localized string similar to {0} needs your credentials..
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.Error">
            <summary>
              Looks up a localized string similar to Error.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.GitHubAccountProviderName">
            <summary>
              Looks up a localized string similar to GitHub account.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.HomeTenantInformationNotFound">
            <summary>
              Looks up a localized string similar to Could not get details about the home tenant.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.MacKeyChainDeleteFailed">
            <summary>
              Looks up a localized string similar to SecKeychainItemDelete failed with error code: {0}.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.MacKeyChainFindFailed">
            <summary>
              Looks up a localized string similar to SecKeychainFindGenericPassword failed with error code: {0}.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.MacKeyChainInsertFailed">
            <summary>
              Looks up a localized string similar to SecKeychainAddGenericPassword failed with error code: {0}.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.MacKeyChainUpdateFailed">
            <summary>
              Looks up a localized string similar to SecKeychainItemModifyAttributesAndData failed with error code: {0}.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.NoHomeTenantFound">
            <summary>
              Looks up a localized string similar to No home tenant could be found.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.NoSessionTokenFound">
            <summary>
              Looks up a localized string similar to No session token entry found.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.PreAuthAdditionalInfo">
            <summary>
              Looks up a localized string similar to For potential mitigation and additional information go to the following url: '{0}'.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.RetryCountExceeded">
            <summary>
              Looks up a localized string similar to Retry count exceeded.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.TenantInformationNotFound">
            <summary>
              Looks up a localized string similar to Could not get the list of tenants.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.VsAccountProviderName">
            <summary>
              Looks up a localized string similar to Microsoft account.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.VsAccountProviderUnsupportedAccount">
            <summary>
              Looks up a localized string similar to The account provider is not supported.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.VsAccountProviderUnsupportedConfiguration">
            <summary>
              Looks up a localized string similar to The account is not supported by this provider. The configuration does not match..
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.VsAccountProviderWorkOrSchool">
            <summary>
              Looks up a localized string similar to Work or school account.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Resources.WAMReauthFeatureHeaderText">
            <summary>
              Looks up a localized string similar to {0} needs your credentials for directory:
            {1}.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage">
            <summary>
            Store the accounts in a file store.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.DefaultFileName">
            <summary>
            Default file name for the json store.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.#ctor(System.Diagnostics.TraceSource,System.String,Microsoft.Developer.IdentityService.FileStore.IFileStoreFactory,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage" /> class.
            </summary>
            <param name="logger">Logger to log with.</param>
            <param name="path">Path to write the account storage file.</param>
            <param name="fileStoreFactory">IFileStoreFactory to operate on files.</param>
            <param name="isGitHubMultiAccountEnabled">indicates if multi account store for GitHub accounts should be used.</param>
        </member>
        <member name="E:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.StoreChanged">
            <summary>
            Gets or sets the handlers for when the store changes.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.FilePath">
            <summary>
            Gets location of the account file.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.StorePath">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.GetDefaultStoragePath(System.String,System.Guid,System.String,System.Boolean)">
            <summary>
            Generate the default file storage path.
            </summary>
            <param name="prefix">File prefix to the default file name.</param>
            <param name="providerGuid">Provider to use for storage file.</param>
            <param name="fileVersion">File version to return</param>
            <param name="isGitHubMultiAccountEnabled">indicates if multi account store for GitHub accounts should be used.</param>
            <returns>Default storage path.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.ReadAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Read accounts from storage.
            </summary>
            <param name="cancellationToken">Cancellation token.</param>
            <returns>Collection of accounts from storage.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.FileAccountStorage.Dispose">
            <summary>
            Dispose of the file account storage.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.IAccountStore">
            <summary>
            Define interface used to to store accounts.
            </summary>
        </member>
        <member name="E:Microsoft.Developer.IdentityService.StorageService.IAccountStore.StoreChanged">
            <summary>
            Has the store changed
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IAccountStore.ReadAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Read accounts from storage.
            </summary>
            <param name="token">Cancellation token.</param>
            <returns>Read only list of accounts.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.IFileAccountStore">
            <summary>
            Define interface used to to store accounts.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.StorageService.IFileAccountStore.StorePath">
            <summary>
            Gets the path to the file which backs the account store.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.AccountStoreFactoryMethod">
            <summary>
            A constructor function that generates an IAccountStore instance from a filepath and <see cref="T:System.Diagnostics.TraceSource" />.
            Used as the type of <see cref="F:Microsoft.Developer.IdentityService.StorageService.StorageService.accountStoreFactory" />. The intent of using a delegate type is to provide more documentation and context than a simple <see cref="T:System.Func`2" /> type.
            </summary>
            <param name="filePath">The path to the accountStore file on disk.</param>
            <param name="traceSource">A traceSource to use for debugging.</param>
            <returns>An IFileAccountStore instance to read and write Accounts to.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.StorageService">
            <summary>
            Storage service for accounts on the keychain.
            The methods in this class ensure that the storage service is properly initalized first. This class also handles synchronization between the filesystem and memory objects.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.serviceInitializationLock">
            <summary>
            Locks the access to initializing the service and updating the account store.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.AccountProviderGuids">
            <summary>
            Internal for testing.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.storageServiceInstances">
            <summary>
            Collection of singleton instances of StorageServiceImpl.
            This is lazy populated by <see cref="M:Microsoft.Developer.IdentityService.StorageService.StorageService.EnsureInitializedAndExecuteAsync``1(System.Boolean,System.String,System.Func{Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View,System.Threading.Tasks.Task{``0}},System.Threading.CancellationToken,System.String)" />.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.perClientLogger">
            <summary>
            Logger to log events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.singletonLoggerProvider">
            <summary>
            Function that takes a filepath for a <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl" /> instance and provides a TraceSource for support objects.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.rpc">
            <summary>
            Remote channel to send data back to the client that connects to this service.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.accountStoreFactory">
            <summary>
            Constructor function that generates an IAccountStore object. Primarily intended for unit testing.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.serviceProvider">
            <summary>
            ServiceProvider for Nexus.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.storageServiceImplementation">
            <summary>
            Instance of the storage service to use.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.clientDoesNotSupportChangedEvent">
            <summary>
            If the client does not support the raising of a store changed event we do not want to keep on trying to raise the event
            with the client.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.networkClientFactory">
            <summary>
            Object to generate HttpClients that is passed to the Synchronizer.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageService.disposed">
            <summary>
            Detect redundant dispose calls and detect if we are being called after disposed.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.CreateAsync(System.IO.Stream,System.IServiceProvider,Microsoft.ServiceHub.Framework.ServiceActivationOptions,Microsoft.Developer.IdentityService.StorageService.AccountStoreFactoryMethod,System.Boolean,Microsoft.Developer.IdentityService.Network.INetworkClientFactory,System.Func{System.String,System.Diagnostics.TraceSource})">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageService" /> class.
            </summary>
            <param name="stream">Stream to communicate with via JSON RPC.</param>
            <param name="serviceProvider">Service provider.</param>
            <param name="options">Service activation options.</param>
            <param name="accountStoreConstructor">Function that generates an <see cref="T:Microsoft.Developer.IdentityService.StorageService.IAccountStore" /> object. Intended for testing purposes. Can be null.</param>
            <param name="enableSynchronizer">If false, the synchronizer will not be created.</param>
            <param name="networkClientFactory">NetworkClientFactory to pass to the Synchronizer to use for HttpClients. If null, a default will be used.</param>
            <param name="singletonLoggerProvider">Function which generates a TraceSource for each private singleton instance this class generates.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.SetAccountStoragePrefixAsync(System.String,Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration,System.Threading.CancellationToken)">
            <summary>
            Sets the storage location for an account to another file with a different prefix, the configuration is which configuration the automatic synchrnoization should use to create accounts in that path.
            </summary>
            <param name="prefix">Prefix for the account path. null means use default.</param>
            <param name="unused">Unused public parameter. Null is fine.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>Task which completes once the storage location has been changed.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.AddOrUpdateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Add or update an account in the account store.
            In the update case the properties will be merged. Any properties that exist in the new account and the store will be overwritten by the
            values in the passed in account. Any properties in the account in storage not in the passed in account will be preserved.
            </summary>
            <param name="account">Account object to add or update in the account store. </param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>Instantce of the account as it is represented in storage. </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.UpdatePropertiesAsync(Microsoft.Developer.IdentityService.AccountKey,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Update the properties on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="properties">Dictionary of properties to update. When properties are set to null the property dictionary will be cleared.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>New Account object with the updated properties.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.UpdateStateAsync(Microsoft.Developer.IdentityService.AccountKey,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            Update the properties on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="stale">Is the account stale or not.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>New Account object with the updated stale property.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.UpdateDisplayInfoAsync(Microsoft.Developer.IdentityService.AccountKey,Microsoft.Developer.IdentityService.AccountDisplayInfo,System.Threading.CancellationToken)">
            <summary>
            Update the display information on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="displayInfo">Display information on the account.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>New Account object with the updated display information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.GetAllAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Get all accounts in the store.
            </summary>
            <param name="cancellationToken">Cancellation token</param>
            <returns>List of accounts in the store.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.RemoveAccountAsync(Microsoft.Developer.IdentityService.AccountKey,System.Threading.CancellationToken)">
            <summary>
            Remove an account from storage.
            </summary>
            <param name="account">Account to remove.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.RemoveAllAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Remove all accounts from storage.
            </summary>
            <param name="cancellationToken">Cancallation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.Dispose">
            <summary>
            Dispose of this object.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.InitializeStorageServiceAsync(System.String,System.Collections.Generic.IEnumerable{System.Guid},System.Threading.CancellationToken)">
            <summary>
            Initialize the storage service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.CreateStorageServiceImplFilePath(System.String,System.Guid,System.String)">
            <summary>
            Generates the filePath of an accountStore for a particular prefix and AccountProvider GUID.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.CreateStorageServiceImplAsync(System.String,System.Guid)">
            <summary>
            Creates a <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl" />.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.RaiseAccountStoreChangedEvent(System.Object,Microsoft.Developer.IdentityService.StorageService.AccountStoreChangedEventArgs)">
            <summary>
            Raise an event that indicates the store has changed.
            </summary>
            <param name="sender">sender.</param>
            <param name="e">Event that contains the store modifications.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.Dispose(System.Boolean)">
            <summary>
            Dispose the storage service.
            </summary>
            <param name="disposing">Are we disposing.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.GetAsalSelectedAccountAsync(System.Threading.CancellationToken)">
            <summary>
            Returns the ASAL selected account or null if not found
            </summary>
            <param name="cancellationToken">CancellationToken</param>
            <returns><see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageService.SetAdditionalContextPropertiesAsync(System.Collections.Generic.IDictionary{System.String,System.String},System.Threading.CancellationToken)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl">
            <summary>
            Manages the accounts on the keychain.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.logger">
            <summary>
            Logger to log events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.store">
            <summary>
            Storage where the account information will be stored.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.storageServiceCancellationSource">
            <summary>
            Cancellation token for the changed event management task.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.defaultConfiguration">
            <summary>
            Default configuration for the identity service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.CreateAsync(System.Diagnostics.TraceSource,Microsoft.Developer.IdentityService.StorageService.IFileAccountStore,Microsoft.Developer.IdentityService.StorageService.IAccountStorePorter)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl" /> class.
            Internal constructor to allow tests to set a different storage mechanism.
            </summary>
            <param name="logger">Stream.</param>
            <param name="storage">Storage.</param>
            <param name="accountStorePorter">Ports accounts between stores on Impl creation.</param>
        </member>
        <member name="E:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.StoreChanged">
            <summary>
            The store has changed.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.IsDisposed">
            <summary>
            Gets a value indicating whether gets a value indicating if this instance disposed.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.AddOrUpdateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Add or update an account in the account store.
            In the update case the properties will be merged. Any properties that exist in the new account and the store will be overwritten by the
            values in the passed in account. Any properties in the account in storage not in the passed in account will be preserved.
            </summary>
            <param name="account">Account object to add or update in the account store. </param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>Instantce of the account as it is represented in storage. </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.UpdatePropertiesAsync(Microsoft.Developer.IdentityService.AccountKey,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Update the properties on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="properties">Dictionary of properties to update. When properties are set to null the property dictionary will be cleared.</param>
            <param name="cancellationToken">CancellationToken</param>
            <returns>New Account object with the updated properties.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.MarkAccountasPreservedAsync(Microsoft.Developer.IdentityService.AccountKey)">
            <summary>
            Mark an account as preserved.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <returns>A Task representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.IsPreservedAccount(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Gets a value indicating whether the account is preserved or not.
            </summary>
            <param name="account">Account to check for preserved status.</param>
            <returns>Preservation status of the account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.RemoveAccountPreservedStatusAsync(Microsoft.Developer.IdentityService.AccountKey)">
            <summary>
            Remove the preservation marker for an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <returns>A Task representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.UpdateStateAsync(Microsoft.Developer.IdentityService.AccountKey,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            Update the properties on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="stale">Is the account stale or not.</param>
            <param name="cancellationToken">CancellationToken</param>
            <returns>New Account object with the updated stale property.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.UpdateDisplayInfoAsync(Microsoft.Developer.IdentityService.AccountKey,Microsoft.Developer.IdentityService.AccountDisplayInfo,System.Threading.CancellationToken)">
            <summary>
            Update the display information on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="displayInfo">Display information on the account.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>New Account object with the updated display information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.GetAllAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Get all accounts in the store.
            </summary>
            <param name="cancellationToken">Cancellation token</param>
            <returns>List of accounts in the store.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.RemoveAccountAsync(Microsoft.Developer.IdentityService.AccountKey,System.Threading.CancellationToken)">
            <summary>
            Remove an account from storage.
            </summary>
            <param name="account">Account to remove.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.RemoveAllAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Remove all accounts from storage.
            </summary>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.Dispose">
            <summary>
            Dispose the service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.MergeProperties(System.Collections.Generic.IReadOnlyDictionary{System.String,System.String},System.Collections.Generic.IReadOnlyDictionary{System.String,System.String})">
            <summary>
            Merge two property dictionaries together.
            </summary>
            <param name="existingProperties">Exsiting properties.</param>
            <param name="newProperties">new properties.</param>
            <returns>Merged dictionary.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.MergeAccount(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.Account)">
            <summary>
            Merge two accounts when adding or updating an account in the store.
            </summary>
            <param name="existingAccount">First account.</param>
            <param name="newAccount">Second account.</param>
            <returns>Merged account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.InitializeStorageServiceAsync(System.Threading.CancellationToken)">
            <summary>
            Initialize the storage service.
            </summary>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.MutateStoreAsync(Microsoft.Developer.IdentityService.AccountKey,System.Func{System.Collections.Immutable.ImmutableHashSet{Microsoft.Developer.IdentityService.Account},System.Threading.Tasks.Task{System.Collections.Immutable.ImmutableHashSet{Microsoft.Developer.IdentityService.Account}}},System.Threading.CancellationToken)">
            <summary>
            Mutate the account store within a file lock.
            </summary>
            <param name="accountWhichCausedMutation">Account Whcih caused the mutation.</param>
            <param name="mutateFunction">Function to mutate the store. </param>
            <param name="cancellationToken">cancellationToken.</param>
            <returns>Task.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.RaiseAccountStoreChangedEvent(Microsoft.Developer.IdentityService.StorageService.AccountStoreChangedEventArgs)">
            <summary>
            Raise an event that indicates the store has changed.
            </summary>
            <param name="e">Event that contains the store modifications.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.GetAccountFromKey(System.Collections.Generic.IReadOnlyCollection{Microsoft.Developer.IdentityService.Account},Microsoft.Developer.IdentityService.AccountKey)">
            <summary>
            Read a specific account from the store.
            </summary>
            <param name="accounts">accounts to find the instance within.</param>
            <param name="accountKey">Account to find a fresh instance in the store.</param>
            <returns>A new instance of the account from the store.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.OnStoreChange(System.Object,Microsoft.Developer.IdentityService.FileStore.ObjectChangedEventArgs{System.Collections.Immutable.ImmutableHashSet{Microsoft.Developer.IdentityService.Account}})">
            <summary>
            Calculate the differences between the store on disk and what is in memory and raise the correct events.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl.Dispose(System.Boolean)">
            <summary>
            Dispose the storage service.
            </summary>
            <param name="disposing">Are we disposing.</param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection">
            <summary>
            A wrapper around a nested dictionary for <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl" /> objects.
            This class aims to simplify data management.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View">
            <summary>
            A ReadOnlyDictionary that contains the value it was keyed with.
            This type is returned by <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection" /> to provide a read-only collection of StorageServiceImpl objects keyed with AccountProvider GUIDs.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View.ForEachAsync(System.Func{Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl,System.Threading.Tasks.Task})">
            <summary>
            Applies an asynchronous action over all values in this view.
            </summary>
            <param name="action">The action to apply.</param>
            <returns>A task representing the work.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View.SelectAsync``1(System.Func{Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl,System.Threading.Tasks.Task{``0}})">
            <summary>
            Creates an <see cref="T:System.Collections.Generic.IReadOnlyCollection`1" /> by applying a function asynchronously to all values in this View.
            Asynchronous analog to the Select methond in Linq.
            </summary>
            <typeparam name="TResult">Return type.</typeparam>
            <param name="func">Transformer function.</param>
            <returns>A collection of results after applying the function to all elements in this View.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View.SelectManyAsync``1(System.Func{Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl,System.Threading.Tasks.Task{System.Collections.Generic.IEnumerable{``0}}})">
            <summary>
            Creates an <see cref="T:System.Collections.Generic.IReadOnlyCollection`1" /> by applying a function asychronously to all values in this View, and flattening the result into one collection.
            </summary>
            <typeparam name="TResult">The return type.</typeparam>
            <param name="func">A transform function.</param>
            <returns>A collection of results after applying the function to all elements in this View.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View.GetAllAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Helper method to read all accounts from all StorageServiceImpls in this view.
            </summary>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A read-only collection of accounts.</returns>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.CountEntries">
            <summary>
            Gets the number of (StorageServiceImpl, Synchronizer) pairs in this collection.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.EnumerateValues">
            <summary>
            Gets an Enumerable over all values in this collection.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.AddAllUnderPrefix(System.String,System.Collections.Generic.IDictionary{System.Guid,Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl})">
            <summary>
            Adds many <see cref="T:System.Guid" /> -&gt; <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceImpl" /> objects under one prefix key.
            </summary>
            <param name="prefixKey">The prefix key</param>
            <param name="innerValues">The values to insert under the prefix.</param>
            <returns>A view of the inner dictionary the values were added too.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.ClearInner">
            <summary>
            Empties the inner dictionaries while preserving the instances. This will invalidate all <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View" /> instances.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.Clear">
            <summary>
            Empties the dictionary and inner dictionary of all values. This will invalidate all <see cref="T:Microsoft.Developer.IdentityService.StorageService.StorageServiceInstancesCollection.View" /> instances.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.IAsalMetadataClient">
            <summary>
            Selected asal account
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IAsalMetadataClient.GetAsalSelectedAccountAsync(System.Threading.CancellationToken)">
            <summary>
            Selected asal account key. Null if none is set
            </summary>
            <returns>A <see cref="T:System.Threading.Tasks.Task`1" /> representing the result of the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.IConnectedAccountService">
            <summary>
            Storage service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IConnectedAccountService.GetAllConnectedAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Get all connected accounts from the OS.
            </summary>
            <returns>List of accounts in the store.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.IStorageService">
            <summary>
            Storage service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.AddOrUpdateAccountAsync(Microsoft.Developer.IdentityService.Account,System.Threading.CancellationToken)">
            <summary>
            Add or update an account in the account store.
            In the update case the properties will be merged. Any properties that exist in the new account and the store will be overwritten by the
            values in the passed in account. Any properties in the account in storage not in the passed in account will be preserved.
            </summary>
            <param name="account">Account object to add or update in the account store. </param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>Instantce of the account as it is represented in storage. </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.GetAllAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Get all accounts in the store.
            </summary>
            <param name="cancellationToken">Cancellation token</param>
            <returns>List of accounts in the store.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.RemoveAccountAsync(Microsoft.Developer.IdentityService.AccountKey,System.Threading.CancellationToken)">
            <summary>
            Remove an account from storage.
            </summary>
            <param name="account">Account to remove.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.RemoveAllAccountsAsync(System.Threading.CancellationToken)">
            <summary>
            Remove all accounts from storage.
            </summary>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.UpdateDisplayInfoAsync(Microsoft.Developer.IdentityService.AccountKey,Microsoft.Developer.IdentityService.AccountDisplayInfo,System.Threading.CancellationToken)">
            <summary>
            Update the display information on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="displayInfo">Display information on the account.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>New Account object with the updated display information.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.UpdatePropertiesAsync(Microsoft.Developer.IdentityService.AccountKey,System.Collections.Generic.Dictionary{System.String,System.String},System.Threading.CancellationToken)">
            <summary>
            Update the properties on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="properties">Dictionary of properties to update. When properties are set to null the property dictionary will be cleared.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>New Account object with the updated properties.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.UpdateStateAsync(Microsoft.Developer.IdentityService.AccountKey,System.Boolean,System.Threading.CancellationToken)">
            <summary>
            Update the properties on an account.
            </summary>
            <param name="account">Account to update the properties on.</param>
            <param name="stale">Is the account stale or not.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>New Account object with the updated stale property.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService.SetAccountStoragePrefixAsync(System.String,Microsoft.Developer.IdentityService.AccountProvider.AadConfiguration,System.Threading.CancellationToken)">
            <summary>
            Set a storage prefix to use for the account store.
            </summary>
            <param name="prefix">Prefix to attach to the front of the file to make it unique.</param>
            <param name="configuration">Configuration to use to synchronze the account store.</param>
            <param name="cancellationToken">Cancellation token</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.IStorageService2">
            <summary>
            Storage service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.StorageService.IStorageService2.InitializeStorage(System.Threading.CancellationToken)">
            <summary>
            Complete the initialization after the RPC connections  have been made.
            </summary>
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.StorageService.StorageUtilities">
            <summary>
            Contains static storage objects for creating and manipulating token caches in both ADAL and MSAL.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageUtilities.MsalCreationProperties">
            <summary>
            Gets a static instance of Msal StorageCreationProperties.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageUtilities.MsalCacheHelperLazy">
            <summary>
            Gets a singleton instance of the <see cref="F:Microsoft.Developer.IdentityService.StorageService.StorageUtilities.MsalCacheHelperLazy" /> for this process.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.StorageService.StorageUtilities.TraceSourceLazy">
            <summary>
            Gets a static instance of a trace source.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AADErrorResultFactory.CreateErrorResultFromException(System.Exception,System.Globalization.CultureInfo)">
            <summary>
            Creates a new ErrorResult from an exception.
            </summary>
            <param name="e">The exception to convert into an ErrorResult.</param>
            <param name="uiCulture">Ui culture to use when localizing</param>
            <returns>A new ErrorResult representing the Exception.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AADErrorResultFactory.WithErrorCodeParsedMessageAndLink(System.Collections.Generic.IDictionary{System.String,System.Object},System.Exception,System.Globalization.CultureInfo)">
            <summary>
            Error code, Message and help link are all tightly related since the link is determined by the error code in many cases.
            </summary>
            <param name="metadata">dictionary to add metadata to</param>
            <param name="e">exception</param>
            <param name="uiCulture">culture to localize with</param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Utilities">
            <summary>
            Utility class.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Utilities.BearerTokenName">
            <summary>
            Name value for the Bearer token, some services expect this to be capital B but it is supposed to be case insensitive.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Utilities.VerifyAccountProviderId(Microsoft.Developer.IdentityService.AccountKey,System.Guid)">
            <summary>
            Validate an account is for a specific account provider.
            </summary>
            <param name="accountKey">Account key to check against the expected accountProvider.</param>
            <param name="accountProviderId">Account provider id to match against.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Utilities.ThrowIfDisposed(System.Boolean,System.String)">
            <summary>
            Throw an object disposed exception if the object is disposed.
            </summary>
            <param name="disposed">Is the object disposed.</param>
            <param name="componentName">Component that was disposed.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Utilities.IsMSAAccount(System.String,Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration)">
            <summary>
            Is the account an MSA account or not.
            </summary>
            <param name="identityProvider">Identity provider used to authenticate the account.</param>
            <param name="configuration">Aad configuration.</param>
            <returns>True if the account is an MSA account, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Utilities.TenantsEqual(System.String,System.String)">
            <summary>
            Compare two tenant identifiers.
            </summary>
            <param name="tenantId1">First tenants.</param>
            <param name="tenantId2">Second tenant.</param>
            <returns>Are the tenants equal.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Utilities.CreateAADErrorResultsFromExceptions(System.Collections.Generic.List{System.Exception},System.Globalization.CultureInfo)">
            <summary>
            Given a list of exceptions convert them to error results.
            </summary>
            <param name="errors">Errors.</param>
            <param name="uiCulture"></param>
            <returns>Array of error results.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Utilities.VerifyConfiguration(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration)">
            <summary>
            Verify that the two configurations match, throw exceptions if they don't.
            </summary>
            <param name="accountConfiguration">Configuration from the account.</param>
            <param name="expectedConfiguration">Expected configuration.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Utilities.CreateJsonRpc(System.IO.Stream,System.Object)">
            <summary>
            Creates a new <see cref="T:StreamJsonRpc.JsonRpc" /> object with recommended settings.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.VisualStudioAccountExtensions">
            <summary>
            Extension methods for formatting Microsoft VS Account Organization uris.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.VisualStudioAccountExtensions.TfsServiceUrlPropertyName">
            <summary>
            Property name for obtaining correct uri format for AAD organizations
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.VisualStudioAccountExtensions.GetOrganizationUri(Microsoft.VisualStudio.Services.Account.Account)">
            <summary>
            Formatting Organizations uris for Microsoft Visual Studio Account Organization type
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties">
            <summary>
            Definition for properties passed during Aad account authentication.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.QueryStringPropertyName">
            <summary>
            Property name for QueryString.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.AuthenticationFlowPropertyName">
            <summary>
            Property name for Authentication Flow Type.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.UserNamePropertyName">
            <summary>
            Property name for User Name.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.HomeTenantOnlyPropertyName">
            <summary>
            Property name for Home Tenant Only flag.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.FeatureTextKey">
            <summary>
            Dictionary key to find feature text entry.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.DomainForAuthKey">
            <summary>
            Domain the user is authenticating with.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.WithFeatureText(System.Collections.Generic.Dictionary{System.String,System.String},System.String)">
            <summary>
            Header text to be shown in the sign in dialog.
            Will be combined with additional data in the service but should be a friendly feature name. And if localization makes sense should be localized prior to being passed in.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="featureText">Text to contribue to the overall header text.</param>
            <returns>Object populated with feature text.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.TryGetFeatureText(System.Collections.Generic.Dictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the feature text property out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <param name="featureText">The feature text if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.WithDomainText(System.Collections.Generic.Dictionary{System.String,System.String},System.String)">
            <summary>
            Domain information for what is being authenticated.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="domainText">Text to contribue to the overall header text.</param>
            <returns>Object populated with domain text.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.TryGetDomainText(System.Collections.Generic.Dictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the feature text property out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <param name="domainText">The domain text if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.WithQueryString(System.Collections.Generic.Dictionary{System.String,System.String},System.String)">
            <summary>
            Augments an existing property collection with a given query string.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="queryString">Query string to use during authentication.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.TryGetQueryString(System.Collections.Generic.Dictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the query string property out of the property collection.
            </summary>
            <param name="properties">The property collection</param>
            <param name="queryString">The query string if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.WithAuthenticationFlow(System.Collections.Generic.Dictionary{System.String,System.String},Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType)">
            <summary>
            Augments an existing property collection with a given flow type.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="flowType">The flow type to use for authentication.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.TryGetAuthenticationFlow(System.Collections.Generic.Dictionary{System.String,System.String},Microsoft.Developer.IdentityService.AccountProvider.AuthenticationFlowType@)">
            <summary>
            Tries to get the authentication flow type out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <param name="flowType">The authentication flow if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.WithUserName(System.Collections.Generic.Dictionary{System.String,System.String},System.String)">
            <summary>
            Augments an existing property collection with a given user name.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="userName">User name to use during authentication.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.TryGetUserName(System.Collections.Generic.Dictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the user name property out of the property collection.
            </summary>
            <param name="properties">The property collection</param>
            <param name="userName">The user name if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.WithHomeTenantOnly(System.Collections.Generic.Dictionary{System.String,System.String},System.Boolean)">
            <summary>
            Augments an existing property collection with flag describing whether to authenticate against
            the user's home tenant only.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="homeTenantOnly">Whether or not to authenticate against the home tenant only.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AadAccountProviderAuthenticationProperties.TryGetHomeTenantOnly(System.Collections.Generic.Dictionary{System.String,System.String},System.Boolean@)">
            <summary>
            Tries to get the flag describing whether to authenticate against the home tenant only out of the property collection.
            </summary>
            <param name="properties">The property collection</param>
            <param name="homeTenantOnly">Whether or not to authenticate atainst the home tenant only.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountDisplayInfoComparer">
            <summary>
            Compare two account display info objects.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountDisplayInfoComparer.Comparer">
            <summary>
            Comparer to compare two account display information objects.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountDisplayInfoComparer.Equals(Microsoft.Developer.IdentityService.AccountDisplayInfo,Microsoft.Developer.IdentityService.AccountDisplayInfo)">
            <summary>
            Determine if the two objects are equal.
            </summary>
            <param name="x">First account display info to comapre.</param>
            <param name="y">Second account display info to compare.</param>
            <returns>True if the display info objects are the same. False if they are different.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountDisplayInfoComparer.GetHashCode(Microsoft.Developer.IdentityService.AccountDisplayInfo)">
            <summary>
            Generate a hash code for the display info.
            </summary>
            <param name="obj">DisplayInfo to get the hash code for.</param>
            <returns>Hash code for the account display info.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountKeyComparer">
            <summary>
            Comparer to compare two account keys.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountKeyComparer.Comparer">
            <summary>
            Comparer to compare two account keys.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountKeyComparer.Equals(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.Account)">
            <summary>
            Compare accounts as accountkeys.
            </summary>
            <param name="x">First account to compare.</param>
            <param name="y">Second account to comapre.</param>
            <returns>Are the accounts equal.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountKeyComparer.Equals(Microsoft.Developer.IdentityService.AccountKey,Microsoft.Developer.IdentityService.AccountKey)">
            <summary>
            Determine if two account keys are equal.
            </summary>
            <param name="x">First account to comapre.</param>
            <param name="y">Second account to comapre.</param>
            <returns>True if the objects are equal. False if they are not equal.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountKeyComparer.GetHashCode(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Get the hash code.
            </summary>
            <param name="obj">Account to get the hash code for.</param>
            <returns>Hash code.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountKeyComparer.GetHashCode(Microsoft.Developer.IdentityService.AccountKey)">
            <summary>
            Generate a hash code based on the account keys.
            </summary>
            <param name="obj">Object to get the hash code for.</param>
            <returns>Hash code for the object.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.AccountMemberComparer">
            <summary>
            Compare the individual fields on an account to determine if they are different in contents.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.AccountMemberComparer.Comparer">
            <summary>
            Compare two accounts by members.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountMemberComparer.Equals(Microsoft.Developer.IdentityService.Account,Microsoft.Developer.IdentityService.Account)">
            <summary>
            Determine if the accounts are the same including contents.
            </summary>
            <param name="accountA">First account to compare.</param>
            <param name="accountB">Second account to compare.</param>
            <returns>True if the two accounts are equal in terms of their members. False if they are not equal.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.AccountMemberComparer.GetHashCode(Microsoft.Developer.IdentityService.Account)">
            <summary>
            Generate a hash code for the account.
            </summary>
            <param name="obj">Account to get the hash code for.</param>
            <returns>Get the hash code of the account.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.ProxyCredentials.#ctor(System.Uri,System.Net.NetworkCredential)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.CredentialStore.ProxyCredentials" /> class.
            </summary>
            <param name="proxyUri">Uri for proxy server</param>
            <param name="credential">NetworkCredential object for proxy credentials</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.ProxyCredentials.System#Net#ICredentials#GetCredential(System.Uri,System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredWrite(Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential@,System.UInt32)">
            <summary>
            <para>The CredWrite function creates a new credential or modifies an existing
            credential in the user's credential set. </para>
            <para>The new credential is associated with the logon session of the current token. </para>
            <para>The token must not have the user's security identifier (SID) disabled.</para>
            </summary>
            <param name="credential">A pointer to the credential structure to be written.</param>
            <param name="flags">Flags that control the function's operation. Must be set to 0.</param>
            <returns>True if success; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredRead(System.String,Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType,System.UInt32,System.IntPtr@)">
            <summary>
            <para>Reads a credential from the user's credential set. </para>
            <para>The credential set used is the one associated with the logon session of the
            current token. </para>
            <para>The token must not have the user's SID disabled.</para>
            </summary>
            <param name="targetName">Pointer to a null-terminated string that contains the name of
            the credential to read.</param>
            <param name="type">Type of the credential to read. Type must be one of the `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType" />`
            defined types.</param>
            <param name="flags">Currently reserved and must be zero.</param>
            <param name="credential">
            <para>Pointer to a single allocated block buffer to return the credential. </para>
            <para>Any pointers contained within the buffer are pointers to locations within this
            single allocated block. </para>
            <para>The single returned buffer must be freed by calling `<see cref="M:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredFree(System.IntPtr)" />`.</para>
            </param>
            <returns>True if success; false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredDelete(System.String,Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType,System.UInt32)">
            <summary>
            The CredDelete function deletes a credential from the user's credential set. The
            credential set used is the one associated with the logon session of the current
            token. The token must not have the user's SID disabled.
            </summary>
            <param name="targetName">The name of the credential to delete.</param>
            <param name="type">Type of the credential to delete. If the value of this parameter
            is DomainExtended, this function can delete a credential that specifies a user name
            when there are multiple credentials for the same target. The value of the
            TargetName parameter must specify the user name as Target|UserName.</param>
            <param name="flags">Reserved and must be zero.</param>
            <returns>The function returns TRUE on success and FALSE on failure.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredFree(System.IntPtr)">
            <summary>
            The CredFree function frees a buffer returned by any of the credentials management
            functions.
            </summary>
            <param name="credential">Pointer to the buffer to be freed.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredEnumerate(System.String,Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialEnumerateFlags,System.Int32@,System.IntPtr@)">
            <summary>
            Enumerates the credentials from the user's credential set. The credential set used
            is the one associated with the logon session of the current token. The token must
            not have the user's SID disabled.
            </summary>
            <param name="targetNameFilter">
            <para>Pointer to a null-terminated string that contains the filter for the returned
            credentials. Only credentials with a TargetName matching the filter will be returned.
            The filter specifies a name prefix followed by an asterisk. For instance, the filter
            "FRED*" will return all credentials with a TargetName beginning with the string
            "FRED".</para>
            <para>If <see langword="null" /> is specified, all credentials will be returned.</para>
            </param>
            <param name="flags">The value of this parameter can be zero or more values combined
            with a bitwise-OR operation.</param>
            <param name="count">Count of the credentials returned in the <paramref name="credenitalsArrayPtr" />.</param>
            <param name="credenitalsArrayPtr">
            <para>Pointer to an array of pointers to credentials. The returned credential is a
            single allocated block. Any pointers contained within the buffer are pointers to
            locations within this single allocated block.</para>
            <para>The single returned buffer must be freed by calling <see cref="M:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredFree(System.IntPtr)" />.</para>
            </param>
            <returns></returns>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialFlags.PromptNow">
            <summary>
            <para>Bit set if the `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` does not persist the `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob" />`
            and the credential has not been written during this logon session. This bit is
            ignored on input and is set automatically when queried.</para>
            <para>If `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Type" />` is <see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainCertificate" />,
            the `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob" />` is not persisted across logon
            sessions because the PIN of a certificate is very sensitive information.</para>
            <para>Indeed, when the credential is written to credential manager, the PIN is
            passed to the CSP associated with the certificate. The CSP will enforce a PIN
            retention policy appropriate to the certificate.</para>
            <para>If Type is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainPassword" />` or
            `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainCertificate" />`, an authentication package always
            fails an authentication attempt when using credentials marked as `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialFlags.PromptNow" />`.</para>
            <para>The application (typically through the key ring UI) prompts the user for the
            password. The application saves the credential and retries the authentication. </para>
            <para>Because the credential has been recently written, the authentication package
            now gets a credential that is not marked as `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialFlags.PromptNow" />`.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialFlags.UsernameTarget">
            <summary>
            <para>Bit is set if this `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` has a `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.TargetName" />`
            member set to the same value as the `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.UserName" />` member.</para>
            <para>Such a credential is one designed to store the `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob" />`
            for a specific user.</para>
            <para>This bit can only be specified if `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Type" />` is
            `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainPassword" />` or <see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainCertificate" />.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialPersist.Session">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` persists for the life of the logon session.</para>
            <para>It will not be visible to other logon sessions of this same user.</para>
            <para>It will not exist after this user logs off and back on.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialPersist.LocalMachine">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` persists for all subsequent logon sessions on
            this same computer.</para>
            <para>It is visible to other logon sessions of this same user on this same computer
            and not visible to logon sessions for this user on other computers.</para>
            </summary>
            <remarks>
            Windows Vista Home Basic, Windows Vista Home Premium, Windows Vista Starter, and
            Windows XP Home Edition:  This value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialPersist.Enterprise">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` persists for all subsequent logon sessions on
            this same computer. </para>
            <para>It is visible to other logon sessions of this same user on this same computer
            and to logon sessions for this user on other computers.</para>
            </summary>
            <remarks>
            Windows Vista Home Basic, Windows Vista Home Premium, Windows Vista Starter, and
            Windows XP Home Edition:  This value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.Generic">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` is a generic credential. The credential will
            not be used by any particular authentication package.</para>
            <para>The credential will be stored securely but has no other significant
            characteristics.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainPassword">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` is a password credential and is specific to
            Microsoft's authentication packages. </para>
            <para>The NTLM, Kerberos, and Negotiate authentication packages will automatically
            use this credential when connecting to the named target.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainCertificate">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` is a certificate credential and is specific to
            Microsoft's authentication packages. </para>
            <para>The Kerberos, Negotiate, and Schannel authentication packages automatically
            use this credential when connecting to the named target.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainVisiblePassword">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` is a password credential and is specific to
            authentication packages from Microsoft. </para>
            <para>The Passport authentication package will automatically use this credential
            when connecting to the named target.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.GenericCertificate">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` is a certificate credential that is a generic
            authentication package.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainExtended">
            <summary>
            <para>The `<see cref="T:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential" />` is supported by extended Negotiate packages.</para>
            </summary>
            <remarks>
            Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP:  This
            value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.Maximum">
            <summary>
            <para>The maximum number of supported credential types.</para>
            </summary>
            <remarks>
            Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP:  This
            value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.MaximumEx">
            <summary>
            <para>The extended maximum number of supported credential types that now allow new
            applications to run on older operating systems.</para>
            </summary>
            <remarks>
            Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP:  This
            value is not supported.
            </remarks>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Flags">
            <summary>
            <para>A bit member that identifies characteristics of the credential. </para>
            <para>Undefined bits should be initialized as zero and not otherwise altered to
            permit future enhancement.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Type">
            <summary>
            <para>The type of the credential. This member cannot be changed after the credential
            is created. </para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Comment">
            <summary>
            <para>A string comment from the user that describes this credential. </para>
            <para>This member cannot be longer than `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.StringMaxLength" />` characters.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.LastWritten">
            <summary>
            <para>The time, in Coordinated Universal Time (Greenwich Mean Time), of the last
            modification of the credential. </para>
            <para>For write operations, the value of this member is ignored.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlobSize">
            <summary>
            <para>The size, in bytes, of the `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob" />` member. </para>
            <para>This member cannot be larger than `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.PasswordMaxLength" />` bytes.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob">
            <summary>
            <para>Secret data for the credential. The CredentialBlob member can be both read
            and written.</para>
            <para>If the `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Type" />` member is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainPassword" />`,
            this member contains the plaintext Unicode password for `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.UserName" />`.</para>
            <para>The `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob" />` and `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlobSize" />`
            members do not include a trailing zero character.</para>
            <para>Also, for `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainPassword" />`, this member can only
            be read by the authentication packages.</para>
            <para>If the Type member is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainCertificate" />`, this
            member contains the clear test Unicode PIN for `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.UserName" />`.</para>
            <para>The `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob" />` and `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlobSize" />`
            members do not include a trailing zero character. </para>
            <para>Also, this member can only be read by the authentication packages.</para>
            <para>If the `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Type" />` member is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.Generic" />`,
            this member is defined by the application.</para>
            <para>Credentials are expected to be portable. Applications should ensure that the
            data in `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.CredentialBlob" />` is portable.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Persist">
            <summary>
            <para>Defines the persistence of this credential. This member can be read and
            written.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.AttributeCount">
            <summary>
            <para>The number of application-defined attributes to be associated with the
            credential. </para>
            <para>This member can be read and written. Its value cannot be greater than `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.AttributeMaxLengh" />`.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.Attributes">
            <summary>
            <para>Application-defined attributes that are associated with the credential. This
            member can be read and written.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.TargetAlias">
            <summary>
            <para>Alias for the TargetName member. This member can be read and written. It
            cannot be longer than `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.StringMaxLength" />` characters.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.Generic" />`, this member
            can be non-NULL, but the credential manager ignores the member.</para>
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.Win32Credential.UserName">
            <summary>
            <para>The user name of the account used to connect to TargetName.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainPassword" />`, this
            member can be either a DomainName\UserName or a UPN.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.DomainCertificate" />`,
            this member must be a marshaled certificate reference created by calling
            `CredMarshalCredential` with a `CertCredential`.</para>
            <para>If the credential Type is `<see cref="F:Microsoft.Developer.IdentityService.CredentialStore.Advapi32.CredentialType.Generic" />`, this member
            can be non-NULL, but the credential manager ignores the member.</para>
            <para>This member cannot be longer than CRED_MAX_USERNAME_LENGTH(513) characters.</para>
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.CredentialStore.Win32Error">
            <summary>
            The System Error Codes are very broad. Each one can occur in one of many hundreds of
            locations in the system. Consequently the descriptions of these codes cannot be very
            specific. Use of these codes requires some amount of investigation and analysis. You
            need to note both the programmatic and the run-time context in which these errors occur.
            Because these codes are defined in WinError.h for anyone to use, sometimes the codes
            are returned by non-system software. Sometimes the code is returned by a function deep
            in the stack and far removed from your code that is handling the error.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.Success">
            <summary>
            The operation completed successfully.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.FileNotFound">
            <summary>
            The system cannot find the file specified.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.InvalidHandle">
            <summary>
            The handle is invalid.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.NotEnoughMemory">
            <summary>
            Not enough storage is available to process this command.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.SharingViloation">
            <summary>
            The process cannot access the file because it is being used by another process.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.FileExists">
            <summary>
            The file exists.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.AlreadExists">
            <summary>
            Cannot create a file when that file already exists.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.NotFound">
            <summary>
            Element not found.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.NoSuchLogonSession">
            <summary>
            A specified logon session does not exist. It may already have been terminated.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.Win32Error.GetLastErrorCode(System.Boolean)">
            <summary>
            Gets last Win32 error code if call was not successful.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.CredentialStore.WindowsCredentialStoreReader">
            <summary>
            Credential store reader implementation for Windows platforms
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.WindowsCredentialStoreReader.Get(System.String,System.Diagnostics.TraceSource)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.CredentialStore.WindowsCredentialStoreReader.TryGetValue(System.String,System.Net.NetworkCredential@)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.ServiceHubCopiedClasses.TraceEventId">
            <summary>
            Class containing trace event ID constants.
            We use a class with int members instead of an enum 
            because then we don't have to typecast the enum to 
            an int everytime we want to trace an event.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Linux.NativeMethods.getuid">
            <summary>
            Get the real user ID of the calling process.
            </summary>
            <returns>the real user ID of the calling process</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.MsalDiagnosticsLogger">
            <summary>
            A set of utilities shared between service and client.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.CompRootNetworkClientFactory.GetHttpClient(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.CompRootNetworkClientFactory.HasHttpClient(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.CompRootNetworkClientFactory.GetHttpClientOrDefault(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.CompRootNetworkClientFactory.GetHttpClient">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.CompRootNetworkClientFactory.UpdateProxySettingsBasedOnWebException(System.Exception,System.Diagnostics.TraceSource)">
            <summary>
            Changes NetworkClientFactory configuration to use proxy configuration provided by exception.
            </summary>
            <param name="exception">Exception during web request.</param>
            <param name="logger">Logger for error reporting.</param>
            <returns>Return true if factory was updated.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Network.HttpClientFactoryConverter">
            <summary>
            Converts an <see cref="T:Microsoft.Developer.IdentityService.Network.INetworkClientFactory" /> to an <see cref="T:Microsoft.Identity.Client.IMsalHttpClientFactory" />. Primarly used for Msal.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.HttpClientFactoryConverter.#ctor(Microsoft.Developer.IdentityService.Network.INetworkClientFactory)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.Network.HttpClientFactoryConverter" /> class.
            </summary>
            <param name="httpClientFactory">Factory to convert.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.HttpClientFactoryConverter.GetHttpClient">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Network.INetworkClientFactory">
            <summary>
            Factory for creating new instances of objects that provide methods for network communication.
            This allows advanced settings like proxy support in the identity service. Implementations should also be thread-safe.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.INetworkClientFactory.GetHttpClient(System.String)">
            <summary>
            Gets an HttpClient instance associated with the name. Calls to this method with the same string should return the same HttpClient instance for the lifetime of the object.
            </summary>
            <param name="name">Name associated with the HttpClient.</param>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown if no HttpClient is found associated with the provided name.</exception>
            <returns>An HttpClient instance.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.INetworkClientFactory.HasHttpClient(System.String)">
            <summary>
            Determines whether an HttpClient instance is associated with the name.
            </summary>
            <param name="name">Name to locate.</param>
            <returns>true if an instance is associated with the name. false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.INetworkClientFactory.GetHttpClientOrDefault(System.String)">
            <summary>
            Attempts to get an HttpClient instance associated with the name. If no such instance is found, the default HttpClient instance is returned.
            </summary>
            <remarks>This should be preferred over GetHttpClient unless the nonexistence of an HttpClient associated with the name is an error.</remarks>
            <param name="name">Name associated with the HttpClient.</param>
            <returns>An HttpClient instance.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.INetworkClientFactory.GetHttpClient">
            <summary>
            Provides the default HttpClient instance. This should be the same HttpClient instance for the lifetime of the object.
            </summary>
            <returns>An HttpClient instance.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Network.INetworkClientFactoryProperties">
            <summary>
            Factory for creating new instances of objects that provide methods for network communication.
            This allows advanced settings like proxy support in the identity service. Implementations should also be thread-safe.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Network.NetworkClientFactory">
            <summary>
            Basic implementation of INetworkClientFactory using a Dictionary.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.DefaultKey">
            <summary>
            The name associated with the default <see cref="T:System.Net.Http.HttpClient" />.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.DefaultProxyEnvironmentVariableName">
            <summary>
            Environment variable for gating default proxy creds usage.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.httpClients">
            <summary>
            Mapping of names to httpClients. All HttpClients are lazy to ensure that they aren't created unless used.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.traceSource">
            <summary>
            TraceSource for logging
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.#ctor(System.Func{System.Net.Http.HttpClient},System.Diagnostics.TraceSource,Microsoft.Developer.IdentityService.Network.ClientFactoryType)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.Network.NetworkClientFactory" /> class with a custom default httpclient.
            </summary>
            <param name="defaultHttpClientInitalizer">The initalizer to use to generate the default httpclient.</param>
            <param name="logger">Trace source for logging</param>
            <param name="clientFactoryType">client factory type, indicates no proxy, default proxy, or proxy credentials attached</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.AddHttpClient(System.String,System.Func{System.Net.Http.HttpClient})">
            <summary>
            Adds an http client with the provided name.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException">Thrown if an instance already exists with the given name.</exception>
            <param name="name">The name associated with the HttpClient instance.</param>
            <param name="httpClientInitalizer">Function that returns a new HttpClient instance. This function will be called once. </param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.HasHttpClient(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.GetHttpClientOrDefault(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.GetHttpClient(System.String)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Network.NetworkClientFactory.GetHttpClient">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Network.StaticNetworkClientFactory">
            <summary>
            NetworkClientFactory that is a singleton instance. Used as the default instance in the identity service where an INetworkClientFactory is not provided.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.SharedUtilities">
            <summary>
            A set of utilities shared between service and client.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.DefaultBaseCachePath">
            <summary>
            default base cache path.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.Version">
            <summary>
            VSAuthInfo version.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.DefaultAuthTypesFileName">
            <summary>
            default VS authentication info location.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.ConfigFileExtension">
            <summary>
            Aad configuration file extension.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.GitHubProvider">
            <summary>
            Provider for github accounts.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.AllowedAadErrorCodes">
            <summary>
            List of allowed AadError codes that will not cause the account to fail to be added.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.PreAuthorizationErrorCode">
            <summary>
            pre-authorization error code
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.NationalCloudErrorCode">
            <summary>
            National Cloud error code
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.SharedUtilities.vsAuthLib">
            <summary>
            Cached VS authentication library.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.LogExceptionAndDoNotHandler(System.Action)">
            <summary>
            For the case where we want to log an exception but not handle it in a when clause.
            </summary>
            <param name="loggingAction">Logging action.</param>
            <returns>false always in order to skip the exception filter.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.WithWAMSettings(Microsoft.Identity.Client.PublicClientApplicationBuilder,System.String,System.Uri,System.String)">
            <summary>
            Add WAM settings to app builder.
            </summary>
            <param name="appBuilder">App builder.</param>
            <param name="clientId">ClientID to use for the operation. This will get checked against known WAM-capable Clients before trying to actually do WAM.</param>
            <param name="authority">Authority this will be used for. This will be checked to see if the authority is capable of doing WAM before setting it up.</param>
            <param name="headerText">header text for the WAM dialog</param>
            <returns>Builder with WAM settings.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.LogExceptionAndDoNotHandleSkipCancelled(System.Diagnostics.TraceSource,System.Exception,System.Action)">
            <summary>
            For the case where we want to log an exception but not handle it in a when clause.
            </summary>
            <param name="logger">Logger.</param>
            <param name="e">Exception.</param>
            <param name="loggingAction">Logging action.</param>
            <returns>false always in order to skip the exception filter.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.UserCanceled(System.Exception)">
            <summary>
            Did the exception indicate the user has canceled the sign in dialog.
            </summary>
            <param name="e">Exception that indicates cancel.</param>
            <returns>True if the user canceled, False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.FormatGuidAsString(System.Guid)">
            <summary>
            Format the guid as a string.
            </summary>
            <param name="guid">Guid to format.</param>
            <returns>Formatted guid in string format.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.CreateRedactedException(System.Exception)">
            <summary>
            Remove exceptions with @ in them since they may be email addresses.
            Just try and get the error code from the front if possible.
            </summary>
            <param name="ex">Exception.</param>
            <returns>A redacted exception.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetDefaultArtifactPath">
            <summary>
            Generate the default artifact location.
            </summary>
            <returns>Default artifact location.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetDefaultArtifactPath(System.Boolean)">
            <summary>
            Generate the default artifact location.
            </summary>
            <param name="windowsOS">Is the operating system windows or not.</param>
            <returns>Default artifact location.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsWindowsPlatform">
            <summary>
             Is this a windows platform.
            </summary>
            <returns>A  value indicating if we are running on windows or not.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsMacPlatform">
            <summary>
            Is this a MAC platform.
            </summary>
            <returns>A value indicating if we are running on mac or not.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsLinuxPlatform">
            <summary>
            Is this a linux platform.
            </summary>
            <returns>A  value indicating if we are running on linux or not.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsMonoPlatform">
            <summary>
             Is this running on mono.
            </summary>
            <returns>A  value indicating if we are running on mono or not.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetIdentityServiceRootDirectory">
            <summary>
            Gets the users home directory.
            </summary>
            <returns>Home directory.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.VerifyAccountProviderId(Microsoft.Developer.IdentityService.AccountKey,System.Guid)">
            <summary>
            Validate an account is for a specific account provider.
            </summary>
            <param name="accountKey">Account key to check against the expected accountProvider.</param>
            <param name="accountProviderId">Account provider id to match against.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.VerifyAccountProviderId(System.Guid,System.Guid)">
            <summary>
            Validate if the provider Id matches the expected provider Id.
            </summary>
            <param name="providerId">provider Id to validate.</param>
            <param name="expectedProviderId">Provider id to match against.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.VerifyConfiguration(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration)">
            <summary>
            Verify that the two configurations match, throw exceptions if they dont.
            </summary>
            <param name="accountConfiguration">Configuration from the account.</param>
            <param name="expectedConfiguration">Expected configuration.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetFileNameforConfiguration(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,System.String)">
            <summary>
            Gets the file path for the configuration.
            </summary>
            <param name="config">Configuration of the provider.</param>
            <param name="configPath">Location of the configuration file.</param>
            <returns>Path for the configuration file.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsMatchingConfiguration(Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration,Microsoft.Developer.IdentityService.AccountProvider.IAadConfiguration)">
            <summary>
            Determines if the two configurations match.
            </summary>
            <param name="config1">1st configuration to compare.</param>
            <param name="config2">2nd configuration to compare.</param>
            <returns>True if the configurations match, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetIdentityServiceUserRootDirectory(System.Boolean)">
            <summary>
            Generate the default file location.
            </summary>
            <param name="windowsOS">Is the operating system windows or not.</param>
            <returns>Home directory.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetServiceHubBaseDirforUnix">
            <summary>
            Get the based directory for the service hub.
            </summary>
            <returns>base directory for theservice hub.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.RepairConnectionAsync(System.Diagnostics.TraceSource,System.Func{System.Threading.CancellationToken,System.Threading.Tasks.Task{System.Boolean}},System.Threading.CancellationToken)">
            <summary>
            Try rpc call on <see cref="F:Microsoft.Developer.IdentityService.SharedUtilities.ConnectRetryCount" /> time(s).
            </summary>
            <param name="logger">logger.</param>
            <param name="repairRpcConnectionAsync">Func to repair rpc connection.</param>
            <param name="cancellationToken">Concellation token.</param>
            <returns>Task.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.PreserveStorePersonalizationPropertyFromStore(System.Collections.Generic.IEnumerable{Microsoft.Developer.IdentityService.Account},Microsoft.Developer.IdentityService.Account)">
            <summary>
            Find if the account being added is already in the store as a personalization account.
            </summary>
            <param name="storeAccounts">Set of accounts in the current store.</param>
            <param name="accountToAdd">Account to add. </param>
            <returns>An account that has the correct personalization property.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsADFSAuthority(System.Uri)">
            <summary>
            Determines if the authority is an ADFS authority.
            </summary>
            <param name="authority">Uri to check if it is ADFS or not.</param>
            <returns>true if the authority is an adfs authority, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.ExecuteWithinLockAsync(System.Func{System.Threading.Tasks.Task},System.String,System.Int32,System.Int32,System.Threading.CancellationToken)">
            <summary>
            Execute a function within a file lock.
            </summary>
            <param name="function">Function to execute within the filelock.</param>
            <param name="lockFileLocation">Full path of the file to be locked.</param>
            <param name="lockRetryCount">Number of retry attempts for acquiring the file lock.</param>
            <param name="lockRetryWaitInMs">Interval to wait for before retrying to acquire the file lock.</param>
            <param name="cancellationToken">cancellationToken.</param>
            <returns>A <see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.RemovePromptQueryParameter(System.String)">
            <summary>
            Remove prompt=login.
            </summary>
            <param name="queryParameters">query parameters.</param>
            <returns>returns string with prompt=login removed.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.ExecuteWithinLock(System.Func{System.Boolean},System.String,System.Int32,System.Int32,System.Threading.CancellationToken)">
            <summary>
            Execute a function within a file lock.
            </summary>
            <param name="function">Function to execute within the filelock.</param>
            <param name="lockFileLocation">Full path of the file to be locked.</param>
            <param name="lockRetryCount">Number of retry attempts for acquiring the file lock.</param>
            <param name="lockRetryWaitInMs">Interval to wait for before retrying to acquire the file lock.</param>
            <param name="cancellationToken">cancellationToken.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsGitHubAccount(System.String)">
            <summary>
            Checks if the account is a GitHub Account.
            </summary>
            <param name="providers">list of providers for the account.</param>
            <returns>true if the account is a GitHub account, false otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetVSAuthInfo(System.Diagnostics.TraceSource,System.String,System.Boolean)">
            <summary>
            Gets the authentication library used by VS.
            </summary>
            <param name="logger">logger.</param>
            <param name="filePath">location for the json file, tests will specify it.</param>
            <param name="forceRefresh">force reading the authinfo from file, used for tests.</param>
            <returns>Authentication library currently in use by VS.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.IsAllowedAadError(System.Exception)">
            <summary>
            Check if the passed in exception is an allowed Aad error.
            </summary>
            <param name="e">Exception to check.</param>
            <returns>True if the exception is an allowed Aad error code. False otherwise.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.ExceptionContainsErrorCodes(System.Exception,System.Collections.Generic.List{System.String})">
            <summary>
            Check if the passed in exception is an allowed Aad error.
            </summary>
            <param name="e">Exception to check.</param>
            <param name="errorCodes">Error codes to check for in the exception</param>
            <returns>True if the exception has atleaset one of the error codes in the errorCodes list</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetMessageWithInnerExceptions(System.Exception)">
            <summary>
            Format the exception including its inner exception.
            </summary>
            <param name="exception">Exception to format.</param>
            <returns>Formatted exception message.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.SharedUtilities.GetInnerMostExceptionName(System.Exception)">
            <summary>
            Returns the type name of the most inner exception.
            </summary>
            <param name="exception">Exception to find the most inner exception of.</param>
            <returns>The type name of the most inner exception, of if there is no inner exception this will be the name of the current exception.</returns>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Telemetry.DefaultTelemetryOperation">
            <summary>
            A default implementation of <see cref="T:Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation" /> that does nothing. This is intended
            for cases where the TelemetryService is unavailable.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.DefaultTelemetryOperation.Dispose">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.DefaultTelemetryOperation.SetProperty(System.String,System.Object,System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.DefaultTelemetryOperation.SetResult(Microsoft.Developer.IdentityService.Telemetry.OperationResult,System.String)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Telemetry.FailureParameters">
            <summary>
            Parameters for uniquely classifying failures. These are used to generate a failure ID.
            Failure parameters which are left unspecified or passed a null value will retain their
            original value set by default.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Telemetry.FailureParameters.ExceptionType">
            <summary>Exception Type</summary>
            <example><code>System.NullReferenceException</code></example>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Telemetry.FailureParameters.ModuleName">
            <summary>Module Name</summary>
            <example><code>Microsoft.PackageLoad.Utility</code></example>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Telemetry.FailureParameters.MethodName">
            <summary>Method Name</summary>
            <example><code>ValidatePackage</code></example>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Telemetry.FailureParameters.Custom1">
            <summary>Custom failure parameter 1</summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Telemetry.FailureParameters.Custom2">
            <summary>Custom failure parameter 2</summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Telemetry.GitHubTelemetryConstants">
            <summary>
            List of telemetry constants used for GitHub related telemetry
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Telemetry.IdentityTelemetryLogger">
            <summary>
            Allows telemetry events to be received.
            </summary>
        </member>
        <member name="P:Microsoft.Developer.IdentityService.Telemetry.IdentityTelemetryLogger.TelemetryLogger">
            <summary>
            Gets or sets the ITelemetryLogger.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger">
            <summary>
            A static class abstracting the VS telemtry service to allow calling it from ServiceHub.
            This class is also responsible for routing telemetry calls to a no-op when the telemetry
            service is not available.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.VsSessionIdPropertyName">
            <summary>
            Property name of VS Session ID used for Telemetry events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.VsExeVersionPropertyName">
            <summary>
            Property name of VS executable version used for Telemetry events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.IsWAMClientIdEnabledPropertyName">
            <summary>
            Property name describing if wam is enabled used for Telemetry events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.WamClientIdDisabledDueToEnvironmentPropertyName">
            <summary>
            Property name describing if wam is disabled due to an environment variable used for Telemetry events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.VsSkuNamePropertyName">
            <summary>
            Property name of VS SKU Name used for Telemetry events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.VsChannelIdPropertyName">
            <summary>
            Property name of VS Session ID used for Telemetry events.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.EventPrefix">
            <summary>
            String prepended to all events fired through this service.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.PropertyPrefix">
            <summary>
            String prepended to all properties attached to events using this service.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVsSessionId">
            <summary>
            Gets the current VS session ID.
            </summary>
            <returns>VS Session ID string.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVSSkuName">
            <summary>
            Gets the VS Sku Name.
            </summary>
            <returns>VS Sku Name.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVsChannelId">
            <summary>
            Gets the current VS ChannelId.
            </summary>
            <returns>VS Session ID string.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVsExeVersion">
            <summary>
            Gets the current VS executable version.
            </summary>
            <returns>VS executable version.</returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.SetVsSessionIdSharedProperty(System.String)">
            <summary>
            Adds the VS Session ID to all Telemetry events.
            </summary>
            <param name="vsSessionId">Session ID of Visual Studio process.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.SetVsExeVersionSharedProperty(System.String)">
            <summary>
            Adds the VS Exe Version to all Telemetry events.
            </summary>
            <param name="vsExeVerion">Session ID of Visual Studio process.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.SetIsWAMEnabledSharedProperty">
            <summary>
            Adds Is WAM Enabled to the telemetry events
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.SetVsSkuNameSharedProperty(System.String)">
            <summary>
            Adds the VS Sku Name to all Telemetry events.
            </summary>
            <param name="vsSkuName">Sku name of Visual Studio process.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.SetVsChannelIdSharedProperty(System.String)">
            <summary>
            Adds the VS ChannelId to all Telemetry events.
            </summary>
            <param name="vsChannelId">ChannelId of Visual Studio process.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.StartOperation(System.String,System.Boolean)">
            <summary>
            Starts a telemetry operation and returns the disposable object used to add properties and end the operation.
            </summary>
            <param name="eventNameSuffix">The combination of this and <see cref="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.EventPrefix" /> uniquely defines an event name.</param>
            <param name="postStartEvent">Specifies whether or not to post the start event for this operation.</param>
            <returns>
            An instance of <see cref="T:Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation" /> to specify properties, and result for this operation. The returned
            object should be disposed to denote the end of the operation.
            </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.StartOperation(System.String,System.Collections.Generic.Dictionary{System.String,System.Object})">
            <summary>
            Starts a telemetry operation and returns the disposable object used to add properties and end the operation.
            </summary>
            <param name="eventNameSuffix">The combination of this and <see cref="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.EventPrefix" /> uniquely defines an event name.</param>
            <param name="startEventProperties">Dictionary containing information to send with telemetry.</param>
            <returns>
            An instance of <see cref="T:Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation" /> to specify properties, and result for this operation. The returned
            object should be disposed to denote the end of the operation.
            </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.StartOperation(System.String,System.Collections.Generic.Dictionary{System.String,System.Object},Microsoft.VisualStudio.Telemetry.TelemetrySeverity)">
            <summary>
            Starts a telemetry operation and returns the disposable object used to add properties and end the operation.
            </summary>
            <param name="eventNameSuffix">The combination of this and <see cref="F:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.EventPrefix" /> uniquely defines an event name.</param>
            <param name="startEventProperties">Dictionary containing information to send with telemetry.</param>
            <param name="severity">Enum value that indicates severity level of telemetry.</param>
            <returns>
            An instance of <see cref="T:Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation" /> to specify properties, and result for this operation. The returned
            object should be disposed to denote the end of the operation.
            </returns>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.LogException(System.Diagnostics.TraceSource,System.Exception,Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation[])">
            <summary>
            Reports an exception object to telemetry immediately.
            </summary>
            <param name="logger">Logger</param>
            <param name="ex">The exception to report</param>
            <param name="correlatedOperations">A list of telemetry operations that should be correlated with this event.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.LogException(System.Diagnostics.TraceSource,System.Exception,Microsoft.Developer.IdentityService.Telemetry.FailureParameters,Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation[])">
            <summary>
            Reports an exception object to telemetry immediately.
            </summary>
            <param name="logger">logger</param>
            <param name="ex">The exception to report</param>
            <param name="failureParams">Parameters for uniquely classifying failures. These are used to generate a failure ID.</param>
            <param name="correlatedOperations">A list of telemetry operations that should be correlated with this event.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.LogException(System.Diagnostics.TraceSource,System.Exception,System.String,Microsoft.Developer.IdentityService.Telemetry.ITelemetryOperation[])">
            <summary>
            Reports an exception object to telemetry immediately.
            </summary>
            <param name="logger">tracesource can be null</param>
            <param name="ex">The exception to report</param>
            <param name="eventName">Name of the exception event</param>
            <param name="correlatedOperations">A list of telemetry operations that should be correlated with this event.</param>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.Telemetry.TelemetryOperation">
            <summary>
            Implements the actual logic of collecting properties and firing a closing event, correlated with the passed in operation.
            </summary>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryOperation.#ctor(Microsoft.VisualStudio.Telemetry.TelemetryScope{Microsoft.VisualStudio.Telemetry.OperationEvent})">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Developer.IdentityService.Telemetry.TelemetryOperation" /> class.
            </summary>
            <param name="telemetryOperation">TelemetryService instance of operation used for sending operation ended events.</param>
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryOperation.SetProperty(System.String,System.Object,System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryOperation.Dispose">
            <inheritdoc />
        </member>
        <member name="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryOperation.SetResult(Microsoft.Developer.IdentityService.Telemetry.OperationResult,System.String)">
            <inheritdoc />
        </member>
        <member name="T:Microsoft.Developer.IdentityService.VSAuthInfo">
            <summary>
            Authentication library used in VS.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.VSAuthInfo.Version">
            <summary>
            VSAuthInfo version.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.VSAuthInfo.AuthType">
            <summary>
            Authentication library used in VS.
            </summary>
        </member>
        <member name="T:Microsoft.Developer.IdentityService.VSAuthTypes">
            <summary>
            Authentication library currently in use by VS.
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.VSAuthTypes.Default">
            <summary>
            VS is using default authentication library
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.VSAuthTypes.ADALFork">
            <summary>
            VS is using ADAL fork
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.VSAuthTypes.ADALV5">
            <summary>
            [Obsolete] VS is using ADAL v5
            </summary>
        </member>
        <member name="F:Microsoft.Developer.IdentityService.VSAuthTypes.MSAL">
            <summary>
            VS is using MSAL
            </summary>
        </member>
        <member name="T:Microsoft.Asal.VisualStudio.Extension.Common.Settings">
            <summary>
            Settings for the ASAL extension.
            </summary>
        </member>
        <member name="M:Microsoft.Asal.VisualStudio.Extension.Common.Settings.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Asal.VisualStudio.Extension.Common.Settings" /> class. With the default settings location.
            </summary>
        </member>
        <member name="M:Microsoft.Asal.VisualStudio.Extension.Common.Settings.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.Asal.VisualStudio.Extension.Common.Settings" /> class.
            </summary>
            <param name="settingsFilePath">Location of the settings file.</param>
        </member>
        <member name="P:Microsoft.Asal.VisualStudio.Extension.Common.Settings.AccountIdentifier">
            <summary>
            Gets or sets account identifier.
            </summary>
        </member>
        <member name="P:Microsoft.Asal.VisualStudio.Extension.Common.Settings.ProviderId">
            <summary>
            Gets or sets account identifier.
            </summary>
        </member>
        <member name="M:Microsoft.Asal.VisualStudio.Extension.Common.Settings.GetSelectedAccountAsync">
            <summary>
            Gets the currently selected account.
            </summary>
            <returns>The currently selected account null if there is no selected account.</returns>
        </member>
        <member name="M:Microsoft.Asal.VisualStudio.Extension.Common.Settings.GetSettingsFromStorageAsync">
            <summary>
            Gets the settings from storage.
            </summary>
            <returns>Settings if they exist. Null if no settings are available.</returns>
        </member>
        <member name="M:Microsoft.Asal.VisualStudio.Extension.Common.Settings.SaveSettingsAsync">
            <summary>
            Save the settings file to storage.
            </summary>
            <returns><see cref="T:System.Threading.Tasks.Task" /> representing the asynchronous operation.</returns>
        </member>
        <member name="T:AdditionalContextProperties">
            <summary>
            Definition for additional context properties. For telemetry.
            </summary>
        </member>
        <member name="F:AdditionalContextProperties.VsSessionIdPropertyName">
            <summary>
            Property name of VS Session ID.
            </summary>
        </member>
        <member name="F:AdditionalContextProperties.VsExeVersion">
            <summary>
            Property name of VS Executable Version.
            </summary>
        </member>
        <member name="F:AdditionalContextProperties.VsSkuName">
            <summary>
            Property name of VS SkuName.
            </summary>
        </member>
        <member name="F:AdditionalContextProperties.VsChannelId">
            <summary>
            Property name of VS ChannelId.
            </summary>
        </member>
        <member name="F:AdditionalContextProperties.VsUICultureName">
            <summary>
            Property name of VS CultureName.
            </summary>
        </member>
        <member name="M:AdditionalContextProperties.WithVsSessionId(System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
            <summary>
            Augments an existing property collection with a VS session ID.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="vsSessionId">Current VS Session ID.  Uses <see cref="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVsSessionId" /> if <paramref name="vsSessionId" /> is null.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:AdditionalContextProperties.WithVsExeVersion(System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
            <summary>
            Augments an existing property collection with a VS executable version.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="vsExeVersion">Current VS executable version.  Uses <see cref="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVsExeVersion" /> if <paramref name="vsExeVersion" /> is null.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:AdditionalContextProperties.WithVsSkuName(System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
            <summary>
            Augments an existing property collection with a VS SkuName.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="vsSkuName">Current VS executable version.  Uses <see cref="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVSSkuName" /> if <paramref name="vsSkuName" /> is null.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:AdditionalContextProperties.WithVsChannelId(System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
            <summary>
            Augments an existing property collection with a VS ChannelId.
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="vsChannelId">Current VS executable version.  Uses <see cref="M:Microsoft.Developer.IdentityService.Telemetry.TelemetryLogger.GetVsChannelId" /> if <paramref name="vsChannelId" /> is null.</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:AdditionalContextProperties.WithUICultureName(System.Collections.Generic.IDictionary{System.String,System.String},System.String)">
            <summary>
            Augments an existing property collection with VS current UI culture since this can only be change on a VS restart we should be good
            </summary>
            <param name="builder">Existing property collection builder.</param>
            <param name="cultureName">Current VS UI Culture name</param>
            <returns>Builder object to enable chaining.</returns>
        </member>
        <member name="M:AdditionalContextProperties.TryGetVsSessionId(System.Collections.Generic.IDictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the VS Session ID out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <param name="vsSessionId">The VS Session ID if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:AdditionalContextProperties.TryGetVsExeVersion(System.Collections.Generic.IDictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the VS executable version out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <param name="vsExeVersion">The VS executable version if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:AdditionalContextProperties.TryGetVsSkuName(System.Collections.Generic.IDictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the VS executable version out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <param name="vsSkuName">The VS SkuName if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="M:AdditionalContextProperties.TryGetVSUICulture(System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Tries to get the VS UI culture version out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <returns>Culture sent from client or current UI culture instead</returns>
        </member>
        <member name="M:AdditionalContextProperties.TryGetVsChannelId(System.Collections.Generic.IDictionary{System.String,System.String},System.String@)">
            <summary>
            Tries to get the VS executable version out of the property collection.
            </summary>
            <param name="properties">The property collection.</param>
            <param name="vsChannelId">The VS channelId if it exists in the property collection.</param>
            <returns>True if the property exists. False otherwise.</returns>
        </member>
        <member name="T:System.Runtime.CompilerServices.FormattableStringFactory">
            <summary>
            A factory type used by compilers to create instances of the type <see cref="T:System.FormattableString" />.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.FormattableStringFactory.Create(System.String,System.Object[])">
            <summary>
            Create a <see cref="T:System.FormattableString" /> from a composite format string and object
            array containing zero or more objects to format.
            </summary>
            <param name="format">Composite format string.</param>
            <param name="arguments">Objects to be formatted.</param>
            <returns>A <see cref="T:System.FormattableString" />.</returns>
        </member>
    </members>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /><SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /><DigestValue>pO+YkJwGmUzIBslmNQLWtS/2DcnKv7/Mh+Zunv7WYbE=</DigestValue></Reference></SignedInfo><SignatureValue>gZVOVzth+bZGDBv4fbfhH1mO4Eg1132uUpPqG2Af7RJkk70/6JfVATysIJ3gbYKs851rGpYrCuaIiMv2ItKhTa2crbWviYxcPU9TN7zCPiR0fbgjcp0/unUUuMSIvbrTsqrvaIk4uYp72A99Xxd0fVkIVCkhUUHl2NZebbNKvAro2zUuqVYuOiX7Mqhfk9SHTpYNmYU3wsLUI09pnou3UeJ57XUaMLVBCKns75LLFrBFjDORo4Ez+PukFjV4u0u4PPwc519yes+AuGgTJhIQjl3YNK4wnUyF+JeyrhLPbSbqRqlJKbqoD5GEccbKTw3XNuVyqUnIXCr8vB0/XDQPlw==</SignatureValue><KeyInfo><KeyValue><RSAKeyValue><Modulus>wEpIdXKb7lKn26sXpXuywkhxGplTQXxROLmNRZBrAHVBf7546RNXZwA/bzDqsuWTuPSC4T+I4j/z9j5/WqPuUw7SpnEPqWXc2xu7eN8kVyQt5170xkK6KHT4vVEkIvayPtIMLl0SgSCOy/pN5DJCi5ha7FlI84F1Qi2GumR+wQgCwHCVmU8Fj6Ik+B6akISXGCwe6X3rQFQngRFWQ/IrSkOkAOfy0EfvV+nZUo+FcbWuCZ6cb4Eq5I1ws/rZSeuwAWeedZcNt0VlNbsn4AnxBYQX4sj0dlko7JD5fWqeqq3/HzUNbBmLp9qeCXV8XlACn9YVWv900F47z04kVwpyTw==</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><X509Data><X509Certificate>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</X509Certificate><X509Certificate>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</X509Certificate><X509Certificate>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</X509Certificate></X509Data></KeyInfo><Object Id="ts-countersig"><X509Data><X509Certificate>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</X509Certificate><X509Certificate>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</X509Certificate></X509Data><CounterSignature ts-format="cms-timestamp-message" xmlns="http://schemas.microsoft.com/xmldsig/timestamp/2003">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</CounterSignature></Object></Signature></doc>
