import { RestfulResponse } from "../model/domain/RestfulResponse";
import { OauthConfig } from "../model/domain/OauthConfig";
import { CasConfig } from "../model/domain/CasConfig";
import { CoreConfig } from "../model/domain/CoreConfig";
import { LoginRequest } from "../model/domain/LoginRequest";
import { WxQyOauth } from "../model/domain/WxQyOauth";
/**
 * @description: 授权服务
 * @author ChenRui
 * @date 2020/8/27 10:48
 */
declare class OauthService {
    isLogin: import("vue").Ref<boolean>;
    private appContext;
    static readonly BASE_TOKEN_TYPE: string;
    static readonly AUTH_EVENT_NAME: string;
    /**
     * @description: 获取全局配置
     * @author ChenRui
     * @date 2022/5/25 17:55
     */
    get coreConfig(): Partial<CoreConfig>;
    /**
     * @description: 全局配置-auth
     * @author ChenRui
     * @date 2021/8/6 15:59
     */
    get authConfig(): OauthConfig;
    /**
     * @description: 全局配置-企业微信auth
     * @author ChenRui
     * @date 2021/8/6 15:59
     */
    get wxQyOauth(): WxQyOauth;
    /**
     * @description: 全局配置-cas
     * @author ChenRui
     * @date 2021/8/6 15:59
     */
    get casConfig(): CasConfig;
    /**
     * @description: 检查登录状态并进行登录
     * @author ChenRui
     * @date 2021/8/4 10:52
     */
    checkAndLogin(): Promise<RestfulResponse>;
    /**
     * @description: 通过授权码获取令牌
     * @author ChenRui
     * @date 2021/8/4 11:53
     */
    getTokenByAuthCode(): Promise<RestfulResponse>;
    /**
     * @description:
     * @author ChenRui
     * @date 2022/2/26 20:46
     */
    getTokenByAuthCasVoucher(voucher: string): Promise<RestfulResponse>;
    /**
     * @description: 通过企业微信获取授权码
     * @author ChenRui
     * @date 2022/2/26 20:46
     */
    getTokenByWxQyAuthCode(): Promise<RestfulResponse>;
    /**
     * @description: 单点登录
     * @author ChenRui
     * @date 2021/8/4 10:49
     */
    login(): Promise<RestfulResponse>;
    /**
     * @description: 用户登录-密码模式
     * @author ChenRui
     * @date 2022/1/25 17:24
     */
    simpleLogin(loginRequest: LoginRequest): Promise<any>;
    /**
     * @description: 扩展登录模式-cas登录
     * @author ChenRui
     * @date 2022/2/26 20:44
     */
    caslogin(): Promise<RestfulResponse>;
    /**
     * @description: 刷新令牌
     * @author ChenRui
     * @date 2021/8/4 17:57
     */
    refreshToken(): Promise<RestfulResponse>;
    /**
     * @description: 登出
     * @author ChenRui
     * @date 2020/12/18 17:53
     */
    logOut(authorizeUrl?: string): Promise<RestfulResponse>;
    /**
     * @description: 生成重定向地址
     * @author ChenRui
     * @date 2021/8/6 17:36
     */
    genRedirectUri(isUseCache?: boolean): string;
    /**
     * @description: 清空授权中心缓存数据
     * @author ChenRui
     * @date 2021/8/6 18:20
     */
    private cleanOauthUserInfo;
    /**
     * @description: 同步用户信息
     * @author ChenRui
     * @date 2021/8/4 21:23
     */
    private syncUserCache;
    /**
     * @description: 创建基础认证消息头
     * @author ChenRui
     * @date 2021/8/4 21:18
     */
    private genBasicAuth;
    /**
     * @description: 检查是否获加载完令牌
     * @author ChenRui
     * @date 2020/8/27 11:08
     */
    get isLoadedToken(): boolean;
    /**
     * @description: 检查是否获加载完令牌
     * @author ChenRui
     * @date 2021/8/6 23:36
     */
    get isLoadedUserInfo(): boolean;
    /**
     * @description: 检查令牌是否有效
     * @author ChenRui
     * @date 2021/8/4 11:13
     */
    get isTokenExpiration(): boolean;
}
declare const oauthService: OauthService;
export { OauthService, oauthService };
