import { OnDestroy } from '@angular/core'; import { SocialAuthStrategy } from '../social-auth-strategy'; import { Observable } from 'rxjs'; import { NgxSocialAuthProviderType } from '../../social-auth-provider-type.enum'; import { NgxSocialAuthResponse } from '../../auth-response/social-auth-response'; import { SocialAuthUtilService } from '../../core/social-auth-util.service'; import { SocialAuthConfigMap } from '../../provider/social-auth-config-map'; import { SignInOptionsMap } from '../options-map/sign-in-options-map'; import { StateOptionsMap } from '../options-map/state-options-map'; /** * Implements authentication by Google * * @author Dmytro Parfenov * * @dynamic * @see https://angular.io/guide/angular-compiler-options#strictmetadataemit */ export declare class GoogleAuthStrategyService implements SocialAuthStrategy, OnDestroy { private readonly socialAuthUtilService; private readonly googleAuthConfig; private readonly document; /** * A behaviour subject that emits google auth instance */ private googleAuth$$; /** * @see https://developers.google.com/identity/sign-in/web/reference#auth_setup */ private readonly APIUrl; /** * @see https://developers.google.com/identity/sign-in/web/reference#auth_setup */ private readonly APIName; /** * An instance of Google API */ private get gapi(); constructor(socialAuthUtilService: SocialAuthUtilService, googleAuthConfig: SocialAuthConfigMap[NgxSocialAuthProviderType.Google], document: Document); ngOnDestroy(): void; isSupport(type: NgxSocialAuthProviderType): boolean; singIn(options?: SignInOptionsMap[NgxSocialAuthProviderType.Google]): Observable>; signOut(): Observable; getState(options?: StateOptionsMap[NgxSocialAuthProviderType.Google]): Observable>; /** * Returns generic auth response object based on google user */ private fromGoogleUser; private isValidProviderResponse; private getGoogleAuth; private handleGoogleAuth; private handleGoogleAuthError; private loadAuthInstance; private handleGapiLoading; private initAuthApi; private loadAuthApi; }