import { ITokenService } from '@delon/auth';
import { ReuseTabService } from '@delon/abc';
import { IStartupService } from './i-startup.service';
import { IAddUerRoleParamConfig } from '../page/identity/user-zb/roles/identity--user--roles.component';
/**
 * IdentityServer
 */
export declare class IdentityService {
    private location;
    private tokenService;
    private reuseTabService;
    startupService: IStartupService;
    identityScopes: Array<string>;
    permissionsKey: string;
    private addUerRoleParam;
    private readonly IDENTITY_URL;
    private readonly httpHeaders;
    constructor(location: any, // tslint:disable-line:no-any
    tokenService: ITokenService, reuseTabService: ReuseTabService, startupService: IStartupService, identityScopes: Array<string>, permissionsKey: string, addUerRoleParam: IAddUerRoleParamConfig);
    /**
     * login
     */
    login(): void;
    /**
     * logout
     */
    logout(): void;
    authorizedCallback(): void;
    private decodeUrl2Base64;
    private getIdToken;
    /**
     * fetch user info
     */
    private fetchUserInfo;
    private clear;
    private setAuthorizationData;
}
