/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/
import { INativeEnvironmentService } from "../../environment/common/environment.mjs";
import { IExecutableBasedExtensionTip, IExtensionManagementService } from "../common/extensionManagement.mjs";
import { ExtensionTipsService as BaseExtensionTipsService } from "../common/extensionTipsService.mjs";
import { IExtensionRecommendationNotificationService } from "../../extensionRecommendations/common/extensionRecommendations.mjs";
import { IFileService } from "../../files/common/files.mjs";
import { INativeHostService } from "../../native/electron-sandbox/native.mjs";
import { IProductService } from "../../product/common/productService.mjs";
import { IStorageService } from "../../storage/common/storage.mjs";
import { ITelemetryService } from "../../telemetry/common/telemetry.mjs";
export declare class ExtensionTipsService extends BaseExtensionTipsService {
    private readonly environmentService;
    private readonly telemetryService;
    private readonly extensionManagementService;
    private readonly storageService;
    private readonly nativeHostService;
    private readonly extensionRecommendationNotificationService;
    private readonly highImportanceExecutableTips;
    private readonly mediumImportanceExecutableTips;
    private readonly allOtherExecutableTips;
    private highImportanceTipsByExe;
    private mediumImportanceTipsByExe;
    constructor(environmentService: INativeEnvironmentService, telemetryService: ITelemetryService, extensionManagementService: IExtensionManagementService, storageService: IStorageService, nativeHostService: INativeHostService, extensionRecommendationNotificationService: IExtensionRecommendationNotificationService, fileService: IFileService, productService: IProductService);
    getImportantExecutableBasedTips(): Promise<IExecutableBasedExtensionTip[]>;
    getOtherExecutableBasedTips(): Promise<IExecutableBasedExtensionTip[]>;
    private collectTips;
    private groupImportantTipsByExe;
    /**
     * High importance tips are prompted once per restart session
     */
    private promptHighImportanceExeBasedTip;
    /**
     * Medium importance tips are prompted once per 7 days
     */
    private promptMediumImportanceExeBasedTip;
    private promptExeRecommendations;
    private getLastPromptedMediumExeTime;
    private updateLastPromptedMediumExeTime;
    private getPromptedExecutableTips;
    private addToRecommendedExecutables;
    private groupByInstalled;
    private getValidExecutableBasedExtensionTips;
}
