import { type Observable } from "rxjs";
import type { OpenIdConfiguration } from "../config/openid-configuration";
import type { AuthResult } from "../flows/callback-context";
import type { AuthenticatedResult } from "./auth-result";
import type { AuthStateResult } from "./auth-state";
export declare class AuthStateService {
    private readonly storagePersistenceService;
    private readonly loggerService;
    private readonly publicEventsService;
    private readonly tokenValidationService;
    private readonly authenticatedInternal$;
    get authenticated$(): Observable<AuthenticatedResult>;
    setAuthenticatedAndFireEvent(allConfigs: OpenIdConfiguration[]): void;
    setUnauthenticatedAndFireEvent(currentConfig: OpenIdConfiguration, allConfigs: OpenIdConfiguration[]): void;
    updateAndPublishAuthState(authenticationResult: AuthStateResult): void;
    setAuthorizationData(accessToken: string, authResult: AuthResult | null, currentConfig: OpenIdConfiguration, allConfigs: OpenIdConfiguration[]): void;
    getAccessToken(configuration: OpenIdConfiguration | null): string;
    getIdToken(configuration: OpenIdConfiguration | null): string;
    getRefreshToken(configuration: OpenIdConfiguration | null): string;
    getAuthenticationResult(configuration: OpenIdConfiguration | null): AuthResult | null;
    areAuthStorageTokensValid(configuration: OpenIdConfiguration | null): boolean;
    hasIdTokenExpiredAndRenewCheckIsEnabled(configuration: OpenIdConfiguration): boolean;
    hasAccessTokenExpiredIfExpiryExists(configuration: OpenIdConfiguration): boolean;
    isAuthenticated(configuration: OpenIdConfiguration | null): boolean;
    private decodeURIComponentSafely;
    private persistAccessTokenExpirationTime;
    private composeAuthenticatedResult;
    private composeUnAuthenticatedResult;
    private checkallConfigsIfTheyAreAuthenticated;
}
//# sourceMappingURL=auth-state.service.d.ts.map