/* tslint:disable */ import { Event } from '@vscode-alt/monaco-editor/esm/vs/base/common/event'; import { IDisposable } from '@vscode-alt/monaco-editor/esm/vs/base/common/lifecycle'; import { ConfigurationTarget } from './configuration'; import { IConfigurationChangeEvent } from './event'; import { IConfigurationOverrides, IConfigurationData } from '../generated-model'; // @sri added IDisposable extend export interface IConfigurationService extends IDisposable { onDidChangeConfiguration: Event; getConfigurationData(): IConfigurationData; /** * Fetches the value of the section for the given overrides. * Value can be of native type or an object keyed off the section name. * * @param section - Section of the configuraion. Can be `null` or `undefined`. * @param overrides - Overrides that has to be applied while fetching * */ getValue(): T; getValue(section: string): T; getValue(overrides: IConfigurationOverrides): T; getValue(section: string, overrides: IConfigurationOverrides): T; updateValue(key: string, value: any): Promise; updateValue(key: string, value: any, overrides: IConfigurationOverrides): Promise; updateValue(key: string, value: any, target: ConfigurationTarget): Promise; updateValue( key: string, value: any, overrides: IConfigurationOverrides, target: ConfigurationTarget, donotNotifyError?: boolean, ): Promise; reloadConfiguration(): Promise; reloadConfiguration(folder: any /** IWorkspaceFolder */): Promise; inspect( key: string, overrides?: IConfigurationOverrides, ): { default: T; user: T; userLocal?: T; userRemote?: T; workspace?: T; workspaceFolder?: T; memory?: T; value: T; }; keys(): { default: string[]; user: string[]; workspace: string[]; workspaceFolder: string[]; memory?: string[]; }; } export interface IClientConfigurationService extends IConfigurationService { extInitialize(): Promise; extAcceptConfigurationChanged(data: IConfigurationData, event: IConfigurationChangeEvent): void; } export interface IConfigurationMicroserviceEvent { onDidChangeConfiguration: (event: IConfigurationChangeEvent) => Promise; }