@codingame/monaco-vscode-api 1.79.0 → 1.79.2-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (644) hide show
  1. package/README.md +17 -6
  2. package/dist/api.js +12 -10
  3. package/dist/composite.d.ts +65 -0
  4. package/dist/configurationRegistry.d.ts +212 -0
  5. package/dist/contextkey.d.ts +2 -2
  6. package/dist/default-extension.js +23 -0
  7. package/dist/default-extensions/json.js +1 -0
  8. package/dist/default-extensions/theme-defaults.js +2 -2
  9. package/dist/editor.d.ts +4 -320
  10. package/dist/editorBrowser.d.ts +597 -11
  11. package/dist/event.d.ts +6 -1
  12. package/dist/{extension-tools-d0cfdea1.js → extension-tools-3c2bf0a4.js} +1032 -706
  13. package/dist/extensions.d.ts +6 -6
  14. package/dist/extensions.d2.ts +6 -17
  15. package/dist/extensions.js +4 -37
  16. package/dist/extensionsRegistry.d.ts +15 -9
  17. package/dist/files.d.ts +73 -9
  18. package/dist/jsonSchema.d.ts +1 -1
  19. package/dist/keybinding.d.ts +3 -3
  20. package/dist/languageFeatures.d.ts +706 -65
  21. package/dist/log.d.ts +1 -1
  22. package/dist/monaco.d.ts +33 -33
  23. package/dist/monaco.js +62 -6
  24. package/dist/node_modules/rollup-plugin-styles/dist/runtime/inject-css.js +2 -0
  25. package/dist/override/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +2 -0
  26. package/dist/override/vs/workbench/contrib/notebook/browser/notebookEditor.js +2 -0
  27. package/dist/override/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +2 -0
  28. package/dist/override/vs/workbench/contrib/notebook/common/notebookEditorInput.js +5 -0
  29. package/dist/platform.d.ts +11 -0
  30. package/dist/rollup-extension-directory-plugin.js +1 -2
  31. package/dist/rollup-vsix-plugin.js +1 -2
  32. package/dist/service-override/configuration.d.ts +7 -208
  33. package/dist/service-override/editor.d.ts +13 -0
  34. package/dist/service-override/{modelEditor.js → editor.js} +6 -62
  35. package/dist/service-override/files.d.ts +4 -4
  36. package/dist/service-override/files.js +14 -2
  37. package/dist/service-override/keybindings.js +3 -79
  38. package/dist/service-override/layout.js +6 -2
  39. package/dist/service-override/markers.d.ts +7 -0
  40. package/dist/service-override/markers.js +6 -0
  41. package/dist/service-override/model.d.ts +7 -0
  42. package/dist/service-override/model.js +10 -0
  43. package/dist/service-override/output.d.ts +7 -0
  44. package/dist/service-override/output.js +22 -0
  45. package/dist/service-override/preferences.js +7 -1
  46. package/dist/service-override/quickaccess.d.ts +7 -0
  47. package/dist/service-override/quickaccess.js +71 -0
  48. package/dist/service-override/search.d.ts +7 -0
  49. package/dist/service-override/search.js +19 -0
  50. package/dist/service-override/snippets.js +5 -1
  51. package/dist/service-override/terminal.d.ts +607 -0
  52. package/dist/service-override/terminal.js +98 -0
  53. package/dist/service-override/textmate.js +7 -2
  54. package/dist/service-override/theme.d.ts +1 -1
  55. package/dist/service-override/tools/editor.js +73 -0
  56. package/dist/service-override/views.d.ts +569 -481
  57. package/dist/service-override/views.js +149 -15
  58. package/dist/services.d.ts +2819 -203
  59. package/dist/services.js +3 -0
  60. package/dist/severity.d.ts +16 -0
  61. package/dist/uri.d.ts +22 -11
  62. package/dist/views.d.ts +270 -0
  63. package/dist/vscode/vs/base/browser/ui/centered/centeredViewLayout.js +178 -0
  64. package/dist/vscode/vs/base/browser/ui/grid/grid.js +452 -0
  65. package/dist/vscode/vs/base/browser/ui/grid/gridview.css.js +4 -0
  66. package/dist/vscode/vs/base/browser/ui/grid/gridview.js +999 -0
  67. package/dist/vscode/vs/base/browser/ui/iconLabel/simpleIconLabel.js +14 -0
  68. package/dist/vscode/vs/base/browser/ui/menu/menubar.css.js +4 -0
  69. package/dist/vscode/vs/base/browser/ui/menu/menubar.js +1 -1
  70. package/dist/vscode/vs/base/browser/ui/splitview/paneview.css.js +4 -0
  71. package/dist/vscode/vs/base/browser/ui/splitview/paneview.js +1 -1
  72. package/dist/vscode/vs/base/common/processes.js +24 -0
  73. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/decorations.js +20 -0
  74. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/delegatingEditorImpl.js +106 -0
  75. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/diffEditorSash.js +59 -0
  76. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/diffEditorWidget2.contribution.js +41 -0
  77. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/diffEditorWidget2.js +369 -0
  78. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/diffModel.js +247 -0
  79. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/lineAlignment.js +179 -0
  80. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/overviewRulerPart.js +121 -0
  81. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/style.css.js +4 -0
  82. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/unchangedRanges.js +184 -0
  83. package/dist/vscode/vs/editor/browser/widget/diffEditorWidget2/utils.js +88 -0
  84. package/dist/vscode/vs/platform/extensionManagement/common/extensionManagement.js +39 -1
  85. package/dist/vscode/vs/platform/extensionManagement/common/extensionManagementUtil.js +5 -1
  86. package/dist/vscode/vs/platform/extensionManagement/common/extensionStorage.js +1 -1
  87. package/dist/vscode/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +13 -5
  88. package/dist/vscode/vs/platform/files/common/fileService.js +43 -5
  89. package/dist/vscode/vs/platform/files/common/files.js +3 -1
  90. package/dist/vscode/vs/platform/languagePacks/common/languagePacks.js +4 -1
  91. package/dist/vscode/vs/platform/log/common/bufferLog.js +34 -0
  92. package/dist/vscode/vs/platform/log/common/fileLog.js +105 -0
  93. package/dist/vscode/vs/platform/quickinput/browser/quickPickPin.js +94 -0
  94. package/dist/vscode/vs/platform/remote/common/remoteAuthorityResolver.js +20 -1
  95. package/dist/vscode/vs/platform/request/browser/requestService.js +1 -1
  96. package/dist/vscode/vs/platform/request/common/request.js +3 -3
  97. package/dist/vscode/vs/platform/storage/common/storage.js +3 -0
  98. package/dist/vscode/vs/platform/terminal/common/capabilities/bufferMarkCapability.js +39 -0
  99. package/dist/vscode/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +565 -0
  100. package/dist/vscode/vs/platform/terminal/common/capabilities/cwdDetectionCapability.js +27 -0
  101. package/dist/vscode/vs/platform/terminal/common/capabilities/naiveCwdDetectionCapability.js +22 -0
  102. package/dist/vscode/vs/platform/terminal/common/capabilities/partialCommandDetectionCapability.js +46 -0
  103. package/dist/vscode/vs/platform/terminal/common/capabilities/terminalCapabilityStore.js +80 -0
  104. package/dist/vscode/vs/platform/terminal/common/environmentVariable.js +7 -0
  105. package/dist/vscode/vs/platform/terminal/common/environmentVariableCollection.js +196 -0
  106. package/dist/vscode/vs/platform/terminal/common/environmentVariableShared.js +23 -0
  107. package/dist/vscode/vs/platform/terminal/common/terminal.js +23 -0
  108. package/dist/vscode/vs/platform/terminal/common/terminalDataBuffering.js +45 -0
  109. package/dist/vscode/vs/platform/terminal/common/terminalEnvironment.js +37 -0
  110. package/dist/vscode/vs/platform/terminal/common/terminalPlatformConfiguration.js +622 -0
  111. package/dist/vscode/vs/platform/terminal/common/terminalProfiles.js +107 -0
  112. package/dist/vscode/vs/platform/terminal/common/terminalRecorder.js +66 -0
  113. package/dist/vscode/vs/platform/terminal/common/terminalStrings.js +16 -0
  114. package/dist/vscode/vs/platform/terminal/common/xterm/shellIntegrationAddon.js +321 -0
  115. package/dist/vscode/vs/platform/update/common/update.js +11 -1
  116. package/dist/vscode/vs/platform/userDataSync/common/settingsMerge.js +39 -1
  117. package/dist/vscode/vs/platform/userDataSync/common/userDataSync.js +19 -0
  118. package/dist/vscode/vs/platform/workspace/common/canonicalUri.js +3 -0
  119. package/dist/vscode/vs/platform/workspace/common/virtualWorkspace.js +4 -1
  120. package/dist/vscode/vs/platform/workspaces/common/workspaces.js +2 -2
  121. package/dist/vscode/vs/workbench/api/browser/mainThreadCommands.js +2 -3
  122. package/dist/vscode/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +1 -1
  123. package/dist/vscode/vs/workbench/api/browser/mainThreadEditorTabs.js +473 -0
  124. package/dist/vscode/vs/workbench/api/browser/mainThreadLanguageFeatures.js +45 -38
  125. package/dist/vscode/vs/workbench/api/browser/mainThreadSearch.js +146 -0
  126. package/dist/vscode/vs/workbench/api/browser/mainThreadStatusBar.js +49 -0
  127. package/dist/vscode/vs/workbench/api/browser/mainThreadTerminalService.js +395 -0
  128. package/dist/vscode/vs/workbench/api/browser/mainThreadTheming.js +22 -0
  129. package/dist/vscode/vs/workbench/api/browser/mainThreadTreeViews.js +10 -5
  130. package/dist/vscode/vs/workbench/api/browser/mainThreadWindow.js +11 -4
  131. package/dist/vscode/vs/workbench/api/browser/mainThreadWorkspace.js +34 -11
  132. package/dist/vscode/vs/workbench/api/browser/statusBarExtensionPoint.js +81 -0
  133. package/dist/vscode/vs/workbench/api/common/extHost.protocol.js +7 -2
  134. package/dist/vscode/vs/workbench/api/common/extHostDebugService.js +4 -13
  135. package/dist/vscode/vs/workbench/api/common/extHostExtensionService.js +30 -15
  136. package/dist/vscode/vs/workbench/api/common/extHostFileSystemConsumer.js +20 -6
  137. package/dist/vscode/vs/workbench/api/common/extHostLanguageFeatures.js +41 -8
  138. package/dist/vscode/vs/workbench/api/common/extHostManagedSockets.js +3 -0
  139. package/dist/vscode/vs/workbench/api/common/extHostSearch.js +109 -0
  140. package/dist/vscode/vs/workbench/api/common/extHostStatusBar.js +261 -0
  141. package/dist/vscode/vs/workbench/api/common/extHostTerminalService.js +879 -1
  142. package/dist/vscode/vs/workbench/api/common/extHostTheming.js +38 -0
  143. package/dist/vscode/vs/workbench/api/common/extHostTreeViews.js +8 -5
  144. package/dist/vscode/vs/workbench/api/common/extHostTypeConverters.js +15 -17
  145. package/dist/vscode/vs/workbench/api/common/extHostTypes.js +122 -4
  146. package/dist/vscode/vs/workbench/api/common/extHostWindow.js +28 -6
  147. package/dist/vscode/vs/workbench/api/common/extHostWorkspace.js +28 -0
  148. package/dist/vscode/vs/workbench/api/common/shared/dataTransferCache.js +11 -14
  149. package/dist/vscode/vs/workbench/api/node/extHostTerminalService.js +22 -0
  150. package/dist/vscode/vs/workbench/browser/actions/layoutActions.js +22 -18
  151. package/dist/vscode/vs/workbench/browser/actions/quickAccessActions.js +204 -0
  152. package/dist/vscode/vs/workbench/browser/actions/windowActions.js +2 -2
  153. package/dist/vscode/vs/workbench/browser/dnd.js +82 -3
  154. package/dist/vscode/vs/workbench/browser/editor.js +94 -0
  155. package/dist/vscode/vs/workbench/browser/labels.js +23 -2
  156. package/dist/vscode/vs/workbench/browser/media/part.css.js +4 -0
  157. package/dist/vscode/vs/workbench/browser/part.js +1 -1
  158. package/dist/vscode/vs/workbench/browser/parts/activitybar/activitybarActions.js +1 -1
  159. package/dist/vscode/vs/workbench/browser/parts/activitybar/activitybarPart.js +3 -3
  160. package/dist/vscode/vs/workbench/browser/parts/activitybar/media/activityaction.css.js +4 -0
  161. package/dist/vscode/vs/workbench/browser/parts/activitybar/media/activitybarpart.css.js +4 -0
  162. package/dist/vscode/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +14 -26
  163. package/dist/vscode/vs/workbench/browser/parts/compositePart.js +2 -2
  164. package/dist/vscode/vs/workbench/browser/parts/dialogs/dialogHandler.js +2 -2
  165. package/dist/vscode/vs/workbench/browser/parts/editor/binaryDiffEditor.js +43 -0
  166. package/dist/vscode/vs/workbench/browser/parts/editor/binaryEditor.js +55 -0
  167. package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbs.js +330 -0
  168. package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbsControl.js +690 -0
  169. package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbsModel.js +142 -0
  170. package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +414 -0
  171. package/dist/vscode/vs/workbench/browser/parts/editor/editor.contribution.js +801 -6
  172. package/dist/vscode/vs/workbench/browser/parts/editor/editor.js +57 -1
  173. package/dist/vscode/vs/workbench/browser/parts/editor/editorActions.js +1484 -107
  174. package/dist/vscode/vs/workbench/browser/parts/editor/editorCommands.js +1125 -9
  175. package/dist/vscode/vs/workbench/browser/parts/editor/editorDropTarget.js +499 -0
  176. package/dist/vscode/vs/workbench/browser/parts/editor/editorGroupView.js +1225 -0
  177. package/dist/vscode/vs/workbench/browser/parts/editor/editorGroupWatermark.js +133 -0
  178. package/dist/vscode/vs/workbench/browser/parts/editor/editorPane.js +242 -0
  179. package/dist/vscode/vs/workbench/browser/parts/editor/editorPanes.js +297 -0
  180. package/dist/vscode/vs/workbench/browser/parts/editor/editorPart.js +841 -0
  181. package/dist/vscode/vs/workbench/browser/parts/editor/editorPlaceholder.js +235 -0
  182. package/dist/vscode/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  183. package/dist/vscode/vs/workbench/browser/parts/editor/editorStatus.js +1152 -0
  184. package/dist/vscode/vs/workbench/browser/parts/editor/editorWithViewState.js +139 -0
  185. package/dist/vscode/vs/workbench/browser/parts/editor/editorsObserver.js +339 -0
  186. package/dist/vscode/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
  187. package/dist/vscode/vs/workbench/browser/parts/editor/media/editordroptarget.css.js +4 -0
  188. package/dist/vscode/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
  189. package/dist/vscode/vs/workbench/browser/parts/editor/media/editorplaceholder.css.js +4 -0
  190. package/dist/vscode/vs/workbench/browser/parts/editor/media/editorquickaccess.css.js +4 -0
  191. package/dist/vscode/vs/workbench/browser/parts/editor/media/editorstatus.css.js +4 -0
  192. package/dist/vscode/vs/workbench/browser/parts/editor/media/notabstitlecontrol.css.js +4 -0
  193. package/dist/vscode/vs/workbench/browser/parts/editor/media/sidebysideeditor.css.js +4 -0
  194. package/dist/vscode/vs/workbench/browser/parts/editor/media/tabstitlecontrol.css.js +4 -0
  195. package/dist/vscode/vs/workbench/browser/parts/editor/media/titlecontrol.css.js +4 -0
  196. package/dist/vscode/vs/workbench/browser/parts/editor/noTabsTitleControl.js +245 -0
  197. package/dist/vscode/vs/workbench/browser/parts/editor/sideBySideEditor.js +387 -0
  198. package/dist/vscode/vs/workbench/browser/parts/editor/tabFocus.js +77 -0
  199. package/dist/vscode/vs/workbench/browser/parts/editor/tabsTitleControl.js +1553 -0
  200. package/dist/vscode/vs/workbench/browser/parts/editor/textCodeEditor.js +79 -0
  201. package/dist/vscode/vs/workbench/browser/parts/editor/textDiffEditor.js +310 -0
  202. package/dist/vscode/vs/workbench/browser/parts/editor/textEditor.js +220 -0
  203. package/dist/vscode/vs/workbench/browser/parts/editor/textResourceEditor.js +149 -0
  204. package/dist/vscode/vs/workbench/browser/parts/editor/titleControl.js +284 -0
  205. package/dist/vscode/vs/workbench/browser/parts/media/compositepart.css.js +4 -0
  206. package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsActions.css.js +4 -0
  207. package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsCenter.css.js +4 -0
  208. package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsList.css.js +4 -0
  209. package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsToasts.css.js +4 -0
  210. package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsActions.js +8 -8
  211. package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsCenter.js +2 -2
  212. package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsList.js +1 -1
  213. package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsToasts.js +1 -1
  214. package/dist/vscode/vs/workbench/browser/parts/panel/media/basepanelpart.css.js +4 -0
  215. package/dist/vscode/vs/workbench/browser/parts/panel/media/panelpart.css.js +4 -0
  216. package/dist/vscode/vs/workbench/browser/parts/panel/panelActions.js +19 -5
  217. package/dist/vscode/vs/workbench/browser/parts/panel/panelPart.js +2 -2
  218. package/dist/vscode/vs/workbench/browser/parts/sidebar/media/sidebarpart.css.js +4 -0
  219. package/dist/vscode/vs/workbench/browser/parts/sidebar/sidebarPart.js +1 -1
  220. package/dist/vscode/vs/workbench/browser/parts/statusbar/media/statusbarpart.css.js +4 -0
  221. package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarActions.js +109 -0
  222. package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarItem.js +224 -0
  223. package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarModel.js +251 -0
  224. package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarPart.js +439 -0
  225. package/dist/vscode/vs/workbench/browser/parts/titlebar/media/menubarControl.css.js +4 -0
  226. package/dist/vscode/vs/workbench/browser/parts/titlebar/menubarControl.js +76 -3
  227. package/dist/vscode/vs/workbench/browser/parts/views/checkbox.js +10 -0
  228. package/dist/vscode/vs/workbench/browser/parts/views/media/paneviewlet.css.js +4 -0
  229. package/dist/vscode/vs/workbench/browser/parts/views/media/views.css.js +4 -0
  230. package/dist/vscode/vs/workbench/browser/parts/views/treeView.js +79 -15
  231. package/dist/vscode/vs/workbench/browser/parts/views/viewPane.js +5 -5
  232. package/dist/vscode/vs/workbench/browser/parts/views/viewPaneContainer.js +2 -2
  233. package/dist/vscode/vs/workbench/browser/parts/views/viewsService.js +4 -4
  234. package/dist/vscode/vs/workbench/browser/quickaccess.js +6 -2
  235. package/dist/vscode/vs/workbench/browser/workbench.contribution.js +1167 -0
  236. package/dist/vscode/vs/workbench/common/configuration.js +8 -1
  237. package/dist/vscode/vs/workbench/common/contextkeys.js +42 -1
  238. package/dist/vscode/vs/workbench/common/editor/editorGroupModel.js +678 -0
  239. package/dist/vscode/vs/workbench/common/editor/resourceEditorInput.js +6 -3
  240. package/dist/vscode/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  241. package/dist/vscode/vs/workbench/common/editor.js +57 -5
  242. package/dist/vscode/vs/workbench/common/resources.js +111 -34
  243. package/dist/vscode/vs/workbench/common/theme.js +35 -35
  244. package/dist/vscode/vs/workbench/common/views.js +1 -1
  245. package/dist/vscode/vs/workbench/contrib/bulkEdit/browser/bulkEditService.js +1 -1
  246. package/dist/vscode/vs/workbench/contrib/bulkEdit/browser/bulkTextEdits.js +1 -1
  247. package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +4 -4
  248. package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +1 -1
  249. package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/media/callHierarchy.css.js +4 -0
  250. package/dist/vscode/vs/workbench/contrib/chat/browser/chat.js +3 -0
  251. package/dist/vscode/vs/workbench/contrib/chat/common/chatService.js +3 -0
  252. package/dist/vscode/vs/workbench/contrib/codeEditor/browser/languageConfigurationExtensionPoint.js +6 -4
  253. package/dist/vscode/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoLineQuickAccess.js +77 -0
  254. package/dist/vscode/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +217 -0
  255. package/dist/vscode/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +4 -0
  256. package/dist/vscode/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +250 -0
  257. package/dist/vscode/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js +24 -0
  258. package/dist/vscode/vs/workbench/contrib/customEditor/browser/customEditorInput.js +290 -0
  259. package/dist/vscode/vs/workbench/contrib/customEditor/common/customEditor.js +3 -0
  260. package/dist/vscode/vs/workbench/contrib/debug/browser/breakpointWidget.js +1 -1
  261. package/dist/vscode/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +1 -1
  262. package/dist/vscode/vs/workbench/contrib/debug/browser/debug.contribution.js +30 -4
  263. package/dist/vscode/vs/workbench/contrib/debug/browser/debugActionViewItems.js +1 -0
  264. package/dist/vscode/vs/workbench/contrib/debug/browser/debugCommands.js +15 -2
  265. package/dist/vscode/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +20 -20
  266. package/dist/vscode/vs/workbench/contrib/debug/browser/debugEditorActions.js +5 -3
  267. package/dist/vscode/vs/workbench/contrib/debug/browser/debugEditorContribution.js +5 -2
  268. package/dist/vscode/vs/workbench/contrib/debug/browser/debugHover.js +33 -6
  269. package/dist/vscode/vs/workbench/contrib/debug/browser/debugIcons.js +77 -127
  270. package/dist/vscode/vs/workbench/contrib/debug/browser/debugSession.js +1 -1
  271. package/dist/vscode/vs/workbench/contrib/debug/browser/debugTaskRunner.js +1 -1
  272. package/dist/vscode/vs/workbench/contrib/debug/browser/debugToolBar.js +1 -1
  273. package/dist/vscode/vs/workbench/contrib/debug/browser/debugViewlet.js +1 -1
  274. package/dist/vscode/vs/workbench/contrib/debug/browser/disassemblyView.js +620 -0
  275. package/dist/vscode/vs/workbench/contrib/debug/browser/exceptionWidget.js +1 -1
  276. package/dist/vscode/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +4 -0
  277. package/dist/vscode/vs/workbench/contrib/debug/browser/media/callStackEditorContribution.css.js +4 -0
  278. package/dist/vscode/vs/workbench/contrib/debug/browser/media/debug.contribution.css.js +4 -0
  279. package/dist/vscode/vs/workbench/contrib/debug/browser/media/debugHover.css.js +4 -0
  280. package/dist/vscode/vs/workbench/contrib/debug/browser/media/debugToolBar.css.js +4 -0
  281. package/dist/vscode/vs/workbench/contrib/debug/browser/media/debugViewlet.css.js +4 -0
  282. package/dist/vscode/vs/workbench/contrib/debug/browser/media/exceptionWidget.css.js +4 -0
  283. package/dist/vscode/vs/workbench/contrib/debug/browser/media/repl.css.js +4 -0
  284. package/dist/vscode/vs/workbench/contrib/debug/browser/repl.js +4 -4
  285. package/dist/vscode/vs/workbench/contrib/debug/common/debug.js +2 -1
  286. package/dist/vscode/vs/workbench/contrib/debug/common/debugModel.js +29 -17
  287. package/dist/vscode/vs/workbench/contrib/debug/common/debugStorage.js +11 -10
  288. package/dist/vscode/vs/workbench/contrib/debug/common/debugger.js +10 -6
  289. package/dist/vscode/vs/workbench/contrib/extensions/browser/extensionsActions.js +2514 -0
  290. package/dist/vscode/vs/workbench/contrib/extensions/browser/extensionsIcons.js +82 -0
  291. package/dist/vscode/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +4 -0
  292. package/dist/vscode/vs/workbench/contrib/extensions/common/extensions.js +6 -1
  293. package/dist/vscode/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +16 -0
  294. package/dist/vscode/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +71 -0
  295. package/dist/vscode/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +2 -3
  296. package/dist/vscode/vs/workbench/contrib/files/browser/editors/textFileEditor.js +225 -0
  297. package/dist/vscode/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +2 -0
  298. package/dist/vscode/vs/workbench/contrib/files/browser/explorerService.js +10 -6
  299. package/dist/vscode/vs/workbench/contrib/files/browser/explorerViewlet.js +8 -22
  300. package/dist/vscode/vs/workbench/contrib/files/browser/fileActions.contribution.js +306 -5
  301. package/dist/vscode/vs/workbench/contrib/files/browser/fileActions.js +68 -3
  302. package/dist/vscode/vs/workbench/contrib/files/browser/fileCommands.js +27 -9
  303. package/dist/vscode/vs/workbench/contrib/files/browser/fileConstants.js +10 -1
  304. package/dist/vscode/vs/workbench/contrib/files/browser/files.contribution.js +51 -6
  305. package/dist/vscode/vs/workbench/contrib/files/browser/files.js +1 -0
  306. package/dist/vscode/vs/workbench/contrib/files/browser/media/explorerviewlet.css.js +4 -0
  307. package/dist/vscode/vs/workbench/contrib/files/browser/views/explorerView.js +3 -3
  308. package/dist/vscode/vs/workbench/contrib/files/browser/views/explorerViewer.js +6 -2
  309. package/dist/vscode/vs/workbench/contrib/files/browser/views/media/openeditors.css.js +4 -0
  310. package/dist/vscode/vs/workbench/contrib/files/browser/views/openEditorsView.js +608 -0
  311. package/dist/vscode/vs/workbench/contrib/files/common/explorerModel.js +16 -9
  312. package/dist/vscode/vs/workbench/contrib/files/common/files.js +2 -6
  313. package/dist/vscode/vs/workbench/contrib/interactive/browser/interactiveDocumentService.js +3 -0
  314. package/dist/vscode/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +200 -0
  315. package/dist/vscode/vs/workbench/contrib/interactive/browser/interactiveHistoryService.js +3 -0
  316. package/dist/vscode/vs/workbench/contrib/markers/browser/markers.contribution.js +586 -0
  317. package/dist/vscode/vs/workbench/contrib/markers/browser/markersFilterOptions.js +75 -0
  318. package/dist/vscode/vs/workbench/contrib/markers/browser/markersModel.js +201 -0
  319. package/dist/vscode/vs/workbench/contrib/markers/browser/markersTable.js +451 -0
  320. package/dist/vscode/vs/workbench/contrib/markers/browser/markersTreeViewer.js +670 -0
  321. package/dist/vscode/vs/workbench/contrib/markers/browser/markersView.js +857 -0
  322. package/dist/vscode/vs/workbench/contrib/markers/browser/markersViewActions.css.js +4 -0
  323. package/dist/vscode/vs/workbench/contrib/markers/browser/markersViewActions.js +132 -0
  324. package/dist/vscode/vs/workbench/contrib/markers/browser/media/markers.css.js +4 -0
  325. package/dist/vscode/vs/workbench/contrib/markers/browser/messages.js +171 -0
  326. package/dist/vscode/vs/workbench/contrib/markers/common/markers.js +15 -1
  327. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +135 -0
  328. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +421 -0
  329. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/mergeMarkers/mergeMarkersController.js +5 -0
  330. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +55 -0
  331. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/editing.js +54 -0
  332. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +108 -0
  333. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/mapping.js +334 -0
  334. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +606 -0
  335. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +307 -0
  336. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/rangeUtils.js +36 -0
  337. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +165 -0
  338. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/telemetry.js +78 -0
  339. package/dist/vscode/vs/workbench/contrib/mergeEditor/browser/utils.js +68 -0
  340. package/dist/vscode/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +2 -0
  341. package/dist/vscode/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +70 -0
  342. package/dist/vscode/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.css.js +4 -0
  343. package/dist/vscode/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +158 -0
  344. package/dist/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser.js +8 -3
  345. package/dist/vscode/vs/workbench/contrib/notebook/browser/services/notebookEditorService.js +3 -0
  346. package/dist/vscode/vs/workbench/contrib/notebook/common/notebookCommon.js +16 -1
  347. package/dist/vscode/vs/workbench/contrib/notebook/common/notebookService.js +1 -8
  348. package/dist/vscode/vs/workbench/contrib/output/browser/logViewer.js +64 -0
  349. package/dist/vscode/vs/workbench/contrib/output/browser/output.contribution.js +378 -0
  350. package/dist/vscode/vs/workbench/contrib/output/browser/outputServices.js +39 -3
  351. package/dist/vscode/vs/workbench/contrib/output/browser/outputView.js +220 -0
  352. package/dist/vscode/vs/workbench/contrib/output/common/outputChannelModel.js +12 -3
  353. package/dist/vscode/vs/workbench/contrib/output/common/outputLinkComputer.js +129 -0
  354. package/dist/vscode/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +270 -0
  355. package/dist/vscode/vs/workbench/contrib/preferences/browser/keybindingsEditor.js +1080 -0
  356. package/dist/vscode/vs/workbench/contrib/preferences/browser/media/keybindings.css.js +4 -0
  357. package/dist/vscode/vs/workbench/contrib/preferences/browser/media/keybindingsEditor.css.js +4 -0
  358. package/dist/vscode/vs/workbench/contrib/preferences/browser/media/preferences.css.js +4 -0
  359. package/dist/vscode/vs/workbench/contrib/preferences/browser/media/settingsEditor2.css.js +4 -0
  360. package/dist/vscode/vs/workbench/contrib/preferences/browser/media/settingsWidgets.css.js +4 -0
  361. package/dist/vscode/vs/workbench/contrib/preferences/browser/preferences.contribution.js +1154 -0
  362. package/dist/vscode/vs/workbench/contrib/preferences/browser/preferencesActions.js +94 -0
  363. package/dist/vscode/vs/workbench/contrib/preferences/browser/preferencesEditor.js +47 -0
  364. package/dist/vscode/vs/workbench/contrib/preferences/browser/preferencesIcons.js +37 -0
  365. package/dist/vscode/vs/workbench/contrib/preferences/browser/preferencesRenderers.js +731 -0
  366. package/dist/vscode/vs/workbench/contrib/preferences/browser/preferencesSearch.js +271 -0
  367. package/dist/vscode/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +479 -0
  368. package/dist/vscode/vs/workbench/contrib/preferences/browser/settingsEditor2.js +1465 -0
  369. package/dist/vscode/vs/workbench/contrib/preferences/browser/settingsEditorSettingIndicators.js +506 -0
  370. package/dist/vscode/vs/workbench/contrib/preferences/browser/settingsLayout.js +296 -0
  371. package/dist/vscode/vs/workbench/contrib/preferences/browser/settingsSearchMenu.js +79 -0
  372. package/dist/vscode/vs/workbench/contrib/preferences/browser/settingsTree.js +1984 -0
  373. package/dist/vscode/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +759 -0
  374. package/dist/vscode/vs/workbench/contrib/preferences/browser/settingsWidgets.js +1008 -0
  375. package/dist/vscode/vs/workbench/contrib/preferences/browser/tocTree.js +196 -0
  376. package/dist/vscode/vs/workbench/contrib/preferences/common/preferences.js +68 -0
  377. package/dist/vscode/vs/workbench/contrib/preferences/common/preferencesContribution.js +157 -0
  378. package/dist/vscode/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +67 -0
  379. package/dist/vscode/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.js +49 -17
  380. package/dist/vscode/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.js +129 -0
  381. package/dist/vscode/vs/workbench/contrib/quickaccess/browser/viewQuickAccess.js +225 -0
  382. package/dist/vscode/vs/workbench/contrib/remote/browser/media/tunnelView.css.js +4 -0
  383. package/dist/vscode/vs/workbench/contrib/remote/browser/remoteExplorer.js +23 -2
  384. package/dist/vscode/vs/workbench/contrib/remote/browser/remoteIcons.js +21 -17
  385. package/dist/vscode/vs/workbench/contrib/remote/browser/tunnelView.js +6 -6
  386. package/dist/vscode/vs/workbench/contrib/search/browser/anythingQuickAccess.js +757 -0
  387. package/dist/vscode/vs/workbench/contrib/search/browser/media/anythingQuickAccess.css.js +4 -0
  388. package/dist/vscode/vs/workbench/contrib/search/browser/media/searchview.css.js +4 -0
  389. package/dist/vscode/vs/workbench/contrib/search/browser/patternInputWidget.js +217 -0
  390. package/dist/vscode/vs/workbench/contrib/search/browser/replace.js +3 -0
  391. package/dist/vscode/vs/workbench/contrib/search/browser/replaceContributions.js +7 -0
  392. package/dist/vscode/vs/workbench/contrib/search/browser/replaceService.js +222 -0
  393. package/dist/vscode/vs/workbench/contrib/search/browser/search.contribution.js +467 -0
  394. package/dist/vscode/vs/workbench/contrib/search/browser/searchActionsBase.js +17 -0
  395. package/dist/vscode/vs/workbench/contrib/search/browser/searchFindInput.js +41 -0
  396. package/dist/vscode/vs/workbench/contrib/search/browser/searchIcons.js +35 -0
  397. package/dist/vscode/vs/workbench/contrib/search/browser/searchMessage.js +58 -0
  398. package/dist/vscode/vs/workbench/contrib/search/browser/searchModel.js +1842 -0
  399. package/dist/vscode/vs/workbench/contrib/search/browser/searchNotebookHelpers.js +49 -0
  400. package/dist/vscode/vs/workbench/contrib/search/browser/searchResultsView.js +379 -0
  401. package/dist/vscode/vs/workbench/contrib/search/browser/searchView.js +1867 -0
  402. package/dist/vscode/vs/workbench/contrib/search/browser/searchWidget.js +628 -0
  403. package/dist/vscode/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +219 -0
  404. package/dist/vscode/vs/workbench/contrib/search/common/cacheState.js +85 -0
  405. package/dist/vscode/vs/workbench/contrib/search/common/constants.js +31 -0
  406. package/dist/vscode/vs/workbench/contrib/search/common/search.js +127 -1
  407. package/dist/vscode/vs/workbench/contrib/search/common/searchHistoryService.js +42 -0
  408. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/constants.js +11 -0
  409. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/media/searchEditor.css.js +4 -0
  410. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/searchEditor.contribution.js +477 -0
  411. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/searchEditor.js +697 -0
  412. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/searchEditorActions.js +188 -0
  413. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +295 -0
  414. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/searchEditorModel.js +135 -0
  415. package/dist/vscode/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +268 -0
  416. package/dist/vscode/vs/workbench/contrib/snippets/browser/tabCompletion.js +2 -2
  417. package/dist/vscode/vs/workbench/contrib/tasks/browser/taskQuickPick.js +385 -0
  418. package/dist/vscode/vs/workbench/contrib/tasks/browser/tasksQuickAccess.js +108 -0
  419. package/dist/vscode/vs/workbench/contrib/tasks/common/taskService.js +16 -1
  420. package/dist/vscode/vs/workbench/contrib/tasks/common/tasks.js +351 -0
  421. package/dist/vscode/vs/workbench/contrib/terminal/browser/environmentVariableInfo.js +119 -0
  422. package/dist/vscode/vs/workbench/contrib/terminal/browser/media/scrollbar.css.js +4 -0
  423. package/dist/vscode/vs/workbench/contrib/terminal/browser/media/terminal.css.js +4 -0
  424. package/dist/vscode/vs/workbench/contrib/terminal/browser/media/widgets.css.js +4 -0
  425. package/dist/vscode/vs/workbench/contrib/terminal/browser/media/xterm.css.js +4 -0
  426. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminal.contribution.js +238 -0
  427. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminal.js +7 -0
  428. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalActions.js +1930 -0
  429. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalCommands.js +22 -0
  430. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalConfigHelper.js +213 -0
  431. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalContextMenu.js +17 -0
  432. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalEditor.js +186 -0
  433. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +199 -0
  434. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalEditorService.js +239 -0
  435. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalExtensions.js +22 -0
  436. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalGroup.js +482 -0
  437. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalGroupService.js +372 -0
  438. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalIcon.js +103 -0
  439. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalIcons.js +37 -0
  440. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalInstance.js +2123 -0
  441. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalInstanceService.js +79 -0
  442. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalMainContribution.js +82 -0
  443. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalMenus.js +850 -0
  444. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +142 -0
  445. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalProcessManager.js +618 -0
  446. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalProfileQuickpick.js +278 -0
  447. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalProfileResolverService.js +417 -0
  448. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalProfileService.js +213 -0
  449. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalQuickAccess.js +144 -0
  450. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalRunRecentQuickPick.js +267 -0
  451. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalService.js +1063 -0
  452. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalStatusList.js +108 -0
  453. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalTabbedView.js +417 -0
  454. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalTabsList.js +680 -0
  455. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalTooltip.js +72 -0
  456. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalUri.js +39 -0
  457. package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalView.js +535 -0
  458. package/dist/vscode/vs/workbench/contrib/terminal/browser/widgets/widgetManager.js +36 -0
  459. package/dist/vscode/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +469 -0
  460. package/dist/vscode/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +97 -0
  461. package/dist/vscode/vs/workbench/contrib/terminal/browser/xterm/lineDataEventAddon.js +56 -0
  462. package/dist/vscode/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +416 -0
  463. package/dist/vscode/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +390 -0
  464. package/dist/vscode/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +587 -0
  465. package/dist/vscode/vs/workbench/contrib/terminal/common/environmentVariable.js +3 -0
  466. package/dist/vscode/vs/workbench/contrib/terminal/common/environmentVariableService.js +94 -0
  467. package/dist/vscode/vs/workbench/contrib/terminal/common/history.js +356 -0
  468. package/dist/vscode/vs/workbench/contrib/terminal/common/terminal.js +266 -0
  469. package/dist/vscode/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +169 -16
  470. package/dist/vscode/vs/workbench/contrib/terminal/common/terminalConfiguration.js +965 -0
  471. package/dist/vscode/vs/workbench/contrib/terminal/common/terminalContextKey.js +157 -0
  472. package/dist/vscode/vs/workbench/contrib/terminal/common/terminalEnvironment.js +272 -0
  473. package/dist/vscode/vs/workbench/contrib/terminal/common/terminalExtensionPoints.js +27 -0
  474. package/dist/vscode/vs/workbench/contrib/terminal/common/terminalStrings.js +86 -0
  475. package/dist/vscode/vs/workbench/contrib/terminal/electron-sandbox/terminalProfileResolverService.js +46 -0
  476. package/dist/vscode/vs/workbench/contrib/terminalContrib/links/browser/links.js +3 -0
  477. package/dist/vscode/vs/workbench/contrib/terminalContrib/links/browser/terminalLinkProviderService.js +26 -0
  478. package/dist/vscode/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix.js +3 -0
  479. package/dist/vscode/vs/workbench/contrib/terminalContrib/quickFix/browser/terminalQuickFixService.js +143 -0
  480. package/dist/vscode/vs/workbench/contrib/typeHierarchy/browser/media/typeHierarchy.css.js +4 -0
  481. package/dist/vscode/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +1 -1
  482. package/dist/vscode/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +85 -0
  483. package/dist/vscode/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.js +52 -0
  484. package/dist/vscode/vs/workbench/services/actions/common/menusExtensionPoint.js +14 -6
  485. package/dist/vscode/vs/workbench/services/assignment/common/assignmentService.js +3 -0
  486. package/dist/vscode/vs/workbench/services/configuration/browser/configurationService.js +13 -13
  487. package/dist/vscode/vs/workbench/services/configuration/common/configuration.js +2 -1
  488. package/dist/vscode/vs/workbench/services/configuration/common/configurationEditing.js +2 -2
  489. package/dist/vscode/vs/workbench/services/configuration/common/jsonEditingService.js +2 -2
  490. package/dist/vscode/vs/workbench/services/editor/browser/editorDropService.js +3 -0
  491. package/dist/vscode/vs/workbench/services/editor/browser/editorResolverService.js +619 -0
  492. package/dist/vscode/vs/workbench/services/editor/browser/editorService.js +720 -0
  493. package/dist/vscode/vs/workbench/services/editor/common/editorGroupFinder.js +116 -0
  494. package/dist/vscode/vs/workbench/services/editor/common/editorGroupsService.js +6 -1
  495. package/dist/vscode/vs/workbench/services/editor/common/editorResolverService.js +34 -1
  496. package/dist/vscode/vs/workbench/services/extensionManagement/common/extensionManagement.js +3 -2
  497. package/dist/vscode/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.js +4 -0
  498. package/dist/vscode/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +2 -0
  499. package/dist/vscode/vs/workbench/services/extensions/common/extensionManifestPropertiesService.js +3 -0
  500. package/dist/vscode/vs/workbench/services/extensions/common/extensions.js +14 -2
  501. package/dist/vscode/vs/workbench/services/extensions/common/extensionsApiProposals.js +10 -1
  502. package/dist/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +70 -3
  503. package/dist/vscode/vs/workbench/services/history/browser/historyService.js +1451 -0
  504. package/dist/vscode/vs/workbench/services/hover/browser/hoverService.js +2 -2
  505. package/dist/vscode/vs/workbench/services/hover/browser/hoverWidget.js +2 -1
  506. package/dist/vscode/vs/workbench/services/hover/browser/media/hover.css.js +4 -0
  507. package/dist/vscode/vs/workbench/services/keybinding/common/keybindingEditing.js +275 -0
  508. package/dist/vscode/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.js +2 -1
  509. package/dist/vscode/vs/workbench/services/localization/common/locale.js +3 -0
  510. package/dist/vscode/vs/workbench/services/log/common/logConstants.js +2 -0
  511. package/dist/vscode/vs/workbench/services/outline/browser/outline.js +3 -0
  512. package/dist/vscode/vs/workbench/services/output/common/output.js +4 -1
  513. package/dist/vscode/vs/workbench/services/preferences/common/preferences.js +22 -1
  514. package/dist/vscode/vs/workbench/services/preferences/common/preferencesModels.js +6 -0
  515. package/dist/vscode/vs/workbench/services/preferences/common/preferencesValidation.js +37 -1
  516. package/dist/vscode/vs/workbench/services/progress/browser/progressIndicator.js +72 -1
  517. package/dist/vscode/vs/workbench/services/quickinput/browser/quickInputService.js +67 -0
  518. package/dist/vscode/vs/workbench/services/remote/common/remoteAgentService.js +69 -0
  519. package/dist/vscode/vs/workbench/services/remote/common/remoteExplorerService.js +66 -27
  520. package/dist/vscode/vs/workbench/services/search/common/fileSearchManager.js +265 -0
  521. package/dist/vscode/vs/workbench/services/search/common/queryBuilder.js +6 -0
  522. package/dist/vscode/vs/workbench/services/search/common/replace.js +203 -0
  523. package/dist/vscode/vs/workbench/services/search/common/search.js +117 -1
  524. package/dist/vscode/vs/workbench/services/search/common/searchExtTypes.js +6 -0
  525. package/dist/vscode/vs/workbench/services/search/common/textSearchManager.js +309 -0
  526. package/dist/vscode/vs/workbench/services/semanticSimilarity/common/semanticSimilarityService.js +54 -1
  527. package/dist/vscode/vs/workbench/services/statusbar/browser/statusbar.js +15 -0
  528. package/dist/vscode/vs/workbench/services/suggest/browser/media/suggest.css.js +4 -0
  529. package/dist/vscode/vs/workbench/services/suggest/browser/simpleCompletionItem.js +10 -0
  530. package/dist/vscode/vs/workbench/services/suggest/browser/simpleCompletionModel.js +98 -0
  531. package/dist/vscode/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +399 -0
  532. package/dist/vscode/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +83 -0
  533. package/dist/vscode/vs/workbench/services/terminal/common/embedderTerminalService.js +3 -0
  534. package/dist/vscode/vs/workbench/services/textMate/browser/worker/textMate.worker.js +90 -0
  535. package/dist/vscode/vs/workbench/services/textMate/browser/worker/textMateWorkerModel.js +133 -0
  536. package/dist/vscode/vs/workbench/services/textfile/browser/textFileService.js +1 -1
  537. package/dist/vscode/vs/workbench/services/textfile/common/textFileEditorModel.js +10 -3
  538. package/dist/vscode/vs/workbench/services/themes/browser/fileIconThemeData.js +3 -3
  539. package/dist/vscode/vs/workbench/services/themes/browser/productIconThemeData.js +3 -3
  540. package/dist/vscode/vs/workbench/services/themes/common/colorThemeData.js +3 -3
  541. package/dist/vscode/vs/workbench/services/untitled/common/untitledTextEditorInput.js +6 -4
  542. package/dist/vscode/vs/workbench/services/untitled/common/untitledTextEditorModel.js +3 -0
  543. package/dist/vscode/vs/workbench/services/untitled/common/untitledTextEditorService.js +114 -3
  544. package/dist/vscode/vs/workbench/services/userActivity/common/userActivityRegistry.js +15 -0
  545. package/dist/vscode/vs/workbench/services/userActivity/common/userActivityService.js +37 -0
  546. package/dist/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.js +1 -1
  547. package/dist/vscode/vs/workbench/services/userDataSync/common/userDataSync.js +7 -0
  548. package/dist/vscode/vs/workbench/services/workingCopy/common/workingCopyEditorService.js +40 -0
  549. package/dist/vscode/vs/workbench/services/workingCopy/common/workingCopyService.js +12 -0
  550. package/dist/vscode/vs/workbench/services/workspaces/common/canonicalUriService.js +19 -0
  551. package/dist/vscode-default-extensions/css/syntaxes/css.tmLanguage.json.extensionResource.js +1 -1
  552. package/dist/vscode-default-extensions/json/package.json.js +1 -1
  553. package/dist/vscode-default-extensions/json/syntaxes/JSONC.tmLanguage.json.extensionResource.js +1 -1
  554. package/dist/vscode-default-extensions/json/syntaxes/JSONL.tmLanguage.json.extensionResource.js +2 -0
  555. package/dist/vscode-default-extensions/latex/syntaxes/Bibtex.tmLanguage.json.extensionResource.js +1 -1
  556. package/dist/vscode-default-extensions/latex/syntaxes/LaTeX.tmLanguage.json.extensionResource.js +1 -1
  557. package/dist/vscode-default-extensions/latex/syntaxes/TeX.tmLanguage.json.extensionResource.js +1 -1
  558. package/dist/vscode-default-extensions/latex/syntaxes/cpp-grammar-bailout.tmLanguage.json.extensionResource.js +1 -1
  559. package/dist/vscode-default-extensions/latex/syntaxes/markdown-latex-combined.tmLanguage.json.extensionResource.js +1 -1
  560. package/dist/vscode-default-extensions/lua/syntaxes/lua.tmLanguage.json.extensionResource.js +1 -1
  561. package/dist/vscode-default-extensions/perl/package.json.js +1 -1
  562. package/dist/vscode-default-extensions/php/snippets/php.code-snippets.extensionResource.js +1 -1
  563. package/dist/vscode-default-extensions/sql/language-configuration.json.extensionResource.js +1 -1
  564. package/dist/vscode-default-extensions/theme-abyss/themes/abyss-color-theme.json.extensionResource.js +1 -1
  565. package/dist/vscode-default-extensions/theme-defaults/package.json.js +1 -1
  566. package/dist/vscode-default-extensions/theme-defaults/themes/dark_modern.json.extensionResource.js +2 -0
  567. package/dist/vscode-default-extensions/theme-defaults/themes/dark_vs.json.extensionResource.js +1 -1
  568. package/dist/vscode-default-extensions/theme-defaults/themes/hc_black.json.extensionResource.js +1 -1
  569. package/dist/vscode-default-extensions/theme-defaults/themes/hc_light.json.extensionResource.js +1 -1
  570. package/dist/vscode-default-extensions/theme-defaults/themes/light_modern.json.extensionResource.js +2 -0
  571. package/dist/vscode-default-extensions/theme-defaults/themes/light_vs.json.extensionResource.js +1 -1
  572. package/dist/vscode-default-extensions/theme-kimbie-dark/themes/kimbie-dark-color-theme.json.extensionResource.js +1 -1
  573. package/dist/vscode-default-extensions/theme-monokai/themes/monokai-color-theme.json.extensionResource.js +1 -1
  574. package/dist/vscode-default-extensions/theme-monokai-dimmed/themes/dimmed-monokai-color-theme.json.extensionResource.js +1 -1
  575. package/dist/vscode-default-extensions/theme-quietlight/themes/quietlight-color-theme.json.extensionResource.js +1 -1
  576. package/dist/vscode-default-extensions/theme-red/themes/Red-color-theme.json.extensionResource.js +1 -1
  577. package/dist/vscode-default-extensions/theme-seti/icons/vs-seti-icon-theme.json.extensionResource.js +1 -1
  578. package/dist/vscode-default-extensions/theme-solarized-dark/themes/solarized-dark-color-theme.json.extensionResource.js +1 -1
  579. package/dist/vscode-default-extensions/theme-solarized-light/themes/solarized-light-color-theme.json.extensionResource.js +1 -1
  580. package/dist/vscode-default-extensions/theme-tomorrow-night-blue/themes/tomorrow-night-blue-color-theme.json.extensionResource.js +1 -1
  581. package/dist/vscode-default-extensions/vb/language-configuration.json.extensionResource.js +1 -1
  582. package/dist/vscode-services/env.js +4 -2
  583. package/dist/vscode-services/extHost.js +41 -50
  584. package/dist/vscode-services/missing-services.js +504 -12
  585. package/dist/vscode-services/window.js +80 -67
  586. package/dist/vscode-services/workspace.js +19 -4
  587. package/dist/workbenchThemeService.d.ts +1 -1
  588. package/dist/workers/outputLinkComputer.worker.d.ts +2 -0
  589. package/dist/workers/outputLinkComputer.worker.js +3 -0
  590. package/dist/workers/textMate.worker.d.ts +2 -0
  591. package/dist/workers/textMate.worker.js +3 -0
  592. package/dist/workspace.d.ts +1 -1
  593. package/monaco-editor-treemending.patch +1305 -1184
  594. package/package.json +98 -32
  595. package/dist/activity.d.ts +0 -2902
  596. package/dist/assets/activityaction.css +0 -224
  597. package/dist/assets/activitybarpart.css +0 -65
  598. package/dist/assets/basepanelpart.css +0 -221
  599. package/dist/assets/breakpointWidget.css +0 -31
  600. package/dist/assets/callHierarchy.css +0 -62
  601. package/dist/assets/callStackEditorContribution.css +0 -12
  602. package/dist/assets/compositepart.css +0 -17
  603. package/dist/assets/debug.contribution.css +0 -138
  604. package/dist/assets/debugHover.css +0 -80
  605. package/dist/assets/debugToolBar.css +0 -49
  606. package/dist/assets/debugViewlet.css +0 -337
  607. package/dist/assets/editorquickaccess.css +0 -8
  608. package/dist/assets/exceptionWidget.css +0 -52
  609. package/dist/assets/explorerviewlet.css +0 -129
  610. package/dist/assets/hover.css +0 -127
  611. package/dist/assets/interactiveSession.css +0 -340
  612. package/dist/assets/menubar.css +0 -111
  613. package/dist/assets/menubarControl.css +0 -61
  614. package/dist/assets/notificationsActions.css +0 -14
  615. package/dist/assets/notificationsCenter.css +0 -69
  616. package/dist/assets/notificationsList.css +0 -152
  617. package/dist/assets/notificationsToasts.css +0 -63
  618. package/dist/assets/panelpart.css +0 -75
  619. package/dist/assets/paneview.css +0 -148
  620. package/dist/assets/paneviewlet.css +0 -79
  621. package/dist/assets/part.css +0 -109
  622. package/dist/assets/repl.css +0 -145
  623. package/dist/assets/sidebarpart.css +0 -61
  624. package/dist/assets/tunnelView.css +0 -107
  625. package/dist/assets/typeHierarchy.css +0 -62
  626. package/dist/assets/views.css +0 -297
  627. package/dist/collections.d.ts +0 -7
  628. package/dist/colorRegistry.d.ts +0 -710
  629. package/dist/override/vs/workbench/browser/parts/editor/textEditor.js +0 -2
  630. package/dist/override/vs/workbench/contrib/files/browser/views/openEditorsView.js +0 -2
  631. package/dist/service-override/modelEditor.d.ts +0 -14
  632. package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/interactiveSessionFollowups.js +0 -30
  633. package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/interactiveSessionInputPart.js +0 -196
  634. package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/interactiveSessionListRenderer.js +0 -622
  635. package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/interactiveSessionOptions.js +0 -77
  636. package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/interactiveSessionWidget.js +0 -311
  637. package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionContextKeys.js +0 -48
  638. package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionService.js +0 -8
  639. package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionViewModel.js +0 -207
  640. package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionWidgetHistoryService.js +0 -3
  641. package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionWordCounter.js +0 -25
  642. package/dist/vscode/vs/workbench/contrib/notebook/common/notebookEditorInput.js +0 -249
  643. package/dist/vscode-default-extensions/theme-defaults/themes/dark_plus_experimental.json.extensionResource.js +0 -2
  644. package/dist/vscode-default-extensions/theme-defaults/themes/light_plus_experimental.json.extensionResource.js +0 -2
@@ -1,34 +1,31 @@
1
1
  /// <reference path="./debugProtocol.d.ts" />
2
2
 
3
- import { E as Event, I as IDisposable, C as CancellationToken } from './event.js';
4
- import { I as IMarkdownString, a as IResourceEditorInput, b as ITextResourceEditorInput, c as IEditorOptions, d as IResourceEditorInputIdentifier } from './editor.js';
5
- export { M as MarkdownStringTrustedOptions } from './editor.js';
6
- import { S as ServiceIdentifier, a as ServicesAccessor } from './instantiation.js';
7
- export { I as IInstantiationService } from './instantiation.js';
8
- import { I as IProgress, a as IProgressStep, b as IProgressIndicator } from './colorRegistry.js';
9
- export { c as IAction, d as ICommandService, j as INeverShowAgainOptions, k as INotification, l as INotificationActions, o as INotificationHandle, m as INotificationProgress, n as INotificationProgressProperties, h as INotificationProperties, e as INotificationService, p as IPromptChoice, q as IPromptChoiceWithMenu, r as IPromptOptions, s as IStatusMessageOptions, i as NeverShowAgainScope, t as NoOpNotification, u as NoOpProgress, f as NotificationMessage, g as NotificationPriority, N as NotificationsFilter } from './colorRegistry.js';
10
- import { S as Severity, E as ExtensionIdentifier, I as IExtensionDescription } from './extensions.d2.ts';
11
- import { V as VSBuffer, I as IFileService } from './files.js';
12
- import { I as ILanguageIdCodec, a as IEditorCloseEvent, b as IVisibleEditorPane, E as EditorInput, c as EditorsOrder, d as IEditorIdentifier, e as IEditorGroup, G as GroupIdentifier, f as IEditorPane, g as IUntitledTextResourceEditorInput, h as IResourceDiffEditorInput, i as ITextDiffEditorPane, j as IUntypedEditorInput, k as ICloseEditorOptions, l as IFindEditorOptions, m as IRevertOptions, n as ISaveOptions, o as IGroupModelChangeEvent, L as LanguageSelector, C as Command, T as TextEdit, p as IInplaceReplaceSupportResult, W as WorkspaceEdit, q as WorkspaceEditMetadata } from './languageFeatures.js';
13
- export { D as DialogType, J as IBaseDialogOptions, K as ICheckbox, M as ICheckboxResult, B as IConfirmDialogArgs, P as IConfirmation, Q as IConfirmationResult, O as ICustomDialogMarkdown, N as ICustomDialogOptions, y as IDialogArgs, A as IDialogHandler, z as IDialogResult, t as IDialogService, v as IEditorGroupsService, R as IInput, F as IInputDialogArgs, U as IInputElement, S as IInputResult, r as ILanguageConfigurationService, s as ILanguageFeaturesService, u as IMarkerService, V as IPrompt, Y as IPromptBaseButton, Z as IPromptButton, _ as IPromptCancelButton, H as IPromptDialogArgs, X as IPromptResult, $ as IPromptResultWithCancel, a0 as IPromptWithCustomCancel, a1 as IPromptWithDefaultCancel, w as ITextFileService, x as IWorkingCopyFileService } from './languageFeatures.js';
14
- import { U as URI } from './uri.js';
15
- import { C as ConfigurationTarget, I as ITelemetryEndpoint, a as IOpenEmptyWindowOptions, b as IWindowOpenable, c as IOpenWindowOptions, d as IPaneComposite, V as ViewContainerLocation, P as PaneCompositeDescriptor, e as IBadge } from './activity.js';
16
- export { g as IColorTheme, f as IConfigurationChangeEvent, l as IConfigurationService, p as ILayoutService, i as IOpenerService, n as IStorageService, j as ITelemetryService, m as IThemeService, o as IViewsService, k as IWorkbenchEnvironmentService, S as StorageScope, h as StorageTarget } from './activity.js';
17
- import { I as IStringDictionary } from './collections.js';
3
+ import { E as Event$1, a as IDisposable, C as CancellationToken, D as Disposable, c as Emitter } from './event.js';
4
+ import { i as IMarkdownString, l as IEditorModel, p as ITextBufferFactory, c as ITextModel, v as ITextModelCreationOptions, w as IEditor, q as IDiffEditor, t as IResourceEditorInput, u as ITextResourceEditorInput, I as IEditorOptions, x as IResourceEditorInputIdentifier, h as IRange, g as IPosition, P as Position$1, y as IDocumentDiffProviderOptions, z as IDocumentDiff, A as IChange, b as ICodeEditor, B as IBoundarySashes, O as Orientation, C as IDiffEditor$1, D as IDecorationRenderOptions, d as IModelDecorationOptions } from './editorBrowser.js';
5
+ export { F as ITextModelContentProvider, G as ITextModelService, M as MarkdownStringTrustedOptions } from './editorBrowser.js';
6
+ import { S as ServiceIdentifier, c as IConstructorSignature, I as IInstantiationService, B as BrandedService, a as ServicesAccessor } from './instantiation.js';
7
+ import { d as ILanguageIdCodec, S as SubmenuAction, e as IAction, f as ICommandService, g as IEditorCloseEvent, h as IVisibleEditorPane, E as EditorInput, i as EditorsOrder, j as IEditorIdentifier, k as IEditorGroup, G as GroupIdentifier, l as IEditorPane, m as IUntitledTextResourceEditorInput, n as IResourceDiffEditorInput, o as ITextDiffEditorPane, p as IUntypedEditorInput, q as ICloseEditorOptions, s as IFindEditorOptions, t as IRevertOptions, u as ISaveOptions, v as IGroupModelChangeEvent, w as ColorIdentifier, x as Color, y as LanguageSelector, z as Command, T as TextEdit, A as IInplaceReplaceSupportResult, W as WorkspaceEdit, B as WorkspaceEditMetadata, D as IActionRunner } from './languageFeatures.js';
8
+ export { a7 as DialogType, ad as IBaseDialogOptions, ae as ICheckbox, af as ICheckboxResult, aa as IConfirmDialogArgs, ai as IConfirmation, aj as IConfirmationResult, ah as ICustomDialogMarkdown, ag as ICustomDialogOptions, a6 as IDialogArgs, a9 as IDialogHandler, a8 as IDialogResult, H as IDialogService, K as IEditorGroupsService, ak as IInput, ab as IInputDialogArgs, am as IInputElement, al as IInputResult, a as ILanguageConfigurationService, I as ILanguageFeaturesService, J as IMarkerService, V as INeverShowAgainOptions, X as INotification, Y as INotificationActions, $ as INotificationHandle, Z as INotificationProgress, _ as INotificationProgressProperties, R as INotificationProperties, b as INotificationService, an as IPrompt, ap as IPromptBaseButton, aq as IPromptButton, ar as IPromptCancelButton, a0 as IPromptChoice, a1 as IPromptChoiceWithMenu, ac as IPromptDialogArgs, a2 as IPromptOptions, ao as IPromptResult, as as IPromptResultWithCancel, at as IPromptWithCustomCancel, au as IPromptWithDefaultCancel, a3 as IStatusMessageOptions, M as ITextFileService, N as IWorkingCopyFileService, U as NeverShowAgainScope, a4 as NoOpNotification, a5 as NoOpProgress, P as NotificationMessage, Q as NotificationPriority, O as NotificationsFilter } from './languageFeatures.js';
9
+ import { S as Severity } from './severity.js';
10
+ import { c as FileType, V as VSBuffer, w as IFileService } from './files.js';
11
+ import { a as UriComponents, U as URI } from './uri.js';
12
+ import { b as IWorkspaceFolder, I as IAnyWorkspaceIdentifier, c as IWorkspaceContextService } from './workspace.js';
13
+ import { c as IStringDictionary, d as IExtensionInfo, C as ConfigurationScope, E as EditPresentationTypes } from './configurationRegistry.js';
14
+ import { P as PlatformName, O as OperatingSystem } from './platform.js';
18
15
  import { I as ILogService } from './log.js';
19
16
  export { a as ILoggerService, L as LogLevel } from './log.js';
20
- import { I as IWorkspaceFolder } from './workspace.js';
21
- export { a as IWorkspaceContextService } from './workspace.js';
22
- import { R as ResolvedKeybinding } from './keybinding.js';
23
- import { I as ITextBufferFactory, a as ITextModel, b as ITextModelCreationOptions, c as IEditor, d as IDiffEditor, e as IRange, f as IPosition, P as Position, g as IDocumentDiffProviderOptions, h as IDocumentDiff, i as IChange, j as ICodeEditor, k as IDiffEditor$1, l as IDecorationRenderOptions, m as IModelDecorationOptions } from './editorBrowser.js';
24
- export { n as ITextModelContentProvider, o as ITextModelService } from './editorBrowser.js';
17
+ import { R as ResolvedKeybinding, K as KeyCode, a as KeyCodeChord, b as IKeybindingService, c as ResolvedKeybindingItem } from './keybinding.js';
18
+ import { I as IconIdentifier, T as ThemeIcon } from './themables.js';
19
+ import { I as IJSONSchema, a as IJSONSchemaMap } from './jsonSchema.js';
20
+ import { I as IView$3, a as IViewDescriptorService, b as IViewPaneContainer, c as ViewContainer, d as IViewContainerModel, e as IViewDescriptor, f as IAddedViewDescriptorRef, g as IPaneComposite, V as ViewContainerLocation } from './views.js';
21
+ export { h as IViewsService } from './views.js';
22
+ import { e as ICommandAction, f as ICommandActionTitle, g as Icon, h as IEnvironmentService, E as ExtensionIdentifier, T as TargetPlatform, a as IExtensionDescription } from './extensions.d2.ts';
23
+ import { b as IProgress, c as IProgressStep, I as IComposite, d as ICompositeControl, a as IProgressIndicator } from './composite.js';
24
+ import { a as IContextKeyService, C as ContextKeyExpression } from './contextkey.js';
25
+ import { a as IExtensionService } from './extensionsRegistry.js';
25
26
  import { I as IEditorOverrideServices } from './standaloneServices.js';
26
27
  export { S as StandaloneServices } from './standaloneServices.js';
27
28
  import 'vscode';
28
- import './jsonSchema.js';
29
- import './contextkey.js';
30
- import './themables.js';
31
- import './extensionsRegistry.js';
32
29
  import 'monaco-editor';
33
30
 
34
31
  interface IAccessibilityInformation {
@@ -36,6 +33,161 @@ interface IAccessibilityInformation {
36
33
  role?: string;
37
34
  }
38
35
 
36
+ interface IConfigurationOverrides {
37
+ overrideIdentifier?: string | null;
38
+ resource?: URI | null;
39
+ }
40
+ type IConfigurationUpdateOverrides = Omit<IConfigurationOverrides, 'overrideIdentifier'> & {
41
+ overrideIdentifiers?: string[] | null;
42
+ };
43
+ declare const enum ConfigurationTarget {
44
+ APPLICATION = 1,
45
+ USER = 2,
46
+ USER_LOCAL = 3,
47
+ USER_REMOTE = 4,
48
+ WORKSPACE = 5,
49
+ WORKSPACE_FOLDER = 6,
50
+ DEFAULT = 7,
51
+ MEMORY = 8
52
+ }
53
+ interface IConfigurationChange {
54
+ keys: string[];
55
+ overrides: [string, string[]][];
56
+ }
57
+ interface IConfigurationChangeEvent {
58
+ readonly source: ConfigurationTarget;
59
+ readonly affectedKeys: ReadonlySet<string>;
60
+ readonly change: IConfigurationChange;
61
+ affectsConfiguration(configuration: string, overrides?: IConfigurationOverrides): boolean;
62
+ readonly sourceConfig: any;
63
+ }
64
+ interface IConfigurationValue<T> {
65
+ readonly defaultValue?: T;
66
+ readonly applicationValue?: T;
67
+ readonly userValue?: T;
68
+ readonly userLocalValue?: T;
69
+ readonly userRemoteValue?: T;
70
+ readonly workspaceValue?: T;
71
+ readonly workspaceFolderValue?: T;
72
+ readonly memoryValue?: T;
73
+ readonly policyValue?: T;
74
+ readonly value?: T;
75
+ readonly default?: {
76
+ value?: T;
77
+ override?: T;
78
+ };
79
+ readonly application?: {
80
+ value?: T;
81
+ override?: T;
82
+ };
83
+ readonly user?: {
84
+ value?: T;
85
+ override?: T;
86
+ };
87
+ readonly userLocal?: {
88
+ value?: T;
89
+ override?: T;
90
+ };
91
+ readonly userRemote?: {
92
+ value?: T;
93
+ override?: T;
94
+ };
95
+ readonly workspace?: {
96
+ value?: T;
97
+ override?: T;
98
+ };
99
+ readonly workspaceFolder?: {
100
+ value?: T;
101
+ override?: T;
102
+ };
103
+ readonly memory?: {
104
+ value?: T;
105
+ override?: T;
106
+ };
107
+ readonly policy?: {
108
+ value?: T;
109
+ };
110
+ readonly overrideIdentifiers?: string[];
111
+ }
112
+ interface IConfigurationUpdateOptions {
113
+ /**
114
+ * If `true`, do not notifies the error to user by showing the message box. Default is `false`.
115
+ */
116
+ donotNotifyError?: boolean;
117
+ /**
118
+ * How to handle dirty file when updating the configuration.
119
+ */
120
+ handleDirtyFile?: 'save' | 'revert';
121
+ }
122
+
123
+ declare const IConfigurationService: ServiceIdentifier<IConfigurationService>;
124
+ interface IConfigurationService {
125
+ readonly _serviceBrand: undefined;
126
+ onDidChangeConfiguration: Event$1<IConfigurationChangeEvent>;
127
+ getConfigurationData(): IConfigurationData | null;
128
+ /**
129
+ * Fetches the value of the section for the given overrides.
130
+ * Value can be of native type or an object keyed off the section name.
131
+ *
132
+ * @param section - Section of the configuration. Can be `null` or `undefined`.
133
+ * @param overrides - Overrides that has to be applied while fetching
134
+ *
135
+ */
136
+ getValue<T>(): T;
137
+ getValue<T>(section: string): T;
138
+ getValue<T>(overrides: IConfigurationOverrides): T;
139
+ getValue<T>(section: string, overrides: IConfigurationOverrides): T;
140
+ /**
141
+ * Update a configuration value.
142
+ *
143
+ * Use `target` to update the configuration in a specific `ConfigurationTarget`.
144
+ *
145
+ * Use `overrides` to update the configuration for a resource or for override identifiers or both.
146
+ *
147
+ * Passing a resource through overrides will update the configuration in the workspace folder containing that resource.
148
+ *
149
+ * *Note 1:* Updating configuration to a default value will remove the configuration from the requested target. If not target is passed, it will be removed from all writeable targets.
150
+ *
151
+ * *Note 2:* Use `undefined` value to remove the configuration from the given target. If not target is passed, it will be removed from all writeable targets.
152
+ *
153
+ * Use `donotNotifyError` and set it to `true` to surpresss errors.
154
+ *
155
+ * @param key setting to be updated
156
+ * @param value The new value
157
+ */
158
+ updateValue(key: string, value: any): Promise<void>;
159
+ updateValue(key: string, value: any, target: ConfigurationTarget): Promise<void>;
160
+ updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides): Promise<void>;
161
+ updateValue(key: string, value: any, overrides: IConfigurationOverrides | IConfigurationUpdateOverrides, target: ConfigurationTarget, options?: IConfigurationUpdateOptions): Promise<void>;
162
+ inspect<T>(key: string, overrides?: IConfigurationOverrides): IConfigurationValue<Readonly<T>>;
163
+ reloadConfiguration(target?: ConfigurationTarget | IWorkspaceFolder): Promise<void>;
164
+ keys(): {
165
+ default: string[];
166
+ user: string[];
167
+ workspace: string[];
168
+ workspaceFolder: string[];
169
+ memory?: string[];
170
+ };
171
+ }
172
+ interface IConfigurationModel {
173
+ contents: any;
174
+ keys: string[];
175
+ overrides: IOverrides[];
176
+ }
177
+ interface IOverrides {
178
+ keys: string[];
179
+ contents: any;
180
+ identifiers: string[];
181
+ }
182
+ interface IConfigurationData {
183
+ defaults: IConfigurationModel;
184
+ policy: IConfigurationModel;
185
+ application: IConfigurationModel;
186
+ user: IConfigurationModel;
187
+ workspace: IConfigurationModel;
188
+ folders: [UriComponents, IConfigurationModel][];
189
+ }
190
+
39
191
  interface ILanguageExtensionPoint {
40
192
  id: string;
41
193
  extensions?: string[];
@@ -52,7 +204,7 @@ interface ILanguageExtensionPoint {
52
204
  }
53
205
  interface ILanguageSelection {
54
206
  readonly languageId: string;
55
- readonly onDidChange: Event<string>;
207
+ readonly onDidChange: Event$1<string>;
56
208
  }
57
209
  interface ILanguageNameIdPair {
58
210
  readonly languageName: string;
@@ -78,7 +230,7 @@ interface ILanguageService {
78
230
  * **Note**: Basic language features refers to language configuration related features.
79
231
  * **Note**: This event is a superset of `onDidRequestRichLanguageFeatures`
80
232
  */
81
- onDidRequestBasicLanguageFeatures: Event<string>;
233
+ onDidRequestBasicLanguageFeatures: Event$1<string>;
82
234
  /**
83
235
  * An event emitted when rich language features are requested for the first time.
84
236
  * This event is emitted when a language is associated to a text model.
@@ -86,11 +238,11 @@ interface ILanguageService {
86
238
  * **Note**: Rich language features refers to tokenizers, language features based on providers, etc.
87
239
  * **Note**: This event is a subset of `onDidRequestRichLanguageFeatures`
88
240
  */
89
- onDidRequestRichLanguageFeatures: Event<string>;
241
+ onDidRequestRichLanguageFeatures: Event$1<string>;
90
242
  /**
91
243
  * An event emitted when languages have changed.
92
244
  */
93
- onDidChange: Event<void>;
245
+ onDidChange: Event$1<void>;
94
246
  /**
95
247
  * Register a language.
96
248
  */
@@ -176,11 +328,231 @@ declare class UndoRedoSource {
176
328
  static None: UndoRedoSource;
177
329
  }
178
330
 
179
- type PlatformName = 'Web' | 'Windows' | 'Mac' | 'Linux';
180
- declare const enum OperatingSystem {
181
- Windows = 1,
182
- Macintosh = 2,
183
- Linux = 3
331
+ interface ISubmenuItem {
332
+ title: string | ICommandActionTitle;
333
+ submenu: MenuId;
334
+ icon?: Icon;
335
+ when?: ContextKeyExpression;
336
+ group?: 'navigation' | string;
337
+ order?: number;
338
+ isSelection?: boolean;
339
+ rememberDefaultAction?: boolean;
340
+ }
341
+ declare class MenuId {
342
+ private static readonly _instances;
343
+ static readonly CommandPalette: MenuId;
344
+ static readonly DebugBreakpointsContext: MenuId;
345
+ static readonly DebugCallStackContext: MenuId;
346
+ static readonly DebugConsoleContext: MenuId;
347
+ static readonly DebugVariablesContext: MenuId;
348
+ static readonly DebugWatchContext: MenuId;
349
+ static readonly DebugToolBar: MenuId;
350
+ static readonly DebugToolBarStop: MenuId;
351
+ static readonly EditorContext: MenuId;
352
+ static readonly SimpleEditorContext: MenuId;
353
+ static readonly EditorContent: MenuId;
354
+ static readonly EditorLineNumberContext: MenuId;
355
+ static readonly EditorContextCopy: MenuId;
356
+ static readonly EditorContextPeek: MenuId;
357
+ static readonly EditorContextShare: MenuId;
358
+ static readonly EditorTitle: MenuId;
359
+ static readonly EditorTitleRun: MenuId;
360
+ static readonly EditorTitleContext: MenuId;
361
+ static readonly EditorTitleContextShare: MenuId;
362
+ static readonly EmptyEditorGroup: MenuId;
363
+ static readonly EmptyEditorGroupContext: MenuId;
364
+ static readonly EditorTabsBarContext: MenuId;
365
+ static readonly ExplorerContext: MenuId;
366
+ static readonly ExplorerContextShare: MenuId;
367
+ static readonly ExtensionContext: MenuId;
368
+ static readonly GlobalActivity: MenuId;
369
+ static readonly CommandCenter: MenuId;
370
+ static readonly LayoutControlMenuSubmenu: MenuId;
371
+ static readonly LayoutControlMenu: MenuId;
372
+ static readonly MenubarMainMenu: MenuId;
373
+ static readonly MenubarAppearanceMenu: MenuId;
374
+ static readonly MenubarDebugMenu: MenuId;
375
+ static readonly MenubarEditMenu: MenuId;
376
+ static readonly MenubarCopy: MenuId;
377
+ static readonly MenubarFileMenu: MenuId;
378
+ static readonly MenubarGoMenu: MenuId;
379
+ static readonly MenubarHelpMenu: MenuId;
380
+ static readonly MenubarLayoutMenu: MenuId;
381
+ static readonly MenubarNewBreakpointMenu: MenuId;
382
+ static readonly PanelAlignmentMenu: MenuId;
383
+ static readonly PanelPositionMenu: MenuId;
384
+ static readonly MenubarPreferencesMenu: MenuId;
385
+ static readonly MenubarRecentMenu: MenuId;
386
+ static readonly MenubarSelectionMenu: MenuId;
387
+ static readonly MenubarShare: MenuId;
388
+ static readonly MenubarSwitchEditorMenu: MenuId;
389
+ static readonly MenubarSwitchGroupMenu: MenuId;
390
+ static readonly MenubarTerminalMenu: MenuId;
391
+ static readonly MenubarViewMenu: MenuId;
392
+ static readonly MenubarHomeMenu: MenuId;
393
+ static readonly OpenEditorsContext: MenuId;
394
+ static readonly OpenEditorsContextShare: MenuId;
395
+ static readonly ProblemsPanelContext: MenuId;
396
+ static readonly SCMChangeContext: MenuId;
397
+ static readonly SCMResourceContext: MenuId;
398
+ static readonly SCMResourceContextShare: MenuId;
399
+ static readonly SCMResourceFolderContext: MenuId;
400
+ static readonly SCMResourceGroupContext: MenuId;
401
+ static readonly SCMSourceControl: MenuId;
402
+ static readonly SCMTitle: MenuId;
403
+ static readonly SearchContext: MenuId;
404
+ static readonly SearchActionMenu: MenuId;
405
+ static readonly StatusBarWindowIndicatorMenu: MenuId;
406
+ static readonly StatusBarRemoteIndicatorMenu: MenuId;
407
+ static readonly StickyScrollContext: MenuId;
408
+ static readonly TestItem: MenuId;
409
+ static readonly TestItemGutter: MenuId;
410
+ static readonly TestPeekElement: MenuId;
411
+ static readonly TestPeekTitle: MenuId;
412
+ static readonly TouchBarContext: MenuId;
413
+ static readonly TitleBarContext: MenuId;
414
+ static readonly TitleBarTitleContext: MenuId;
415
+ static readonly TunnelContext: MenuId;
416
+ static readonly TunnelPrivacy: MenuId;
417
+ static readonly TunnelProtocol: MenuId;
418
+ static readonly TunnelPortInline: MenuId;
419
+ static readonly TunnelTitle: MenuId;
420
+ static readonly TunnelLocalAddressInline: MenuId;
421
+ static readonly TunnelOriginInline: MenuId;
422
+ static readonly ViewItemContext: MenuId;
423
+ static readonly ViewContainerTitle: MenuId;
424
+ static readonly ViewContainerTitleContext: MenuId;
425
+ static readonly ViewTitle: MenuId;
426
+ static readonly ViewTitleContext: MenuId;
427
+ static readonly CommentEditorActions: MenuId;
428
+ static readonly CommentThreadTitle: MenuId;
429
+ static readonly CommentThreadActions: MenuId;
430
+ static readonly CommentThreadAdditionalActions: MenuId;
431
+ static readonly CommentThreadTitleContext: MenuId;
432
+ static readonly CommentThreadCommentContext: MenuId;
433
+ static readonly CommentTitle: MenuId;
434
+ static readonly CommentActions: MenuId;
435
+ static readonly InteractiveToolbar: MenuId;
436
+ static readonly InteractiveCellTitle: MenuId;
437
+ static readonly InteractiveCellDelete: MenuId;
438
+ static readonly InteractiveCellExecute: MenuId;
439
+ static readonly InteractiveInputExecute: MenuId;
440
+ static readonly NotebookToolbar: MenuId;
441
+ static readonly NotebookCellTitle: MenuId;
442
+ static readonly NotebookCellDelete: MenuId;
443
+ static readonly NotebookCellInsert: MenuId;
444
+ static readonly NotebookCellBetween: MenuId;
445
+ static readonly NotebookCellListTop: MenuId;
446
+ static readonly NotebookCellExecute: MenuId;
447
+ static readonly NotebookCellExecutePrimary: MenuId;
448
+ static readonly NotebookDiffCellInputTitle: MenuId;
449
+ static readonly NotebookDiffCellMetadataTitle: MenuId;
450
+ static readonly NotebookDiffCellOutputsTitle: MenuId;
451
+ static readonly NotebookOutputToolbar: MenuId;
452
+ static readonly NotebookEditorLayoutConfigure: MenuId;
453
+ static readonly NotebookKernelSource: MenuId;
454
+ static readonly BulkEditTitle: MenuId;
455
+ static readonly BulkEditContext: MenuId;
456
+ static readonly TimelineItemContext: MenuId;
457
+ static readonly TimelineTitle: MenuId;
458
+ static readonly TimelineTitleContext: MenuId;
459
+ static readonly TimelineFilterSubMenu: MenuId;
460
+ static readonly AccountsContext: MenuId;
461
+ static readonly PanelTitle: MenuId;
462
+ static readonly AuxiliaryBarTitle: MenuId;
463
+ static readonly TerminalInstanceContext: MenuId;
464
+ static readonly TerminalEditorInstanceContext: MenuId;
465
+ static readonly TerminalNewDropdownContext: MenuId;
466
+ static readonly TerminalTabContext: MenuId;
467
+ static readonly TerminalTabEmptyAreaContext: MenuId;
468
+ static readonly TerminalInlineTabContext: MenuId;
469
+ static readonly WebviewContext: MenuId;
470
+ static readonly InlineCompletionsActions: MenuId;
471
+ static readonly NewFile: MenuId;
472
+ static readonly MergeInput1Toolbar: MenuId;
473
+ static readonly MergeInput2Toolbar: MenuId;
474
+ static readonly MergeBaseToolbar: MenuId;
475
+ static readonly MergeInputResultToolbar: MenuId;
476
+ static readonly InlineSuggestionToolbar: MenuId;
477
+ static readonly ChatContext: MenuId;
478
+ static readonly ChatCodeBlock: MenuId;
479
+ static readonly ChatMessageTitle: MenuId;
480
+ static readonly ChatExecute: MenuId;
481
+ /**
482
+ * Create or reuse a `MenuId` with the given identifier
483
+ */
484
+ static for(identifier: string): MenuId;
485
+ readonly id: string;
486
+ /**
487
+ * Create a new `MenuId` with the unique identifier. Will throw if a menu
488
+ * with the identifier already exists, use `MenuId.for(ident)` or a unique
489
+ * identifier
490
+ */
491
+ constructor(identifier: string);
492
+ }
493
+ interface IMenuActionOptions {
494
+ arg?: any;
495
+ shouldForwardArgs?: boolean;
496
+ renderShortTitle?: boolean;
497
+ }
498
+ interface IMenuChangeEvent {
499
+ readonly menu: IMenu;
500
+ readonly isStructuralChange: boolean;
501
+ readonly isToggleChange: boolean;
502
+ readonly isEnablementChange: boolean;
503
+ }
504
+ interface IMenu extends IDisposable {
505
+ readonly onDidChange: Event$1<IMenuChangeEvent>;
506
+ getActions(options?: IMenuActionOptions): [string, Array<MenuItemAction | SubmenuItemAction>][];
507
+ }
508
+ interface IMenuCreateOptions {
509
+ emitEventsForSubmenuChanges?: boolean;
510
+ eventDebounceDelay?: number;
511
+ }
512
+ declare const IMenuService: ServiceIdentifier<IMenuService>;
513
+ interface IMenuService {
514
+ readonly _serviceBrand: undefined;
515
+ /**
516
+ * Create a new menu for the given menu identifier. A menu sends events when it's entries
517
+ * have changed (placement, enablement, checked-state). By default it does not send events for
518
+ * submenu entries. That is more expensive and must be explicitly enabled with the
519
+ * `emitEventsForSubmenuChanges` flag.
520
+ */
521
+ createMenu(id: MenuId, contextKeyService: IContextKeyService, options?: IMenuCreateOptions): IMenu;
522
+ /**
523
+ * Reset **all** menu item hidden states.
524
+ */
525
+ resetHiddenStates(): void;
526
+ /**
527
+ * Reset the menu's hidden states.
528
+ */
529
+ resetHiddenStates(menuIds: readonly MenuId[] | undefined): void;
530
+ }
531
+ declare class SubmenuItemAction extends SubmenuAction {
532
+ readonly item: ISubmenuItem;
533
+ readonly hideActions: IMenuItemHide | undefined;
534
+ constructor(item: ISubmenuItem, hideActions: IMenuItemHide | undefined, actions: IAction[]);
535
+ }
536
+ interface IMenuItemHide {
537
+ readonly isHidden: boolean;
538
+ readonly hide: IAction;
539
+ readonly toggle: IAction;
540
+ }
541
+ declare class MenuItemAction implements IAction {
542
+ readonly hideActions: IMenuItemHide | undefined;
543
+ private _commandService;
544
+ static label(action: ICommandAction, options?: IMenuActionOptions): string;
545
+ readonly item: ICommandAction;
546
+ readonly alt: MenuItemAction | undefined;
547
+ private readonly _options;
548
+ readonly id: string;
549
+ readonly label: string;
550
+ readonly tooltip: string;
551
+ readonly class: string | undefined;
552
+ readonly enabled: boolean;
553
+ readonly checked?: boolean;
554
+ constructor(item: ICommandAction, alt: ICommandAction | undefined, options: IMenuActionOptions | undefined, hideActions: IMenuItemHide | undefined, contextKeyService: IContextKeyService, _commandService: ICommandService);
555
+ run(...args: any[]): Promise<void>;
184
556
  }
185
557
 
186
558
  interface IExtUri {
@@ -320,6 +692,225 @@ interface IUriIdentityService {
320
692
  asCanonicalUri(uri: URI): URI;
321
693
  }
322
694
 
695
+ /**
696
+ * Flags to indicate whether to use the default profile or not.
697
+ */
698
+ type UseDefaultProfileFlags = {
699
+ settings?: boolean;
700
+ keybindings?: boolean;
701
+ tasks?: boolean;
702
+ snippets?: boolean;
703
+ extensions?: boolean;
704
+ uiState?: boolean;
705
+ };
706
+ interface IUserDataProfile {
707
+ readonly id: string;
708
+ readonly isDefault: boolean;
709
+ readonly name: string;
710
+ readonly shortName?: string;
711
+ readonly location: URI;
712
+ readonly globalStorageHome: URI;
713
+ readonly settingsResource: URI;
714
+ readonly keybindingsResource: URI;
715
+ readonly tasksResource: URI;
716
+ readonly snippetsHome: URI;
717
+ readonly extensionsResource: URI;
718
+ readonly cacheHome: URI;
719
+ readonly useDefaultFlags?: UseDefaultProfileFlags;
720
+ readonly isTransient?: boolean;
721
+ }
722
+
723
+ declare enum WillSaveStateReason {
724
+ /**
725
+ * No specific reason to save state.
726
+ */
727
+ NONE = 0,
728
+ /**
729
+ * A hint that the workbench is about to shutdown.
730
+ */
731
+ SHUTDOWN = 1
732
+ }
733
+ interface IWillSaveStateEvent {
734
+ readonly reason: WillSaveStateReason;
735
+ }
736
+ declare const IStorageService: ServiceIdentifier<IStorageService>;
737
+ interface IStorageService {
738
+ readonly _serviceBrand: undefined;
739
+ /**
740
+ * Emitted whenever data is updated or deleted.
741
+ */
742
+ readonly onDidChangeValue: Event$1<IStorageValueChangeEvent>;
743
+ /**
744
+ * Emitted whenever target of a storage entry changes.
745
+ */
746
+ readonly onDidChangeTarget: Event$1<IStorageTargetChangeEvent>;
747
+ /**
748
+ * Emitted when the storage is about to persist. This is the right time
749
+ * to persist data to ensure it is stored before the application shuts
750
+ * down.
751
+ *
752
+ * The will save state event allows to optionally ask for the reason of
753
+ * saving the state, e.g. to find out if the state is saved due to a
754
+ * shutdown.
755
+ *
756
+ * Note: this event may be fired many times, not only on shutdown to prevent
757
+ * loss of state in situations where the shutdown is not sufficient to
758
+ * persist the data properly.
759
+ */
760
+ readonly onWillSaveState: Event$1<IWillSaveStateEvent>;
761
+ /**
762
+ * Retrieve an element stored with the given key from storage. Use
763
+ * the provided `defaultValue` if the element is `null` or `undefined`.
764
+ *
765
+ * @param scope allows to define the scope of the storage operation
766
+ * to either the current workspace only, all workspaces or all profiles.
767
+ */
768
+ get(key: string, scope: StorageScope, fallbackValue: string): string;
769
+ get(key: string, scope: StorageScope, fallbackValue?: string): string | undefined;
770
+ /**
771
+ * Retrieve an element stored with the given key from storage. Use
772
+ * the provided `defaultValue` if the element is `null` or `undefined`.
773
+ * The element will be converted to a `boolean`.
774
+ *
775
+ * @param scope allows to define the scope of the storage operation
776
+ * to either the current workspace only, all workspaces or all profiles.
777
+ */
778
+ getBoolean(key: string, scope: StorageScope, fallbackValue: boolean): boolean;
779
+ getBoolean(key: string, scope: StorageScope, fallbackValue?: boolean): boolean | undefined;
780
+ /**
781
+ * Retrieve an element stored with the given key from storage. Use
782
+ * the provided `defaultValue` if the element is `null` or `undefined`.
783
+ * The element will be converted to a `number` using `parseInt` with a
784
+ * base of `10`.
785
+ *
786
+ * @param scope allows to define the scope of the storage operation
787
+ * to either the current workspace only, all workspaces or all profiles.
788
+ */
789
+ getNumber(key: string, scope: StorageScope, fallbackValue: number): number;
790
+ getNumber(key: string, scope: StorageScope, fallbackValue?: number): number | undefined;
791
+ /**
792
+ * Retrieve an element stored with the given key from storage. Use
793
+ * the provided `defaultValue` if the element is `null` or `undefined`.
794
+ * The element will be converted to a `object` using `JSON.parse`.
795
+ *
796
+ * @param scope allows to define the scope of the storage operation
797
+ * to either the current workspace only, all workspaces or all profiles.
798
+ */
799
+ getObject<T extends object>(key: string, scope: StorageScope, fallbackValue: T): T;
800
+ getObject<T extends object>(key: string, scope: StorageScope, fallbackValue?: T): T | undefined;
801
+ /**
802
+ * Store a value under the given key to storage. The value will be
803
+ * converted to a `string`. Storing either `undefined` or `null` will
804
+ * remove the entry under the key.
805
+ *
806
+ * @param scope allows to define the scope of the storage operation
807
+ * to either the current workspace only, all workspaces or all profiles.
808
+ *
809
+ * @param target allows to define the target of the storage operation
810
+ * to either the current machine or user.
811
+ */
812
+ store(key: string, value: string | boolean | number | undefined | null | object, scope: StorageScope, target: StorageTarget): void;
813
+ /**
814
+ * Delete an element stored under the provided key from storage.
815
+ *
816
+ * The scope argument allows to define the scope of the storage
817
+ * operation to either the current workspace only, all workspaces
818
+ * or all profiles.
819
+ */
820
+ remove(key: string, scope: StorageScope): void;
821
+ /**
822
+ * Returns all the keys used in the storage for the provided `scope`
823
+ * and `target`.
824
+ *
825
+ * Note: this will NOT return all keys stored in the storage layer.
826
+ * Some keys may not have an associated `StorageTarget` and thus
827
+ * will be excluded from the results.
828
+ *
829
+ * @param scope allows to define the scope for the keys
830
+ * to either the current workspace only, all workspaces or all profiles.
831
+ *
832
+ * @param target allows to define the target for the keys
833
+ * to either the current machine or user.
834
+ */
835
+ keys(scope: StorageScope, target: StorageTarget): string[];
836
+ /**
837
+ * Log the contents of the storage to the console.
838
+ */
839
+ log(): void;
840
+ /**
841
+ * Returns true if the storage service handles the provided scope.
842
+ */
843
+ hasScope(scope: IAnyWorkspaceIdentifier | IUserDataProfile): boolean;
844
+ /**
845
+ * Switch storage to another workspace or profile. Optionally preserve the
846
+ * current data to the new storage.
847
+ */
848
+ switch(to: IAnyWorkspaceIdentifier | IUserDataProfile, preserveData: boolean): Promise<void>;
849
+ /**
850
+ * Whether the storage for the given scope was created during this session or
851
+ * existed before.
852
+ */
853
+ isNew(scope: StorageScope): boolean;
854
+ /**
855
+ * Allows to flush state, e.g. in cases where a shutdown is
856
+ * imminent. This will send out the `onWillSaveState` to ask
857
+ * everyone for latest state.
858
+ *
859
+ * @returns a `Promise` that can be awaited on when all updates
860
+ * to the underlying storage have been flushed.
861
+ */
862
+ flush(reason?: WillSaveStateReason): Promise<void>;
863
+ }
864
+ declare const enum StorageScope {
865
+ /**
866
+ * The stored data will be scoped to all workspaces across all profiles.
867
+ */
868
+ APPLICATION = -1,
869
+ /**
870
+ * The stored data will be scoped to all workspaces of the same profile.
871
+ */
872
+ PROFILE = 0,
873
+ /**
874
+ * The stored data will be scoped to the current workspace.
875
+ */
876
+ WORKSPACE = 1
877
+ }
878
+ declare const enum StorageTarget {
879
+ /**
880
+ * The stored data is user specific and applies across machines.
881
+ */
882
+ USER = 0,
883
+ /**
884
+ * The stored data is machine specific.
885
+ */
886
+ MACHINE = 1
887
+ }
888
+ interface IStorageValueChangeEvent {
889
+ /**
890
+ * The scope for the storage entry that changed
891
+ * or was removed.
892
+ */
893
+ readonly scope: StorageScope;
894
+ /**
895
+ * The `key` of the storage entry that was changed
896
+ * or was removed.
897
+ */
898
+ readonly key: string;
899
+ /**
900
+ * The `target` can be `undefined` if a key is being
901
+ * removed.
902
+ */
903
+ readonly target: StorageTarget | undefined;
904
+ }
905
+ interface IStorageTargetChangeEvent {
906
+ /**
907
+ * The scope for the target that changed. Listeners
908
+ * should use `keys(scope, target)` to get an updated
909
+ * list of keys for the given `scope` and `target`.
910
+ */
911
+ readonly scope: StorageScope;
912
+ }
913
+
323
914
  interface IBuiltInExtension {
324
915
  readonly name: string;
325
916
  readonly version: string;
@@ -504,6 +1095,7 @@ interface IProductConfiguration {
504
1095
  readonly 'editSessions.store'?: Omit<ConfigurationSyncStore, 'insidersUrl' | 'stableUrl'>;
505
1096
  readonly darwinUniversalAssetId?: string;
506
1097
  readonly profileTemplatesUrl?: string;
1098
+ readonly commonlyUsedSettings?: string[];
507
1099
  }
508
1100
  interface ITunnelApplicationConfig {
509
1101
  authenticationProviders: IStringDictionary<{
@@ -514,6 +1106,10 @@ interface ITunnelApplicationConfig {
514
1106
  }
515
1107
  interface IExtensionRecommendations {
516
1108
  readonly onFileOpen: IFileOpenCondition[];
1109
+ readonly onSettingsEditorOpen?: ISettingsEditorOpenCondition;
1110
+ }
1111
+ interface ISettingsEditorOpenCondition {
1112
+ readonly prerelease: boolean | string;
517
1113
  }
518
1114
  interface IExtensionRecommendationCondition {
519
1115
  readonly important?: boolean;
@@ -563,13 +1159,23 @@ interface IRemoteExtensionTip {
563
1159
  friendlyName: string;
564
1160
  extensionId: string;
565
1161
  supportedPlatforms?: PlatformName[];
566
- showInStartEntry?: boolean;
1162
+ startEntry?: {
1163
+ helpLink: string;
1164
+ startConnectLabel: string;
1165
+ startCommand: string;
1166
+ priority: number;
1167
+ };
567
1168
  }
568
1169
  interface IVirtualWorkspaceExtensionTip {
569
1170
  friendlyName: string;
570
1171
  extensionId: string;
571
1172
  supportedPlatforms?: PlatformName[];
572
- showInStartEntry?: boolean;
1173
+ startEntry: {
1174
+ helpLink: string;
1175
+ startConnectLabel: string;
1176
+ startCommand: string;
1177
+ priority: number;
1178
+ };
573
1179
  }
574
1180
  interface ISurveyData {
575
1181
  surveyId: string;
@@ -784,10 +1390,14 @@ interface IQuickInputHideEvent {
784
1390
  reason: QuickInputHideReason;
785
1391
  }
786
1392
  interface IQuickInput extends IDisposable {
787
- readonly onDidHide: Event<IQuickInputHideEvent>;
788
- readonly onDispose: Event<void>;
1393
+ readonly onDidHide: Event$1<IQuickInputHideEvent>;
1394
+ readonly onDispose: Event$1<void>;
789
1395
  title: string | undefined;
790
1396
  description: string | undefined;
1397
+ /**
1398
+ * Should be an HTMLElement (TODO: move this entire file into browser)
1399
+ */
1400
+ widget: any | undefined;
791
1401
  step: number | undefined;
792
1402
  totalSteps: number | undefined;
793
1403
  enabled: boolean;
@@ -827,9 +1437,9 @@ interface IQuickPick<T extends IQuickPickItem> extends IQuickInput {
827
1437
  filterValue: (value: string) => string;
828
1438
  ariaLabel: string | undefined;
829
1439
  placeholder: string | undefined;
830
- readonly onDidChangeValue: Event<string>;
831
- readonly onWillAccept: Event<IQuickPickWillAcceptEvent>;
832
- readonly onDidAccept: Event<IQuickPickDidAcceptEvent>;
1440
+ readonly onDidChangeValue: Event$1<string>;
1441
+ readonly onWillAccept: Event$1<IQuickPickWillAcceptEvent>;
1442
+ readonly onDidAccept: Event$1<IQuickPickDidAcceptEvent>;
833
1443
  /**
834
1444
  * If enabled, will fire the `onDidAccept` event when
835
1445
  * pressing the arrow-right key with the idea of accepting
@@ -837,14 +1447,14 @@ interface IQuickPick<T extends IQuickPickItem> extends IQuickInput {
837
1447
  */
838
1448
  canAcceptInBackground: boolean;
839
1449
  ok: boolean | 'default';
840
- readonly onDidCustom: Event<void>;
1450
+ readonly onDidCustom: Event$1<void>;
841
1451
  customButton: boolean;
842
1452
  customLabel: string | undefined;
843
1453
  customHover: string | undefined;
844
1454
  buttons: ReadonlyArray<IQuickInputButton>;
845
- readonly onDidTriggerButton: Event<IQuickInputButton>;
846
- readonly onDidTriggerItemButton: Event<IQuickPickItemButtonEvent<T>>;
847
- readonly onDidTriggerSeparatorButton: Event<IQuickPickSeparatorButtonEvent>;
1455
+ readonly onDidTriggerButton: Event$1<IQuickInputButton>;
1456
+ readonly onDidTriggerItemButton: Event$1<IQuickPickItemButtonEvent<T>>;
1457
+ readonly onDidTriggerSeparatorButton: Event$1<IQuickPickSeparatorButtonEvent>;
848
1458
  items: ReadonlyArray<T | IQuickPickSeparator>;
849
1459
  scrollTop: number;
850
1460
  canSelectMany: boolean;
@@ -862,13 +1472,13 @@ interface IQuickPick<T extends IQuickPickItem> extends IQuickInput {
862
1472
  keepScrollPosition: boolean;
863
1473
  quickNavigate: IQuickNavigateConfiguration | undefined;
864
1474
  activeItems: ReadonlyArray<T>;
865
- readonly onDidChangeActive: Event<T[]>;
1475
+ readonly onDidChangeActive: Event$1<T[]>;
866
1476
  /**
867
1477
  * Allows to control which entry should be activated by default.
868
1478
  */
869
1479
  itemActivation: ItemActivation;
870
1480
  selectedItems: ReadonlyArray<T>;
871
- readonly onDidChangeSelection: Event<T[]>;
1481
+ readonly onDidChangeSelection: Event$1<T[]>;
872
1482
  readonly keyMods: IKeyMods;
873
1483
  valueSelection: Readonly<[number, number]> | undefined;
874
1484
  validationMessage: string | undefined;
@@ -887,7 +1497,7 @@ interface IQuickPick<T extends IQuickPickItem> extends IQuickInput {
887
1497
  toggles: IQuickInputToggle[] | undefined;
888
1498
  }
889
1499
  interface IQuickInputToggle {
890
- onChange: Event<boolean>;
1500
+ onChange: Event$1<boolean>;
891
1501
  }
892
1502
  interface IInputBox extends IQuickInput {
893
1503
  /**
@@ -909,11 +1519,11 @@ interface IInputBox extends IQuickInput {
909
1519
  /**
910
1520
  * Event called when the input value changes.
911
1521
  */
912
- readonly onDidChangeValue: Event<string>;
1522
+ readonly onDidChangeValue: Event$1<string>;
913
1523
  /**
914
1524
  * Event called when the user submits the input.
915
1525
  */
916
- readonly onDidAccept: Event<void>;
1526
+ readonly onDidAccept: Event$1<void>;
917
1527
  /**
918
1528
  * Buttons to show in addition to user input submission.
919
1529
  */
@@ -921,7 +1531,7 @@ interface IInputBox extends IQuickInput {
921
1531
  /**
922
1532
  * Event called when a button is selected.
923
1533
  */
924
- readonly onDidTriggerButton: Event<IQuickInputButton>;
1534
+ readonly onDidTriggerButton: Event$1<IQuickInputButton>;
925
1535
  /**
926
1536
  * Text show below the input box.
927
1537
  */
@@ -978,11 +1588,11 @@ interface IQuickInputService {
978
1588
  /**
979
1589
  * Allows to register on the event that quick input is showing.
980
1590
  */
981
- readonly onShow: Event<void>;
1591
+ readonly onShow: Event$1<void>;
982
1592
  /**
983
1593
  * Allows to register on the event that quick input is hiding.
984
1594
  */
985
- readonly onHide: Event<void>;
1595
+ readonly onHide: Event$1<void>;
986
1596
  /**
987
1597
  * Opens the quick input box for selecting items and returns a promise
988
1598
  * with the user selected item(s) if any.
@@ -1035,6 +1645,105 @@ interface IQuickInputService {
1035
1645
  cancel(): Promise<void>;
1036
1646
  }
1037
1647
 
1648
+ interface IPropertyData {
1649
+ classification: 'SystemMetaData' | 'CallstackOrException' | 'CustomerContent' | 'PublicNonPersonalData' | 'EndUserPseudonymizedInformation';
1650
+ purpose: 'PerformanceAndHealth' | 'FeatureInsight' | 'BusinessInsight';
1651
+ comment: string;
1652
+ expiration?: string;
1653
+ endpoint?: string;
1654
+ isMeasurement?: boolean;
1655
+ }
1656
+ interface IGDPRProperty {
1657
+ owner: string;
1658
+ comment: string;
1659
+ expiration?: string;
1660
+ readonly [name: string]: IPropertyData | undefined | IGDPRProperty | string;
1661
+ }
1662
+ type IGDPRPropertyWithoutMetadata = Omit<IGDPRProperty, 'owner' | 'comment' | 'expiration'>;
1663
+ type OmitMetadata<T> = Omit<T, 'owner' | 'comment' | 'expiration'>;
1664
+ type ClassifiedEvent<T extends IGDPRPropertyWithoutMetadata> = {
1665
+ [k in keyof T]: any;
1666
+ };
1667
+ type StrictPropertyChecker<TEvent, TClassification, TError> = keyof TEvent extends keyof OmitMetadata<TClassification> ? keyof OmitMetadata<TClassification> extends keyof TEvent ? TEvent : TError : TError;
1668
+ type StrictPropertyCheckError = {
1669
+ error: 'Type of classified event does not match event properties';
1670
+ };
1671
+ type StrictPropertyCheck<T extends IGDPRProperty, E> = StrictPropertyChecker<E, ClassifiedEvent<OmitMetadata<T>>, StrictPropertyCheckError>;
1672
+
1673
+ interface ITelemetryData {
1674
+ from?: string;
1675
+ target?: string;
1676
+ [key: string]: any;
1677
+ }
1678
+
1679
+ declare const ITelemetryService: ServiceIdentifier<ITelemetryService>;
1680
+ interface ITelemetryService {
1681
+ readonly _serviceBrand: undefined;
1682
+ readonly telemetryLevel: TelemetryLevel;
1683
+ readonly sessionId: string;
1684
+ readonly machineId: string;
1685
+ readonly firstSessionDate: string;
1686
+ readonly msftInternal?: boolean;
1687
+ /**
1688
+ * Whether error telemetry will get sent. If false, `publicLogError` will no-op.
1689
+ */
1690
+ readonly sendErrorTelemetry: boolean;
1691
+ /**
1692
+ * @deprecated Use publicLog2 and the typescript GDPR annotation where possible
1693
+ */
1694
+ publicLog(eventName: string, data?: ITelemetryData): void;
1695
+ /**
1696
+ * Sends a telemetry event that has been privacy approved.
1697
+ * Do not call this unless you have been given approval.
1698
+ */
1699
+ publicLog2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck<T, E>): void;
1700
+ /**
1701
+ * @deprecated Use publicLogError2 and the typescript GDPR annotation where possible
1702
+ */
1703
+ publicLogError(errorEventName: string, data?: ITelemetryData): void;
1704
+ publicLogError2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck<T, E>): void;
1705
+ setExperimentProperty(name: string, value: string): void;
1706
+ }
1707
+ interface ITelemetryEndpoint {
1708
+ id: string;
1709
+ aiKey: string;
1710
+ sendErrorTelemetry: boolean;
1711
+ }
1712
+ declare const enum TelemetryLevel {
1713
+ NONE = 0,
1714
+ CRASH = 1,
1715
+ ERROR = 2,
1716
+ USAGE = 3
1717
+ }
1718
+
1719
+ /**
1720
+ * The editor model is the heavyweight counterpart of editor input. Depending on the editor input, it
1721
+ * resolves from a file system retrieve content and may allow for saving it back or reverting it.
1722
+ * Editor models are typically cached for some while because they are expensive to construct.
1723
+ */
1724
+ declare class EditorModel extends Disposable implements IEditorModel {
1725
+ private readonly _onWillDispose;
1726
+ readonly onWillDispose: Event$1<void>;
1727
+ private disposed;
1728
+ private resolved;
1729
+ /**
1730
+ * Causes this model to resolve returning a promise when loading is completed.
1731
+ */
1732
+ resolve(): Promise<void>;
1733
+ /**
1734
+ * Returns whether this model was loaded or not.
1735
+ */
1736
+ isResolved(): boolean;
1737
+ /**
1738
+ * Find out if this model has been disposed.
1739
+ */
1740
+ isDisposed(): boolean;
1741
+ /**
1742
+ * Subclasses should implement to free resources that have been claimed through loading.
1743
+ */
1744
+ dispose(): void;
1745
+ }
1746
+
1038
1747
  declare const IModelService: ServiceIdentifier<IModelService>;
1039
1748
  interface IModelService {
1040
1749
  readonly _serviceBrand: undefined;
@@ -1044,9 +1753,9 @@ interface IModelService {
1044
1753
  getModels(): ITextModel[];
1045
1754
  getCreationOptions(language: string, resource: URI, isForSimpleWidget: boolean): ITextModelCreationOptions;
1046
1755
  getModel(resource: URI): ITextModel | null;
1047
- onModelAdded: Event<ITextModel>;
1048
- onModelRemoved: Event<ITextModel>;
1049
- onModelLanguageChanged: Event<{
1756
+ onModelAdded: Event$1<ITextModel>;
1757
+ onModelRemoved: Event$1<ITextModel>;
1758
+ onModelLanguageChanged: Event$1<{
1050
1759
  model: ITextModel;
1051
1760
  oldLanguageId: string;
1052
1761
  }>;
@@ -1130,22 +1839,22 @@ interface IEditorService {
1130
1839
  *
1131
1840
  * @see {@link IEditorService.activeEditorPane}
1132
1841
  */
1133
- readonly onDidActiveEditorChange: Event<void>;
1842
+ readonly onDidActiveEditorChange: Event$1<void>;
1134
1843
  /**
1135
1844
  * Emitted when any of the current visible editors changes.
1136
1845
  *
1137
1846
  * @see {@link IEditorService.visibleEditorPanes}
1138
1847
  */
1139
- readonly onDidVisibleEditorsChange: Event<void>;
1848
+ readonly onDidVisibleEditorsChange: Event$1<void>;
1140
1849
  /**
1141
1850
  * An aggregated event for any change to any editor across
1142
1851
  * all groups.
1143
1852
  */
1144
- readonly onDidEditorsChange: Event<IEditorsChangeEvent>;
1853
+ readonly onDidEditorsChange: Event$1<IEditorsChangeEvent>;
1145
1854
  /**
1146
1855
  * Emitted when an editor is closed.
1147
1856
  */
1148
- readonly onDidCloseEditor: Event<IEditorCloseEvent>;
1857
+ readonly onDidCloseEditor: Event$1<IEditorCloseEvent>;
1149
1858
  /**
1150
1859
  * The currently active editor pane or `undefined` if none. The editor pane is
1151
1860
  * the workbench container for editors of any kind.
@@ -1314,86 +2023,551 @@ interface IEditorService {
1314
2023
  revertAll(options?: IRevertAllEditorsOptions): Promise<boolean>;
1315
2024
  }
1316
2025
 
1317
- declare class DebugCompoundRoot {
1318
- private stopped;
1319
- private stopEmitter;
1320
- onDidSessionStop: Event<void>;
1321
- sessionStopped(): void;
1322
- }
1323
-
1324
- /**
1325
- * Debug URI format
1326
- *
1327
- * a debug URI represents a Source object and the debug session where the Source comes from.
1328
- *
1329
- * debug:arbitrary_path?session=123e4567-e89b-12d3-a456-426655440000&ref=1016
1330
- * \___/ \____________/ \__________________________________________/ \______/
1331
- * | | | |
1332
- * scheme source.path session id source.reference
1333
- *
1334
- *
1335
- */
1336
- declare class Source {
1337
- readonly uri: URI;
1338
- available: boolean;
1339
- raw: DebugProtocol.Source;
1340
- constructor(raw_: DebugProtocol.Source | undefined, sessionId: string, uriIdentityService: IUriIdentityService, logService: ILogService);
1341
- get name(): string;
1342
- get origin(): string | undefined;
1343
- get presentationHint(): "normal" | "emphasize" | "deemphasize" | undefined;
1344
- get reference(): number | undefined;
1345
- get inMemory(): boolean;
1346
- openInEditor(editorService: IEditorService, selection: IRange, preserveFocus?: boolean, sideBySide?: boolean, pinned?: boolean): Promise<IEditorPane | undefined>;
1347
- static getEncodedDebugData(modelUri: URI): {
1348
- name: string;
1349
- path: string;
1350
- sessionId?: string;
1351
- sourceReference?: number;
1352
- };
1353
- }
1354
-
1355
- interface ITaskIdentifier {
1356
- type: string;
1357
- [name: string]: any;
2026
+ type IconDefaults = ThemeIcon | IconDefinition;
2027
+ interface IconDefinition {
2028
+ font?: IconFontContribution;
2029
+ fontCharacter: string;
1358
2030
  }
1359
-
1360
- interface IRawModelUpdate {
1361
- sessionId: string;
1362
- threads: DebugProtocol.Thread[];
1363
- stoppedDetails?: IRawStoppedDetails;
2031
+ interface IconContribution {
2032
+ readonly id: string;
2033
+ description: string | undefined;
2034
+ deprecationMessage?: string;
2035
+ readonly defaults: IconDefaults;
1364
2036
  }
1365
- interface IRawStoppedDetails {
1366
- reason?: string;
1367
- description?: string;
1368
- threadId?: number;
1369
- text?: string;
1370
- totalFrames?: number;
1371
- allThreadsStopped?: boolean;
1372
- framesErrorMessage?: string;
1373
- hitBreakpointIds?: number[];
2037
+ declare namespace IconContribution {
2038
+ function getDefinition(contribution: IconContribution, registry: IIconRegistry): IconDefinition | undefined;
1374
2039
  }
1375
- interface ITreeElement {
1376
- getId(): string;
2040
+ interface IconFontContribution {
2041
+ readonly id: string;
2042
+ readonly definition: IconFontDefinition;
1377
2043
  }
1378
- interface IReplElement extends ITreeElement {
1379
- toString(includeSource?: boolean): string;
1380
- readonly sourceData?: IReplElementSource;
2044
+ interface IconFontDefinition {
2045
+ readonly weight?: string;
2046
+ readonly style?: string;
2047
+ readonly src: IconFontSource[];
1381
2048
  }
1382
- interface IReplElementSource {
1383
- readonly source: Source;
1384
- readonly lineNumber: number;
1385
- readonly column: number;
2049
+ declare namespace IconFontDefinition {
2050
+ function toJSONObject(iconFont: IconFontDefinition): any;
2051
+ function fromJSONObject(json: any): IconFontDefinition | undefined;
1386
2052
  }
1387
- interface IExpressionContainer extends ITreeElement {
1388
- readonly hasChildren: boolean;
1389
- evaluateLazy(): Promise<void>;
1390
- getChildren(): Promise<IExpression[]>;
1391
- readonly reference?: number;
1392
- readonly memoryReference?: string;
1393
- readonly value: string;
1394
- readonly type?: string;
1395
- valueChanged?: boolean;
1396
- readonly presentationHint?: DebugProtocol.VariablePresentationHint | undefined;
2053
+ interface IconFontSource {
2054
+ readonly location: URI;
2055
+ readonly format: string;
2056
+ }
2057
+ interface IIconRegistry {
2058
+ readonly onDidChange: Event$1<void>;
2059
+ /**
2060
+ * Register a icon to the registry.
2061
+ * @param id The icon id
2062
+ * @param defaults The default values
2063
+ * @param description The description
2064
+ */
2065
+ registerIcon(id: IconIdentifier, defaults: IconDefaults, description?: string): ThemeIcon;
2066
+ /**
2067
+ * Deregister a icon from the registry.
2068
+ */
2069
+ deregisterIcon(id: IconIdentifier): void;
2070
+ /**
2071
+ * Get all icon contributions
2072
+ */
2073
+ getIcons(): IconContribution[];
2074
+ /**
2075
+ * Get the icon for the given id
2076
+ */
2077
+ getIcon(id: IconIdentifier): IconContribution | undefined;
2078
+ /**
2079
+ * JSON schema for an object to assign icon values to one of the icon contributions.
2080
+ */
2081
+ getIconSchema(): IJSONSchema;
2082
+ /**
2083
+ * JSON schema to for a reference to a icon contribution.
2084
+ */
2085
+ getIconReferenceSchema(): IJSONSchema;
2086
+ /**
2087
+ * Register a icon font to the registry.
2088
+ * @param id The icon font id
2089
+ * @param definition The icon font definition
2090
+ */
2091
+ registerIconFont(id: string, definition: IconFontDefinition): IconFontDefinition;
2092
+ /**
2093
+ * Deregister an icon font to the registry.
2094
+ */
2095
+ deregisterIconFont(id: string): void;
2096
+ /**
2097
+ * Get the icon font for the given id
2098
+ */
2099
+ getIconFont(id: string): IconFontDefinition | undefined;
2100
+ }
2101
+
2102
+ /**
2103
+ * Color scheme used by the OS and by color themes.
2104
+ */
2105
+ declare enum ColorScheme {
2106
+ DARK = "dark",
2107
+ LIGHT = "light",
2108
+ HIGH_CONTRAST_DARK = "hcDark",
2109
+ HIGH_CONTRAST_LIGHT = "hcLight"
2110
+ }
2111
+
2112
+ interface ITokenStyle {
2113
+ readonly foreground: number | undefined;
2114
+ readonly bold: boolean | undefined;
2115
+ readonly underline: boolean | undefined;
2116
+ readonly strikethrough: boolean | undefined;
2117
+ readonly italic: boolean | undefined;
2118
+ }
2119
+ interface IColorTheme {
2120
+ readonly type: ColorScheme;
2121
+ readonly label: string;
2122
+ /**
2123
+ * Resolves the color of the given color identifier. If the theme does not
2124
+ * specify the color, the default color is returned unless <code>useDefault</code> is set to false.
2125
+ * @param color the id of the color
2126
+ * @param useDefault specifies if the default color should be used. If not set, the default is used.
2127
+ */
2128
+ getColor(color: ColorIdentifier, useDefault?: boolean): Color | undefined;
2129
+ /**
2130
+ * Returns whether the theme defines a value for the color. If not, that means the
2131
+ * default color will be used.
2132
+ */
2133
+ defines(color: ColorIdentifier): boolean;
2134
+ /**
2135
+ * Returns the token style for a given classification. The result uses the <code>MetadataConsts</code> format
2136
+ */
2137
+ getTokenStyleMetadata(type: string, modifiers: string[], modelLanguage: string): ITokenStyle | undefined;
2138
+ /**
2139
+ * List of all colors used with tokens. <code>getTokenStyleMetadata</code> references the colors by index into this list.
2140
+ */
2141
+ readonly tokenColorMap: string[];
2142
+ /**
2143
+ * Defines whether semantic highlighting should be enabled for the theme.
2144
+ */
2145
+ readonly semanticHighlighting: boolean;
2146
+ }
2147
+ interface IFileIconTheme {
2148
+ readonly hasFileIcons: boolean;
2149
+ readonly hasFolderIcons: boolean;
2150
+ readonly hidesExplorerArrows: boolean;
2151
+ }
2152
+ interface IProductIconTheme {
2153
+ /**
2154
+ * Resolves the definition for the given icon as defined by the theme.
2155
+ *
2156
+ * @param iconContribution The icon
2157
+ */
2158
+ getIcon(iconContribution: IconContribution): IconDefinition | undefined;
2159
+ }
2160
+
2161
+ declare const IThemeService: ServiceIdentifier<IThemeService>;
2162
+ interface IThemeService {
2163
+ readonly _serviceBrand: undefined;
2164
+ getColorTheme(): IColorTheme;
2165
+ readonly onDidColorThemeChange: Event$1<IColorTheme>;
2166
+ getFileIconTheme(): IFileIconTheme;
2167
+ readonly onDidFileIconThemeChange: Event$1<IFileIconTheme>;
2168
+ getProductIconTheme(): IProductIconTheme;
2169
+ readonly onDidProductIconThemeChange: Event$1<IProductIconTheme>;
2170
+ }
2171
+ /**
2172
+ * Utility base class for all themable components.
2173
+ */
2174
+ declare class Themable extends Disposable {
2175
+ protected themeService: IThemeService;
2176
+ protected theme: IColorTheme;
2177
+ constructor(themeService: IThemeService);
2178
+ protected onThemeChange(theme: IColorTheme): void;
2179
+ updateStyles(): void;
2180
+ protected getColor(id: string, modify?: (color: Color, theme: IColorTheme) => Color): string | null;
2181
+ }
2182
+
2183
+ interface IBaseOpenWindowsOptions {
2184
+ /**
2185
+ * Whether to reuse the window or open a new one.
2186
+ */
2187
+ readonly forceReuseWindow?: boolean;
2188
+ /**
2189
+ * The remote authority to use when windows are opened with either
2190
+ * - no workspace (empty window)
2191
+ * - a workspace that is neither `file://` nor `vscode-remote://`
2192
+ * Use 'null' for a local window.
2193
+ * If not set, defaults to the remote authority of the current window.
2194
+ */
2195
+ readonly remoteAuthority?: string | null;
2196
+ }
2197
+ interface IOpenWindowOptions extends IBaseOpenWindowsOptions {
2198
+ readonly forceNewWindow?: boolean;
2199
+ readonly preferNewWindow?: boolean;
2200
+ readonly noRecentEntry?: boolean;
2201
+ readonly addMode?: boolean;
2202
+ readonly diffMode?: boolean;
2203
+ readonly mergeMode?: boolean;
2204
+ readonly gotoLineMode?: boolean;
2205
+ readonly waitMarkerFileURI?: URI;
2206
+ readonly forceProfile?: string;
2207
+ readonly forceTempProfile?: boolean;
2208
+ }
2209
+ interface IOpenEmptyWindowOptions extends IBaseOpenWindowsOptions {
2210
+ }
2211
+ type IWindowOpenable = IWorkspaceToOpen | IFolderToOpen | IFileToOpen;
2212
+ interface IBaseWindowOpenable {
2213
+ label?: string;
2214
+ }
2215
+ interface IWorkspaceToOpen extends IBaseWindowOpenable {
2216
+ readonly workspaceUri: URI;
2217
+ }
2218
+ interface IFolderToOpen extends IBaseWindowOpenable {
2219
+ readonly folderUri: URI;
2220
+ }
2221
+ interface IFileToOpen extends IBaseWindowOpenable {
2222
+ readonly fileUri: URI;
2223
+ }
2224
+ interface IPath$1<T = IEditorOptions> extends IPathData<T> {
2225
+ /**
2226
+ * The file path to open within the instance
2227
+ */
2228
+ fileUri?: URI;
2229
+ }
2230
+ interface IPathData<T = IEditorOptions> {
2231
+ /**
2232
+ * The file path to open within the instance
2233
+ */
2234
+ readonly fileUri?: UriComponents;
2235
+ /**
2236
+ * Optional editor options to apply in the file
2237
+ */
2238
+ readonly options?: T;
2239
+ /**
2240
+ * A hint that the file exists. if true, the
2241
+ * file exists, if false it does not. with
2242
+ * `undefined` the state is unknown.
2243
+ */
2244
+ readonly exists?: boolean;
2245
+ /**
2246
+ * A hint about the file type of this path.
2247
+ * with `undefined` the type is unknown.
2248
+ */
2249
+ readonly type?: FileType;
2250
+ /**
2251
+ * Specifies if the file should be only be opened
2252
+ * if it exists.
2253
+ */
2254
+ readonly openOnlyIfExists?: boolean;
2255
+ }
2256
+
2257
+ declare abstract class AbstractSettingsModel extends EditorModel {
2258
+ protected _currentResultGroups: Map<string, ISearchResultGroup>;
2259
+ updateResultGroup(id: string, resultGroup: ISearchResultGroup | undefined): IFilterResult | undefined;
2260
+ /**
2261
+ * Remove duplicates between result groups, preferring results in earlier groups
2262
+ */
2263
+ private removeDuplicateResults;
2264
+ private compareTwoNullableNumbers;
2265
+ filterSettings(filter: string, groupFilter: IGroupFilter, settingMatcher: ISettingMatcher): ISettingMatch[];
2266
+ getPreference(key: string): ISetting | undefined;
2267
+ protected collectMetadata(groups: ISearchResultGroup[]): IStringDictionary<IFilterMetadata>;
2268
+ protected get filterGroups(): ISettingsGroup[];
2269
+ abstract settingsGroups: ISettingsGroup[];
2270
+ abstract findValueMatches(filter: string, setting: ISetting): IRange[];
2271
+ protected abstract update(): IFilterResult | undefined;
2272
+ }
2273
+ declare class Settings2EditorModel extends AbstractSettingsModel implements ISettingsEditorModel {
2274
+ private _defaultSettings;
2275
+ private readonly _onDidChangeGroups;
2276
+ readonly onDidChangeGroups: Event$1<void>;
2277
+ private additionalGroups;
2278
+ private dirty;
2279
+ constructor(_defaultSettings: DefaultSettings, configurationService: IConfigurationService);
2280
+ /** Doesn't include the "Commonly Used" group */
2281
+ protected get filterGroups(): ISettingsGroup[];
2282
+ get settingsGroups(): ISettingsGroup[];
2283
+ /** For programmatically added groups outside of registered configurations */
2284
+ setAdditionalGroups(groups: ISettingsGroup[]): void;
2285
+ findValueMatches(filter: string, setting: ISetting): IRange[];
2286
+ protected update(): IFilterResult;
2287
+ }
2288
+ declare class DefaultSettings extends Disposable {
2289
+ private _mostCommonlyUsedSettingsKeys;
2290
+ readonly target: ConfigurationTarget;
2291
+ private _allSettingsGroups;
2292
+ private _content;
2293
+ private _contentWithoutMostCommonlyUsed;
2294
+ private _settingsByName;
2295
+ readonly _onDidChange: Emitter<void>;
2296
+ readonly onDidChange: Event$1<void>;
2297
+ constructor(_mostCommonlyUsedSettingsKeys: string[], target: ConfigurationTarget);
2298
+ getContent(forceUpdate?: boolean): string;
2299
+ getContentWithoutMostCommonlyUsed(forceUpdate?: boolean): string;
2300
+ getSettingsGroups(forceUpdate?: boolean): ISettingsGroup[];
2301
+ private initialize;
2302
+ private parse;
2303
+ getRegisteredGroups(): ISettingsGroup[];
2304
+ private sortGroups;
2305
+ private initAllSettingsMap;
2306
+ private getMostCommonlyUsedSettings;
2307
+ private parseConfig;
2308
+ private removeEmptySettingsGroups;
2309
+ private parseSettings;
2310
+ private parseOverrideSettings;
2311
+ private matchesScope;
2312
+ private compareConfigurationNodes;
2313
+ private toContent;
2314
+ }
2315
+
2316
+ interface ISettingsGroup {
2317
+ id: string;
2318
+ range: IRange;
2319
+ title: string;
2320
+ titleRange: IRange;
2321
+ sections: ISettingsSection[];
2322
+ order?: number;
2323
+ extensionInfo?: IExtensionInfo;
2324
+ }
2325
+ interface ISettingsSection {
2326
+ titleRange?: IRange;
2327
+ title?: string;
2328
+ settings: ISetting[];
2329
+ }
2330
+ interface ISetting {
2331
+ range: IRange;
2332
+ key: string;
2333
+ keyRange: IRange;
2334
+ value: any;
2335
+ valueRange: IRange;
2336
+ description: string[];
2337
+ descriptionIsMarkdown?: boolean;
2338
+ descriptionRanges: IRange[];
2339
+ overrides?: ISetting[];
2340
+ overrideOf?: ISetting;
2341
+ deprecationMessage?: string;
2342
+ deprecationMessageIsMarkdown?: boolean;
2343
+ scope?: ConfigurationScope;
2344
+ type?: string | string[];
2345
+ order?: number;
2346
+ arrayItemType?: string;
2347
+ objectProperties?: IJSONSchemaMap;
2348
+ objectPatternProperties?: IJSONSchemaMap;
2349
+ objectAdditionalProperties?: boolean | IJSONSchema;
2350
+ enum?: string[];
2351
+ enumDescriptions?: string[];
2352
+ enumDescriptionsAreMarkdown?: boolean;
2353
+ uniqueItems?: boolean;
2354
+ tags?: string[];
2355
+ disallowSyncIgnore?: boolean;
2356
+ restricted?: boolean;
2357
+ extensionInfo?: IExtensionInfo;
2358
+ validator?: (value: any) => string | null;
2359
+ enumItemLabels?: string[];
2360
+ allKeysAreBoolean?: boolean;
2361
+ editPresentation?: EditPresentationTypes;
2362
+ nonLanguageSpecificDefaultValueSource?: string | IExtensionInfo;
2363
+ isLanguageTagSetting?: boolean;
2364
+ categoryOrder?: number;
2365
+ categoryLabel?: string;
2366
+ displayExtensionId?: string;
2367
+ stableExtensionId?: string;
2368
+ prereleaseExtensionId?: string;
2369
+ title?: string;
2370
+ extensionGroupTitle?: string;
2371
+ }
2372
+ interface ISearchResult {
2373
+ filterMatches: ISettingMatch[];
2374
+ exactMatch?: boolean;
2375
+ metadata?: IFilterMetadata;
2376
+ }
2377
+ interface ISearchResultGroup {
2378
+ id: string;
2379
+ label: string;
2380
+ result: ISearchResult;
2381
+ order: number;
2382
+ }
2383
+ interface IFilterResult {
2384
+ query?: string;
2385
+ filteredGroups: ISettingsGroup[];
2386
+ allGroups: ISettingsGroup[];
2387
+ matches: IRange[];
2388
+ metadata?: IStringDictionary<IFilterMetadata>;
2389
+ exactMatch?: boolean;
2390
+ }
2391
+ /**
2392
+ * The ways a setting could match a query,
2393
+ * sorted in increasing order of relevance.
2394
+ * For now, ignore description and value matches.
2395
+ */
2396
+ declare enum SettingMatchType {
2397
+ None = 0,
2398
+ WholeWordMatch = 1,
2399
+ KeyMatch = 2
2400
+ }
2401
+ interface ISettingMatch {
2402
+ setting: ISetting;
2403
+ matches: IRange[] | null;
2404
+ matchType: SettingMatchType;
2405
+ score: number;
2406
+ }
2407
+ interface IScoredResults {
2408
+ [key: string]: IRemoteSetting;
2409
+ }
2410
+ interface IRemoteSetting {
2411
+ score: number;
2412
+ key: string;
2413
+ id: string;
2414
+ defaultValue: string;
2415
+ description: string;
2416
+ packageId: string;
2417
+ extensionName?: string;
2418
+ extensionPublisher?: string;
2419
+ }
2420
+ interface IFilterMetadata {
2421
+ requestUrl: string;
2422
+ requestBody: string;
2423
+ timestamp: number;
2424
+ duration: number;
2425
+ scoredResults: IScoredResults;
2426
+ /** The number of requests made, since requests are split by number of filters */
2427
+ requestCount?: number;
2428
+ /** The name of the server that actually served the request */
2429
+ context: string;
2430
+ }
2431
+ interface IPreferencesEditorModel<T> {
2432
+ uri?: URI;
2433
+ getPreference(key: string): T | undefined;
2434
+ dispose(): void;
2435
+ }
2436
+ type IGroupFilter = (group: ISettingsGroup) => boolean | null;
2437
+ type ISettingMatcher = (setting: ISetting, group: ISettingsGroup) => {
2438
+ matches: IRange[];
2439
+ matchType: SettingMatchType;
2440
+ score: number;
2441
+ } | null;
2442
+ interface ISettingsEditorModel extends IPreferencesEditorModel<ISetting> {
2443
+ readonly onDidChangeGroups: Event$1<void>;
2444
+ settingsGroups: ISettingsGroup[];
2445
+ filterSettings(filter: string, groupFilter: IGroupFilter, settingMatcher: ISettingMatcher): ISettingMatch[];
2446
+ findValueMatches(filter: string, setting: ISetting): IRange[];
2447
+ updateResultGroup(id: string, resultGroup: ISearchResultGroup | undefined): IFilterResult | undefined;
2448
+ }
2449
+ interface ISettingsEditorOptions extends IEditorOptions {
2450
+ target?: ConfigurationTarget;
2451
+ folderUri?: URI;
2452
+ query?: string;
2453
+ revealSetting?: {
2454
+ key: string;
2455
+ edit?: boolean;
2456
+ };
2457
+ focusSearch?: boolean;
2458
+ }
2459
+ interface IOpenSettingsOptions extends ISettingsEditorOptions {
2460
+ jsonEditor?: boolean;
2461
+ openToSide?: boolean;
2462
+ }
2463
+ interface IKeybindingsEditorOptions extends IEditorOptions {
2464
+ query?: string;
2465
+ }
2466
+ declare const IPreferencesService: ServiceIdentifier<IPreferencesService>;
2467
+ interface IPreferencesService {
2468
+ readonly _serviceBrand: undefined;
2469
+ userSettingsResource: URI;
2470
+ workspaceSettingsResource: URI | null;
2471
+ getFolderSettingsResource(resource: URI): URI | null;
2472
+ createPreferencesEditorModel(uri: URI): Promise<IPreferencesEditorModel<ISetting> | null>;
2473
+ resolveModel(uri: URI): ITextModel | null;
2474
+ createSettings2EditorModel(): Settings2EditorModel;
2475
+ openRawDefaultSettings(): Promise<IEditorPane | undefined>;
2476
+ openSettings(options?: IOpenSettingsOptions): Promise<IEditorPane | undefined>;
2477
+ openApplicationSettings(options?: IOpenSettingsOptions): Promise<IEditorPane | undefined>;
2478
+ openUserSettings(options?: IOpenSettingsOptions): Promise<IEditorPane | undefined>;
2479
+ openRemoteSettings(options?: IOpenSettingsOptions): Promise<IEditorPane | undefined>;
2480
+ openWorkspaceSettings(options?: IOpenSettingsOptions): Promise<IEditorPane | undefined>;
2481
+ openFolderSettings(options: IOpenSettingsOptions & {
2482
+ folderUri: IOpenSettingsOptions['folderUri'];
2483
+ }): Promise<IEditorPane | undefined>;
2484
+ openGlobalKeybindingSettings(textual: boolean, options?: IKeybindingsEditorOptions): Promise<void>;
2485
+ openDefaultKeybindingsFile(): Promise<IEditorPane | undefined>;
2486
+ openLanguageSpecificSettings(languageId: string, options?: IOpenSettingsOptions): Promise<IEditorPane | undefined>;
2487
+ getEditableSettingsURI(configurationTarget: ConfigurationTarget, resource?: URI): Promise<URI | null>;
2488
+ createSplitJsonEditorInput(configurationTarget: ConfigurationTarget, resource: URI): EditorInput;
2489
+ }
2490
+
2491
+ declare class DebugCompoundRoot {
2492
+ private stopped;
2493
+ private stopEmitter;
2494
+ onDidSessionStop: Event$1<void>;
2495
+ sessionStopped(): void;
2496
+ }
2497
+
2498
+ /**
2499
+ * Debug URI format
2500
+ *
2501
+ * a debug URI represents a Source object and the debug session where the Source comes from.
2502
+ *
2503
+ * debug:arbitrary_path?session=123e4567-e89b-12d3-a456-426655440000&ref=1016
2504
+ * \___/ \____________/ \__________________________________________/ \______/
2505
+ * | | | |
2506
+ * scheme source.path session id source.reference
2507
+ *
2508
+ *
2509
+ */
2510
+ declare class Source {
2511
+ readonly uri: URI;
2512
+ available: boolean;
2513
+ raw: DebugProtocol.Source;
2514
+ constructor(raw_: DebugProtocol.Source | undefined, sessionId: string, uriIdentityService: IUriIdentityService, logService: ILogService);
2515
+ get name(): string;
2516
+ get origin(): string | undefined;
2517
+ get presentationHint(): "normal" | "emphasize" | "deemphasize" | undefined;
2518
+ get reference(): number | undefined;
2519
+ get inMemory(): boolean;
2520
+ openInEditor(editorService: IEditorService, selection: IRange, preserveFocus?: boolean, sideBySide?: boolean, pinned?: boolean): Promise<IEditorPane | undefined>;
2521
+ static getEncodedDebugData(modelUri: URI): {
2522
+ name: string;
2523
+ path: string;
2524
+ sessionId?: string;
2525
+ sourceReference?: number;
2526
+ };
2527
+ }
2528
+
2529
+ interface ITaskIdentifier {
2530
+ type: string;
2531
+ [name: string]: any;
2532
+ }
2533
+
2534
+ interface IRawModelUpdate {
2535
+ sessionId: string;
2536
+ threads: DebugProtocol.Thread[];
2537
+ stoppedDetails?: IRawStoppedDetails;
2538
+ }
2539
+ interface IRawStoppedDetails {
2540
+ reason?: string;
2541
+ description?: string;
2542
+ threadId?: number;
2543
+ text?: string;
2544
+ totalFrames?: number;
2545
+ allThreadsStopped?: boolean;
2546
+ framesErrorMessage?: string;
2547
+ hitBreakpointIds?: number[];
2548
+ }
2549
+ interface ITreeElement {
2550
+ getId(): string;
2551
+ }
2552
+ interface IReplElement extends ITreeElement {
2553
+ toString(includeSource?: boolean): string;
2554
+ readonly sourceData?: IReplElementSource;
2555
+ }
2556
+ interface IReplElementSource {
2557
+ readonly source: Source;
2558
+ readonly lineNumber: number;
2559
+ readonly column: number;
2560
+ }
2561
+ interface IExpressionContainer extends ITreeElement {
2562
+ readonly hasChildren: boolean;
2563
+ evaluateLazy(): Promise<void>;
2564
+ getChildren(): Promise<IExpression[]>;
2565
+ readonly reference?: number;
2566
+ readonly memoryReference?: string;
2567
+ readonly value: string;
2568
+ readonly type?: string;
2569
+ valueChanged?: boolean;
2570
+ readonly presentationHint?: DebugProtocol.VariablePresentationHint | undefined;
1397
2571
  }
1398
2572
  interface IExpression extends IExpressionContainer {
1399
2573
  name: string;
@@ -1491,7 +2665,7 @@ interface IMemoryRegion extends IDisposable {
1491
2665
  * Event that fires when memory changes. Can be a result of memory events or
1492
2666
  * `write` requests.
1493
2667
  */
1494
- readonly onDidInvalidate: Event<IMemoryInvalidationEvent>;
2668
+ readonly onDidInvalidate: Event$1<IMemoryInvalidationEvent>;
1495
2669
  /**
1496
2670
  * Whether writes are supported on this memory region.
1497
2671
  */
@@ -1546,7 +2720,7 @@ interface IDebugSession extends ITreeElement {
1546
2720
  setSubId(subId: string | undefined): void;
1547
2721
  getMemory(memoryReference: string): IMemoryRegion;
1548
2722
  setName(name: string): void;
1549
- readonly onDidChangeName: Event<string>;
2723
+ readonly onDidChangeName: Event$1<string>;
1550
2724
  getLabel(): string;
1551
2725
  getSourceForUri(modelUri: URI): Source | undefined;
1552
2726
  getSource(raw?: DebugProtocol.Source): Source;
@@ -1564,16 +2738,16 @@ interface IDebugSession extends ITreeElement {
1564
2738
  removeReplExpressions(): void;
1565
2739
  addReplExpression(stackFrame: IStackFrame | undefined, name: string): Promise<void>;
1566
2740
  appendToRepl(data: INewReplElementData): void;
1567
- readonly onDidEndAdapter: Event<AdapterEndEvent | undefined>;
1568
- readonly onDidChangeState: Event<void>;
1569
- readonly onDidChangeReplElements: Event<void>;
2741
+ readonly onDidEndAdapter: Event$1<AdapterEndEvent | undefined>;
2742
+ readonly onDidChangeState: Event$1<void>;
2743
+ readonly onDidChangeReplElements: Event$1<void>;
1570
2744
  readonly capabilities: DebugProtocol.Capabilities;
1571
- readonly onDidLoadedSource: Event<LoadedSourceEvent>;
1572
- readonly onDidCustomEvent: Event<DebugProtocol.Event>;
1573
- readonly onDidProgressStart: Event<DebugProtocol.ProgressStartEvent>;
1574
- readonly onDidProgressUpdate: Event<DebugProtocol.ProgressUpdateEvent>;
1575
- readonly onDidProgressEnd: Event<DebugProtocol.ProgressEndEvent>;
1576
- readonly onDidInvalidateMemory: Event<DebugProtocol.MemoryEvent>;
2745
+ readonly onDidLoadedSource: Event$1<LoadedSourceEvent>;
2746
+ readonly onDidCustomEvent: Event$1<DebugProtocol.Event>;
2747
+ readonly onDidProgressStart: Event$1<DebugProtocol.ProgressStartEvent>;
2748
+ readonly onDidProgressUpdate: Event$1<DebugProtocol.ProgressUpdateEvent>;
2749
+ readonly onDidProgressEnd: Event$1<DebugProtocol.ProgressEndEvent>;
2750
+ readonly onDidInvalidateMemory: Event$1<DebugProtocol.MemoryEvent>;
1577
2751
  initialize(dbgr: IDebugger): Promise<void>;
1578
2752
  launchOrAttach(config: IConfig): Promise<void>;
1579
2753
  restart(): Promise<void>;
@@ -1607,7 +2781,7 @@ interface IDebugSession extends ITreeElement {
1607
2781
  reverseContinue(threadId: number): Promise<void>;
1608
2782
  pause(threadId: number): Promise<void>;
1609
2783
  terminateThreads(threadIds: number[]): Promise<void>;
1610
- completions(frameId: number | undefined, threadId: number, text: string, position: Position, overwriteBefore: number, token: CancellationToken): Promise<DebugProtocol.CompletionsResponse | undefined>;
2784
+ completions(frameId: number | undefined, threadId: number, text: string, position: Position$1, overwriteBefore: number, token: CancellationToken): Promise<DebugProtocol.CompletionsResponse | undefined>;
1611
2785
  setVariable(variablesReference: number | undefined, name: string, value: string): Promise<DebugProtocol.SetVariableResponse | undefined>;
1612
2786
  setExpression(frameId: number, expression: string, value: string): Promise<DebugProtocol.SetExpressionResponse | undefined>;
1613
2787
  loadSource(resource: URI): Promise<DebugProtocol.SourceResponse | undefined>;
@@ -1775,23 +2949,23 @@ interface IViewModel extends ITreeElement {
1775
2949
  setSelectedExpression(expression: IExpression | undefined, settingWatch: boolean): void;
1776
2950
  updateViews(): void;
1777
2951
  isMultiSessionView(): boolean;
1778
- onDidFocusSession: Event<IDebugSession | undefined>;
1779
- onDidFocusThread: Event<{
2952
+ onDidFocusSession: Event$1<IDebugSession | undefined>;
2953
+ onDidFocusThread: Event$1<{
1780
2954
  thread: IThread | undefined;
1781
2955
  explicit: boolean;
1782
2956
  session: IDebugSession | undefined;
1783
2957
  }>;
1784
- onDidFocusStackFrame: Event<{
2958
+ onDidFocusStackFrame: Event$1<{
1785
2959
  stackFrame: IStackFrame | undefined;
1786
2960
  explicit: boolean;
1787
2961
  session: IDebugSession | undefined;
1788
2962
  }>;
1789
- onDidSelectExpression: Event<{
2963
+ onDidSelectExpression: Event$1<{
1790
2964
  expression: IExpression;
1791
2965
  settingWatch: boolean;
1792
2966
  } | undefined>;
1793
- onDidEvaluateLazyExpression: Event<IExpressionContainer>;
1794
- onWillUpdateViews: Event<void>;
2967
+ onDidEvaluateLazyExpression: Event$1<IExpressionContainer>;
2968
+ onWillUpdateViews: Event$1<void>;
1795
2969
  evaluateLazyExpression(expression: IExpressionContainer): void;
1796
2970
  }
1797
2971
  interface IEvaluate {
@@ -1821,9 +2995,9 @@ interface IDebugModel extends ITreeElement {
1821
2995
  getExceptionBreakpointsForSession(sessionId?: string): ReadonlyArray<IExceptionBreakpoint>;
1822
2996
  getInstructionBreakpoints(): ReadonlyArray<IInstructionBreakpoint>;
1823
2997
  getWatchExpressions(): ReadonlyArray<IExpression & IEvaluate>;
1824
- onDidChangeBreakpoints: Event<IBreakpointsChangeEvent | undefined>;
1825
- onDidChangeCallStack: Event<void>;
1826
- onDidChangeWatchExpressions: Event<IExpression | undefined>;
2998
+ onDidChangeBreakpoints: Event$1<IBreakpointsChangeEvent | undefined>;
2999
+ onDidChangeCallStack: Event$1<void>;
3000
+ onDidChangeWatchExpressions: Event$1<IExpression | undefined>;
1827
3001
  fetchCallstack(thread: IThread, levels?: number): Promise<void>;
1828
3002
  }
1829
3003
  /**
@@ -1875,8 +3049,8 @@ interface ICompound {
1875
3049
  presentation?: IConfigPresentation;
1876
3050
  }
1877
3051
  interface IDebugAdapter extends IDisposable {
1878
- readonly onError: Event<Error>;
1879
- readonly onExit: Event<number | null>;
3052
+ readonly onError: Event$1<Error>;
3053
+ readonly onExit: Event$1<number | null>;
1880
3054
  onRequest(callback: (request: DebugProtocol.Request) => void): void;
1881
3055
  onEvent(callback: (event: DebugProtocol.Event) => void): void;
1882
3056
  startSession(): Promise<void>;
@@ -1911,7 +3085,7 @@ interface IDebugAdapterNamedPipeServer {
1911
3085
  readonly path: string;
1912
3086
  }
1913
3087
  interface IDebugAdapterInlineImpl extends IDisposable {
1914
- readonly onDidSendMessage: Event<DebugProtocol.Message>;
3088
+ readonly onDidSendMessage: Event$1<DebugProtocol.Message>;
1915
3089
  handleMessage(message: DebugProtocol.Message): void;
1916
3090
  }
1917
3091
  interface IDebugAdapterImpl {
@@ -1971,7 +3145,7 @@ interface IConfigurationManager {
1971
3145
  /**
1972
3146
  * Allows to register on change of selected debug configuration.
1973
3147
  */
1974
- onDidSelectConfiguration: Event<void>;
3148
+ onDidSelectConfiguration: Event$1<void>;
1975
3149
  hasDebugConfigurationProvider(debugType: string): boolean;
1976
3150
  getDynamicProviders(): Promise<{
1977
3151
  label: string;
@@ -1989,7 +3163,7 @@ declare enum DebuggerString {
1989
3163
  UnverifiedBreakpoints = "unverifiedBreakpoints"
1990
3164
  }
1991
3165
  interface IAdapterManager {
1992
- onDidRegisterDebugger: Event<void>;
3166
+ onDidRegisterDebugger: Event$1<void>;
1993
3167
  hasEnabledDebuggers(): boolean;
1994
3168
  getDebugAdapterDescriptor(session: IDebugSession): Promise<IAdapterDescriptor | undefined>;
1995
3169
  getDebuggerLabel(type: string): string | undefined;
@@ -2004,7 +3178,7 @@ interface IAdapterManager {
2004
3178
  runInTerminal(debugType: string, args: DebugProtocol.RunInTerminalRequestArguments, sessionId: string): Promise<number | undefined>;
2005
3179
  getEnabledDebugger(type: string): (IDebugger & IDebuggerMetadata) | undefined;
2006
3180
  guessDebugger(gettingConfigurations: boolean): Promise<(IDebugger & IDebuggerMetadata) | undefined>;
2007
- get onDidDebuggersExtPointRead(): Event<void>;
3181
+ get onDidDebuggersExtPointRead(): Event$1<void>;
2008
3182
  }
2009
3183
  interface ILaunch {
2010
3184
  /**
@@ -2061,19 +3235,19 @@ interface IDebugService {
2061
3235
  /**
2062
3236
  * Allows to register on debug state changes.
2063
3237
  */
2064
- onDidChangeState: Event<State>;
3238
+ onDidChangeState: Event$1<State>;
2065
3239
  /**
2066
3240
  * Allows to register on new session events.
2067
3241
  */
2068
- onDidNewSession: Event<IDebugSession>;
3242
+ onDidNewSession: Event$1<IDebugSession>;
2069
3243
  /**
2070
3244
  * Allows to register on sessions about to be created (not yet fully initialised)
2071
3245
  */
2072
- onWillNewSession: Event<IDebugSession>;
3246
+ onWillNewSession: Event$1<IDebugSession>;
2073
3247
  /**
2074
3248
  * Allows to register on end session events.
2075
3249
  */
2076
- onDidEndSession: Event<IDebugSession>;
3250
+ onDidEndSession: Event$1<IDebugSession>;
2077
3251
  /**
2078
3252
  * Gets the configuration manager.
2079
3253
  */
@@ -2228,11 +3402,36 @@ interface ILanguageStatus {
2228
3402
  declare const ILanguageStatusService: ServiceIdentifier<ILanguageStatusService>;
2229
3403
  interface ILanguageStatusService {
2230
3404
  _serviceBrand: undefined;
2231
- onDidChange: Event<void>;
3405
+ onDidChange: Event$1<void>;
2232
3406
  addStatus(status: ILanguageStatus): IDisposable;
2233
3407
  getLanguageStatus(model: ITextModel): ILanguageStatus[];
2234
3408
  }
2235
3409
 
3410
+ declare const IWorkbenchEnvironmentService: ServiceIdentifier<IWorkbenchEnvironmentService>;
3411
+ /**
3412
+ * A workbench specific environment service that is only present in workbench
3413
+ * layer.
3414
+ */
3415
+ interface IWorkbenchEnvironmentService extends IEnvironmentService {
3416
+ readonly logFile: URI;
3417
+ readonly windowLogsPath: URI;
3418
+ readonly extHostLogsPath: URI;
3419
+ readonly extHostTelemetryLogFile: URI;
3420
+ readonly extensionEnabledProposedApi?: string[];
3421
+ readonly remoteAuthority?: string;
3422
+ readonly skipReleaseNotes: boolean;
3423
+ readonly skipWelcome: boolean;
3424
+ readonly disableWorkspaceTrust: boolean;
3425
+ readonly webviewExternalEndpoint: string;
3426
+ readonly debugRenderer: boolean;
3427
+ readonly logExtensionHostCommunication?: boolean;
3428
+ readonly enableSmokeTestDriver?: boolean;
3429
+ readonly profDurationMarkers?: string[];
3430
+ readonly filesToOpenOrCreate?: IPath$1[] | undefined;
3431
+ readonly filesToDiff?: IPath$1[] | undefined;
3432
+ readonly filesToMerge?: IPath$1[] | undefined;
3433
+ }
3434
+
2236
3435
  interface ParsedPath {
2237
3436
  root: string;
2238
3437
  dir: string;
@@ -2317,6 +3516,100 @@ interface IPathService {
2317
3516
  readonly resolvedUserHome: URI | undefined;
2318
3517
  }
2319
3518
 
3519
+ type OpenInternalOptions = {
3520
+ /**
3521
+ * Signals that the intent is to open an editor to the side
3522
+ * of the currently active editor.
3523
+ */
3524
+ readonly openToSide?: boolean;
3525
+ /**
3526
+ * Extra editor options to apply in case an editor is used to open.
3527
+ */
3528
+ readonly editorOptions?: IEditorOptions;
3529
+ /**
3530
+ * Signals that the editor to open was triggered through a user
3531
+ * action, such as keyboard or mouse usage.
3532
+ */
3533
+ readonly fromUserGesture?: boolean;
3534
+ /**
3535
+ * Allow command links to be handled.
3536
+ *
3537
+ * If this is an array, then only the commands included in the array can be run.
3538
+ */
3539
+ readonly allowCommands?: boolean | readonly string[];
3540
+ };
3541
+ type OpenExternalOptions = {
3542
+ readonly openExternal?: boolean;
3543
+ readonly allowTunneling?: boolean;
3544
+ readonly allowContributedOpeners?: boolean | string;
3545
+ readonly fromWorkspace?: boolean;
3546
+ };
3547
+ type OpenOptions = OpenInternalOptions & OpenExternalOptions;
3548
+ type ResolveExternalUriOptions = {
3549
+ readonly allowTunneling?: boolean;
3550
+ };
3551
+ interface IResolvedExternalUri extends IDisposable {
3552
+ resolved: URI;
3553
+ }
3554
+ interface IOpener {
3555
+ open(resource: URI | string, options?: OpenInternalOptions | OpenExternalOptions): Promise<boolean>;
3556
+ }
3557
+ interface IExternalOpener {
3558
+ openExternal(href: string, ctx: {
3559
+ sourceUri: URI;
3560
+ preferredOpenerId?: string;
3561
+ }, token: CancellationToken): Promise<boolean>;
3562
+ dispose?(): void;
3563
+ }
3564
+ interface IValidator {
3565
+ shouldOpen(resource: URI | string, openOptions?: OpenOptions): Promise<boolean>;
3566
+ }
3567
+ interface IExternalUriResolver {
3568
+ resolveExternalUri(resource: URI, options?: OpenOptions): Promise<{
3569
+ resolved: URI;
3570
+ dispose(): void;
3571
+ } | undefined>;
3572
+ }
3573
+
3574
+ declare const IOpenerService: ServiceIdentifier<IOpenerService>;
3575
+ interface IOpenerService {
3576
+ readonly _serviceBrand: undefined;
3577
+ /**
3578
+ * Register a participant that can handle the open() call.
3579
+ */
3580
+ registerOpener(opener: IOpener): IDisposable;
3581
+ /**
3582
+ * Register a participant that can validate if the URI resource be opened.
3583
+ * Validators are run before openers.
3584
+ */
3585
+ registerValidator(validator: IValidator): IDisposable;
3586
+ /**
3587
+ * Register a participant that can resolve an external URI resource to be opened.
3588
+ */
3589
+ registerExternalUriResolver(resolver: IExternalUriResolver): IDisposable;
3590
+ /**
3591
+ * Sets the handler for opening externally. If not provided,
3592
+ * a default handler will be used.
3593
+ */
3594
+ setDefaultExternalOpener(opener: IExternalOpener): void;
3595
+ /**
3596
+ * Registers a new opener external resources openers.
3597
+ */
3598
+ registerExternalOpener(opener: IExternalOpener): IDisposable;
3599
+ /**
3600
+ * Opens a resource, like a webaddress, a document uri, or executes command.
3601
+ *
3602
+ * @param resource A resource
3603
+ * @return A promise that resolves when the opening is done.
3604
+ */
3605
+ open(resource: URI | string, options?: OpenInternalOptions | OpenExternalOptions): Promise<boolean>;
3606
+ /**
3607
+ * Resolve a resource to its external form.
3608
+ * @throws whenever resolvers couldn't resolve this resource externally.
3609
+ */
3610
+ resolveExternalUri(resource: URI, options?: ResolveExternalUriOptions): Promise<IResolvedExternalUri>;
3611
+ }
3612
+
2320
3613
  declare const IHostService: ServiceIdentifier<IHostService>;
2321
3614
  /**
2322
3615
  * A set of methods supported in both web and native environments.
@@ -2329,7 +3622,7 @@ interface IHostService {
2329
3622
  /**
2330
3623
  * Emitted when the window focus changes.
2331
3624
  */
2332
- readonly onDidChangeFocus: Event<boolean>;
3625
+ readonly onDidChangeFocus: Event$1<boolean>;
2333
3626
  /**
2334
3627
  * Find out if the window has focus or not.
2335
3628
  */
@@ -2417,6 +3710,45 @@ interface IUnicodeHighlightsResult {
2417
3710
  ambiguousCharacterCount: number;
2418
3711
  }
2419
3712
 
3713
+ interface IKeyboardEvent {
3714
+ readonly _standardKeyboardEventBrand: true;
3715
+ readonly browserEvent: KeyboardEvent;
3716
+ readonly target: HTMLElement;
3717
+ readonly ctrlKey: boolean;
3718
+ readonly shiftKey: boolean;
3719
+ readonly altKey: boolean;
3720
+ readonly metaKey: boolean;
3721
+ readonly altGraphKey: boolean;
3722
+ readonly keyCode: KeyCode;
3723
+ readonly code: string;
3724
+ /**
3725
+ * @internal
3726
+ */
3727
+ toKeyCodeChord(): KeyCodeChord;
3728
+ equals(keybinding: number): boolean;
3729
+ preventDefault(): void;
3730
+ stopPropagation(): void;
3731
+ }
3732
+
3733
+ interface IMouseEvent {
3734
+ readonly browserEvent: MouseEvent;
3735
+ readonly leftButton: boolean;
3736
+ readonly middleButton: boolean;
3737
+ readonly rightButton: boolean;
3738
+ readonly buttons: number;
3739
+ readonly target: HTMLElement;
3740
+ readonly detail: number;
3741
+ readonly posx: number;
3742
+ readonly posy: number;
3743
+ readonly ctrlKey: boolean;
3744
+ readonly shiftKey: boolean;
3745
+ readonly altKey: boolean;
3746
+ readonly metaKey: boolean;
3747
+ readonly timestamp: number;
3748
+ preventDefault(): void;
3749
+ stopPropagation(): void;
3750
+ }
3751
+
2420
3752
  declare class ResourceEdit {
2421
3753
  readonly metadata?: WorkspaceEditMetadata | undefined;
2422
3754
  protected constructor(metadata?: WorkspaceEditMetadata | undefined);
@@ -2482,47 +3814,1307 @@ interface IClipboardService {
2482
3814
  hasResources(): Promise<boolean>;
2483
3815
  }
2484
3816
 
2485
- declare const IPaneCompositePartService: ServiceIdentifier<IPaneCompositePartService>;
2486
- interface IPaneCompositePartService {
2487
- readonly _serviceBrand: undefined;
2488
- readonly onDidPaneCompositeOpen: Event<{
2489
- composite: IPaneComposite;
2490
- viewContainerLocation: ViewContainerLocation;
2491
- }>;
2492
- readonly onDidPaneCompositeClose: Event<{
2493
- composite: IPaneComposite;
2494
- viewContainerLocation: ViewContainerLocation;
2495
- }>;
3817
+ interface IDimension {
3818
+ readonly width: number;
3819
+ readonly height: number;
3820
+ }
3821
+ declare class Dimension implements IDimension {
3822
+ readonly width: number;
3823
+ readonly height: number;
3824
+ static readonly None: Dimension;
3825
+ constructor(width: number, height: number);
3826
+ with(width?: number, height?: number): Dimension;
3827
+ static is(obj: unknown): obj is IDimension;
3828
+ static lift(obj: IDimension): Dimension;
3829
+ static equals(a: Dimension | undefined, b: Dimension | undefined): boolean;
3830
+ }
3831
+ interface IDomPosition {
3832
+ readonly left: number;
3833
+ readonly top: number;
3834
+ }
3835
+
3836
+ interface ILayoutOffsetInfo {
2496
3837
  /**
2497
- * Opens a viewlet with the given identifier and pass keyboard focus to it if specified.
3838
+ * Generic top offset
2498
3839
  */
2499
- openPaneComposite(id: string | undefined, viewContainerLocation: ViewContainerLocation, focus?: boolean): Promise<IPaneComposite | undefined>;
3840
+ readonly top: number;
2500
3841
  /**
2501
- * Returns the current active viewlet if any.
3842
+ * Quick pick specific top offset.
2502
3843
  */
2503
- getActivePaneComposite(viewContainerLocation: ViewContainerLocation): IPaneComposite | undefined;
3844
+ readonly quickPickTop: number;
3845
+ }
3846
+
3847
+ declare const ILayoutService: ServiceIdentifier<ILayoutService>;
3848
+ interface ILayoutService {
3849
+ readonly _serviceBrand: undefined;
2504
3850
  /**
2505
- * Returns the viewlet by id.
3851
+ * The dimensions of the container.
2506
3852
  */
2507
- getPaneComposite(id: string, viewContainerLocation: ViewContainerLocation): PaneCompositeDescriptor | undefined;
3853
+ readonly dimension: IDimension;
2508
3854
  /**
2509
- * Returns all enabled viewlets
3855
+ * Does the application have a single container?
2510
3856
  */
2511
- getPaneComposites(viewContainerLocation: ViewContainerLocation): PaneCompositeDescriptor[];
3857
+ readonly hasContainer: boolean;
2512
3858
  /**
2513
- * Returns id of pinned view containers following the visual order.
3859
+ * Container of the application.
3860
+ *
3861
+ * **NOTE**: In the standalone editor case, multiple editors can be created on a page.
3862
+ * Therefore, in the standalone editor case, there are multiple containers, not just
3863
+ * a single one. If you ship code that needs a "container" for the standalone editor,
3864
+ * please use `ICodeEditorService` to get the current focused code editor and use its
3865
+ * container if necessary. You can also instantiate `EditorScopedLayoutService`
3866
+ * which implements `ILayoutService` but is not a part of the service collection because
3867
+ * it is code editor instance specific.
3868
+ *
2514
3869
  */
2515
- getPinnedPaneCompositeIds(viewContainerLocation: ViewContainerLocation): string[];
3870
+ readonly container: HTMLElement;
2516
3871
  /**
2517
- * Returns id of visible view containers following the visual order.
3872
+ * An offset to use for positioning elements inside the container.
2518
3873
  */
2519
- getVisiblePaneCompositeIds(viewContainerLocation: ViewContainerLocation): string[];
3874
+ readonly offset: ILayoutOffsetInfo;
2520
3875
  /**
2521
- * Returns the progress indicator for the side bar.
3876
+ * An event that is emitted when the container is layed out. The
3877
+ * event carries the dimensions of the container as part of it.
2522
3878
  */
2523
- getProgressIndicator(id: string, viewContainerLocation: ViewContainerLocation): IProgressIndicator | undefined;
3879
+ readonly onDidLayout: Event$1<IDimension>;
2524
3880
  /**
2525
- * Hide the active viewlet.
3881
+ * Focus the primary component of the container.
3882
+ */
3883
+ focus(): void;
3884
+ }
3885
+
3886
+ type MementoObject = {
3887
+ [key: string]: any;
3888
+ };
3889
+
3890
+ declare class Component extends Themable {
3891
+ private readonly id;
3892
+ private readonly memento;
3893
+ constructor(id: string, themeService: IThemeService, storageService: IStorageService);
3894
+ getId(): string;
3895
+ protected getMemento(scope: StorageScope, target: StorageTarget): MementoObject;
3896
+ protected saveState(): void;
3897
+ }
3898
+
3899
+ declare const enum LayoutPriority {
3900
+ Normal = 0,
3901
+ Low = 1,
3902
+ High = 2
3903
+ }
3904
+ /**
3905
+ * The interface to implement for views within a {@link SplitView}.
3906
+ *
3907
+ * An optional {@link TLayoutContext layout context type} may be used in order to
3908
+ * pass along layout contextual data from the {@link SplitView.layout} method down
3909
+ * to each view's {@link IView.layout} calls.
3910
+ */
3911
+ interface IView$2<TLayoutContext = undefined> {
3912
+ /**
3913
+ * The DOM element for this view.
3914
+ */
3915
+ readonly element: HTMLElement;
3916
+ /**
3917
+ * A minimum size for this view.
3918
+ *
3919
+ * @remarks If none, set it to `0`.
3920
+ */
3921
+ readonly minimumSize: number;
3922
+ /**
3923
+ * A maximum size for this view.
3924
+ *
3925
+ * @remarks If none, set it to `Number.POSITIVE_INFINITY`.
3926
+ */
3927
+ readonly maximumSize: number;
3928
+ /**
3929
+ * The priority of the view when the {@link SplitView.resize layout} algorithm
3930
+ * runs. Views with higher priority will be resized first.
3931
+ *
3932
+ * @remarks Only used when `proportionalLayout` is false.
3933
+ */
3934
+ readonly priority?: LayoutPriority;
3935
+ /**
3936
+ * If the {@link SplitView} supports {@link ISplitViewOptions.proportionalLayout proportional layout},
3937
+ * this property allows for finer control over the proportional layout algorithm, per view.
3938
+ *
3939
+ * @defaultValue `true`
3940
+ */
3941
+ readonly proportionalLayout?: boolean;
3942
+ /**
3943
+ * Whether the view will snap whenever the user reaches its minimum size or
3944
+ * attempts to grow it beyond the minimum size.
3945
+ *
3946
+ * @defaultValue `false`
3947
+ */
3948
+ readonly snap?: boolean;
3949
+ /**
3950
+ * View instances are supposed to fire the {@link IView.onDidChange} event whenever
3951
+ * any of the constraint properties have changed:
3952
+ *
3953
+ * - {@link IView.minimumSize}
3954
+ * - {@link IView.maximumSize}
3955
+ * - {@link IView.priority}
3956
+ * - {@link IView.snap}
3957
+ *
3958
+ * The SplitView will relayout whenever that happens. The event can optionally emit
3959
+ * the view's preferred size for that relayout.
3960
+ */
3961
+ readonly onDidChange: Event$1<number | undefined>;
3962
+ /**
3963
+ * This will be called by the {@link SplitView} during layout. A view meant to
3964
+ * pass along the layout information down to its descendants.
3965
+ *
3966
+ * @param size The size of this view, in pixels.
3967
+ * @param offset The offset of this view, relative to the start of the {@link SplitView}.
3968
+ * @param context The optional {@link IView layout context} passed to {@link SplitView.layout}.
3969
+ */
3970
+ layout(size: number, offset: number, context: TLayoutContext | undefined): void;
3971
+ /**
3972
+ * This will be called by the {@link SplitView} whenever this view is made
3973
+ * visible or hidden.
3974
+ *
3975
+ * @param visible Whether the view becomes visible.
3976
+ */
3977
+ setVisible?(visible: boolean): void;
3978
+ }
3979
+
3980
+ interface IViewSize {
3981
+ readonly width: number;
3982
+ readonly height: number;
3983
+ }
3984
+ /**
3985
+ * The interface to implement for views within a {@link GridView}.
3986
+ */
3987
+ interface IView$1 {
3988
+ /**
3989
+ * The DOM element for this view.
3990
+ */
3991
+ readonly element: HTMLElement;
3992
+ /**
3993
+ * A minimum width for this view.
3994
+ *
3995
+ * @remarks If none, set it to `0`.
3996
+ */
3997
+ readonly minimumWidth: number;
3998
+ /**
3999
+ * A minimum width for this view.
4000
+ *
4001
+ * @remarks If none, set it to `Number.POSITIVE_INFINITY`.
4002
+ */
4003
+ readonly maximumWidth: number;
4004
+ /**
4005
+ * A minimum height for this view.
4006
+ *
4007
+ * @remarks If none, set it to `0`.
4008
+ */
4009
+ readonly minimumHeight: number;
4010
+ /**
4011
+ * A minimum height for this view.
4012
+ *
4013
+ * @remarks If none, set it to `Number.POSITIVE_INFINITY`.
4014
+ */
4015
+ readonly maximumHeight: number;
4016
+ /**
4017
+ * The priority of the view when the {@link GridView} layout algorithm
4018
+ * runs. Views with higher priority will be resized first.
4019
+ *
4020
+ * @remarks Only used when `proportionalLayout` is false.
4021
+ */
4022
+ readonly priority?: LayoutPriority;
4023
+ /**
4024
+ * If the {@link GridView} supports proportional layout,
4025
+ * this property allows for finer control over the proportional layout algorithm, per view.
4026
+ *
4027
+ * @defaultValue `true`
4028
+ */
4029
+ readonly proportionalLayout?: boolean;
4030
+ /**
4031
+ * Whether the view will snap whenever the user reaches its minimum size or
4032
+ * attempts to grow it beyond the minimum size.
4033
+ *
4034
+ * @defaultValue `false`
4035
+ */
4036
+ readonly snap?: boolean;
4037
+ /**
4038
+ * View instances are supposed to fire this event whenever any of the constraint
4039
+ * properties have changed:
4040
+ *
4041
+ * - {@link IView.minimumWidth}
4042
+ * - {@link IView.maximumWidth}
4043
+ * - {@link IView.minimumHeight}
4044
+ * - {@link IView.maximumHeight}
4045
+ * - {@link IView.priority}
4046
+ * - {@link IView.snap}
4047
+ *
4048
+ * The {@link GridView} will relayout whenever that happens. The event can
4049
+ * optionally emit the view's preferred size for that relayout.
4050
+ */
4051
+ readonly onDidChange: Event$1<IViewSize | undefined>;
4052
+ /**
4053
+ * This will be called by the {@link GridView} during layout. A view meant to
4054
+ * pass along the layout information down to its descendants.
4055
+ */
4056
+ layout(width: number, height: number, top: number, left: number): void;
4057
+ /**
4058
+ * This will be called by the {@link GridView} whenever this view is made
4059
+ * visible or hidden.
4060
+ *
4061
+ * @param visible Whether the view becomes visible.
4062
+ */
4063
+ setVisible?(visible: boolean): void;
4064
+ /**
4065
+ * This will be called by the {@link GridView} whenever this view is on
4066
+ * an edge of the grid and the grid's
4067
+ * {@link GridView.boundarySashes boundary sashes} change.
4068
+ */
4069
+ setBoundarySashes?(sashes: IBoundarySashes): void;
4070
+ }
4071
+
4072
+ declare const enum Direction {
4073
+ Up = 0,
4074
+ Down = 1,
4075
+ Left = 2,
4076
+ Right = 3
4077
+ }
4078
+ /**
4079
+ * The interface to implement for views within a {@link Grid}.
4080
+ */
4081
+ interface IView extends IView$1 {
4082
+ /**
4083
+ * The preferred width for when the user double clicks a sash
4084
+ * adjacent to this view.
4085
+ */
4086
+ readonly preferredWidth?: number;
4087
+ /**
4088
+ * The preferred height for when the user double clicks a sash
4089
+ * adjacent to this view.
4090
+ */
4091
+ readonly preferredHeight?: number;
4092
+ }
4093
+ interface ISerializableView extends IView {
4094
+ toJSON(): object;
4095
+ }
4096
+
4097
+ interface IPartOptions {
4098
+ readonly hasTitle?: boolean;
4099
+ readonly borderWidth?: () => number;
4100
+ }
4101
+ interface ILayoutContentResult {
4102
+ readonly titleSize: IDimension;
4103
+ readonly contentSize: IDimension;
4104
+ }
4105
+ /**
4106
+ * Parts are layed out in the workbench and have their own layout that
4107
+ * arranges an optional title and mandatory content area to show content.
4108
+ */
4109
+ declare abstract class Part extends Component implements ISerializableView {
4110
+ private options;
4111
+ protected readonly layoutService: IWorkbenchLayoutService;
4112
+ private _dimension;
4113
+ get dimension(): Dimension | undefined;
4114
+ protected _onDidVisibilityChange: Emitter<boolean>;
4115
+ readonly onDidVisibilityChange: Event$1<boolean>;
4116
+ private parent;
4117
+ private titleArea;
4118
+ private contentArea;
4119
+ private partLayout;
4120
+ constructor(id: string, options: IPartOptions, themeService: IThemeService, storageService: IStorageService, layoutService: IWorkbenchLayoutService);
4121
+ protected onThemeChange(theme: IColorTheme): void;
4122
+ updateStyles(): void;
4123
+ /**
4124
+ * Note: Clients should not call this method, the workbench calls this
4125
+ * method. Calling it otherwise may result in unexpected behavior.
4126
+ *
4127
+ * Called to create title and content area of the part.
4128
+ */
4129
+ create(parent: HTMLElement, options?: object): void;
4130
+ /**
4131
+ * Returns the overall part container.
4132
+ */
4133
+ getContainer(): HTMLElement | undefined;
4134
+ /**
4135
+ * Subclasses override to provide a title area implementation.
4136
+ */
4137
+ protected createTitleArea(parent: HTMLElement, options?: object): HTMLElement | undefined;
4138
+ /**
4139
+ * Returns the title area container.
4140
+ */
4141
+ protected getTitleArea(): HTMLElement | undefined;
4142
+ /**
4143
+ * Subclasses override to provide a content area implementation.
4144
+ */
4145
+ protected createContentArea(parent: HTMLElement, options?: object): HTMLElement | undefined;
4146
+ /**
4147
+ * Returns the content area container.
4148
+ */
4149
+ protected getContentArea(): HTMLElement | undefined;
4150
+ /**
4151
+ * Layout title and content area in the given dimension.
4152
+ */
4153
+ protected layoutContents(width: number, height: number): ILayoutContentResult;
4154
+ protected _onDidChange: Emitter<IViewSize | undefined>;
4155
+ get onDidChange(): Event$1<IViewSize | undefined>;
4156
+ element: HTMLElement;
4157
+ abstract minimumWidth: number;
4158
+ abstract maximumWidth: number;
4159
+ abstract minimumHeight: number;
4160
+ abstract maximumHeight: number;
4161
+ layout(width: number, height: number, _top: number, _left: number): void;
4162
+ setVisible(visible: boolean): void;
4163
+ abstract toJSON(): object;
4164
+ }
4165
+
4166
+ declare const enum Parts {
4167
+ TITLEBAR_PART = "workbench.parts.titlebar",
4168
+ BANNER_PART = "workbench.parts.banner",
4169
+ ACTIVITYBAR_PART = "workbench.parts.activitybar",
4170
+ SIDEBAR_PART = "workbench.parts.sidebar",
4171
+ PANEL_PART = "workbench.parts.panel",
4172
+ AUXILIARYBAR_PART = "workbench.parts.auxiliarybar",
4173
+ EDITOR_PART = "workbench.parts.editor",
4174
+ STATUSBAR_PART = "workbench.parts.statusbar"
4175
+ }
4176
+ declare const enum Position {
4177
+ LEFT = 0,
4178
+ RIGHT = 1,
4179
+ BOTTOM = 2
4180
+ }
4181
+ type PanelAlignment = 'left' | 'center' | 'right' | 'justify';
4182
+
4183
+ declare const IWorkbenchLayoutService: ServiceIdentifier<IWorkbenchLayoutService>;
4184
+ interface IWorkbenchLayoutService extends ILayoutService {
4185
+ readonly _serviceBrand: undefined;
4186
+ /**
4187
+ * Emits when the zen mode is enabled or disabled.
4188
+ */
4189
+ readonly onDidChangeZenMode: Event$1<boolean>;
4190
+ /**
4191
+ * Emits when fullscreen is enabled or disabled.
4192
+ */
4193
+ readonly onDidChangeFullscreen: Event$1<boolean>;
4194
+ /**
4195
+ * Emits when the window is maximized or unmaximized.
4196
+ */
4197
+ readonly onDidChangeWindowMaximized: Event$1<boolean>;
4198
+ /**
4199
+ * Emits when centered layout is enabled or disabled.
4200
+ */
4201
+ readonly onDidChangeCenteredLayout: Event$1<boolean>;
4202
+ readonly onDidChangePanelPosition: Event$1<string>;
4203
+ /**
4204
+ * Emit when panel alignment changes.
4205
+ */
4206
+ readonly onDidChangePanelAlignment: Event$1<PanelAlignment>;
4207
+ /**
4208
+ * Emit when part visibility changes
4209
+ */
4210
+ readonly onDidChangePartVisibility: Event$1<void>;
4211
+ /**
4212
+ * Emit when notifications (toasts or center) visibility changes.
4213
+ */
4214
+ readonly onDidChangeNotificationsVisibility: Event$1<boolean>;
4215
+ /**
4216
+ * True if a default layout with default editors was applied at startup
4217
+ */
4218
+ readonly openedDefaultEditors: boolean;
4219
+ /**
4220
+ * Run a layout of the workbench.
4221
+ */
4222
+ layout(): void;
4223
+ /**
4224
+ * Asks the part service if all parts have been fully restored. For editor part
4225
+ * this means that the contents of visible editors have loaded.
4226
+ */
4227
+ isRestored(): boolean;
4228
+ /**
4229
+ * A promise for to await the `isRestored()` condition to be `true`.
4230
+ */
4231
+ readonly whenRestored: Promise<void>;
4232
+ /**
4233
+ * Returns whether the given part has the keyboard focus or not.
4234
+ */
4235
+ hasFocus(part: Parts): boolean;
4236
+ /**
4237
+ * Focuses the part. If the part is not visible this is a noop.
4238
+ */
4239
+ focusPart(part: Parts): void;
4240
+ /**
4241
+ * Returns the parts HTML element, if there is one.
4242
+ */
4243
+ getContainer(part: Parts): HTMLElement | undefined;
4244
+ /**
4245
+ * Returns if the part is visible.
4246
+ */
4247
+ isVisible(part: Parts): boolean;
4248
+ /**
4249
+ * Returns if the part is visible.
4250
+ */
4251
+ getDimension(part: Parts): Dimension | undefined;
4252
+ /**
4253
+ * Set part hidden or not
4254
+ */
4255
+ setPartHidden(hidden: boolean, part: Exclude<Parts, Parts.STATUSBAR_PART | Parts.TITLEBAR_PART>): void;
4256
+ /**
4257
+ * Maximizes the panel height if the panel is not already maximized.
4258
+ * Shrinks the panel to the default starting size if the panel is maximized.
4259
+ */
4260
+ toggleMaximizedPanel(): void;
4261
+ /**
4262
+ * Returns true if the window has a border.
4263
+ */
4264
+ hasWindowBorder(): boolean;
4265
+ /**
4266
+ * Returns the window border width.
4267
+ */
4268
+ getWindowBorderWidth(): number;
4269
+ /**
4270
+ * Returns the window border radius if any.
4271
+ */
4272
+ getWindowBorderRadius(): string | undefined;
4273
+ /**
4274
+ * Returns true if the panel is maximized.
4275
+ */
4276
+ isPanelMaximized(): boolean;
4277
+ /**
4278
+ * Gets the current side bar position. Note that the sidebar can be hidden too.
4279
+ */
4280
+ getSideBarPosition(): Position;
4281
+ /**
4282
+ * Toggles the menu bar visibility.
4283
+ */
4284
+ toggleMenuBar(): void;
4285
+ getPanelPosition(): Position;
4286
+ /**
4287
+ * Sets the panel position.
4288
+ */
4289
+ setPanelPosition(position: Position): void;
4290
+ /**
4291
+ * Gets the panel alignement.
4292
+ */
4293
+ getPanelAlignment(): PanelAlignment;
4294
+ /**
4295
+ * Sets the panel alignment.
4296
+ */
4297
+ setPanelAlignment(alignment: PanelAlignment): void;
4298
+ /**
4299
+ * Gets the maximum possible size for editor.
4300
+ */
4301
+ getMaximumEditorDimensions(): Dimension;
4302
+ /**
4303
+ * Toggles the workbench in and out of zen mode - parts get hidden and window goes fullscreen.
4304
+ */
4305
+ toggleZenMode(): void;
4306
+ /**
4307
+ * Returns whether the centered editor layout is active.
4308
+ */
4309
+ isEditorLayoutCentered(): boolean;
4310
+ /**
4311
+ * Sets the workbench in and out of centered editor layout.
4312
+ */
4313
+ centerEditorLayout(active: boolean): void;
4314
+ /**
4315
+ * Resizes currently focused part on main access
4316
+ */
4317
+ resizePart(part: Parts, sizeChangeWidth: number, sizeChangeHeight: number): void;
4318
+ /**
4319
+ * Register a part to participate in the layout.
4320
+ */
4321
+ registerPart(part: Part): void;
4322
+ /**
4323
+ * Returns whether the window is maximized.
4324
+ */
4325
+ isWindowMaximized(): boolean;
4326
+ /**
4327
+ * Updates the maximized state of the window.
4328
+ */
4329
+ updateWindowMaximizedState(maximized: boolean): void;
4330
+ /**
4331
+ * Returns the next visible view part in a given direction
4332
+ */
4333
+ getVisibleNeighborPart(part: Parts, direction: Direction): Parts | undefined;
4334
+ }
4335
+
4336
+ interface IAnchor {
4337
+ x: number;
4338
+ y: number;
4339
+ width?: number;
4340
+ height?: number;
4341
+ }
4342
+ declare const enum AnchorAlignment {
4343
+ LEFT = 0,
4344
+ RIGHT = 1
4345
+ }
4346
+ declare const enum AnchorPosition {
4347
+ BELOW = 0,
4348
+ ABOVE = 1
4349
+ }
4350
+ declare const enum AnchorAxisAlignment {
4351
+ VERTICAL = 0,
4352
+ HORIZONTAL = 1
4353
+ }
4354
+ interface IDelegate {
4355
+ getAnchor(): HTMLElement | IAnchor;
4356
+ render(container: HTMLElement): IDisposable | null;
4357
+ focus?(): void;
4358
+ layout?(): void;
4359
+ anchorAlignment?: AnchorAlignment;
4360
+ anchorPosition?: AnchorPosition;
4361
+ anchorAxisAlignment?: AnchorAxisAlignment;
4362
+ canRelayout?: boolean;
4363
+ onDOMEvent?(e: Event, activeElement: HTMLElement): void;
4364
+ onHide?(data?: unknown): void;
4365
+ }
4366
+ interface IContextViewProvider {
4367
+ showContextView(delegate: IDelegate, container?: HTMLElement): void;
4368
+ hideContextView(): void;
4369
+ layout(): void;
4370
+ }
4371
+
4372
+ declare abstract class Widget extends Disposable {
4373
+ protected onclick(domNode: HTMLElement, listener: (e: IMouseEvent) => void): void;
4374
+ protected onmousedown(domNode: HTMLElement, listener: (e: IMouseEvent) => void): void;
4375
+ protected onmouseover(domNode: HTMLElement, listener: (e: IMouseEvent) => void): void;
4376
+ protected onmouseleave(domNode: HTMLElement, listener: (e: IMouseEvent) => void): void;
4377
+ protected onkeydown(domNode: HTMLElement, listener: (e: IKeyboardEvent) => void): void;
4378
+ protected onkeyup(domNode: HTMLElement, listener: (e: IKeyboardEvent) => void): void;
4379
+ protected oninput(domNode: HTMLElement, listener: (e: Event) => void): void;
4380
+ protected onblur(domNode: HTMLElement, listener: (e: Event) => void): void;
4381
+ protected onfocus(domNode: HTMLElement, listener: (e: Event) => void): void;
4382
+ protected onchange(domNode: HTMLElement, listener: (e: Event) => void): void;
4383
+ protected ignoreGesture(domNode: HTMLElement): IDisposable;
4384
+ }
4385
+
4386
+ declare const enum HoverPosition {
4387
+ LEFT = 0,
4388
+ RIGHT = 1,
4389
+ BELOW = 2,
4390
+ ABOVE = 3
4391
+ }
4392
+
4393
+ /**
4394
+ * Copied from src\vs\workbench\services\hover\browser\hover.ts
4395
+ * @deprecated Use IHoverService
4396
+ */
4397
+ interface IHoverAction {
4398
+ label: string;
4399
+ commandId: string;
4400
+ iconClass?: string;
4401
+ run(target: HTMLElement): void;
4402
+ }
4403
+ interface IUpdatableHoverOptions {
4404
+ actions?: IHoverAction[];
4405
+ linkHandler?(url: string): void;
4406
+ }
4407
+
4408
+ interface IHoverDelegateTarget extends IDisposable {
4409
+ readonly targetElements: readonly HTMLElement[];
4410
+ x?: number;
4411
+ }
4412
+ interface IHoverDelegateOptions extends IUpdatableHoverOptions {
4413
+ /**
4414
+ * The content to display in the primary section of the hover. The type of text determines the
4415
+ * default `hideOnHover` behavior.
4416
+ */
4417
+ content: IMarkdownString | string | HTMLElement;
4418
+ /**
4419
+ * The target for the hover. This determines the position of the hover and it will only be
4420
+ * hidden when the mouse leaves both the hover and the target. A HTMLElement can be used for
4421
+ * simple cases and a IHoverDelegateTarget for more complex cases where multiple elements and/or a
4422
+ * dispose method is required.
4423
+ */
4424
+ target: IHoverDelegateTarget | HTMLElement;
4425
+ /**
4426
+ * Position of the hover. The default is to show above the target. This option will be ignored
4427
+ * if there is not enough room to layout the hover in the specified position, unless the
4428
+ * forcePosition option is set.
4429
+ */
4430
+ hoverPosition?: HoverPosition;
4431
+ /**
4432
+ * Whether to show the hover pointer
4433
+ */
4434
+ showPointer?: boolean;
4435
+ /**
4436
+ * Whether to skip the fade in animation, this should be used when hovering from one hover to
4437
+ * another in the same group so it looks like the hover is moving from one element to the other.
4438
+ */
4439
+ skipFadeInAnimation?: boolean;
4440
+ /**
4441
+ * The container to pass to {@link IContextViewProvider.showContextView} which renders the hover
4442
+ * in. This is particularly useful for more natural tab focusing behavior, where the hover is
4443
+ * created as the next tab index after the element being hovered and/or to workaround the
4444
+ * element's container hiding on `focusout`.
4445
+ */
4446
+ container?: HTMLElement;
4447
+ }
4448
+ interface IHoverDelegate {
4449
+ showHover(options: IHoverDelegateOptions, focus?: boolean): IHoverWidget | undefined;
4450
+ onDidHideHover?: () => void;
4451
+ delay: number;
4452
+ placement?: 'mouse' | 'element';
4453
+ }
4454
+ interface IHoverWidget extends IDisposable {
4455
+ readonly isDisposed: boolean;
4456
+ }
4457
+
4458
+ interface IToggleStyles {
4459
+ readonly inputActiveOptionBorder: string | undefined;
4460
+ readonly inputActiveOptionForeground: string | undefined;
4461
+ readonly inputActiveOptionBackground: string | undefined;
4462
+ }
4463
+
4464
+ interface IBaseActionViewItemOptions {
4465
+ draggable?: boolean;
4466
+ isMenu?: boolean;
4467
+ useEventAsContext?: boolean;
4468
+ hoverDelegate?: IHoverDelegate;
4469
+ }
4470
+ interface IActionViewItemOptions extends IBaseActionViewItemOptions {
4471
+ icon?: boolean;
4472
+ label?: boolean;
4473
+ keybinding?: string | null;
4474
+ toggleStyles?: IToggleStyles;
4475
+ }
4476
+
4477
+ interface IActionViewItem extends IDisposable {
4478
+ action: IAction;
4479
+ actionRunner: IActionRunner;
4480
+ setActionContext(context: unknown): void;
4481
+ render(element: HTMLElement): void;
4482
+ isEnabled(): boolean;
4483
+ focus(fromRight?: boolean): void;
4484
+ blur(): void;
4485
+ }
4486
+ interface IActionViewItemProvider {
4487
+ (action: IAction, options: IActionViewItemOptions): IActionViewItem | undefined;
4488
+ }
4489
+
4490
+ /**
4491
+ * Composites are layed out in the sidebar and panel part of the workbench. At a time only one composite
4492
+ * can be open in the sidebar, and only one composite can be open in the panel.
4493
+ *
4494
+ * Each composite has a minimized representation that is good enough to provide some
4495
+ * information about the state of the composite data.
4496
+ *
4497
+ * The workbench will keep a composite alive after it has been created and show/hide it based on
4498
+ * user interaction. The lifecycle of a composite goes in the order create(), setVisible(true|false),
4499
+ * layout(), focus(), dispose(). During use of the workbench, a composite will often receive a setVisible,
4500
+ * layout and focus call, but only one create and dispose call.
4501
+ */
4502
+ declare abstract class Composite extends Component implements IComposite {
4503
+ private readonly _onTitleAreaUpdate;
4504
+ readonly onTitleAreaUpdate: Event$1<void>;
4505
+ private _onDidFocus;
4506
+ get onDidFocus(): Event$1<void>;
4507
+ protected fireOnDidFocus(): void;
4508
+ private _onDidBlur;
4509
+ get onDidBlur(): Event$1<void>;
4510
+ private _hasFocus;
4511
+ hasFocus(): boolean;
4512
+ private registerFocusTrackEvents;
4513
+ protected actionRunner: IActionRunner | undefined;
4514
+ private _telemetryService;
4515
+ protected get telemetryService(): ITelemetryService;
4516
+ private visible;
4517
+ private parent;
4518
+ constructor(id: string, telemetryService: ITelemetryService, themeService: IThemeService, storageService: IStorageService);
4519
+ getTitle(): string | undefined;
4520
+ /**
4521
+ * Note: Clients should not call this method, the workbench calls this
4522
+ * method. Calling it otherwise may result in unexpected behavior.
4523
+ *
4524
+ * Called to create this composite on the provided parent. This method is only
4525
+ * called once during the lifetime of the workbench.
4526
+ * Note that DOM-dependent calculations should be performed from the setVisible()
4527
+ * call. Only then the composite will be part of the DOM.
4528
+ */
4529
+ create(parent: HTMLElement): void;
4530
+ /**
4531
+ * Returns the container this composite is being build in.
4532
+ */
4533
+ getContainer(): HTMLElement | undefined;
4534
+ /**
4535
+ * Note: Clients should not call this method, the workbench calls this
4536
+ * method. Calling it otherwise may result in unexpected behavior.
4537
+ *
4538
+ * Called to indicate that the composite has become visible or hidden. This method
4539
+ * is called more than once during workbench lifecycle depending on the user interaction.
4540
+ * The composite will be on-DOM if visible is set to true and off-DOM otherwise.
4541
+ *
4542
+ * Typically this operation should be fast though because setVisible might be called many times during a session.
4543
+ * If there is a long running operation it is fine to have it running in the background asyncly and return before.
4544
+ */
4545
+ setVisible(visible: boolean): void;
4546
+ /**
4547
+ * Called when this composite should receive keyboard focus.
4548
+ */
4549
+ focus(): void;
4550
+ /**
4551
+ * Layout the contents of this composite using the provided dimensions.
4552
+ */
4553
+ abstract layout(dimension: Dimension, position?: IDomPosition): void;
4554
+ /**
4555
+ * Set boundary sashes for this composite. These are used to create
4556
+ * draggable corner areas with inner sashes.
4557
+ */
4558
+ abstract setBoundarySashes(sashes: IBoundarySashes): void;
4559
+ /**
4560
+ * Update the styles of the contents of this composite.
4561
+ */
4562
+ updateStyles(): void;
4563
+ /**
4564
+ *
4565
+ * @returns the action runner for this composite
4566
+ */
4567
+ getMenuIds(): readonly MenuId[];
4568
+ /**
4569
+ * Returns an array of actions to show in the action bar of the composite.
4570
+ */
4571
+ getActions(): readonly IAction[];
4572
+ /**
4573
+ * Returns an array of actions to show in the action bar of the composite
4574
+ * in a less prominent way then action from getActions.
4575
+ */
4576
+ getSecondaryActions(): readonly IAction[];
4577
+ /**
4578
+ * Returns an array of actions to show in the context menu of the composite
4579
+ */
4580
+ getContextMenuActions(): readonly IAction[];
4581
+ /**
4582
+ * For any of the actions returned by this composite, provide an IActionViewItem in
4583
+ * cases where the implementor of the composite wants to override the presentation
4584
+ * of an action. Returns undefined to indicate that the action is not rendered through
4585
+ * an action item.
4586
+ */
4587
+ getActionViewItem(action: IAction): IActionViewItem | undefined;
4588
+ /**
4589
+ * Provide a context to be passed to the toolbar.
4590
+ */
4591
+ getActionsContext(): unknown;
4592
+ /**
4593
+ * Returns the instance of IActionRunner to use with this composite for the
4594
+ * composite tool bar.
4595
+ */
4596
+ getActionRunner(): IActionRunner;
4597
+ /**
4598
+ * Method for composite implementors to indicate to the composite container that the title or the actions
4599
+ * of the composite have changed. Calling this method will cause the container to ask for title (getTitle())
4600
+ * and actions (getActions(), getSecondaryActions()) if the composite is visible or the next time the composite
4601
+ * gets visible.
4602
+ */
4603
+ protected updateTitleArea(): void;
4604
+ /**
4605
+ * Returns true if this composite is currently visible and false otherwise.
4606
+ */
4607
+ isVisible(): boolean;
4608
+ /**
4609
+ * Returns the underlying composite control or `undefined` if it is not accessible.
4610
+ */
4611
+ getControl(): ICompositeControl | undefined;
4612
+ }
4613
+ /**
4614
+ * A composite descriptor is a lightweight descriptor of a composite in the workbench.
4615
+ */
4616
+ declare abstract class CompositeDescriptor<T extends Composite> {
4617
+ private readonly ctor;
4618
+ readonly id: string;
4619
+ readonly name: string;
4620
+ readonly cssClass?: string | undefined;
4621
+ readonly order?: number | undefined;
4622
+ readonly requestedIndex?: number | undefined;
4623
+ constructor(ctor: IConstructorSignature<T>, id: string, name: string, cssClass?: string | undefined, order?: number | undefined, requestedIndex?: number | undefined);
4624
+ instantiate(instantiationService: IInstantiationService): T;
4625
+ }
4626
+
4627
+ interface IContextMenuEvent {
4628
+ readonly shiftKey?: boolean;
4629
+ readonly ctrlKey?: boolean;
4630
+ readonly altKey?: boolean;
4631
+ readonly metaKey?: boolean;
4632
+ }
4633
+ interface IContextMenuDelegate {
4634
+ getAnchor(): HTMLElement | {
4635
+ x: number;
4636
+ y: number;
4637
+ width?: number;
4638
+ height?: number;
4639
+ };
4640
+ getActions(): readonly IAction[];
4641
+ getCheckedActionsRepresentation?(action: IAction): 'radio' | 'checkbox';
4642
+ getActionViewItem?(action: IAction, options: IActionViewItemOptions): IActionViewItem | undefined;
4643
+ getActionsContext?(event?: IContextMenuEvent): unknown;
4644
+ getKeyBinding?(action: IAction): ResolvedKeybinding | undefined;
4645
+ getMenuClassName?(): string;
4646
+ onHide?(didCancel: boolean): void;
4647
+ actionRunner?: IActionRunner;
4648
+ skipTelemetry?: boolean;
4649
+ autoSelectFirstItem?: boolean;
4650
+ anchorAlignment?: AnchorAlignment;
4651
+ anchorAxisAlignment?: AnchorAxisAlignment;
4652
+ domForShadowRoot?: HTMLElement;
4653
+ }
4654
+
4655
+ declare const IContextViewService: ServiceIdentifier<IContextViewService>;
4656
+ interface IContextViewService extends IContextViewProvider {
4657
+ readonly _serviceBrand: undefined;
4658
+ showContextView(delegate: IContextViewDelegate, container?: HTMLElement, shadowRoot?: boolean): IDisposable;
4659
+ hideContextView(data?: any): void;
4660
+ getContextViewElement(): HTMLElement;
4661
+ layout(): void;
4662
+ anchorAlignment?: AnchorAlignment;
4663
+ }
4664
+ interface IContextViewDelegate {
4665
+ canRelayout?: boolean;
4666
+ getAnchor(): HTMLElement | {
4667
+ x: number;
4668
+ y: number;
4669
+ width?: number;
4670
+ height?: number;
4671
+ };
4672
+ render(container: HTMLElement): IDisposable;
4673
+ onDOMEvent?(e: any, activeElement: HTMLElement): void;
4674
+ onHide?(data?: any): void;
4675
+ focus?(): void;
4676
+ anchorAlignment?: AnchorAlignment;
4677
+ anchorAxisAlignment?: AnchorAxisAlignment;
4678
+ }
4679
+ declare const IContextMenuService: ServiceIdentifier<IContextMenuService>;
4680
+ interface IContextMenuService {
4681
+ readonly _serviceBrand: undefined;
4682
+ readonly onDidShowContextMenu: Event$1<void>;
4683
+ readonly onDidHideContextMenu: Event$1<void>;
4684
+ showContextMenu(delegate: IContextMenuDelegate | IContextMenuMenuDelegate): void;
4685
+ }
4686
+ type IContextMenuMenuDelegate = {
4687
+ /**
4688
+ * The MenuId that should be used to populate the context menu.
4689
+ */
4690
+ menuId?: MenuId;
4691
+ /**
4692
+ * Optional options how menu actions are invoked
4693
+ */
4694
+ menuActionOptions?: IMenuActionOptions;
4695
+ /**
4696
+ * Optional context key service which drives the given menu
4697
+ */
4698
+ contextKeyService?: IContextKeyService;
4699
+ /**
4700
+ * Optional getter for extra actions. They will be prepended to the menu actions.
4701
+ */
4702
+ getActions?(): IAction[];
4703
+ } & Omit<IContextMenuDelegate, 'getActions'>;
4704
+
4705
+ interface IPaneOptions {
4706
+ minimumBodySize?: number;
4707
+ maximumBodySize?: number;
4708
+ expanded?: boolean;
4709
+ orientation?: Orientation;
4710
+ title: string;
4711
+ titleDescription?: string;
4712
+ }
4713
+ interface IPaneStyles {
4714
+ readonly dropBackground: string | undefined;
4715
+ readonly headerForeground: string | undefined;
4716
+ readonly headerBackground: string | undefined;
4717
+ readonly headerBorder: string | undefined;
4718
+ readonly leftBorder: string | undefined;
4719
+ }
4720
+ /**
4721
+ * A Pane is a structured SplitView view.
4722
+ *
4723
+ * WARNING: You must call `render()` after you construct it.
4724
+ * It can't be done automatically at the end of the ctor
4725
+ * because of the order of property initialization in TypeScript.
4726
+ * Subclasses wouldn't be able to set own properties
4727
+ * before the `render()` call, thus forbidding their use.
4728
+ */
4729
+ declare abstract class Pane extends Disposable implements IView$2 {
4730
+ private static readonly HEADER_SIZE;
4731
+ readonly element: HTMLElement;
4732
+ private header;
4733
+ private body;
4734
+ protected _expanded: boolean;
4735
+ protected _orientation: Orientation;
4736
+ private expandedSize;
4737
+ private _headerVisible;
4738
+ private _bodyRendered;
4739
+ private _minimumBodySize;
4740
+ private _maximumBodySize;
4741
+ private _ariaHeaderLabel;
4742
+ private styles;
4743
+ private animationTimer;
4744
+ private readonly _onDidChange;
4745
+ readonly onDidChange: Event$1<number | undefined>;
4746
+ private readonly _onDidChangeExpansionState;
4747
+ readonly onDidChangeExpansionState: Event$1<boolean>;
4748
+ get ariaHeaderLabel(): string;
4749
+ set ariaHeaderLabel(newLabel: string);
4750
+ get draggableElement(): HTMLElement;
4751
+ get dropTargetElement(): HTMLElement;
4752
+ get dropBackground(): string | undefined;
4753
+ get minimumBodySize(): number;
4754
+ set minimumBodySize(size: number);
4755
+ get maximumBodySize(): number;
4756
+ set maximumBodySize(size: number);
4757
+ private get headerSize();
4758
+ get minimumSize(): number;
4759
+ get maximumSize(): number;
4760
+ orthogonalSize: number;
4761
+ constructor(options: IPaneOptions);
4762
+ isExpanded(): boolean;
4763
+ setExpanded(expanded: boolean): boolean;
4764
+ get headerVisible(): boolean;
4765
+ set headerVisible(visible: boolean);
4766
+ get orientation(): Orientation;
4767
+ set orientation(orientation: Orientation);
4768
+ render(): void;
4769
+ layout(size: number): void;
4770
+ style(styles: IPaneStyles): void;
4771
+ protected updateHeader(): void;
4772
+ protected abstract renderHeader(container: HTMLElement): void;
4773
+ protected abstract renderBody(container: HTMLElement): void;
4774
+ protected abstract layoutBody(height: number, width: number): void;
4775
+ }
4776
+ interface IPaneDndController {
4777
+ canDrag(pane: Pane): boolean;
4778
+ canDrop(pane: Pane, overPane: Pane): boolean;
4779
+ }
4780
+ interface IPaneViewOptions {
4781
+ dnd?: IPaneDndController;
4782
+ orientation?: Orientation;
4783
+ }
4784
+
4785
+ declare class CompositeMenuActions extends Disposable {
4786
+ readonly menuId: MenuId;
4787
+ private readonly contextMenuId;
4788
+ private readonly options;
4789
+ private readonly contextKeyService;
4790
+ private readonly menuService;
4791
+ private readonly menuActions;
4792
+ private _onDidChange;
4793
+ readonly onDidChange: Event$1<void>;
4794
+ constructor(menuId: MenuId, contextMenuId: MenuId | undefined, options: IMenuActionOptions | undefined, contextKeyService: IContextKeyService, menuService: IMenuService);
4795
+ getPrimaryActions(): IAction[];
4796
+ getSecondaryActions(): IAction[];
4797
+ getContextMenuActions(): IAction[];
4798
+ }
4799
+
4800
+ interface IKeybindingProvider {
4801
+ (action: IAction): ResolvedKeybinding | undefined;
4802
+ }
4803
+ interface IAnchorAlignmentProvider {
4804
+ (): AnchorAlignment;
4805
+ }
4806
+ interface IDropdownMenuActionViewItemOptions extends IBaseActionViewItemOptions {
4807
+ readonly actionViewItemProvider?: IActionViewItemProvider;
4808
+ readonly keybindingProvider?: IKeybindingProvider;
4809
+ readonly actionRunner?: IActionRunner;
4810
+ readonly classNames?: string[] | string;
4811
+ readonly anchorAlignmentProvider?: IAnchorAlignmentProvider;
4812
+ readonly menuAsChild?: boolean;
4813
+ }
4814
+
4815
+ interface IFilterWidgetOptions {
4816
+ readonly text?: string;
4817
+ readonly placeholder?: string;
4818
+ readonly ariaLabel?: string;
4819
+ readonly history?: string[];
4820
+ readonly focusContextKey?: string;
4821
+ }
4822
+ declare class FilterWidget extends Widget {
4823
+ private readonly options;
4824
+ private readonly instantiationService;
4825
+ private readonly contextViewService;
4826
+ private readonly keybindingService;
4827
+ readonly element: HTMLElement;
4828
+ private readonly delayedFilterUpdate;
4829
+ private readonly filterInputBox;
4830
+ private readonly filterBadge;
4831
+ private readonly toolbar;
4832
+ private readonly focusContextKey;
4833
+ private readonly _onDidChangeFilterText;
4834
+ readonly onDidChangeFilterText: Event$1<string>;
4835
+ private moreFiltersActionViewItem;
4836
+ private isMoreFiltersChecked;
4837
+ constructor(options: IFilterWidgetOptions, instantiationService: IInstantiationService, contextViewService: IContextViewService, contextKeyService: IContextKeyService, keybindingService: IKeybindingService);
4838
+ focus(): void;
4839
+ blur(): void;
4840
+ updateBadge(message: string | undefined): void;
4841
+ setFilterText(filterText: string): void;
4842
+ getFilterText(): string;
4843
+ getHistory(): string[];
4844
+ layout(width: number): void;
4845
+ checkMoreFilters(checked: boolean): void;
4846
+ private createInput;
4847
+ private createBadge;
4848
+ private createToolBar;
4849
+ private onDidInputChange;
4850
+ private adjustInputBox;
4851
+ private handleKeyboardEvent;
4852
+ private onInputKeyDown;
4853
+ }
4854
+
4855
+ interface IViewPaneOptions extends IPaneOptions {
4856
+ id: string;
4857
+ showActionsAlways?: boolean;
4858
+ titleMenuId?: MenuId;
4859
+ donotForwardArgs?: boolean;
4860
+ }
4861
+ declare abstract class ViewPane extends Pane implements IView$3 {
4862
+ protected keybindingService: IKeybindingService;
4863
+ protected contextMenuService: IContextMenuService;
4864
+ protected readonly configurationService: IConfigurationService;
4865
+ protected contextKeyService: IContextKeyService;
4866
+ protected viewDescriptorService: IViewDescriptorService;
4867
+ protected instantiationService: IInstantiationService;
4868
+ protected openerService: IOpenerService;
4869
+ protected themeService: IThemeService;
4870
+ protected telemetryService: ITelemetryService;
4871
+ private static readonly AlwaysShowActionsConfig;
4872
+ private _onDidFocus;
4873
+ readonly onDidFocus: Event$1<void>;
4874
+ private _onDidBlur;
4875
+ readonly onDidBlur: Event$1<void>;
4876
+ private _onDidChangeBodyVisibility;
4877
+ readonly onDidChangeBodyVisibility: Event$1<boolean>;
4878
+ protected _onDidChangeTitleArea: Emitter<void>;
4879
+ readonly onDidChangeTitleArea: Event$1<void>;
4880
+ protected _onDidChangeViewWelcomeState: Emitter<void>;
4881
+ readonly onDidChangeViewWelcomeState: Event$1<void>;
4882
+ private _isVisible;
4883
+ readonly id: string;
4884
+ private _title;
4885
+ get title(): string;
4886
+ private _titleDescription;
4887
+ get titleDescription(): string | undefined;
4888
+ readonly menuActions: CompositeMenuActions;
4889
+ private progressBar;
4890
+ private progressIndicator;
4891
+ private toolbar?;
4892
+ private readonly showActionsAlways;
4893
+ private headerContainer?;
4894
+ private titleContainer?;
4895
+ private titleDescriptionContainer?;
4896
+ private iconContainer?;
4897
+ protected twistiesContainer?: HTMLElement;
4898
+ private bodyContainer;
4899
+ private viewWelcomeContainer;
4900
+ private viewWelcomeDisposable;
4901
+ private viewWelcomeController;
4902
+ protected readonly scopedContextKeyService: IContextKeyService;
4903
+ constructor(options: IViewPaneOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, instantiationService: IInstantiationService, openerService: IOpenerService, themeService: IThemeService, telemetryService: ITelemetryService);
4904
+ get headerVisible(): boolean;
4905
+ set headerVisible(visible: boolean);
4906
+ setVisible(visible: boolean): void;
4907
+ isVisible(): boolean;
4908
+ isBodyVisible(): boolean;
4909
+ setExpanded(expanded: boolean): boolean;
4910
+ render(): void;
4911
+ protected renderHeader(container: HTMLElement): void;
4912
+ protected getTwistyIcon(expanded: boolean): ThemeIcon;
4913
+ style(styles: IPaneStyles): void;
4914
+ private getIcon;
4915
+ protected renderHeaderTitle(container: HTMLElement, title: string): void;
4916
+ protected updateTitle(title: string): void;
4917
+ private setTitleDescription;
4918
+ protected updateTitleDescription(description?: string | undefined): void;
4919
+ private calculateTitle;
4920
+ private scrollableElement;
4921
+ protected renderBody(container: HTMLElement): void;
4922
+ protected layoutBody(height: number, width: number): void;
4923
+ onDidScrollRoot(): void;
4924
+ getProgressIndicator(): IProgressIndicator;
4925
+ protected getProgressLocation(): string;
4926
+ protected getBackgroundColor(): string;
4927
+ focus(): void;
4928
+ private setActions;
4929
+ private updateActionsVisibility;
4930
+ protected updateActions(): void;
4931
+ getActionViewItem(action: IAction, options?: IDropdownMenuActionViewItemOptions): IActionViewItem | undefined;
4932
+ getActionsContext(): unknown;
4933
+ getActionRunner(): IActionRunner | undefined;
4934
+ getOptimalWidth(): number;
4935
+ saveState(): void;
4936
+ private updateViewWelcome;
4937
+ shouldShowWelcome(): boolean;
4938
+ getFilterWidget(): FilterWidget | undefined;
4939
+ shouldShowFilterInHeader(): boolean;
4940
+ }
4941
+
4942
+ interface IViewletViewOptions extends IViewPaneOptions {
4943
+ readonly fromExtensionId?: ExtensionIdentifier;
4944
+ }
4945
+
4946
+ interface IViewPaneContainerOptions extends IPaneViewOptions {
4947
+ mergeViewWithContainerWhenSingleView: boolean;
4948
+ }
4949
+ declare class ViewPaneContainer extends Component implements IViewPaneContainer {
4950
+ private options;
4951
+ protected instantiationService: IInstantiationService;
4952
+ protected configurationService: IConfigurationService;
4953
+ protected layoutService: IWorkbenchLayoutService;
4954
+ protected contextMenuService: IContextMenuService;
4955
+ protected telemetryService: ITelemetryService;
4956
+ protected extensionService: IExtensionService;
4957
+ protected storageService: IStorageService;
4958
+ protected contextService: IWorkspaceContextService;
4959
+ protected viewDescriptorService: IViewDescriptorService;
4960
+ readonly viewContainer: ViewContainer;
4961
+ private lastFocusedPane;
4962
+ private lastMergedCollapsedPane;
4963
+ private paneItems;
4964
+ private paneview?;
4965
+ private visible;
4966
+ private areExtensionsReady;
4967
+ private didLayout;
4968
+ private dimension;
4969
+ private _boundarySashes;
4970
+ private readonly visibleViewsCountFromCache;
4971
+ private readonly visibleViewsStorageId;
4972
+ protected readonly viewContainerModel: IViewContainerModel;
4973
+ private viewDisposables;
4974
+ private readonly _onTitleAreaUpdate;
4975
+ readonly onTitleAreaUpdate: Event$1<void>;
4976
+ private readonly _onDidChangeVisibility;
4977
+ readonly onDidChangeVisibility: Event$1<boolean>;
4978
+ private readonly _onDidAddViews;
4979
+ readonly onDidAddViews: Event$1<IView$3[]>;
4980
+ private readonly _onDidRemoveViews;
4981
+ readonly onDidRemoveViews: Event$1<IView$3[]>;
4982
+ private readonly _onDidChangeViewVisibility;
4983
+ readonly onDidChangeViewVisibility: Event$1<IView$3>;
4984
+ private readonly _onDidFocusView;
4985
+ readonly onDidFocusView: Event$1<IView$3>;
4986
+ private readonly _onDidBlurView;
4987
+ readonly onDidBlurView: Event$1<IView$3>;
4988
+ get onDidSashChange(): Event$1<number>;
4989
+ get panes(): ViewPane[];
4990
+ get views(): IView$3[];
4991
+ get length(): number;
4992
+ private _menuActions?;
4993
+ get menuActions(): CompositeMenuActions | undefined;
4994
+ constructor(id: string, options: IViewPaneContainerOptions, instantiationService: IInstantiationService, configurationService: IConfigurationService, layoutService: IWorkbenchLayoutService, contextMenuService: IContextMenuService, telemetryService: ITelemetryService, extensionService: IExtensionService, themeService: IThemeService, storageService: IStorageService, contextService: IWorkspaceContextService, viewDescriptorService: IViewDescriptorService);
4995
+ create(parent: HTMLElement): void;
4996
+ getTitle(): string;
4997
+ private showContextMenu;
4998
+ getActionsContext(): unknown;
4999
+ getActionViewItem(action: IAction): IActionViewItem | undefined;
5000
+ focus(): void;
5001
+ private get orientation();
5002
+ layout(dimension: Dimension): void;
5003
+ setBoundarySashes(sashes: IBoundarySashes): void;
5004
+ getOptimalWidth(): number;
5005
+ addPanes(panes: {
5006
+ pane: ViewPane;
5007
+ size: number;
5008
+ index?: number;
5009
+ }[]): void;
5010
+ setVisible(visible: boolean): void;
5011
+ isVisible(): boolean;
5012
+ protected updateTitleArea(): void;
5013
+ protected createView(viewDescriptor: IViewDescriptor, options: IViewletViewOptions): ViewPane;
5014
+ getView(id: string): ViewPane | undefined;
5015
+ private saveViewSizes;
5016
+ private restoreViewSizes;
5017
+ private computeInitialSizes;
5018
+ protected saveState(): void;
5019
+ private onContextMenu;
5020
+ openView(id: string, focus?: boolean): IView$3 | undefined;
5021
+ protected onDidAddViewDescriptors(added: IAddedViewDescriptorRef[]): ViewPane[];
5022
+ private onDidRemoveViewDescriptors;
5023
+ toggleViewVisibility(viewId: string): void;
5024
+ private addPane;
5025
+ removePanes(panes: ViewPane[]): void;
5026
+ private removePane;
5027
+ movePane(from: ViewPane, to: ViewPane): void;
5028
+ resizePane(pane: ViewPane, size: number): void;
5029
+ getPaneSize(pane: ViewPane): number;
5030
+ private updateViewHeaders;
5031
+ isViewMergedWithContainer(): boolean;
5032
+ private onDidScrollPane;
5033
+ private onDidSashReset;
5034
+ dispose(): void;
5035
+ }
5036
+
5037
+ declare abstract class PaneComposite extends Composite implements IPaneComposite {
5038
+ protected storageService: IStorageService;
5039
+ protected instantiationService: IInstantiationService;
5040
+ protected contextMenuService: IContextMenuService;
5041
+ protected extensionService: IExtensionService;
5042
+ protected contextService: IWorkspaceContextService;
5043
+ private viewPaneContainer?;
5044
+ constructor(id: string, telemetryService: ITelemetryService, storageService: IStorageService, instantiationService: IInstantiationService, themeService: IThemeService, contextMenuService: IContextMenuService, extensionService: IExtensionService, contextService: IWorkspaceContextService);
5045
+ create(parent: HTMLElement): void;
5046
+ setVisible(visible: boolean): void;
5047
+ layout(dimension: Dimension): void;
5048
+ setBoundarySashes(sashes: IBoundarySashes): void;
5049
+ getOptimalWidth(): number;
5050
+ openView<T extends IView$3>(id: string, focus?: boolean): T | undefined;
5051
+ getViewPaneContainer(): ViewPaneContainer | undefined;
5052
+ getActionsContext(): unknown;
5053
+ getContextMenuActions(): readonly IAction[];
5054
+ getMenuIds(): MenuId[];
5055
+ getActions(): readonly IAction[];
5056
+ getSecondaryActions(): readonly IAction[];
5057
+ getActionViewItem(action: IAction): IActionViewItem | undefined;
5058
+ getTitle(): string;
5059
+ focus(): void;
5060
+ protected abstract createViewPaneContainer(parent: HTMLElement): ViewPaneContainer;
5061
+ }
5062
+ /**
5063
+ * A Pane Composite descriptor is a lightweight descriptor of a Pane Composite in the workbench.
5064
+ */
5065
+ declare class PaneCompositeDescriptor extends CompositeDescriptor<PaneComposite> {
5066
+ readonly iconUrl?: URI | undefined;
5067
+ static create<Services extends BrandedService[]>(ctor: {
5068
+ new (...services: Services): PaneComposite;
5069
+ }, id: string, name: string, cssClass?: string, order?: number, requestedIndex?: number, iconUrl?: URI): PaneCompositeDescriptor;
5070
+ private constructor();
5071
+ }
5072
+
5073
+ interface IBadge {
5074
+ getDescription(): string;
5075
+ }
5076
+
5077
+ declare const IPaneCompositePartService: ServiceIdentifier<IPaneCompositePartService>;
5078
+ interface IPaneCompositePartService {
5079
+ readonly _serviceBrand: undefined;
5080
+ readonly onDidPaneCompositeOpen: Event$1<{
5081
+ composite: IPaneComposite;
5082
+ viewContainerLocation: ViewContainerLocation;
5083
+ }>;
5084
+ readonly onDidPaneCompositeClose: Event$1<{
5085
+ composite: IPaneComposite;
5086
+ viewContainerLocation: ViewContainerLocation;
5087
+ }>;
5088
+ /**
5089
+ * Opens a viewlet with the given identifier and pass keyboard focus to it if specified.
5090
+ */
5091
+ openPaneComposite(id: string | undefined, viewContainerLocation: ViewContainerLocation, focus?: boolean): Promise<IPaneComposite | undefined>;
5092
+ /**
5093
+ * Returns the current active viewlet if any.
5094
+ */
5095
+ getActivePaneComposite(viewContainerLocation: ViewContainerLocation): IPaneComposite | undefined;
5096
+ /**
5097
+ * Returns the viewlet by id.
5098
+ */
5099
+ getPaneComposite(id: string, viewContainerLocation: ViewContainerLocation): PaneCompositeDescriptor | undefined;
5100
+ /**
5101
+ * Returns all enabled viewlets
5102
+ */
5103
+ getPaneComposites(viewContainerLocation: ViewContainerLocation): PaneCompositeDescriptor[];
5104
+ /**
5105
+ * Returns id of pinned view containers following the visual order.
5106
+ */
5107
+ getPinnedPaneCompositeIds(viewContainerLocation: ViewContainerLocation): string[];
5108
+ /**
5109
+ * Returns id of visible view containers following the visual order.
5110
+ */
5111
+ getVisiblePaneCompositeIds(viewContainerLocation: ViewContainerLocation): string[];
5112
+ /**
5113
+ * Returns the progress indicator for the side bar.
5114
+ */
5115
+ getProgressIndicator(id: string, viewContainerLocation: ViewContainerLocation): IProgressIndicator | undefined;
5116
+ /**
5117
+ * Hide the active viewlet.
2526
5118
  */
2527
5119
  hideActivePaneComposite(viewContainerLocation: ViewContainerLocation): void;
2528
5120
  /**
@@ -2538,14 +5130,14 @@ interface IPaneCompositePartService {
2538
5130
  declare const ICodeEditorService: ServiceIdentifier<ICodeEditorService>;
2539
5131
  interface ICodeEditorService {
2540
5132
  readonly _serviceBrand: undefined;
2541
- readonly onWillCreateCodeEditor: Event<void>;
2542
- readonly onCodeEditorAdd: Event<ICodeEditor>;
2543
- readonly onCodeEditorRemove: Event<ICodeEditor>;
2544
- readonly onWillCreateDiffEditor: Event<void>;
2545
- readonly onDiffEditorAdd: Event<IDiffEditor$1>;
2546
- readonly onDiffEditorRemove: Event<IDiffEditor$1>;
2547
- readonly onDidChangeTransientModelProperty: Event<ITextModel>;
2548
- readonly onDecorationTypeRegistered: Event<string>;
5133
+ readonly onWillCreateCodeEditor: Event$1<void>;
5134
+ readonly onCodeEditorAdd: Event$1<ICodeEditor>;
5135
+ readonly onCodeEditorRemove: Event$1<ICodeEditor>;
5136
+ readonly onWillCreateDiffEditor: Event$1<void>;
5137
+ readonly onDiffEditorAdd: Event$1<IDiffEditor$1>;
5138
+ readonly onDiffEditorRemove: Event$1<IDiffEditor$1>;
5139
+ readonly onDidChangeTransientModelProperty: Event$1<ITextModel>;
5140
+ readonly onDecorationTypeRegistered: Event$1<string>;
2549
5141
  willCreateCodeEditor(): void;
2550
5142
  addCodeEditor(editor: ICodeEditor): void;
2551
5143
  removeCodeEditor(editor: ICodeEditor): void;
@@ -2590,6 +5182,10 @@ interface IExtensionResourceLoaderService {
2590
5182
  * Returns whether the gallery provides extension resources.
2591
5183
  */
2592
5184
  readonly supportsExtensionGalleryResources: boolean;
5185
+ /**
5186
+ * Return true if the given URI is a extension gallery resource.
5187
+ */
5188
+ isExtensionGalleryResource(uri: URI): boolean;
2593
5189
  /**
2594
5190
  * Computes the URL of a extension gallery resource. Returns `undefined` if gallery does not provide extension resources.
2595
5191
  */
@@ -2597,6 +5193,7 @@ interface IExtensionResourceLoaderService {
2597
5193
  publisher: string;
2598
5194
  name: string;
2599
5195
  version: string;
5196
+ targetPlatform?: TargetPlatform;
2600
5197
  }, path?: string): URI | undefined;
2601
5198
  }
2602
5199
 
@@ -2670,7 +5267,7 @@ interface IAudioCueService {
2670
5267
  playAudioCue(cue: AudioCue, allowManyInParallel?: boolean): Promise<void>;
2671
5268
  playAudioCues(cues: AudioCue[]): Promise<void>;
2672
5269
  isEnabled(cue: AudioCue): boolean;
2673
- onEnabledChanged(cue: AudioCue): Event<void>;
5270
+ onEnabledChanged(cue: AudioCue): Event$1<void>;
2674
5271
  playSound(cue: Sound, allowManyInParallel?: boolean): Promise<void>;
2675
5272
  }
2676
5273
  /**
@@ -2719,11 +5316,30 @@ declare class AudioCue {
2719
5316
  private constructor();
2720
5317
  }
2721
5318
 
5319
+ declare const IPreferencesSearchService: ServiceIdentifier<IPreferencesSearchService>;
5320
+ interface IPreferencesSearchService {
5321
+ readonly _serviceBrand: undefined;
5322
+ getLocalSearchProvider(filter: string): ISearchProvider;
5323
+ getRemoteSearchProvider(filter: string, newExtensionsOnly?: boolean): ISearchProvider | undefined;
5324
+ }
5325
+ interface ISearchProvider {
5326
+ searchModel(preferencesModel: ISettingsEditorModel, token?: CancellationToken): Promise<ISearchResult | null>;
5327
+ }
5328
+
5329
+ declare const IKeybindingEditingService: ServiceIdentifier<IKeybindingEditingService>;
5330
+ interface IKeybindingEditingService {
5331
+ readonly _serviceBrand: undefined;
5332
+ addKeybinding(keybindingItem: ResolvedKeybindingItem, key: string, when: string | undefined): Promise<void>;
5333
+ editKeybinding(keybindingItem: ResolvedKeybindingItem, key: string, when: string | undefined): Promise<void>;
5334
+ removeKeybinding(keybindingItem: ResolvedKeybindingItem): Promise<void>;
5335
+ resetKeybinding(keybindingItem: ResolvedKeybindingItem): Promise<void>;
5336
+ }
5337
+
2722
5338
  interface ServiceInitializeParticipant {
2723
5339
  (accessor: ServicesAccessor): Promise<void>;
2724
5340
  }
2725
5341
  declare function registerServiceInitializeParticipant(participant: ServiceInitializeParticipant): void;
2726
- declare const onRenderWorkbench: Event<ServicesAccessor>;
5342
+ declare const onRenderWorkbench: Event$1<ServicesAccessor>;
2727
5343
  declare function initialize(overrides: IEditorOverrideServices): Promise<void>;
2728
5344
 
2729
- export { IAudioCueService, IBulkEditService, IClipboardService, ICodeEditorService, IDebugService, IEditorService, IEditorWorkerService, IFileService, IHostService, ILanguageService, ILanguageStatusService, ILogService, IMarkdownString, IModelService, IPaneCompositePartService, IPathService, IProductService, IQuickInputService, ISnippetsService, IUriIdentityService, Severity, initialize, onRenderWorkbench, registerServiceInitializeParticipant };
5345
+ export { IAction, IAudioCueService, IBulkEditService, IClipboardService, ICodeEditorService, IColorTheme, ICommandService, IConfigurationChangeEvent, IConfigurationService, IDebugService, IEditorService, IEditorWorkerService, IFileService, IHostService, IInstantiationService, IKeybindingEditingService, ILanguageService, ILanguageStatusService, ILayoutService, ILogService, IMarkdownString, IModelService, IOpenerService, IPaneCompositePartService, IPathService, IPreferencesSearchService, IPreferencesService, IProductService, IQuickInputService, ISnippetsService, IStorageService, ITelemetryService, IThemeService, IUriIdentityService, IWorkbenchEnvironmentService, IWorkspaceContextService, Severity, StorageScope, StorageTarget, initialize, onRenderWorkbench, registerServiceInitializeParticipant };