export declare const STATUS_TYPE: {
    LOGIN_SUCCESS: string;
    LOGIN_ERROR: string;
};
export declare const serverName = "/video-platform-basedata";
export declare const getAislesUrl = "/hik-stream/aisle-page";
export interface GlobalClientData {
    "access_token": string;
    "token_type": "bearer" | string;
    "refresh_token": string;
    "expires_in": number;
    "scope": "[server]" | string;
}
export interface GlobalClientConfig {
    endPoint: string;
    appKey: string;
    appSecret: string;
    clientId?: string;
    clientSecret?: string;
    workerPath?: string;
    logoPath?: string;
}
export interface ApiResponse<T> {
    code: number;
    data: T;
    msg?: string;
}
export interface AisleQueryParams {
    current?: number;
    size?: number;
    [key: string]: unknown;
}
export interface AislePage<T> {
    records: T[];
    total: number;
    size: number;
    current: number;
    pages?: number;
    [key: string]: unknown;
}
export type GlobalClientStatusChanged = (status: string, error?: unknown) => void;
/**
 * authClient
 * @param  参数1
 * @param  参数2
 * @return
 * @description
 * @author  jsyang
 * @date  2021-11-01 20:13:07
*/
export declare class GlobalClient {
    private _config;
    private _onStatusChanged;
    private _data?;
    private _refreshTimer;
    get config(): GlobalClientConfig;
    set config(config: GlobalClientConfig);
    private get data();
    private set data(value);
    get accessToken(): string | undefined;
    constructor(config: GlobalClientConfig, onStatusChanged?: GlobalClientStatusChanged);
    private login;
    private scheduleRefresh;
    refreshToken(): Promise<GlobalClientData>;
    reLogin(): Promise<GlobalClientData>;
    getAisles<T = unknown>(params: AisleQueryParams): Promise<ApiResponse<T>>;
    destroy(): void;
}
export default GlobalClient;
