export declare const enum ConfigurationScope { /** * Application specific configuration, which can be configured only in local user settings. */ APPLICATION = 1, /** * Machine specific configuration, which can be configured only in local and remote user settings. */ MACHINE = 2, /** * Window specific configuration, which can be configured in the user or workspace settings. */ WINDOW = 3, /** * Resource specific configuration, which can be configured in the user, workspace or folder settings. */ RESOURCE = 4, /** * Resource specific configuration that can be configured */ RESOURCE_OVERRIDABLE = 5, /** * Machine specific conifugration that can also be configured */ MACHINE_OVERRIDABLE = 6 } export declare const enum ConfigurationTarget { /** * Targets the user configuration file for writing. */ USER = 1, USER_LOCAL = 2, USER_REMOTE = 3, /** * Targets the workspace configuration file for writing. This only works if a workspace is opened. */ WORKSPACE = 4, /** * Targets the folder configuration file for writing. This only works if a workspace is opened. */ WORKSPACE_FOLDER = 5, DEFAULT = 6, MEMORY = 7 } export declare const LOCAL_MACHINE_SCOPES: ConfigurationScope[]; export declare const REMOTE_MACHINE_SCOPES: ConfigurationScope[]; export declare const WORKSPACE_SCOPES: ConfigurationScope[]; export declare const FOLDER_SCOPES: ConfigurationScope[]; export type IConfigurationKey = { type: 'user' | 'workspaces' | 'folder'; key: string; }; export interface IConfigurationCache { read(key: IConfigurationKey): Promise; write(key: IConfigurationKey, content: string): Promise; remove(key: IConfigurationKey): Promise; }