import * as rxjs from 'rxjs';
import * as _angular_core from '@angular/core';

declare class Authorization<TUser = any> {
    private readonly appConfig;
    private readonly translation;
    private readonly authConfig;
    private _accessToken;
    private _refreshToken;
    private _isAuthenticated;
    private _userinfo;
    private readonly router;
    private readonly http;
    private readonly confirm;
    get accessToken(): string | null;
    set accessToken(accessToken: string | null);
    get refreshToken(): string | null;
    set refreshToken(refreshToken: string | null);
    get isAuthenticated(): _angular_core.Signal<boolean>;
    get userinfo(): _angular_core.Signal<TUser | null>;
    get isExpired(): _angular_core.Signal<boolean>;
    get hasToken(): _angular_core.Signal<boolean>;
    constructor();
    private init;
    private updateAuthState;
    private logoutUser;
    private loadUserInfo;
    logout(force?: boolean): void;
    updateToken(): rxjs.Observable<any>;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<Authorization<any>, never>;
    static ɵprov: _angular_core.ɵɵInjectableDeclaration<Authorization<any>>;
}

export { Authorization };
