@spartacus/cdc
Version:
Customer Data Cloud Integration library for Spartacus
40 lines (39 loc) • 1.63 kB
TypeScript
import { Store } from '@ngrx/store';
import { AuthRedirectService, AuthStorageService, AuthToken, GlobalMessageService, UserIdService } from '@spartacus/core';
import { CdcAuthFacade } from '@spartacus/cdc/root';
import * as i0 from "@angular/core";
/**
* Service to support custom CDC OAuth flow.
*/
export declare class CdcAuthService implements CdcAuthFacade {
protected store: Store;
protected authStorageService: AuthStorageService;
protected userIdService: UserIdService;
protected globalMessageService: GlobalMessageService;
protected authRedirectService: AuthRedirectService;
constructor(store: Store, authStorageService: AuthStorageService, userIdService: UserIdService, globalMessageService: GlobalMessageService, authRedirectService: AuthRedirectService);
/**
* Loads a new user token using custom oauth flow
*
* @param UID
* @param UIDSignature
* @param signatureTimestamp
* @param idToken
* @param baseSite
*/
loginWithCustomCdcFlow(UID: string, UIDSignature: string, signatureTimestamp: string, idToken: string, baseSite: string): void;
/**
* Utility to differentiate between AuthStorageService and AsmAuthStorageService
*/
private isAsmAuthStorageService;
/**
* Transform and store the token received from custom flow to library format and login user.
*
* @param token
*/
loginWithToken(token: Partial<AuthToken> & {
expires_in?: number;
}): void;
static ɵfac: i0.ɵɵFactoryDeclaration<CdcAuthService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<CdcAuthService>;
}