/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

import { IConfigurationService } from '../../configuration/common/configuration.mjs';
import { IEnvironmentMainService } from '../../environment/electron-main/environmentMainService.mjs';
import { ILifecycleMainService } from '../../lifecycle/electron-main/lifecycleMainService.mjs';
import { ILogService } from '../../log/common/log.mjs';
import { IProductService } from '../../product/common/productService.mjs';
import { IRequestService } from '../../request/common/request.mjs';
import { ITelemetryService } from '../../telemetry/common/telemetry.mjs';
import { AbstractUpdateService } from './abstractUpdateService.mjs';
export declare class DarwinUpdateService extends AbstractUpdateService {
	private readonly telemetryService;
	private readonly disposables;
	private get onRawError();
	private get onRawUpdateNotAvailable();
	private get onRawUpdateAvailable();
	private get onRawUpdateDownloaded();
	constructor(
		lifecycleMainService: ILifecycleMainService,
		configurationService: IConfigurationService,
		telemetryService: ITelemetryService,
		environmentMainService: IEnvironmentMainService,
		requestService: IRequestService,
		logService: ILogService,
		productService: IProductService,
	);
	initialize(): Promise<void>;
	private onError;
	protected buildUpdateFeedUrl(quality: string): string | undefined;
	protected doCheckForUpdates(context: any): void;
	private onUpdateAvailable;
	private onUpdateDownloaded;
	private onUpdateNotAvailable;
	protected doQuitAndInstall(): void;
	dispose(): void;
}
