68 lines
3.4 KiB
TypeScript
68 lines
3.4 KiB
TypeScript
import { ServerAuthorizationTokenResponse } from "./ServerAuthorizationTokenResponse";
|
|
import { ICrypto } from "../crypto/ICrypto";
|
|
import { ServerAuthorizationCodeResponse } from "./ServerAuthorizationCodeResponse";
|
|
import { Logger } from "../logger/Logger";
|
|
import { AuthenticationResult } from "./AuthenticationResult";
|
|
import { Authority } from "../authority/Authority";
|
|
import { CacheRecord } from "../cache/entities/CacheRecord";
|
|
import { CacheManager } from "../cache/CacheManager";
|
|
import { RequestStateObject } from "../utils/ProtocolUtils";
|
|
import { ICachePlugin } from "../cache/interface/ICachePlugin";
|
|
import { ISerializableTokenCache } from "../cache/interface/ISerializableTokenCache";
|
|
import { AuthorizationCodePayload } from "./AuthorizationCodePayload";
|
|
import { BaseAuthRequest } from "../request/BaseAuthRequest";
|
|
import { IPerformanceClient } from "../telemetry/performance/IPerformanceClient";
|
|
import { TokenClaims } from "../account/TokenClaims";
|
|
/**
|
|
* Class that handles response parsing.
|
|
* @internal
|
|
*/
|
|
export declare class ResponseHandler {
|
|
private clientId;
|
|
private cacheStorage;
|
|
private cryptoObj;
|
|
private logger;
|
|
private homeAccountIdentifier;
|
|
private serializableCache;
|
|
private persistencePlugin;
|
|
private performanceClient?;
|
|
constructor(clientId: string, cacheStorage: CacheManager, cryptoObj: ICrypto, logger: Logger, serializableCache: ISerializableTokenCache | null, persistencePlugin: ICachePlugin | null, performanceClient?: IPerformanceClient);
|
|
/**
|
|
* Function which validates server authorization code response.
|
|
* @param serverResponseHash
|
|
* @param requestState
|
|
* @param cryptoObj
|
|
*/
|
|
validateServerAuthorizationCodeResponse(serverResponse: ServerAuthorizationCodeResponse, requestState: string): void;
|
|
/**
|
|
* Function which validates server authorization token response.
|
|
* @param serverResponse
|
|
* @param refreshAccessToken
|
|
*/
|
|
validateTokenResponse(serverResponse: ServerAuthorizationTokenResponse, refreshAccessToken?: boolean): void;
|
|
/**
|
|
* Returns a constructed token response based on given string. Also manages the cache updates and cleanups.
|
|
* @param serverTokenResponse
|
|
* @param authority
|
|
*/
|
|
handleServerTokenResponse(serverTokenResponse: ServerAuthorizationTokenResponse, authority: Authority, reqTimestamp: number, request: BaseAuthRequest, authCodePayload?: AuthorizationCodePayload, userAssertionHash?: string, handlingRefreshTokenResponse?: boolean, forceCacheRefreshTokenResponse?: boolean, serverRequestId?: string): Promise<AuthenticationResult>;
|
|
/**
|
|
* Generates CacheRecord
|
|
* @param serverTokenResponse
|
|
* @param idTokenObj
|
|
* @param authority
|
|
*/
|
|
private generateCacheRecord;
|
|
/**
|
|
* Creates an @AuthenticationResult from @CacheRecord , @IdToken , and a boolean that states whether or not the result is from cache.
|
|
*
|
|
* Optionally takes a state string that is set as-is in the response.
|
|
*
|
|
* @param cacheRecord
|
|
* @param idTokenObj
|
|
* @param fromTokenCache
|
|
* @param stateString
|
|
*/
|
|
static generateAuthenticationResult(cryptoObj: ICrypto, authority: Authority, cacheRecord: CacheRecord, fromTokenCache: boolean, request: BaseAuthRequest, idTokenClaims?: TokenClaims, requestState?: RequestStateObject, serverTokenResponse?: ServerAuthorizationTokenResponse, requestId?: string): Promise<AuthenticationResult>;
|
|
}
|
|
//# sourceMappingURL=ResponseHandler.d.ts.map
|