/*---------------------------------------------------------------------------------------------
 *  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 { ILocalExtension } from "../../extensionManagement/common/extensionManagement.mjs";
export declare const IIgnoredExtensionsManagementService: import("../../instantiation/common/instantiation.mjs").ServiceIdentifier<IIgnoredExtensionsManagementService>;
export interface IIgnoredExtensionsManagementService {
    readonly _serviceBrand: any;
    getIgnoredExtensions(installed: ILocalExtension[]): string[];
    hasToNeverSyncExtension(extensionId: string): boolean;
    hasToAlwaysSyncExtension(extensionId: string): boolean;
    updateIgnoredExtensions(ignoredExtensionId: string, ignore: boolean): Promise<void>;
    updateSynchronizedExtensions(ignoredExtensionId: string, sync: boolean): Promise<void>;
}
export declare class IgnoredExtensionsManagementService implements IIgnoredExtensionsManagementService {
    private readonly configurationService;
    readonly _serviceBrand: undefined;
    constructor(configurationService: IConfigurationService);
    hasToNeverSyncExtension(extensionId: string): boolean;
    hasToAlwaysSyncExtension(extensionId: string): boolean;
    updateIgnoredExtensions(ignoredExtensionId: string, ignore: boolean): Promise<void>;
    updateSynchronizedExtensions(extensionId: string, sync: boolean): Promise<void>;
    getIgnoredExtensions(installed: ILocalExtension[]): string[];
    private getConfiguredIgnoredExtensions;
}
