import { Disposable, IDisposable } from "../../../../base/common/lifecycle.js"; import { ILanguageService } from "../../../../editor/common/languages/language.service.js"; import { IConfigurationValue } from "../../../../platform/configuration/common/configuration.js"; import { ConfigurationDefaultValueSource } from "../../../../platform/configuration/common/configurationRegistry.js"; import { IProductService } from "../../../../platform/product/common/productService.service.js"; import { IWorkbenchConfigurationService } from "../../../services/configuration/common/configuration.service.js"; import { IWorkbenchEnvironmentService } from "../../../services/environment/common/environmentService.service.js"; import { ISearchResult, ISetting, SettingValueType } from "../../../services/preferences/common/preferences.js"; import { IUserDataProfileService } from "../../../services/userDataProfile/common/userDataProfile.service.js"; import { SettingsTarget } from "./preferencesWidgets.js"; import { ITOCEntry } from "./settingsLayout.js"; export declare const ONLINE_SERVICES_SETTING_TAG = "usesOnlineServices"; export interface ISettingsEditorViewState { settingsTarget: SettingsTarget; query?: string; tagFilters?: Set; extensionFilters?: Set; featureFilters?: Set; idFilters?: Set; languageFilter?: string; categoryFilter?: SettingsTreeGroupElement; } export declare abstract class SettingsTreeElement extends Disposable { id: string; parent?: SettingsTreeGroupElement; private _tabbable; private readonly _onDidChangeTabbable; get onDidChangeTabbable(): import("../../../../base/common/event.js").Event; constructor(_id: string); get tabbable(): boolean; set tabbable(value: boolean); } export type SettingsTreeGroupChild = (SettingsTreeGroupElement | SettingsTreeSettingElement | SettingsTreeNewExtensionsElement); export declare class SettingsTreeGroupElement extends SettingsTreeElement { count?: number; label: string; level: number; isFirstGroup: boolean; private _childSettingKeys; private _children; get children(): SettingsTreeGroupChild[]; set children(newChildren: SettingsTreeGroupChild[]); constructor(_id: string, count: number | undefined, label: string, level: number, isFirstGroup: boolean); /** * Returns whether this group contains the given child key (to a depth of 1 only) */ containsSetting(key: string): boolean; } export declare class SettingsTreeNewExtensionsElement extends SettingsTreeElement { readonly extensionIds: string[]; constructor(_id: string, extensionIds: string[]); } export declare class SettingsTreeSettingElement extends SettingsTreeElement { readonly settingsTarget: SettingsTarget; private readonly isWorkspaceTrusted; private readonly languageFilter; private readonly languageService; private readonly productService; private readonly userDataProfileService; private readonly configurationService; private static readonly MAX_DESC_LINES; setting: ISetting; private _displayCategory; private _displayLabel; /** * scopeValue || defaultValue, for rendering convenience. */ value: any; /** * The value in the current settings scope. */ scopeValue: any; /** * The default value */ defaultValue?: any; /** * The source of the default value to display. * This value also accounts for extension-contributed language-specific default value overrides. */ defaultValueSource: ConfigurationDefaultValueSource | undefined; /** * Whether the setting is configured in the selected scope. */ isConfigured: boolean; /** * Whether the setting requires trusted target */ isUntrusted: boolean; /** * Whether the setting is under a policy that blocks all changes. */ hasPolicyValue: boolean; tags?: Set; overriddenScopeList: string[]; overriddenDefaultsLanguageList: string[]; /** * For each language that contributes setting values or default overrides, we can see those values here. */ languageOverrideValues: Map>; description: string; valueType: SettingValueType; constructor(setting: ISetting, parent: SettingsTreeGroupElement, settingsTarget: SettingsTarget, isWorkspaceTrusted: boolean, languageFilter: string | undefined, languageService: ILanguageService, productService: IProductService, userDataProfileService: IUserDataProfileService, configurationService: IWorkbenchConfigurationService); get displayCategory(): string; get displayLabel(): string; private initLabels; private initSettingDescription; private initSettingValueType; inspectSelf(): void; private getTargetToInspect; private update; matchesAllTags(tagFilters?: Set): boolean; matchesScope(scope: SettingsTarget, isRemote: boolean): boolean; matchesAnyExtension(extensionFilters?: Set): boolean; matchesAnyFeature(featureFilters?: Set): boolean; matchesAnyId(idFilters?: Set): boolean; matchesAllLanguages(languageFilter?: string): boolean; } export declare class SettingsTreeModel implements IDisposable { protected readonly _viewState: ISettingsEditorViewState; private _isWorkspaceTrusted; private readonly _configurationService; private readonly _languageService; private readonly _userDataProfileService; private readonly _productService; protected _root: SettingsTreeGroupElement; private _tocRoot; private readonly _treeElementsBySettingName; constructor(_viewState: ISettingsEditorViewState, _isWorkspaceTrusted: boolean, _configurationService: IWorkbenchConfigurationService, _languageService: ILanguageService, _userDataProfileService: IUserDataProfileService, _productService: IProductService); get root(): SettingsTreeGroupElement; update(newTocRoot?: ITOCEntry): void; updateWorkspaceTrust(workspaceTrusted: boolean): void; private disposeChildren; private disposeChildAndRecurse; getElementsByName(name: string): SettingsTreeSettingElement[] | null; updateElementsByName(name: string): void; private updateRequireTrustedTargetElements; private reinspectSettings; private createSettingsTreeGroupElement; private getDepth; private createSettingsTreeSettingElement; dispose(): void; } interface IInspectResult { isConfigured: boolean; inspected: IConfigurationValue; targetSelector: "applicationValue" | "userLocalValue" | "userRemoteValue" | "workspaceValue" | "workspaceFolderValue"; inspectedLanguageOverrides: Map>; languageSelector: string | undefined; } export declare function inspectSetting(key: string, target: SettingsTarget, languageFilter: string | undefined, configurationService: IWorkbenchConfigurationService): IInspectResult; export declare function settingKeyToDisplayFormat(key: string, groupId?: string, isLanguageTagSetting?: boolean): { category: string; label: string; }; export declare function objectSettingSupportsRemoveDefaultValue(key: string): boolean; export declare enum SearchResultIdx { Local = 0, Remote = 1, NewExtensions = 2, Embeddings = 3, AiSelected = 4 } export declare class SearchResultModel extends SettingsTreeModel { private readonly environmentService; private rawSearchResults; private cachedUniqueSearchResults; private newExtensionSearchResults; private searchResultCount; private settingsOrderByTocIndex; private aiFilterEnabled; readonly id = "searchResultModel"; constructor(viewState: ISettingsEditorViewState, settingsOrderByTocIndex: Map | null, isWorkspaceTrusted: boolean, configurationService: IWorkbenchConfigurationService, environmentService: IWorkbenchEnvironmentService, languageService: ILanguageService, userDataProfileService: IUserDataProfileService, productService: IProductService); set showAiResults(show: boolean); private sortResults; getUniqueSearchResults(): ISearchResult | null; getRawResults(): ISearchResult[]; private getUniqueSearchResultSettings; updateChildren(): void; setResult(order: SearchResultIdx, result: ISearchResult | null): void; getUniqueResultsCount(): number; } export interface IParsedQuery { tags: string[]; query: string; extensionFilters: string[]; idFilters: string[]; featureFilters: string[]; languageFilter: string | undefined; } export declare function parseQuery(query: string): IParsedQuery; export {};