UNPKG

@azure/msal-browser

Version:
77 lines 5.65 kB
import { ICrypto, INetworkModule, Logger, AccountInfo, ServerTelemetryManager, Authority, IPerformanceClient, AzureCloudOptions, StringDict } from "@azure/msal-common/browser"; import { BrowserConfiguration } from "../config/Configuration.js"; import { BrowserCacheManager } from "../cache/BrowserCacheManager.js"; import { EventHandler } from "../event/EventHandler.js"; import { EndSessionRequest } from "../request/EndSessionRequest.js"; import { RedirectRequest } from "../request/RedirectRequest.js"; import { PopupRequest } from "../request/PopupRequest.js"; import { SsoSilentRequest } from "../request/SsoSilentRequest.js"; import { INavigationClient } from "../navigation/INavigationClient.js"; import { AuthenticationResult } from "../response/AuthenticationResult.js"; import { ClearCacheRequest } from "../request/ClearCacheRequest.js"; import { IPlatformAuthHandler } from "../broker/nativeBroker/IPlatformAuthHandler.js"; export declare abstract class BaseInteractionClient { protected config: BrowserConfiguration; protected browserStorage: BrowserCacheManager; protected browserCrypto: ICrypto; protected networkClient: INetworkModule; protected logger: Logger; protected eventHandler: EventHandler; protected navigationClient: INavigationClient; protected platformAuthProvider: IPlatformAuthHandler | undefined; protected correlationId: string; protected performanceClient: IPerformanceClient; constructor(config: BrowserConfiguration, storageImpl: BrowserCacheManager, browserCrypto: ICrypto, logger: Logger, eventHandler: EventHandler, navigationClient: INavigationClient, performanceClient: IPerformanceClient, correlationId: string, platformAuthProvider?: IPlatformAuthHandler); abstract acquireToken(request: RedirectRequest | PopupRequest | SsoSilentRequest): Promise<AuthenticationResult | void>; abstract logout(request: EndSessionRequest | ClearCacheRequest | undefined): Promise<void>; } /** * Use to get the redirect URI configured in MSAL or construct one from the current page. * @param requestRedirectUri - Redirect URI from the request or undefined if not configured * @param clientConfigRedirectUri - Redirect URI from the client configuration or undefined if not configured * @param logger - Logger instance from the calling client * @param correlationId * @returns Absolute redirect URL constructed from the provided URI, config, or current page */ export declare function getRedirectUri(requestRedirectUri: string | undefined, clientConfigRedirectUri: string | undefined, logger: Logger, correlationId: string): string; /** * Initializes and returns a ServerTelemetryManager with the provided telemetry configuration. * @param apiId - The API identifier for telemetry tracking * @param clientId - The client application identifier * @param correlationId - Unique identifier for correlating requests * @param browserStorage - Browser cache manager instance for storing telemetry data * @param logger - Optional logger instance for verbose logging * @param forceRefresh - Optional flag to force refresh of telemetry data * @returns Configured ServerTelemetryManager instance */ export declare function initializeServerTelemetryManager(apiId: number, clientId: string, correlationId: string, browserStorage: BrowserCacheManager, logger: Logger, forceRefresh?: boolean): ServerTelemetryManager; /** * Used to get a discovered version of the default authority. * @param params - Configuration object containing authority and cloud options * @param params.requestAuthority - Optional specific authority URL to use * @param params.requestAzureCloudOptions - Optional Azure cloud configuration options * @param params.requestExtraQueryParameters - Optional additional query parameters * @param params.account - Optional account info for instance-aware scenarios * @param config - Browser configuration containing auth settings * @param correlationId - Unique identifier for correlating requests * @param performanceClient - Performance monitoring client instance * @param browserStorage - Browser cache manager instance * @param logger - Logger instance for tracking operations * @returns Promise that resolves to a discovered Authority instance */ export declare function getDiscoveredAuthority(config: BrowserConfiguration, correlationId: string, performanceClient: IPerformanceClient, browserStorage: BrowserCacheManager, logger: Logger, requestAuthority?: string, requestAzureCloudOptions?: AzureCloudOptions, requestExtraQueryParameters?: StringDict, account?: AccountInfo): Promise<Authority>; /** * Clears cache and account information during logout. * * If an account is provided, removes the account from cache and, if it is the active account, sets the active account to null. * If no account is provided, clears all accounts and tokens from cache. * * @param browserStorage - The browser cache manager instance used to manage cache. * @param browserCrypto - The crypto interface for cache operations. * @param logger - Logger instance for logging operations. * @param correlationId - Correlation ID for the logout operation. * @param account - (Optional) The account to clear from cache. If not provided, all accounts are cleared. * @returns A promise that resolves when the cache has been cleared. */ export declare function clearCacheOnLogout(browserStorage: BrowserCacheManager, browserCrypto: ICrypto, logger: Logger, correlationId: string, account?: AccountInfo | null): Promise<void>; //# sourceMappingURL=BaseInteractionClient.d.ts.map