/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/
import { CancellationToken } from "../../../base/common/cancellation.mjs";
import { Event } from "../../../base/common/event.mjs";
import { IChannel, IServerChannel } from "../../../base/parts/ipc/common/ipc.mjs";
import { IRequestContext, IRequestOptions } from "../../../base/parts/request/common/request.mjs";
import { IRequestService } from "./request.mjs";
export declare class RequestChannel implements IServerChannel {
    private readonly service;
    constructor(service: IRequestService);
    listen(context: any, event: string): Event<any>;
    call(context: any, command: string, args?: any, token?: CancellationToken): Promise<any>;
}
export declare class RequestChannelClient implements IRequestService {
    private readonly channel;
    readonly _serviceBrand: undefined;
    constructor(channel: IChannel);
    request(options: IRequestOptions, token: CancellationToken): Promise<IRequestContext>;
    resolveProxy(url: string): Promise<string | undefined>;
}
