/*---------------------------------------------------------------------------------------------
 *  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 { INativeHostMainService } from '../../native/electron-main/nativeHostMainService.mjs';
import { IProductService } from '../../product/common/productService.mjs';
import { IRequestService } from '../../request/common/request.mjs';
import { ITelemetryService } from '../../telemetry/common/telemetry.mjs';
import { AvailableForDownload } from '../common/update.mjs';
import { AbstractUpdateService } from './abstractUpdateService.mjs';
export declare class LinuxUpdateService extends AbstractUpdateService {
	private readonly telemetryService;
	private readonly nativeHostMainService;
	constructor(
		lifecycleMainService: ILifecycleMainService,
		configurationService: IConfigurationService,
		telemetryService: ITelemetryService,
		environmentMainService: IEnvironmentMainService,
		requestService: IRequestService,
		logService: ILogService,
		nativeHostMainService: INativeHostMainService,
		productService: IProductService,
	);
	protected buildUpdateFeedUrl(quality: string): string;
	protected doCheckForUpdates(context: any): void;
	protected doDownloadUpdate(state: AvailableForDownload): Promise<void>;
}
