/**
 * A component used for making AJAX requests.
 */
export interface RequestHelper {
    /**
     * Makes a web request.
     *
     * @param url The URL of the request.
     * @param options Options for the request. See fetch() API in MDN.
     */
    request(url: string, options?: RequestInit): Promise<Response>;
    /**
     * Create a web socket.
     *
     * @param url The web socket URL.
     */
    createSocket(url: string): WebSocket;
}
/**
 * Default implementation of {@link utilities/RequestHelper!RequestHelper}.
 */
export declare class DefaultRequestHelper implements RequestHelper {
    /**
     * Makes a request to a url and returns a response.
     *
     * @param url The URL at which to send the request.
     * @param options The options for the request.
     */
    request(url: string, options?: RequestInit): Promise<Response>;
    /**
     * Creates and returns a WebSocket object.
     *
     * @param url The web socket URL.
     */
    createSocket(url: string): WebSocket;
}
