import { Observable } from 'rxjs';
import { AjaxResponse } from 'rxjs/ajax';
import { SignedHttpRequestToken } from '../security/sign-on-manager';
export declare enum HostCoreTokenMode {
    Unknown = 0,
    Aad = 1
}
export declare class HostCoreManager {
    private static tokenOption;
    private static aadMode;
    private maxResponseTimeout;
    /**
     * The token mode.
     */
    tokenMode: HostCoreTokenMode;
    /**
     * Token will be collected when using HostCoreManager for manifest loading.
     */
    token: SignedHttpRequestToken;
    /**
     * Initializes a new instance of new HostCoreManager class.
     */
    constructor();
    /**
     * Query JSON data with a token.
     * @param url Url to query data using current token.
     * @returns ajax response object.
     */
    httpGet(url: string): Observable<AjaxResponse<any>>;
    /**
     * Performs a request with 'get' http method with cache control.
     * @param url the uri for GET call.
     * @return the observable for GET result data.
     */
    getNoCache(url: string, noCache?: boolean, responseType?: XMLHttpRequestResponseType, withCredentials?: boolean): Observable<AjaxResponse<any>>;
    /**
     * Query the token to host window.
     * @param url the target url (manifest.json)
     * @param responseTimeout the response timeout.
     * @returns observeral of token query.
     */
    private requestTokenToParentWindow;
}
