export = ConnectionContext;
/**
 * Creates a new ConnectionContext.
 *
 * @param {ConnectionConfig} connectionConfig
 * @param {Object} httpClient
 * @param {Object} config
 *
 * @constructor
 */
declare function ConnectionContext(connectionConfig: ConnectionConfig, httpClient: Object, config: Object): void;
declare class ConnectionContext {
    /**
     * Creates a new ConnectionContext.
     *
     * @param {ConnectionConfig} connectionConfig
     * @param {Object} httpClient
     * @param {Object} config
     *
     * @constructor
     */
    constructor(connectionConfig: ConnectionConfig, httpClient: Object, config: Object);
    /**
     * Returns the ConnectionConfig for use by the connection.
     *
     * @returns {ConnectionConfig}
     */
    getConnectionConfig: () => ConnectionConfig;
    /**
     * Returns a map that contains all the available services.
     *
     * @returns {Object}
     */
    getServices: () => Object;
    /**
     * Returns a configuration object that can be passed as an optional argument
     * to the ConnectionContext constructor to create a new object that has the
     * same state as this ConnectionContext instance.
     *
     * @returns {Object}
     */
    getConfig: () => Object;
    /**
     * Returns instance of httpClient
     *
     * @returns {NodeHttpClient}
     */
    getHttpClient: () => NodeHttpClient;
}
