/*---------------------------------------------------------------------------------------------
 *  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 '@sussudio/base/common/cancellation.mjs';
import { IRequestContext, IRequestOptions } from '@sussudio/base/parts/request/common/request.mjs';
import { ConfigurationScope } from '../../configuration/common/configurationRegistry.mjs';
export declare const IRequestService: import('../../instantiation/common/instantiation.mjs').ServiceIdentifier<IRequestService>;
export interface IRequestService {
	readonly _serviceBrand: undefined;
	request(options: IRequestOptions, token: CancellationToken): Promise<IRequestContext>;
	resolveProxy(url: string): Promise<string | undefined>;
}
export declare function isSuccess(context: IRequestContext): boolean;
export declare function asText(context: IRequestContext): Promise<string | null>;
export declare function asTextOrError(context: IRequestContext): Promise<string | null>;
export declare function asJson<T = {}>(context: IRequestContext): Promise<T | null>;
export declare function updateProxyConfigurationsScope(scope: ConfigurationScope): void;
