import { Observable } from 'rxjs';
import { OpenIdConfiguration } from '../config/openid-configuration';
import { UserDataResult } from './userdata-result';
import * as i0 from "@angular/core";
export declare class UserService {
    private readonly userDataInternal$;
    get userData$(): Observable<UserDataResult>;
    private readonly loggerService;
    private readonly tokenHelperService;
    private readonly flowHelper;
    private readonly oidcDataService;
    private readonly storagePersistenceService;
    private readonly eventService;
    getAndPersistUserDataInStore(currentConfiguration: OpenIdConfiguration, allConfigs: OpenIdConfiguration[], isRenewProcess?: boolean, idToken?: string, decodedIdToken?: any): Observable<any>;
    getUserDataFromStore(currentConfiguration: OpenIdConfiguration | null): any;
    publishUserDataIfExists(currentConfiguration: OpenIdConfiguration, allConfigs: OpenIdConfiguration[]): void;
    setUserDataToStore(userData: any, currentConfiguration: OpenIdConfiguration, allConfigs: OpenIdConfiguration[]): void;
    resetUserDataInStore(currentConfiguration: OpenIdConfiguration, allConfigs: OpenIdConfiguration[]): void;
    private getUserDataOidcFlowAndSave;
    private getIdentityUserData;
    private validateUserDataSubIdToken;
    private fireUserDataEvent;
    private composeSingleOrMultipleUserDataObject;
    private composeSingleUserDataResult;
    private currentConfigIsToUpdate;
    static ɵfac: i0.ɵɵFactoryDeclaration<UserService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<UserService>;
}
