vscode_theme/generated/
theme.rs

1// This is a generated file.
2// Do not modify by hand!
3
4use crate::serde::empty_string_as_none;
5use serde::{Deserialize, Serialize};
6#[derive(Debug, Clone, Serialize, Deserialize)]
7pub struct Colors {
8    /// An extra border around active elements to separate them from others for greater contrast.
9    #[serde(
10        default,
11        rename = "contrastActiveBorder",
12        deserialize_with = "empty_string_as_none"
13    )]
14    pub contrast_active_border: Option<String>,
15    /// An extra border around elements to separate them from others for greater contrast.
16    #[serde(
17        default,
18        rename = "contrastBorder",
19        deserialize_with = "empty_string_as_none"
20    )]
21    pub contrast_border: Option<String>,
22    /// Overall border color for focused elements. This color is only used if not overridden by a component.
23    #[serde(
24        default,
25        rename = "focusBorder",
26        deserialize_with = "empty_string_as_none"
27    )]
28    pub focus_border: Option<String>,
29    /// Overall foreground color. This color is only used if not overridden by a component.
30    #[serde(
31        default,
32        rename = "foreground",
33        deserialize_with = "empty_string_as_none"
34    )]
35    pub foreground: Option<String>,
36    /// Overall foreground for disabled elements. This color is only used if not overridden by a component.
37    #[serde(
38        default,
39        rename = "disabledForeground",
40        deserialize_with = "empty_string_as_none"
41    )]
42    pub disabled_foreground: Option<String>,
43    /// Foreground color for description text providing additional information, for example for a label.
44    #[serde(
45        default,
46        rename = "descriptionForeground",
47        deserialize_with = "empty_string_as_none"
48    )]
49    pub description_foreground: Option<String>,
50    /// Overall foreground color for error messages (this color is only used if not overridden by a component).
51    #[serde(
52        default,
53        rename = "errorForeground",
54        deserialize_with = "empty_string_as_none"
55    )]
56    pub error_foreground: Option<String>,
57    #[serde(flatten)]
58    pub widget: WidgetColors,
59    #[serde(flatten)]
60    pub selection: SelectionColors,
61    #[serde(flatten)]
62    pub icon: IconColors,
63    #[serde(flatten)]
64    pub sash: SashColors,
65    #[serde(flatten)]
66    pub window: WindowColors,
67    #[serde(flatten)]
68    pub text_block_quote: TextBlockQuoteColors,
69    #[serde(flatten)]
70    pub text_code_block: TextCodeBlockColors,
71    #[serde(flatten)]
72    pub text_link: TextLinkColors,
73    #[serde(flatten)]
74    pub text_preformat: TextPreformatColors,
75    #[serde(flatten)]
76    pub text_separator: TextSeparatorColors,
77    #[serde(flatten)]
78    pub toolbar: ToolbarColors,
79    #[serde(flatten)]
80    pub button: ButtonColors,
81    #[serde(flatten)]
82    pub checkbox: CheckboxColors,
83    #[serde(flatten)]
84    pub dropdown: DropdownColors,
85    #[serde(flatten)]
86    pub input: InputColors,
87    #[serde(flatten)]
88    pub input_option: InputOptionColors,
89    #[serde(flatten)]
90    pub input_validation: InputValidationColors,
91    #[serde(flatten)]
92    pub scrollbar: ScrollbarColors,
93    #[serde(flatten)]
94    pub scrollbar_slider: ScrollbarSliderColors,
95    #[serde(flatten)]
96    pub badge: BadgeColors,
97    #[serde(flatten)]
98    pub progress_bar: ProgressBarColors,
99    #[serde(flatten)]
100    pub list: ListColors,
101    #[serde(flatten)]
102    pub list_filter_widget: ListFilterWidgetColors,
103    #[serde(flatten)]
104    pub tree: TreeColors,
105    #[serde(flatten)]
106    pub activity_bar: ActivityBarColors,
107    #[serde(flatten)]
108    pub activity_bar_badge: ActivityBarBadgeColors,
109    #[serde(flatten)]
110    pub profile_badge: ProfileBadgeColors,
111    #[serde(flatten)]
112    pub side_bar: SideBarColors,
113    #[serde(flatten)]
114    pub side_bar_title: SideBarTitleColors,
115    #[serde(flatten)]
116    pub side_bar_section_header: SideBarSectionHeaderColors,
117    #[serde(flatten)]
118    pub minimap: MinimapColors,
119    #[serde(flatten)]
120    pub minimap_slider: MinimapSliderColors,
121    #[serde(flatten)]
122    pub minimap_gutter: MinimapGutterColors,
123    #[serde(flatten)]
124    pub editor_group: EditorGroupColors,
125    #[serde(flatten)]
126    pub editor_group_header: EditorGroupHeaderColors,
127    #[serde(flatten)]
128    pub tab: TabColors,
129    #[serde(flatten)]
130    pub editor_pane: EditorPaneColors,
131    #[serde(flatten)]
132    pub side_by_side_editor: SideBySideEditorColors,
133    #[serde(flatten)]
134    pub editor: EditorColors,
135    #[serde(flatten)]
136    pub editor_line_number: EditorLineNumberColors,
137    #[serde(flatten)]
138    pub editor_cursor: EditorCursorColors,
139    #[serde(flatten)]
140    pub search: SearchColors,
141    #[serde(flatten)]
142    pub search_editor: SearchEditorColors,
143    #[serde(flatten)]
144    pub editor_unicode_highlight: EditorUnicodeHighlightColors,
145    #[serde(flatten)]
146    pub editor_link: EditorLinkColors,
147    #[serde(flatten)]
148    pub editor_whitespace: EditorWhitespaceColors,
149    #[serde(flatten)]
150    pub editor_indent_guide: EditorIndentGuideColors,
151    #[serde(flatten)]
152    pub editor_inlay_hint: EditorInlayHintColors,
153    #[serde(flatten)]
154    pub editor_ruler: EditorRulerColors,
155    #[serde(flatten)]
156    pub editor_code_lens: EditorCodeLensColors,
157    #[serde(flatten)]
158    pub editor_light_bulb: EditorLightBulbColors,
159    #[serde(flatten)]
160    pub editor_light_bulb_auto_fix: EditorLightBulbAutoFixColors,
161    #[serde(flatten)]
162    pub editor_light_bulb_ai: EditorLightBulbAiColors,
163    #[serde(flatten)]
164    pub editor_bracket_match: EditorBracketMatchColors,
165    #[serde(flatten)]
166    pub editor_bracket_highlight: EditorBracketHighlightColors,
167    #[serde(flatten)]
168    pub editor_bracket_pair_guide: EditorBracketPairGuideColors,
169    #[serde(flatten)]
170    pub editor_overview_ruler: EditorOverviewRulerColors,
171    #[serde(flatten)]
172    pub editor_error: EditorErrorColors,
173    #[serde(flatten)]
174    pub editor_warning: EditorWarningColors,
175    #[serde(flatten)]
176    pub editor_info: EditorInfoColors,
177    #[serde(flatten)]
178    pub editor_hint: EditorHintColors,
179    #[serde(flatten)]
180    pub problems_error_icon: ProblemsErrorIconColors,
181    #[serde(flatten)]
182    pub problems_warning_icon: ProblemsWarningIconColors,
183    #[serde(flatten)]
184    pub problems_info_icon: ProblemsInfoIconColors,
185    #[serde(flatten)]
186    pub editor_unnecessary_code: EditorUnnecessaryCodeColors,
187    #[serde(flatten)]
188    pub editor_gutter: EditorGutterColors,
189    #[serde(flatten)]
190    pub editor_comments_widget: EditorCommentsWidgetColors,
191    #[serde(flatten)]
192    pub diff_editor: DiffEditorColors,
193    #[serde(flatten)]
194    pub diff_editor_gutter: DiffEditorGutterColors,
195    #[serde(flatten)]
196    pub diff_editor_overview: DiffEditorOverviewColors,
197    #[serde(flatten)]
198    pub multi_diff_editor: MultiDiffEditorColors,
199    #[serde(flatten)]
200    pub chat: ChatColors,
201    #[serde(flatten)]
202    pub inline_chat: InlineChatColors,
203    #[serde(flatten)]
204    pub inline_chat_input: InlineChatInputColors,
205    #[serde(flatten)]
206    pub inline_chat_diff: InlineChatDiffColors,
207    #[serde(flatten)]
208    pub editor_widget: EditorWidgetColors,
209    #[serde(flatten)]
210    pub editor_suggest_widget: EditorSuggestWidgetColors,
211    #[serde(flatten)]
212    pub editor_suggest_widget_status: EditorSuggestWidgetStatusColors,
213    #[serde(flatten)]
214    pub editor_hover_widget: EditorHoverWidgetColors,
215    #[serde(flatten)]
216    pub editor_ghost_text: EditorGhostTextColors,
217    #[serde(flatten)]
218    pub editor_sticky_scroll: EditorStickyScrollColors,
219    #[serde(flatten)]
220    pub editor_sticky_scroll_hover: EditorStickyScrollHoverColors,
221    #[serde(flatten)]
222    pub debug_exception_widget: DebugExceptionWidgetColors,
223    #[serde(flatten)]
224    pub editor_marker_navigation: EditorMarkerNavigationColors,
225    #[serde(flatten)]
226    pub editor_marker_navigation_error: EditorMarkerNavigationErrorColors,
227    #[serde(flatten)]
228    pub editor_marker_navigation_warning: EditorMarkerNavigationWarningColors,
229    #[serde(flatten)]
230    pub editor_marker_navigation_info: EditorMarkerNavigationInfoColors,
231    #[serde(flatten)]
232    pub peek_view: PeekViewColors,
233    #[serde(flatten)]
234    pub peek_view_editor: PeekViewEditorColors,
235    #[serde(flatten)]
236    pub peek_view_editor_gutter: PeekViewEditorGutterColors,
237    #[serde(flatten)]
238    pub peek_view_result: PeekViewResultColors,
239    #[serde(flatten)]
240    pub peek_view_title: PeekViewTitleColors,
241    #[serde(flatten)]
242    pub peek_view_title_description: PeekViewTitleDescriptionColors,
243    #[serde(flatten)]
244    pub peek_view_title_label: PeekViewTitleLabelColors,
245    #[serde(flatten)]
246    pub peek_view_editor_sticky_scroll: PeekViewEditorStickyScrollColors,
247    #[serde(flatten)]
248    pub merge: MergeColors,
249    #[serde(flatten)]
250    pub merge_editor: MergeEditorColors,
251    #[serde(flatten)]
252    pub panel: PanelColors,
253    #[serde(flatten)]
254    pub panel_title: PanelTitleColors,
255    #[serde(flatten)]
256    pub panel_input: PanelInputColors,
257    #[serde(flatten)]
258    pub panel_section: PanelSectionColors,
259    #[serde(flatten)]
260    pub panel_section_header: PanelSectionHeaderColors,
261    #[serde(flatten)]
262    pub status_bar: StatusBarColors,
263    #[serde(flatten)]
264    pub status_bar_item: StatusBarItemColors,
265    #[serde(flatten)]
266    pub title_bar: TitleBarColors,
267    #[serde(flatten)]
268    pub menubar: MenubarColors,
269    #[serde(flatten)]
270    pub menu: MenuColors,
271    #[serde(flatten)]
272    pub command_center: CommandCenterColors,
273    #[serde(flatten)]
274    pub notification_center: NotificationCenterColors,
275    #[serde(flatten)]
276    pub notification_center_header: NotificationCenterHeaderColors,
277    #[serde(flatten)]
278    pub notification_toast: NotificationToastColors,
279    #[serde(flatten)]
280    pub notifications: NotificationsColors,
281    #[serde(flatten)]
282    pub notification_link: NotificationLinkColors,
283    #[serde(flatten)]
284    pub notifications_error_icon: NotificationsErrorIconColors,
285    #[serde(flatten)]
286    pub notifications_warning_icon: NotificationsWarningIconColors,
287    #[serde(flatten)]
288    pub notifications_info_icon: NotificationsInfoIconColors,
289    #[serde(flatten)]
290    pub banner: BannerColors,
291    #[serde(flatten)]
292    pub extension_button: ExtensionButtonColors,
293    #[serde(flatten)]
294    pub extension_badge: ExtensionBadgeColors,
295    #[serde(flatten)]
296    pub extension_icon: ExtensionIconColors,
297    #[serde(flatten)]
298    pub picker_group: PickerGroupColors,
299    #[serde(flatten)]
300    pub quick_input: QuickInputColors,
301    #[serde(flatten)]
302    pub quick_input_list: QuickInputListColors,
303    #[serde(flatten)]
304    pub quick_input_title: QuickInputTitleColors,
305    #[serde(flatten)]
306    pub keybinding_label: KeybindingLabelColors,
307    #[serde(flatten)]
308    pub keybinding_table: KeybindingTableColors,
309    #[serde(flatten)]
310    pub terminal: TerminalColors,
311    #[serde(flatten)]
312    pub terminal_cursor: TerminalCursorColors,
313    #[serde(flatten)]
314    pub terminal_command_decoration: TerminalCommandDecorationColors,
315    #[serde(flatten)]
316    pub terminal_overview_ruler: TerminalOverviewRulerColors,
317    #[serde(flatten)]
318    pub terminal_sticky_scroll: TerminalStickyScrollColors,
319    #[serde(flatten)]
320    pub terminal_sticky_scroll_hover: TerminalStickyScrollHoverColors,
321    #[serde(flatten)]
322    pub debug_tool_bar: DebugToolBarColors,
323    #[serde(flatten)]
324    pub debug_view: DebugViewColors,
325    #[serde(flatten)]
326    pub debug_token_expression: DebugTokenExpressionColors,
327    #[serde(flatten)]
328    pub testing: TestingColors,
329    #[serde(flatten)]
330    pub welcome_page: WelcomePageColors,
331    #[serde(flatten)]
332    pub walk_through: WalkThroughColors,
333    #[serde(flatten)]
334    pub walkthrough: WalkthroughColors,
335    #[serde(flatten)]
336    pub git_decoration: GitDecorationColors,
337    #[serde(flatten)]
338    pub settings: SettingsColors,
339    #[serde(flatten)]
340    pub breadcrumb: BreadcrumbColors,
341    #[serde(flatten)]
342    pub breadcrumb_picker: BreadcrumbPickerColors,
343    #[serde(flatten)]
344    pub symbol_icon: SymbolIconColors,
345    #[serde(flatten)]
346    pub debug_icon: DebugIconColors,
347    #[serde(flatten)]
348    pub debug_console: DebugConsoleColors,
349    #[serde(flatten)]
350    pub debug_console_input_icon: DebugConsoleInputIconColors,
351    #[serde(flatten)]
352    pub notebook: NotebookColors,
353    #[serde(flatten)]
354    pub notebook_scrollbar_slider: NotebookScrollbarSliderColors,
355    #[serde(flatten)]
356    pub notebook_status_error_icon: NotebookStatusErrorIconColors,
357    #[serde(flatten)]
358    pub notebook_status_running_icon: NotebookStatusRunningIconColors,
359    #[serde(flatten)]
360    pub notebook_status_success_icon: NotebookStatusSuccessIconColors,
361    #[serde(flatten)]
362    pub notebook_editor_overview_ruler: NotebookEditorOverviewRulerColors,
363    #[serde(flatten)]
364    pub charts: ChartsColors,
365    #[serde(flatten)]
366    pub ports: PortsColors,
367    #[serde(flatten)]
368    pub comments_view: CommentsViewColors,
369    #[serde(flatten)]
370    pub action_bar: ActionBarColors,
371    #[serde(flatten)]
372    pub simple_find_widget: SimpleFindWidgetColors,
373    #[serde(flatten)]
374    pub scm: ScmColors,
375}
376#[derive(Debug, Clone, Serialize, Deserialize)]
377pub struct WidgetColors {
378    /// Border color of widgets such as Find/Replace inside the editor.
379    #[serde(
380        default,
381        rename = "widget.border",
382        deserialize_with = "empty_string_as_none"
383    )]
384    pub border: Option<String>,
385    /// Shadow color of widgets such as Find/Replace inside the editor.
386    #[serde(
387        default,
388        rename = "widget.shadow",
389        deserialize_with = "empty_string_as_none"
390    )]
391    pub shadow: Option<String>,
392}
393#[derive(Debug, Clone, Serialize, Deserialize)]
394pub struct SelectionColors {
395    /// Background color of text selections in the workbench (for input fields or text areas, does not apply to selections within the editor and the terminal).
396    #[serde(
397        default,
398        rename = "selection.background",
399        deserialize_with = "empty_string_as_none"
400    )]
401    pub background: Option<String>,
402}
403#[derive(Debug, Clone, Serialize, Deserialize)]
404pub struct IconColors {
405    /// The default color for icons in the workbench.
406    #[serde(
407        default,
408        rename = "icon.foreground",
409        deserialize_with = "empty_string_as_none"
410    )]
411    pub foreground: Option<String>,
412}
413#[derive(Debug, Clone, Serialize, Deserialize)]
414pub struct SashColors {
415    /// The hover border color for draggable sashes.
416    #[serde(
417        default,
418        rename = "sash.hoverBorder",
419        deserialize_with = "empty_string_as_none"
420    )]
421    pub hover_border: Option<String>,
422}
423#[derive(Debug, Clone, Serialize, Deserialize)]
424pub struct WindowColors {
425    /// Border color for the active (focused) window.
426    #[serde(
427        default,
428        rename = "window.activeBorder",
429        deserialize_with = "empty_string_as_none"
430    )]
431    pub active_border: Option<String>,
432    /// Border color for the inactive (unfocused) windows.
433    #[serde(
434        default,
435        rename = "window.inactiveBorder",
436        deserialize_with = "empty_string_as_none"
437    )]
438    pub inactive_border: Option<String>,
439}
440#[derive(Debug, Clone, Serialize, Deserialize)]
441pub struct TextBlockQuoteColors {
442    /// Background color for block quotes in text.
443    #[serde(
444        default,
445        rename = "textBlockQuote.background",
446        deserialize_with = "empty_string_as_none"
447    )]
448    pub background: Option<String>,
449    /// Border color for block quotes in text.
450    #[serde(
451        default,
452        rename = "textBlockQuote.border",
453        deserialize_with = "empty_string_as_none"
454    )]
455    pub border: Option<String>,
456}
457#[derive(Debug, Clone, Serialize, Deserialize)]
458pub struct TextCodeBlockColors {
459    /// Background color for code blocks in text.
460    #[serde(
461        default,
462        rename = "textCodeBlock.background",
463        deserialize_with = "empty_string_as_none"
464    )]
465    pub background: Option<String>,
466}
467#[derive(Debug, Clone, Serialize, Deserialize)]
468pub struct TextLinkColors {
469    /// Foreground color for links in text when clicked on and on mouse hover.
470    #[serde(
471        default,
472        rename = "textLink.activeForeground",
473        deserialize_with = "empty_string_as_none"
474    )]
475    pub active_foreground: Option<String>,
476    /// Foreground color for links in text.
477    #[serde(
478        default,
479        rename = "textLink.foreground",
480        deserialize_with = "empty_string_as_none"
481    )]
482    pub foreground: Option<String>,
483}
484#[derive(Debug, Clone, Serialize, Deserialize)]
485pub struct TextPreformatColors {
486    /// Foreground color for preformatted text segments.
487    #[serde(
488        default,
489        rename = "textPreformat.foreground",
490        deserialize_with = "empty_string_as_none"
491    )]
492    pub foreground: Option<String>,
493    /// Background color for preformatted text segments.
494    #[serde(
495        default,
496        rename = "textPreformat.background",
497        deserialize_with = "empty_string_as_none"
498    )]
499    pub background: Option<String>,
500}
501#[derive(Debug, Clone, Serialize, Deserialize)]
502pub struct TextSeparatorColors {
503    /// Color for text separators.
504    #[serde(
505        default,
506        rename = "textSeparator.foreground",
507        deserialize_with = "empty_string_as_none"
508    )]
509    pub foreground: Option<String>,
510}
511#[derive(Debug, Clone, Serialize, Deserialize)]
512pub struct ToolbarColors {
513    /// Toolbar background when hovering over actions using the mouse
514    #[serde(
515        default,
516        rename = "toolbar.hoverBackground",
517        deserialize_with = "empty_string_as_none"
518    )]
519    pub hover_background: Option<String>,
520    /// Toolbar outline when hovering over actions using the mouse
521    #[serde(
522        default,
523        rename = "toolbar.hoverOutline",
524        deserialize_with = "empty_string_as_none"
525    )]
526    pub hover_outline: Option<String>,
527    /// Toolbar background when holding the mouse over actions
528    #[serde(
529        default,
530        rename = "toolbar.activeBackground",
531        deserialize_with = "empty_string_as_none"
532    )]
533    pub active_background: Option<String>,
534}
535#[derive(Debug, Clone, Serialize, Deserialize)]
536pub struct ButtonColors {
537    /// Button background color.
538    #[serde(
539        default,
540        rename = "button.background",
541        deserialize_with = "empty_string_as_none"
542    )]
543    pub background: Option<String>,
544    /// Button foreground color.
545    #[serde(
546        default,
547        rename = "button.foreground",
548        deserialize_with = "empty_string_as_none"
549    )]
550    pub foreground: Option<String>,
551    /// Button border color.
552    #[serde(
553        default,
554        rename = "button.border",
555        deserialize_with = "empty_string_as_none"
556    )]
557    pub border: Option<String>,
558    /// Button separator color.
559    #[serde(
560        default,
561        rename = "button.separator",
562        deserialize_with = "empty_string_as_none"
563    )]
564    pub separator: Option<String>,
565    /// Button background color when hovering.
566    #[serde(
567        default,
568        rename = "button.hoverBackground",
569        deserialize_with = "empty_string_as_none"
570    )]
571    pub hover_background: Option<String>,
572    /// Secondary button foreground color.
573    #[serde(
574        default,
575        rename = "button.secondaryForeground",
576        deserialize_with = "empty_string_as_none"
577    )]
578    pub secondary_foreground: Option<String>,
579    /// Secondary button background color.
580    #[serde(
581        default,
582        rename = "button.secondaryBackground",
583        deserialize_with = "empty_string_as_none"
584    )]
585    pub secondary_background: Option<String>,
586    /// Secondary button background color when hovering.
587    #[serde(
588        default,
589        rename = "button.secondaryHoverBackground",
590        deserialize_with = "empty_string_as_none"
591    )]
592    pub secondary_hover_background: Option<String>,
593}
594#[derive(Debug, Clone, Serialize, Deserialize)]
595pub struct CheckboxColors {
596    /// Background color of checkbox widget.
597    #[serde(
598        default,
599        rename = "checkbox.background",
600        deserialize_with = "empty_string_as_none"
601    )]
602    pub background: Option<String>,
603    /// Foreground color of checkbox widget.
604    #[serde(
605        default,
606        rename = "checkbox.foreground",
607        deserialize_with = "empty_string_as_none"
608    )]
609    pub foreground: Option<String>,
610    /// Border color of checkbox widget.
611    #[serde(
612        default,
613        rename = "checkbox.border",
614        deserialize_with = "empty_string_as_none"
615    )]
616    pub border: Option<String>,
617    /// Background color of checkbox widget when the element it's in is selected.
618    #[serde(
619        default,
620        rename = "checkbox.selectBackground",
621        deserialize_with = "empty_string_as_none"
622    )]
623    pub select_background: Option<String>,
624    /// Border color of checkbox widget when the element it's in is selected.
625    #[serde(
626        default,
627        rename = "checkbox.selectBorder",
628        deserialize_with = "empty_string_as_none"
629    )]
630    pub select_border: Option<String>,
631}
632#[derive(Debug, Clone, Serialize, Deserialize)]
633pub struct DropdownColors {
634    /// Dropdown background.
635    #[serde(
636        default,
637        rename = "dropdown.background",
638        deserialize_with = "empty_string_as_none"
639    )]
640    pub background: Option<String>,
641    /// Dropdown list background.
642    #[serde(
643        default,
644        rename = "dropdown.listBackground",
645        deserialize_with = "empty_string_as_none"
646    )]
647    pub list_background: Option<String>,
648    /// Dropdown border.
649    #[serde(
650        default,
651        rename = "dropdown.border",
652        deserialize_with = "empty_string_as_none"
653    )]
654    pub border: Option<String>,
655    /// Dropdown foreground.
656    #[serde(
657        default,
658        rename = "dropdown.foreground",
659        deserialize_with = "empty_string_as_none"
660    )]
661    pub foreground: Option<String>,
662}
663#[derive(Debug, Clone, Serialize, Deserialize)]
664pub struct InputColors {
665    /// Input box background.
666    #[serde(
667        default,
668        rename = "input.background",
669        deserialize_with = "empty_string_as_none"
670    )]
671    pub background: Option<String>,
672    /// Input box border.
673    #[serde(
674        default,
675        rename = "input.border",
676        deserialize_with = "empty_string_as_none"
677    )]
678    pub border: Option<String>,
679    /// Input box foreground.
680    #[serde(
681        default,
682        rename = "input.foreground",
683        deserialize_with = "empty_string_as_none"
684    )]
685    pub foreground: Option<String>,
686    /// Input box foreground color for placeholder text.
687    #[serde(
688        default,
689        rename = "input.placeholderForeground",
690        deserialize_with = "empty_string_as_none"
691    )]
692    pub placeholder_foreground: Option<String>,
693}
694#[derive(Debug, Clone, Serialize, Deserialize)]
695pub struct InputOptionColors {
696    /// Background color of activated options in input fields.
697    #[serde(
698        default,
699        rename = "inputOption.activeBackground",
700        deserialize_with = "empty_string_as_none"
701    )]
702    pub active_background: Option<String>,
703    /// Border color of activated options in input fields.
704    #[serde(
705        default,
706        rename = "inputOption.activeBorder",
707        deserialize_with = "empty_string_as_none"
708    )]
709    pub active_border: Option<String>,
710    /// Foreground color of activated options in input fields.
711    #[serde(
712        default,
713        rename = "inputOption.activeForeground",
714        deserialize_with = "empty_string_as_none"
715    )]
716    pub active_foreground: Option<String>,
717    /// Background color of activated options in input fields.
718    #[serde(
719        default,
720        rename = "inputOption.hoverBackground",
721        deserialize_with = "empty_string_as_none"
722    )]
723    pub hover_background: Option<String>,
724}
725#[derive(Debug, Clone, Serialize, Deserialize)]
726pub struct InputValidationColors {
727    /// Input validation background color for error severity.
728    #[serde(
729        default,
730        rename = "inputValidation.errorBackground",
731        deserialize_with = "empty_string_as_none"
732    )]
733    pub error_background: Option<String>,
734    /// Input validation foreground color for error severity.
735    #[serde(
736        default,
737        rename = "inputValidation.errorForeground",
738        deserialize_with = "empty_string_as_none"
739    )]
740    pub error_foreground: Option<String>,
741    /// Input validation border color for error severity.
742    #[serde(
743        default,
744        rename = "inputValidation.errorBorder",
745        deserialize_with = "empty_string_as_none"
746    )]
747    pub error_border: Option<String>,
748    /// Input validation background color for information severity.
749    #[serde(
750        default,
751        rename = "inputValidation.infoBackground",
752        deserialize_with = "empty_string_as_none"
753    )]
754    pub info_background: Option<String>,
755    /// Input validation foreground color for information severity.
756    #[serde(
757        default,
758        rename = "inputValidation.infoForeground",
759        deserialize_with = "empty_string_as_none"
760    )]
761    pub info_foreground: Option<String>,
762    /// Input validation border color for information severity.
763    #[serde(
764        default,
765        rename = "inputValidation.infoBorder",
766        deserialize_with = "empty_string_as_none"
767    )]
768    pub info_border: Option<String>,
769    /// Input validation background color for information warning.
770    #[serde(
771        default,
772        rename = "inputValidation.warningBackground",
773        deserialize_with = "empty_string_as_none"
774    )]
775    pub warning_background: Option<String>,
776    /// Input validation foreground color for warning severity.
777    #[serde(
778        default,
779        rename = "inputValidation.warningForeground",
780        deserialize_with = "empty_string_as_none"
781    )]
782    pub warning_foreground: Option<String>,
783    /// Input validation border color for warning severity.
784    #[serde(
785        default,
786        rename = "inputValidation.warningBorder",
787        deserialize_with = "empty_string_as_none"
788    )]
789    pub warning_border: Option<String>,
790}
791#[derive(Debug, Clone, Serialize, Deserialize)]
792pub struct ScrollbarColors {
793    /// Scrollbar slider shadow to indicate that the view is scrolled.
794    #[serde(
795        default,
796        rename = "scrollbar.shadow",
797        deserialize_with = "empty_string_as_none"
798    )]
799    pub shadow: Option<String>,
800}
801#[derive(Debug, Clone, Serialize, Deserialize)]
802pub struct ScrollbarSliderColors {
803    /// Scrollbar slider background color when clicked on.
804    #[serde(
805        default,
806        rename = "scrollbarSlider.activeBackground",
807        deserialize_with = "empty_string_as_none"
808    )]
809    pub active_background: Option<String>,
810    /// Scrollbar slider background color.
811    #[serde(
812        default,
813        rename = "scrollbarSlider.background",
814        deserialize_with = "empty_string_as_none"
815    )]
816    pub background: Option<String>,
817    /// Scrollbar slider background color when hovering.
818    #[serde(
819        default,
820        rename = "scrollbarSlider.hoverBackground",
821        deserialize_with = "empty_string_as_none"
822    )]
823    pub hover_background: Option<String>,
824}
825#[derive(Debug, Clone, Serialize, Deserialize)]
826pub struct BadgeColors {
827    /// Badge foreground color.
828    #[serde(
829        default,
830        rename = "badge.foreground",
831        deserialize_with = "empty_string_as_none"
832    )]
833    pub foreground: Option<String>,
834    /// Badge background color.
835    #[serde(
836        default,
837        rename = "badge.background",
838        deserialize_with = "empty_string_as_none"
839    )]
840    pub background: Option<String>,
841}
842#[derive(Debug, Clone, Serialize, Deserialize)]
843pub struct ProgressBarColors {
844    /// Background color of the progress bar shown for long running operations.
845    #[serde(
846        default,
847        rename = "progressBar.background",
848        deserialize_with = "empty_string_as_none"
849    )]
850    pub background: Option<String>,
851}
852#[derive(Debug, Clone, Serialize, Deserialize)]
853pub struct ListColors {
854    /// List/Tree background color for the selected item when the list/tree is active.
855    #[serde(
856        default,
857        rename = "list.activeSelectionBackground",
858        deserialize_with = "empty_string_as_none"
859    )]
860    pub active_selection_background: Option<String>,
861    /// List/Tree foreground color for the selected item when the list/tree is active.
862    #[serde(
863        default,
864        rename = "list.activeSelectionForeground",
865        deserialize_with = "empty_string_as_none"
866    )]
867    pub active_selection_foreground: Option<String>,
868    /// List/Tree icon foreground color for the selected item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.
869    #[serde(
870        default,
871        rename = "list.activeSelectionIconForeground",
872        deserialize_with = "empty_string_as_none"
873    )]
874    pub active_selection_icon_foreground: Option<String>,
875    /// List/Tree drag and drop background when moving items around using the mouse.
876    #[serde(
877        default,
878        rename = "list.dropBackground",
879        deserialize_with = "empty_string_as_none"
880    )]
881    pub drop_background: Option<String>,
882    /// List/Tree background color for the focused item when the list/tree is active.
883    #[serde(
884        default,
885        rename = "list.focusBackground",
886        deserialize_with = "empty_string_as_none"
887    )]
888    pub focus_background: Option<String>,
889    /// List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.
890    #[serde(
891        default,
892        rename = "list.focusForeground",
893        deserialize_with = "empty_string_as_none"
894    )]
895    pub focus_foreground: Option<String>,
896    /// List/Tree foreground color of the match highlights on actively focused items when searching inside the list/tree.
897    #[serde(
898        default,
899        rename = "list.focusHighlightForeground",
900        deserialize_with = "empty_string_as_none"
901    )]
902    pub focus_highlight_foreground: Option<String>,
903    /// List/Tree outline color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not.
904    #[serde(
905        default,
906        rename = "list.focusOutline",
907        deserialize_with = "empty_string_as_none"
908    )]
909    pub focus_outline: Option<String>,
910    /// List/Tree outline color for the focused item when the list/tree is active and selected. An active list/tree has keyboard focus, an inactive does not.
911    #[serde(
912        default,
913        rename = "list.focusAndSelectionOutline",
914        deserialize_with = "empty_string_as_none"
915    )]
916    pub focus_and_selection_outline: Option<String>,
917    /// List/Tree foreground color of the match highlights when searching inside the list/tree.
918    #[serde(
919        default,
920        rename = "list.highlightForeground",
921        deserialize_with = "empty_string_as_none"
922    )]
923    pub highlight_foreground: Option<String>,
924    /// List/Tree background when hovering over items using the mouse.
925    #[serde(
926        default,
927        rename = "list.hoverBackground",
928        deserialize_with = "empty_string_as_none"
929    )]
930    pub hover_background: Option<String>,
931    /// List/Tree foreground when hovering over items using the mouse.
932    #[serde(
933        default,
934        rename = "list.hoverForeground",
935        deserialize_with = "empty_string_as_none"
936    )]
937    pub hover_foreground: Option<String>,
938    /// List/Tree background color for the selected item when the list/tree is inactive.
939    #[serde(
940        default,
941        rename = "list.inactiveSelectionBackground",
942        deserialize_with = "empty_string_as_none"
943    )]
944    pub inactive_selection_background: Option<String>,
945    /// List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.
946    #[serde(
947        default,
948        rename = "list.inactiveSelectionForeground",
949        deserialize_with = "empty_string_as_none"
950    )]
951    pub inactive_selection_foreground: Option<String>,
952    /// List/Tree icon foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.
953    #[serde(
954        default,
955        rename = "list.inactiveSelectionIconForeground",
956        deserialize_with = "empty_string_as_none"
957    )]
958    pub inactive_selection_icon_foreground: Option<String>,
959    /// List background color for the focused item when the list is inactive. An active list has keyboard focus, an inactive does not. Currently only supported in lists.
960    #[serde(
961        default,
962        rename = "list.inactiveFocusBackground",
963        deserialize_with = "empty_string_as_none"
964    )]
965    pub inactive_focus_background: Option<String>,
966    /// List/Tree outline color for the focused item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not.
967    #[serde(
968        default,
969        rename = "list.inactiveFocusOutline",
970        deserialize_with = "empty_string_as_none"
971    )]
972    pub inactive_focus_outline: Option<String>,
973    /// List/Tree foreground color for invalid items, for example an unresolved root in explorer.
974    #[serde(
975        default,
976        rename = "list.invalidItemForeground",
977        deserialize_with = "empty_string_as_none"
978    )]
979    pub invalid_item_foreground: Option<String>,
980    /// Foreground color of list items containing errors.
981    #[serde(
982        default,
983        rename = "list.errorForeground",
984        deserialize_with = "empty_string_as_none"
985    )]
986    pub error_foreground: Option<String>,
987    /// Foreground color of list items containing warnings.
988    #[serde(
989        default,
990        rename = "list.warningForeground",
991        deserialize_with = "empty_string_as_none"
992    )]
993    pub warning_foreground: Option<String>,
994    /// Background color of the filtered matches in lists and trees.
995    #[serde(
996        default,
997        rename = "list.filterMatchBackground",
998        deserialize_with = "empty_string_as_none"
999    )]
1000    pub filter_match_background: Option<String>,
1001    /// Border color of the filtered matches in lists and trees.
1002    #[serde(
1003        default,
1004        rename = "list.filterMatchBorder",
1005        deserialize_with = "empty_string_as_none"
1006    )]
1007    pub filter_match_border: Option<String>,
1008    /// List/Tree foreground color for items that are deemphasized.
1009    #[serde(
1010        default,
1011        rename = "list.deemphasizedForeground",
1012        deserialize_with = "empty_string_as_none"
1013    )]
1014    pub deemphasized_foreground: Option<String>,
1015}
1016#[derive(Debug, Clone, Serialize, Deserialize)]
1017pub struct ListFilterWidgetColors {
1018    /// List/Tree Filter background color of typed text when searching inside the list/tree.
1019    #[serde(
1020        default,
1021        rename = "listFilterWidget.background",
1022        deserialize_with = "empty_string_as_none"
1023    )]
1024    pub background: Option<String>,
1025    /// List/Tree Filter Widget's outline color of typed text when searching inside the list/tree.
1026    #[serde(
1027        default,
1028        rename = "listFilterWidget.outline",
1029        deserialize_with = "empty_string_as_none"
1030    )]
1031    pub outline: Option<String>,
1032    /// List/Tree Filter Widget's outline color when no match is found of typed text when searching inside the list/tree.
1033    #[serde(
1034        default,
1035        rename = "listFilterWidget.noMatchesOutline",
1036        deserialize_with = "empty_string_as_none"
1037    )]
1038    pub no_matches_outline: Option<String>,
1039    /// Shadow color of the type filter widget in lists and tree.
1040    #[serde(
1041        default,
1042        rename = "listFilterWidget.shadow",
1043        deserialize_with = "empty_string_as_none"
1044    )]
1045    pub shadow: Option<String>,
1046}
1047#[derive(Debug, Clone, Serialize, Deserialize)]
1048pub struct TreeColors {
1049    /// Tree Widget's stroke color for indent guides.
1050    #[serde(
1051        default,
1052        rename = "tree.indentGuidesStroke",
1053        deserialize_with = "empty_string_as_none"
1054    )]
1055    pub indent_guides_stroke: Option<String>,
1056    /// Tree stroke color for the indentation guides that are not active.
1057    #[serde(
1058        default,
1059        rename = "tree.inactiveIndentGuidesStroke",
1060        deserialize_with = "empty_string_as_none"
1061    )]
1062    pub inactive_indent_guides_stroke: Option<String>,
1063    /// Tree stroke color for the indentation guides.
1064    #[serde(
1065        default,
1066        rename = "tree.tableColumnsBorder",
1067        deserialize_with = "empty_string_as_none"
1068    )]
1069    pub table_columns_border: Option<String>,
1070    /// Background color for odd table rows.
1071    #[serde(
1072        default,
1073        rename = "tree.tableOddRowsBackground",
1074        deserialize_with = "empty_string_as_none"
1075    )]
1076    pub table_odd_rows_background: Option<String>,
1077}
1078#[derive(Debug, Clone, Serialize, Deserialize)]
1079pub struct ActivityBarColors {
1080    /// Activity Bar background color.
1081    #[serde(
1082        default,
1083        rename = "activityBar.background",
1084        deserialize_with = "empty_string_as_none"
1085    )]
1086    pub background: Option<String>,
1087    /// Drag and drop feedback color for the activity bar items. The activity bar is showing on the far left or right and allows to switch between views of the side bar.
1088    #[serde(
1089        default,
1090        rename = "activityBar.dropBorder",
1091        deserialize_with = "empty_string_as_none"
1092    )]
1093    pub drop_border: Option<String>,
1094    /// Activity Bar foreground color (for example used for the icons).
1095    #[serde(
1096        default,
1097        rename = "activityBar.foreground",
1098        deserialize_with = "empty_string_as_none"
1099    )]
1100    pub foreground: Option<String>,
1101    /// Activity Bar item foreground color when it is inactive.
1102    #[serde(
1103        default,
1104        rename = "activityBar.inactiveForeground",
1105        deserialize_with = "empty_string_as_none"
1106    )]
1107    pub inactive_foreground: Option<String>,
1108    /// Activity Bar border color with the Side Bar.
1109    #[serde(
1110        default,
1111        rename = "activityBar.border",
1112        deserialize_with = "empty_string_as_none"
1113    )]
1114    pub border: Option<String>,
1115    /// Activity Bar active indicator border color.
1116    #[serde(
1117        default,
1118        rename = "activityBar.activeBorder",
1119        deserialize_with = "empty_string_as_none"
1120    )]
1121    pub active_border: Option<String>,
1122    /// Activity Bar optional background color for the active element.
1123    #[serde(
1124        default,
1125        rename = "activityBar.activeBackground",
1126        deserialize_with = "empty_string_as_none"
1127    )]
1128    pub active_background: Option<String>,
1129    /// Activity bar focus border color for the active item.
1130    #[serde(
1131        default,
1132        rename = "activityBar.activeFocusBorder",
1133        deserialize_with = "empty_string_as_none"
1134    )]
1135    pub active_focus_border: Option<String>,
1136}
1137#[derive(Debug, Clone, Serialize, Deserialize)]
1138pub struct ActivityBarBadgeColors {
1139    /// Activity notification badge background color.
1140    #[serde(
1141        default,
1142        rename = "activityBarBadge.background",
1143        deserialize_with = "empty_string_as_none"
1144    )]
1145    pub background: Option<String>,
1146    /// Activity notification badge foreground color.
1147    #[serde(
1148        default,
1149        rename = "activityBarBadge.foreground",
1150        deserialize_with = "empty_string_as_none"
1151    )]
1152    pub foreground: Option<String>,
1153}
1154#[derive(Debug, Clone, Serialize, Deserialize)]
1155pub struct ProfileBadgeColors {
1156    /// Profile badge background color. The profile badge shows on top of the settings gear icon in the activity bar.
1157    #[serde(
1158        default,
1159        rename = "profileBadge.background",
1160        deserialize_with = "empty_string_as_none"
1161    )]
1162    pub background: Option<String>,
1163    /// Profile badge foreground color. The profile badge shows on top of the settings gear icon in the activity bar.
1164    #[serde(
1165        default,
1166        rename = "profileBadge.foreground",
1167        deserialize_with = "empty_string_as_none"
1168    )]
1169    pub foreground: Option<String>,
1170}
1171#[derive(Debug, Clone, Serialize, Deserialize)]
1172pub struct SideBarColors {
1173    /// Side Bar background color.
1174    #[serde(
1175        default,
1176        rename = "sideBar.background",
1177        deserialize_with = "empty_string_as_none"
1178    )]
1179    pub background: Option<String>,
1180    /// Side Bar foreground color. The Side Bar is the container for views like Explorer and Search.
1181    #[serde(
1182        default,
1183        rename = "sideBar.foreground",
1184        deserialize_with = "empty_string_as_none"
1185    )]
1186    pub foreground: Option<String>,
1187    /// Side Bar border color on the side separating the editor.
1188    #[serde(
1189        default,
1190        rename = "sideBar.border",
1191        deserialize_with = "empty_string_as_none"
1192    )]
1193    pub border: Option<String>,
1194    /// Drag and drop feedback color for the side bar sections. The color should have transparency so that the side bar sections can still shine through.
1195    #[serde(
1196        default,
1197        rename = "sideBar.dropBackground",
1198        deserialize_with = "empty_string_as_none"
1199    )]
1200    pub drop_background: Option<String>,
1201}
1202#[derive(Debug, Clone, Serialize, Deserialize)]
1203pub struct SideBarTitleColors {
1204    /// Side Bar title foreground color.
1205    #[serde(
1206        default,
1207        rename = "sideBarTitle.foreground",
1208        deserialize_with = "empty_string_as_none"
1209    )]
1210    pub foreground: Option<String>,
1211}
1212#[derive(Debug, Clone, Serialize, Deserialize)]
1213pub struct SideBarSectionHeaderColors {
1214    /// Side Bar section header background color.
1215    #[serde(
1216        default,
1217        rename = "sideBarSectionHeader.background",
1218        deserialize_with = "empty_string_as_none"
1219    )]
1220    pub background: Option<String>,
1221    /// Side Bar section header foreground color.
1222    #[serde(
1223        default,
1224        rename = "sideBarSectionHeader.foreground",
1225        deserialize_with = "empty_string_as_none"
1226    )]
1227    pub foreground: Option<String>,
1228    /// Side bar section header border color.
1229    #[serde(
1230        default,
1231        rename = "sideBarSectionHeader.border",
1232        deserialize_with = "empty_string_as_none"
1233    )]
1234    pub border: Option<String>,
1235}
1236#[derive(Debug, Clone, Serialize, Deserialize)]
1237pub struct MinimapColors {
1238    /// Highlight color for matches from search within files.
1239    #[serde(
1240        default,
1241        rename = "minimap.findMatchHighlight",
1242        deserialize_with = "empty_string_as_none"
1243    )]
1244    pub find_match_highlight: Option<String>,
1245    /// Highlight color for the editor selection.
1246    #[serde(
1247        default,
1248        rename = "minimap.selectionHighlight",
1249        deserialize_with = "empty_string_as_none"
1250    )]
1251    pub selection_highlight: Option<String>,
1252    /// Highlight color for errors within the editor.
1253    #[serde(
1254        default,
1255        rename = "minimap.errorHighlight",
1256        deserialize_with = "empty_string_as_none"
1257    )]
1258    pub error_highlight: Option<String>,
1259    /// Highlight color for warnings within the editor.
1260    #[serde(
1261        default,
1262        rename = "minimap.warningHighlight",
1263        deserialize_with = "empty_string_as_none"
1264    )]
1265    pub warning_highlight: Option<String>,
1266    /// Minimap background color.
1267    #[serde(
1268        default,
1269        rename = "minimap.background",
1270        deserialize_with = "empty_string_as_none"
1271    )]
1272    pub background: Option<String>,
1273    /// Minimap marker color for repeating editor selections.
1274    #[serde(
1275        default,
1276        rename = "minimap.selectionOccurrenceHighlight",
1277        deserialize_with = "empty_string_as_none"
1278    )]
1279    pub selection_occurrence_highlight: Option<String>,
1280    /// Opacity of foreground elements rendered in the minimap. For example, "#000000c0" will render the elements with 75% opacity.
1281    #[serde(
1282        default,
1283        rename = "minimap.foregroundOpacity",
1284        deserialize_with = "empty_string_as_none"
1285    )]
1286    pub foreground_opacity: Option<String>,
1287    /// Minimap marker color for infos.
1288    #[serde(
1289        default,
1290        rename = "minimap.infoHighlight",
1291        deserialize_with = "empty_string_as_none"
1292    )]
1293    pub info_highlight: Option<String>,
1294}
1295#[derive(Debug, Clone, Serialize, Deserialize)]
1296pub struct MinimapSliderColors {
1297    /// Minimap slider background color.
1298    #[serde(
1299        default,
1300        rename = "minimapSlider.background",
1301        deserialize_with = "empty_string_as_none"
1302    )]
1303    pub background: Option<String>,
1304    /// Minimap slider background color when hovering.
1305    #[serde(
1306        default,
1307        rename = "minimapSlider.hoverBackground",
1308        deserialize_with = "empty_string_as_none"
1309    )]
1310    pub hover_background: Option<String>,
1311    /// Minimap slider background color when clicked on.
1312    #[serde(
1313        default,
1314        rename = "minimapSlider.activeBackground",
1315        deserialize_with = "empty_string_as_none"
1316    )]
1317    pub active_background: Option<String>,
1318}
1319#[derive(Debug, Clone, Serialize, Deserialize)]
1320pub struct MinimapGutterColors {
1321    /// Minimap gutter color for added content.
1322    #[serde(
1323        default,
1324        rename = "minimapGutter.addedBackground",
1325        deserialize_with = "empty_string_as_none"
1326    )]
1327    pub added_background: Option<String>,
1328    /// Minimap gutter color for modified content.
1329    #[serde(
1330        default,
1331        rename = "minimapGutter.modifiedBackground",
1332        deserialize_with = "empty_string_as_none"
1333    )]
1334    pub modified_background: Option<String>,
1335    /// Minimap gutter color for deleted content.
1336    #[serde(
1337        default,
1338        rename = "minimapGutter.deletedBackground",
1339        deserialize_with = "empty_string_as_none"
1340    )]
1341    pub deleted_background: Option<String>,
1342}
1343#[derive(Debug, Clone, Serialize, Deserialize)]
1344pub struct EditorGroupColors {
1345    /// Color to separate multiple editor groups from each other.
1346    #[serde(
1347        default,
1348        rename = "editorGroup.border",
1349        deserialize_with = "empty_string_as_none"
1350    )]
1351    pub border: Option<String>,
1352    /// Background color when dragging editors around.
1353    #[serde(
1354        default,
1355        rename = "editorGroup.dropBackground",
1356        deserialize_with = "empty_string_as_none"
1357    )]
1358    pub drop_background: Option<String>,
1359    /// Background color of an empty editor group.
1360    #[serde(
1361        default,
1362        rename = "editorGroup.emptyBackground",
1363        deserialize_with = "empty_string_as_none"
1364    )]
1365    pub empty_background: Option<String>,
1366    /// Border color of an empty editor group that is focused.
1367    #[serde(
1368        default,
1369        rename = "editorGroup.focusedEmptyBorder",
1370        deserialize_with = "empty_string_as_none"
1371    )]
1372    pub focused_empty_border: Option<String>,
1373    /// Foreground color of text shown over editors when dragging files. This text informs the user that they can hold shift to drop into the editor.
1374    #[serde(
1375        default,
1376        rename = "editorGroup.dropIntoPromptForeground",
1377        deserialize_with = "empty_string_as_none"
1378    )]
1379    pub drop_into_prompt_foreground: Option<String>,
1380    /// Background color of text shown over editors when dragging files. This text informs the user that they can hold shift to drop into the editor.
1381    #[serde(
1382        default,
1383        rename = "editorGroup.dropIntoPromptBackground",
1384        deserialize_with = "empty_string_as_none"
1385    )]
1386    pub drop_into_prompt_background: Option<String>,
1387    /// Border color of text shown over editors when dragging files. This text informs the user that they can hold shift to drop into the editor.
1388    #[serde(
1389        default,
1390        rename = "editorGroup.dropIntoPromptBorder",
1391        deserialize_with = "empty_string_as_none"
1392    )]
1393    pub drop_into_prompt_border: Option<String>,
1394}
1395#[derive(Debug, Clone, Serialize, Deserialize)]
1396pub struct EditorGroupHeaderColors {
1397    /// Background color of the editor group title header when using single Tab (set `"workbench.editor.showTabs": "single"`).
1398    #[serde(
1399        default,
1400        rename = "editorGroupHeader.noTabsBackground",
1401        deserialize_with = "empty_string_as_none"
1402    )]
1403    pub no_tabs_background: Option<String>,
1404    /// Background color of the Tabs container.
1405    #[serde(
1406        default,
1407        rename = "editorGroupHeader.tabsBackground",
1408        deserialize_with = "empty_string_as_none"
1409    )]
1410    pub tabs_background: Option<String>,
1411    /// Border color below the editor tabs control when tabs are enabled.
1412    #[serde(
1413        default,
1414        rename = "editorGroupHeader.tabsBorder",
1415        deserialize_with = "empty_string_as_none"
1416    )]
1417    pub tabs_border: Option<String>,
1418    /// Border color between editor group header and editor (below breadcrumbs if enabled).
1419    #[serde(
1420        default,
1421        rename = "editorGroupHeader.border",
1422        deserialize_with = "empty_string_as_none"
1423    )]
1424    pub border: Option<String>,
1425}
1426#[derive(Debug, Clone, Serialize, Deserialize)]
1427pub struct TabColors {
1428    /// Active Tab background color in an active group.
1429    #[serde(
1430        default,
1431        rename = "tab.activeBackground",
1432        deserialize_with = "empty_string_as_none"
1433    )]
1434    pub active_background: Option<String>,
1435    /// Active Tab background color in an inactive editor group.
1436    #[serde(
1437        default,
1438        rename = "tab.unfocusedActiveBackground",
1439        deserialize_with = "empty_string_as_none"
1440    )]
1441    pub unfocused_active_background: Option<String>,
1442    /// Active Tab foreground color in an active group.
1443    #[serde(
1444        default,
1445        rename = "tab.activeForeground",
1446        deserialize_with = "empty_string_as_none"
1447    )]
1448    pub active_foreground: Option<String>,
1449    /// Border to separate Tabs from each other.
1450    #[serde(
1451        default,
1452        rename = "tab.border",
1453        deserialize_with = "empty_string_as_none"
1454    )]
1455    pub border: Option<String>,
1456    /// Bottom border for the active tab.
1457    #[serde(
1458        default,
1459        rename = "tab.activeBorder",
1460        deserialize_with = "empty_string_as_none"
1461    )]
1462    pub active_border: Option<String>,
1463    /// Bottom border for the active tab in an inactive editor group.
1464    #[serde(
1465        default,
1466        rename = "tab.unfocusedActiveBorder",
1467        deserialize_with = "empty_string_as_none"
1468    )]
1469    pub unfocused_active_border: Option<String>,
1470    /// Top border for the active tab.
1471    #[serde(
1472        default,
1473        rename = "tab.activeBorderTop",
1474        deserialize_with = "empty_string_as_none"
1475    )]
1476    pub active_border_top: Option<String>,
1477    /// Top border for the active tab in an inactive editor group
1478    #[serde(
1479        default,
1480        rename = "tab.unfocusedActiveBorderTop",
1481        deserialize_with = "empty_string_as_none"
1482    )]
1483    pub unfocused_active_border_top: Option<String>,
1484    /// Border on the right of the last pinned editor to separate from unpinned editors.
1485    #[serde(
1486        default,
1487        rename = "tab.lastPinnedBorder",
1488        deserialize_with = "empty_string_as_none"
1489    )]
1490    pub last_pinned_border: Option<String>,
1491    /// Inactive Tab background color.
1492    #[serde(
1493        default,
1494        rename = "tab.inactiveBackground",
1495        deserialize_with = "empty_string_as_none"
1496    )]
1497    pub inactive_background: Option<String>,
1498    /// Inactive Tab background color in an unfocused group
1499    #[serde(
1500        default,
1501        rename = "tab.unfocusedInactiveBackground",
1502        deserialize_with = "empty_string_as_none"
1503    )]
1504    pub unfocused_inactive_background: Option<String>,
1505    /// Inactive Tab foreground color in an active group.
1506    #[serde(
1507        default,
1508        rename = "tab.inactiveForeground",
1509        deserialize_with = "empty_string_as_none"
1510    )]
1511    pub inactive_foreground: Option<String>,
1512    /// Active tab foreground color in an inactive editor group.
1513    #[serde(
1514        default,
1515        rename = "tab.unfocusedActiveForeground",
1516        deserialize_with = "empty_string_as_none"
1517    )]
1518    pub unfocused_active_foreground: Option<String>,
1519    /// Inactive tab foreground color in an inactive editor group.
1520    #[serde(
1521        default,
1522        rename = "tab.unfocusedInactiveForeground",
1523        deserialize_with = "empty_string_as_none"
1524    )]
1525    pub unfocused_inactive_foreground: Option<String>,
1526    /// Tab background color when hovering
1527    #[serde(
1528        default,
1529        rename = "tab.hoverBackground",
1530        deserialize_with = "empty_string_as_none"
1531    )]
1532    pub hover_background: Option<String>,
1533    /// Tab background color in an unfocused group when hovering
1534    #[serde(
1535        default,
1536        rename = "tab.unfocusedHoverBackground",
1537        deserialize_with = "empty_string_as_none"
1538    )]
1539    pub unfocused_hover_background: Option<String>,
1540    /// Tab foreground color when hovering
1541    #[serde(
1542        default,
1543        rename = "tab.hoverForeground",
1544        deserialize_with = "empty_string_as_none"
1545    )]
1546    pub hover_foreground: Option<String>,
1547    /// Tab foreground color in an unfocused group when hovering
1548    #[serde(
1549        default,
1550        rename = "tab.unfocusedHoverForeground",
1551        deserialize_with = "empty_string_as_none"
1552    )]
1553    pub unfocused_hover_foreground: Option<String>,
1554    /// Border to highlight tabs when hovering
1555    #[serde(
1556        default,
1557        rename = "tab.hoverBorder",
1558        deserialize_with = "empty_string_as_none"
1559    )]
1560    pub hover_border: Option<String>,
1561    /// Border to highlight tabs in an unfocused group when hovering
1562    #[serde(
1563        default,
1564        rename = "tab.unfocusedHoverBorder",
1565        deserialize_with = "empty_string_as_none"
1566    )]
1567    pub unfocused_hover_border: Option<String>,
1568    /// Border on the top of modified (dirty) active tabs in an active group.
1569    #[serde(
1570        default,
1571        rename = "tab.activeModifiedBorder",
1572        deserialize_with = "empty_string_as_none"
1573    )]
1574    pub active_modified_border: Option<String>,
1575    /// Border on the top of modified (dirty) inactive tabs in an active group.
1576    #[serde(
1577        default,
1578        rename = "tab.inactiveModifiedBorder",
1579        deserialize_with = "empty_string_as_none"
1580    )]
1581    pub inactive_modified_border: Option<String>,
1582    /// Border on the top of modified (dirty) active tabs in an unfocused group.
1583    #[serde(
1584        default,
1585        rename = "tab.unfocusedActiveModifiedBorder",
1586        deserialize_with = "empty_string_as_none"
1587    )]
1588    pub unfocused_active_modified_border: Option<String>,
1589    /// Border on the top of modified (dirty) inactive tabs in an unfocused group.
1590    #[serde(
1591        default,
1592        rename = "tab.unfocusedInactiveModifiedBorder",
1593        deserialize_with = "empty_string_as_none"
1594    )]
1595    pub unfocused_inactive_modified_border: Option<String>,
1596}
1597#[derive(Debug, Clone, Serialize, Deserialize)]
1598pub struct EditorPaneColors {
1599    /// Background color of the editor pane visible on the left and right side of the centered editor layout.
1600    #[serde(
1601        default,
1602        rename = "editorPane.background",
1603        deserialize_with = "empty_string_as_none"
1604    )]
1605    pub background: Option<String>,
1606}
1607#[derive(Debug, Clone, Serialize, Deserialize)]
1608pub struct SideBySideEditorColors {
1609    /// Color to separate two editors from each other when shown side by side in an editor group from top to bottom.
1610    #[serde(
1611        default,
1612        rename = "sideBySideEditor.horizontalBorder",
1613        deserialize_with = "empty_string_as_none"
1614    )]
1615    pub horizontal_border: Option<String>,
1616    /// Color to separate two editors from each other when shown side by side in an editor group from left to right.
1617    #[serde(
1618        default,
1619        rename = "sideBySideEditor.verticalBorder",
1620        deserialize_with = "empty_string_as_none"
1621    )]
1622    pub vertical_border: Option<String>,
1623}
1624#[derive(Debug, Clone, Serialize, Deserialize)]
1625pub struct EditorColors {
1626    /// Editor background color.
1627    #[serde(
1628        default,
1629        rename = "editor.background",
1630        deserialize_with = "empty_string_as_none"
1631    )]
1632    pub background: Option<String>,
1633    /// Editor default foreground color.
1634    #[serde(
1635        default,
1636        rename = "editor.foreground",
1637        deserialize_with = "empty_string_as_none"
1638    )]
1639    pub foreground: Option<String>,
1640    /// Color of the editor selection.
1641    #[serde(
1642        default,
1643        rename = "editor.selectionBackground",
1644        deserialize_with = "empty_string_as_none"
1645    )]
1646    pub selection_background: Option<String>,
1647    /// Color of the selected text for high contrast.
1648    #[serde(
1649        default,
1650        rename = "editor.selectionForeground",
1651        deserialize_with = "empty_string_as_none"
1652    )]
1653    pub selection_foreground: Option<String>,
1654    /// Color of the selection in an inactive editor. The color must not be opaque so as not to hide underlying decorations.
1655    #[serde(
1656        default,
1657        rename = "editor.inactiveSelectionBackground",
1658        deserialize_with = "empty_string_as_none"
1659    )]
1660    pub inactive_selection_background: Option<String>,
1661    /// Color for regions with the same content as the selection. The color must not be opaque so as not to hide underlying decorations.
1662    #[serde(
1663        default,
1664        rename = "editor.selectionHighlightBackground",
1665        deserialize_with = "empty_string_as_none"
1666    )]
1667    pub selection_highlight_background: Option<String>,
1668    /// Border color for regions with the same content as the selection.
1669    #[serde(
1670        default,
1671        rename = "editor.selectionHighlightBorder",
1672        deserialize_with = "empty_string_as_none"
1673    )]
1674    pub selection_highlight_border: Option<String>,
1675    /// Background color of a symbol during read-access, for example when reading a variable. The color must not be opaque so as not to hide underlying decorations.
1676    #[serde(
1677        default,
1678        rename = "editor.wordHighlightBackground",
1679        deserialize_with = "empty_string_as_none"
1680    )]
1681    pub word_highlight_background: Option<String>,
1682    /// Border color of a symbol during read-access, for example when reading a variable.
1683    #[serde(
1684        default,
1685        rename = "editor.wordHighlightBorder",
1686        deserialize_with = "empty_string_as_none"
1687    )]
1688    pub word_highlight_border: Option<String>,
1689    /// Background color of a symbol during write-access, for example when writing to a variable. The color must not be opaque so as not to hide underlying decorations.
1690    #[serde(
1691        default,
1692        rename = "editor.wordHighlightStrongBackground",
1693        deserialize_with = "empty_string_as_none"
1694    )]
1695    pub word_highlight_strong_background: Option<String>,
1696    /// Border color of a symbol during write-access, for example when writing to a variable.
1697    #[serde(
1698        default,
1699        rename = "editor.wordHighlightStrongBorder",
1700        deserialize_with = "empty_string_as_none"
1701    )]
1702    pub word_highlight_strong_border: Option<String>,
1703    /// Background color of a textual occurrence for a symbol. The color must not be opaque so as not to hide underlying decorations.
1704    #[serde(
1705        default,
1706        rename = "editor.wordHighlightTextBackground",
1707        deserialize_with = "empty_string_as_none"
1708    )]
1709    pub word_highlight_text_background: Option<String>,
1710    /// Border color of a textual occurrence for a symbol.
1711    #[serde(
1712        default,
1713        rename = "editor.wordHighlightTextBorder",
1714        deserialize_with = "empty_string_as_none"
1715    )]
1716    pub word_highlight_text_border: Option<String>,
1717    /// Color of the current search match.
1718    #[serde(
1719        default,
1720        rename = "editor.findMatchBackground",
1721        deserialize_with = "empty_string_as_none"
1722    )]
1723    pub find_match_background: Option<String>,
1724    /// Color of the other search matches. The color must not be opaque so as not to hide underlying decorations.
1725    #[serde(
1726        default,
1727        rename = "editor.findMatchHighlightBackground",
1728        deserialize_with = "empty_string_as_none"
1729    )]
1730    pub find_match_highlight_background: Option<String>,
1731    /// Color the range limiting the search (Enable 'Find in Selection' in the find widget). The color must not be opaque so as not to hide underlying decorations.
1732    #[serde(
1733        default,
1734        rename = "editor.findRangeHighlightBackground",
1735        deserialize_with = "empty_string_as_none"
1736    )]
1737    pub find_range_highlight_background: Option<String>,
1738    /// Border color of the current search match.
1739    #[serde(
1740        default,
1741        rename = "editor.findMatchBorder",
1742        deserialize_with = "empty_string_as_none"
1743    )]
1744    pub find_match_border: Option<String>,
1745    /// Border color of the other search matches.
1746    #[serde(
1747        default,
1748        rename = "editor.findMatchHighlightBorder",
1749        deserialize_with = "empty_string_as_none"
1750    )]
1751    pub find_match_highlight_border: Option<String>,
1752    /// Border color the range limiting the search (Enable 'Find in Selection' in the find widget).
1753    #[serde(
1754        default,
1755        rename = "editor.findRangeHighlightBorder",
1756        deserialize_with = "empty_string_as_none"
1757    )]
1758    pub find_range_highlight_border: Option<String>,
1759    /// Highlight below the word for which a hover is shown. The color must not be opaque so as not to hide underlying decorations.
1760    #[serde(
1761        default,
1762        rename = "editor.hoverHighlightBackground",
1763        deserialize_with = "empty_string_as_none"
1764    )]
1765    pub hover_highlight_background: Option<String>,
1766    /// Background color for the highlight of line at the cursor position.
1767    #[serde(
1768        default,
1769        rename = "editor.lineHighlightBackground",
1770        deserialize_with = "empty_string_as_none"
1771    )]
1772    pub line_highlight_background: Option<String>,
1773    /// Background color for the border around the line at the cursor position.
1774    #[serde(
1775        default,
1776        rename = "editor.lineHighlightBorder",
1777        deserialize_with = "empty_string_as_none"
1778    )]
1779    pub line_highlight_border: Option<String>,
1780    /// Background color of highlighted ranges, used by Quick Open, Symbol in File and Find features. The color must not be opaque so as not to hide underlying decorations.
1781    #[serde(
1782        default,
1783        rename = "editor.rangeHighlightBackground",
1784        deserialize_with = "empty_string_as_none"
1785    )]
1786    pub range_highlight_background: Option<String>,
1787    /// Background color of the border around highlighted ranges.
1788    #[serde(
1789        default,
1790        rename = "editor.rangeHighlightBorder",
1791        deserialize_with = "empty_string_as_none"
1792    )]
1793    pub range_highlight_border: Option<String>,
1794    /// Background color of highlighted symbol. The color must not be opaque so as not to hide underlying decorations.
1795    #[serde(
1796        default,
1797        rename = "editor.symbolHighlightBackground",
1798        deserialize_with = "empty_string_as_none"
1799    )]
1800    pub symbol_highlight_background: Option<String>,
1801    /// Background color of the border around highlighted symbols.
1802    #[serde(
1803        default,
1804        rename = "editor.symbolHighlightBorder",
1805        deserialize_with = "empty_string_as_none"
1806    )]
1807    pub symbol_highlight_border: Option<String>,
1808    /// Background color when the editor is in linked editing mode.
1809    #[serde(
1810        default,
1811        rename = "editor.linkedEditingBackground",
1812        deserialize_with = "empty_string_as_none"
1813    )]
1814    pub linked_editing_background: Option<String>,
1815    /// Background color for folded ranges. The color must not be opaque so as not to hide underlying decorations.
1816    #[serde(
1817        default,
1818        rename = "editor.foldBackground",
1819        deserialize_with = "empty_string_as_none"
1820    )]
1821    pub fold_background: Option<String>,
1822    /// Background color of the top stack frame highlight in the editor.
1823    #[serde(
1824        default,
1825        rename = "editor.stackFrameHighlightBackground",
1826        deserialize_with = "empty_string_as_none"
1827    )]
1828    pub stack_frame_highlight_background: Option<String>,
1829    /// Background color of the focused stack frame highlight in the editor.
1830    #[serde(
1831        default,
1832        rename = "editor.focusedStackFrameHighlightBackground",
1833        deserialize_with = "empty_string_as_none"
1834    )]
1835    pub focused_stack_frame_highlight_background: Option<String>,
1836    /// Color for the debug inline value text.
1837    #[serde(
1838        default,
1839        rename = "editor.inlineValuesForeground",
1840        deserialize_with = "empty_string_as_none"
1841    )]
1842    pub inline_values_foreground: Option<String>,
1843    /// Color for the debug inline value background.
1844    #[serde(
1845        default,
1846        rename = "editor.inlineValuesBackground",
1847        deserialize_with = "empty_string_as_none"
1848    )]
1849    pub inline_values_background: Option<String>,
1850    /// Highlight background color of a snippet tabstop.
1851    #[serde(
1852        default,
1853        rename = "editor.snippetTabstopHighlightBackground",
1854        deserialize_with = "empty_string_as_none"
1855    )]
1856    pub snippet_tabstop_highlight_background: Option<String>,
1857    /// Highlight border color of a snippet tabstop.
1858    #[serde(
1859        default,
1860        rename = "editor.snippetTabstopHighlightBorder",
1861        deserialize_with = "empty_string_as_none"
1862    )]
1863    pub snippet_tabstop_highlight_border: Option<String>,
1864    /// Highlight background color of the final tabstop of a snippet.
1865    #[serde(
1866        default,
1867        rename = "editor.snippetFinalTabstopHighlightBackground",
1868        deserialize_with = "empty_string_as_none"
1869    )]
1870    pub snippet_final_tabstop_highlight_background: Option<String>,
1871    /// Highlight border color of the final tabstop of a snippet.
1872    #[serde(
1873        default,
1874        rename = "editor.snippetFinalTabstopHighlightBorder",
1875        deserialize_with = "empty_string_as_none"
1876    )]
1877    pub snippet_final_tabstop_highlight_border: Option<String>,
1878}
1879#[derive(Debug, Clone, Serialize, Deserialize)]
1880pub struct EditorLineNumberColors {
1881    /// Color of editor line numbers.
1882    #[serde(
1883        default,
1884        rename = "editorLineNumber.foreground",
1885        deserialize_with = "empty_string_as_none"
1886    )]
1887    pub foreground: Option<String>,
1888    /// Color of the active editor line number.
1889    #[serde(
1890        default,
1891        rename = "editorLineNumber.activeForeground",
1892        deserialize_with = "empty_string_as_none"
1893    )]
1894    pub active_foreground: Option<String>,
1895    /// Color of the final editor line when editor.renderFinalNewline is set to dimmed.
1896    #[serde(
1897        default,
1898        rename = "editorLineNumber.dimmedForeground",
1899        deserialize_with = "empty_string_as_none"
1900    )]
1901    pub dimmed_foreground: Option<String>,
1902}
1903#[derive(Debug, Clone, Serialize, Deserialize)]
1904pub struct EditorCursorColors {
1905    /// The background color of the editor cursor. Allows customizing the color of a character overlapped by a block cursor.
1906    #[serde(
1907        default,
1908        rename = "editorCursor.background",
1909        deserialize_with = "empty_string_as_none"
1910    )]
1911    pub background: Option<String>,
1912    /// Color of the editor cursor.
1913    #[serde(
1914        default,
1915        rename = "editorCursor.foreground",
1916        deserialize_with = "empty_string_as_none"
1917    )]
1918    pub foreground: Option<String>,
1919}
1920#[derive(Debug, Clone, Serialize, Deserialize)]
1921pub struct SearchColors {
1922    /// Color of the text in the search viewlet's completion message. For example, this color is used in the text that says "`{x} results in {y} files`".
1923    #[serde(
1924        default,
1925        rename = "search.resultsInfoForeground",
1926        deserialize_with = "empty_string_as_none"
1927    )]
1928    pub results_info_foreground: Option<String>,
1929}
1930#[derive(Debug, Clone, Serialize, Deserialize)]
1931pub struct SearchEditorColors {
1932    /// Color of the editor's results.
1933    #[serde(
1934        default,
1935        rename = "searchEditor.findMatchBackground",
1936        deserialize_with = "empty_string_as_none"
1937    )]
1938    pub find_match_background: Option<String>,
1939    /// Border color of the editor's results.
1940    #[serde(
1941        default,
1942        rename = "searchEditor.findMatchBorder",
1943        deserialize_with = "empty_string_as_none"
1944    )]
1945    pub find_match_border: Option<String>,
1946    /// Search editor text input box border.
1947    #[serde(
1948        default,
1949        rename = "searchEditor.textInputBorder",
1950        deserialize_with = "empty_string_as_none"
1951    )]
1952    pub text_input_border: Option<String>,
1953}
1954#[derive(Debug, Clone, Serialize, Deserialize)]
1955pub struct EditorUnicodeHighlightColors {
1956    /// Border color used to highlight unicode characters.
1957    #[serde(
1958        default,
1959        rename = "editorUnicodeHighlight.border",
1960        deserialize_with = "empty_string_as_none"
1961    )]
1962    pub border: Option<String>,
1963    /// Background color used to highlight unicode characters.
1964    #[serde(
1965        default,
1966        rename = "editorUnicodeHighlight.background",
1967        deserialize_with = "empty_string_as_none"
1968    )]
1969    pub background: Option<String>,
1970}
1971#[derive(Debug, Clone, Serialize, Deserialize)]
1972pub struct EditorLinkColors {
1973    /// Color of active links.
1974    #[serde(
1975        default,
1976        rename = "editorLink.activeForeground",
1977        deserialize_with = "empty_string_as_none"
1978    )]
1979    pub active_foreground: Option<String>,
1980}
1981#[derive(Debug, Clone, Serialize, Deserialize)]
1982pub struct EditorWhitespaceColors {
1983    /// Color of whitespace characters in the editor.
1984    #[serde(
1985        default,
1986        rename = "editorWhitespace.foreground",
1987        deserialize_with = "empty_string_as_none"
1988    )]
1989    pub foreground: Option<String>,
1990}
1991#[derive(Debug, Clone, Serialize, Deserialize)]
1992pub struct EditorIndentGuideColors {
1993    /// Color of the editor indentation guides.
1994    #[serde(
1995        default,
1996        rename = "editorIndentGuide.background",
1997        deserialize_with = "empty_string_as_none"
1998    )]
1999    pub background: Option<String>,
2000    /// Color of the editor indentation guides (1).
2001    #[serde(
2002        default,
2003        rename = "editorIndentGuide.background1",
2004        deserialize_with = "empty_string_as_none"
2005    )]
2006    pub background1: Option<String>,
2007    /// Color of the editor indentation guides (2).
2008    #[serde(
2009        default,
2010        rename = "editorIndentGuide.background2",
2011        deserialize_with = "empty_string_as_none"
2012    )]
2013    pub background2: Option<String>,
2014    /// Color of the editor indentation guides (3).
2015    #[serde(
2016        default,
2017        rename = "editorIndentGuide.background3",
2018        deserialize_with = "empty_string_as_none"
2019    )]
2020    pub background3: Option<String>,
2021    /// Color of the editor indentation guides (4).
2022    #[serde(
2023        default,
2024        rename = "editorIndentGuide.background4",
2025        deserialize_with = "empty_string_as_none"
2026    )]
2027    pub background4: Option<String>,
2028    /// Color of the editor indentation guides (5).
2029    #[serde(
2030        default,
2031        rename = "editorIndentGuide.background5",
2032        deserialize_with = "empty_string_as_none"
2033    )]
2034    pub background5: Option<String>,
2035    /// Color of the editor indentation guides (6).
2036    #[serde(
2037        default,
2038        rename = "editorIndentGuide.background6",
2039        deserialize_with = "empty_string_as_none"
2040    )]
2041    pub background6: Option<String>,
2042    /// Color of the active editor indentation guide.
2043    #[serde(
2044        default,
2045        rename = "editorIndentGuide.activeBackground",
2046        deserialize_with = "empty_string_as_none"
2047    )]
2048    pub active_background: Option<String>,
2049    /// Color of the active editor indentation guides (1).
2050    #[serde(
2051        default,
2052        rename = "editorIndentGuide.activeBackground1",
2053        deserialize_with = "empty_string_as_none"
2054    )]
2055    pub active_background1: Option<String>,
2056    /// Color of the active editor indentation guides (2).
2057    #[serde(
2058        default,
2059        rename = "editorIndentGuide.activeBackground2",
2060        deserialize_with = "empty_string_as_none"
2061    )]
2062    pub active_background2: Option<String>,
2063    /// Color of the active editor indentation guides (3).
2064    #[serde(
2065        default,
2066        rename = "editorIndentGuide.activeBackground3",
2067        deserialize_with = "empty_string_as_none"
2068    )]
2069    pub active_background3: Option<String>,
2070    /// Color of the active editor indentation guides (4).
2071    #[serde(
2072        default,
2073        rename = "editorIndentGuide.activeBackground4",
2074        deserialize_with = "empty_string_as_none"
2075    )]
2076    pub active_background4: Option<String>,
2077    /// Color of the active editor indentation guides (5).
2078    #[serde(
2079        default,
2080        rename = "editorIndentGuide.activeBackground5",
2081        deserialize_with = "empty_string_as_none"
2082    )]
2083    pub active_background5: Option<String>,
2084    /// Color of the active editor indentation guides (6).
2085    #[serde(
2086        default,
2087        rename = "editorIndentGuide.activeBackground6",
2088        deserialize_with = "empty_string_as_none"
2089    )]
2090    pub active_background6: Option<String>,
2091}
2092#[derive(Debug, Clone, Serialize, Deserialize)]
2093pub struct EditorInlayHintColors {
2094    /// Background color of inline hints.
2095    #[serde(
2096        default,
2097        rename = "editorInlayHint.background",
2098        deserialize_with = "empty_string_as_none"
2099    )]
2100    pub background: Option<String>,
2101    /// Foreground color of inline hints.
2102    #[serde(
2103        default,
2104        rename = "editorInlayHint.foreground",
2105        deserialize_with = "empty_string_as_none"
2106    )]
2107    pub foreground: Option<String>,
2108    /// Foreground color of inline hints for types
2109    #[serde(
2110        default,
2111        rename = "editorInlayHint.typeForeground",
2112        deserialize_with = "empty_string_as_none"
2113    )]
2114    pub type_foreground: Option<String>,
2115    /// Background color of inline hints for types
2116    #[serde(
2117        default,
2118        rename = "editorInlayHint.typeBackground",
2119        deserialize_with = "empty_string_as_none"
2120    )]
2121    pub type_background: Option<String>,
2122    /// Foreground color of inline hints for parameters
2123    #[serde(
2124        default,
2125        rename = "editorInlayHint.parameterForeground",
2126        deserialize_with = "empty_string_as_none"
2127    )]
2128    pub parameter_foreground: Option<String>,
2129    /// Background color of inline hints for parameters
2130    #[serde(
2131        default,
2132        rename = "editorInlayHint.parameterBackground",
2133        deserialize_with = "empty_string_as_none"
2134    )]
2135    pub parameter_background: Option<String>,
2136}
2137#[derive(Debug, Clone, Serialize, Deserialize)]
2138pub struct EditorRulerColors {
2139    /// Color of the editor rulers.
2140    #[serde(
2141        default,
2142        rename = "editorRuler.foreground",
2143        deserialize_with = "empty_string_as_none"
2144    )]
2145    pub foreground: Option<String>,
2146}
2147#[derive(Debug, Clone, Serialize, Deserialize)]
2148pub struct EditorCodeLensColors {
2149    /// Foreground color of an editor CodeLens.
2150    #[serde(
2151        default,
2152        rename = "editorCodeLens.foreground",
2153        deserialize_with = "empty_string_as_none"
2154    )]
2155    pub foreground: Option<String>,
2156}
2157#[derive(Debug, Clone, Serialize, Deserialize)]
2158pub struct EditorLightBulbColors {
2159    /// The color used for the lightbulb actions icon.
2160    #[serde(
2161        default,
2162        rename = "editorLightBulb.foreground",
2163        deserialize_with = "empty_string_as_none"
2164    )]
2165    pub foreground: Option<String>,
2166}
2167#[derive(Debug, Clone, Serialize, Deserialize)]
2168pub struct EditorLightBulbAutoFixColors {
2169    /// The color used for the lightbulb auto fix actions icon.
2170    #[serde(
2171        default,
2172        rename = "editorLightBulbAutoFix.foreground",
2173        deserialize_with = "empty_string_as_none"
2174    )]
2175    pub foreground: Option<String>,
2176}
2177#[derive(Debug, Clone, Serialize, Deserialize)]
2178pub struct EditorLightBulbAiColors {
2179    /// The color used for the lightbulb AI icon.
2180    #[serde(
2181        default,
2182        rename = "editorLightBulbAi.foreground",
2183        deserialize_with = "empty_string_as_none"
2184    )]
2185    pub foreground: Option<String>,
2186}
2187#[derive(Debug, Clone, Serialize, Deserialize)]
2188pub struct EditorBracketMatchColors {
2189    /// Background color behind matching brackets.
2190    #[serde(
2191        default,
2192        rename = "editorBracketMatch.background",
2193        deserialize_with = "empty_string_as_none"
2194    )]
2195    pub background: Option<String>,
2196    /// Color for matching brackets boxes.
2197    #[serde(
2198        default,
2199        rename = "editorBracketMatch.border",
2200        deserialize_with = "empty_string_as_none"
2201    )]
2202    pub border: Option<String>,
2203}
2204#[derive(Debug, Clone, Serialize, Deserialize)]
2205pub struct EditorBracketHighlightColors {
2206    /// Foreground color of brackets (1). Requires enabling bracket pair colorization.
2207    #[serde(
2208        default,
2209        rename = "editorBracketHighlight.foreground1",
2210        deserialize_with = "empty_string_as_none"
2211    )]
2212    pub foreground1: Option<String>,
2213    /// Foreground color of brackets (2). Requires enabling bracket pair colorization.
2214    #[serde(
2215        default,
2216        rename = "editorBracketHighlight.foreground2",
2217        deserialize_with = "empty_string_as_none"
2218    )]
2219    pub foreground2: Option<String>,
2220    /// Foreground color of brackets (3). Requires enabling bracket pair colorization.
2221    #[serde(
2222        default,
2223        rename = "editorBracketHighlight.foreground3",
2224        deserialize_with = "empty_string_as_none"
2225    )]
2226    pub foreground3: Option<String>,
2227    /// Foreground color of brackets (4). Requires enabling bracket pair colorization.
2228    #[serde(
2229        default,
2230        rename = "editorBracketHighlight.foreground4",
2231        deserialize_with = "empty_string_as_none"
2232    )]
2233    pub foreground4: Option<String>,
2234    /// Foreground color of brackets (5). Requires enabling bracket pair colorization.
2235    #[serde(
2236        default,
2237        rename = "editorBracketHighlight.foreground5",
2238        deserialize_with = "empty_string_as_none"
2239    )]
2240    pub foreground5: Option<String>,
2241    /// Foreground color of brackets (6). Requires enabling bracket pair colorization.
2242    #[serde(
2243        default,
2244        rename = "editorBracketHighlight.foreground6",
2245        deserialize_with = "empty_string_as_none"
2246    )]
2247    pub foreground6: Option<String>,
2248    /// Foreground color of unexpected brackets.
2249    #[serde(
2250        default,
2251        rename = "editorBracketHighlight.unexpectedBracket.foreground",
2252        deserialize_with = "empty_string_as_none"
2253    )]
2254    pub unexpected_bracket_foreground: Option<String>,
2255}
2256#[derive(Debug, Clone, Serialize, Deserialize)]
2257pub struct EditorBracketPairGuideColors {
2258    /// Background color of active bracket pair guides (1). Requires enabling bracket pair guides.
2259    #[serde(
2260        default,
2261        rename = "editorBracketPairGuide.activeBackground1",
2262        deserialize_with = "empty_string_as_none"
2263    )]
2264    pub active_background1: Option<String>,
2265    /// Background color of active bracket pair guides (2). Requires enabling bracket pair guides.
2266    #[serde(
2267        default,
2268        rename = "editorBracketPairGuide.activeBackground2",
2269        deserialize_with = "empty_string_as_none"
2270    )]
2271    pub active_background2: Option<String>,
2272    /// Background color of active bracket pair guides (3). Requires enabling bracket pair guides.
2273    #[serde(
2274        default,
2275        rename = "editorBracketPairGuide.activeBackground3",
2276        deserialize_with = "empty_string_as_none"
2277    )]
2278    pub active_background3: Option<String>,
2279    /// Background color of active bracket pair guides (4). Requires enabling bracket pair guides.
2280    #[serde(
2281        default,
2282        rename = "editorBracketPairGuide.activeBackground4",
2283        deserialize_with = "empty_string_as_none"
2284    )]
2285    pub active_background4: Option<String>,
2286    /// Background color of active bracket pair guides (5). Requires enabling bracket pair guides.
2287    #[serde(
2288        default,
2289        rename = "editorBracketPairGuide.activeBackground5",
2290        deserialize_with = "empty_string_as_none"
2291    )]
2292    pub active_background5: Option<String>,
2293    /// Background color of active bracket pair guides (6). Requires enabling bracket pair guides.
2294    #[serde(
2295        default,
2296        rename = "editorBracketPairGuide.activeBackground6",
2297        deserialize_with = "empty_string_as_none"
2298    )]
2299    pub active_background6: Option<String>,
2300    /// Background color of inactive bracket pair guides (1). Requires enabling bracket pair guides.
2301    #[serde(
2302        default,
2303        rename = "editorBracketPairGuide.background1",
2304        deserialize_with = "empty_string_as_none"
2305    )]
2306    pub background1: Option<String>,
2307    /// Background color of inactive bracket pair guides (2). Requires enabling bracket pair guides.
2308    #[serde(
2309        default,
2310        rename = "editorBracketPairGuide.background2",
2311        deserialize_with = "empty_string_as_none"
2312    )]
2313    pub background2: Option<String>,
2314    /// Background color of inactive bracket pair guides (3). Requires enabling bracket pair guides.
2315    #[serde(
2316        default,
2317        rename = "editorBracketPairGuide.background3",
2318        deserialize_with = "empty_string_as_none"
2319    )]
2320    pub background3: Option<String>,
2321    /// Background color of inactive bracket pair guides (4). Requires enabling bracket pair guides.
2322    #[serde(
2323        default,
2324        rename = "editorBracketPairGuide.background4",
2325        deserialize_with = "empty_string_as_none"
2326    )]
2327    pub background4: Option<String>,
2328    /// Background color of inactive bracket pair guides (5). Requires enabling bracket pair guides.
2329    #[serde(
2330        default,
2331        rename = "editorBracketPairGuide.background5",
2332        deserialize_with = "empty_string_as_none"
2333    )]
2334    pub background5: Option<String>,
2335    /// Background color of inactive bracket pair guides (6). Requires enabling bracket pair guides.
2336    #[serde(
2337        default,
2338        rename = "editorBracketPairGuide.background6",
2339        deserialize_with = "empty_string_as_none"
2340    )]
2341    pub background6: Option<String>,
2342}
2343#[derive(Debug, Clone, Serialize, Deserialize)]
2344pub struct EditorOverviewRulerColors {
2345    /// Background color of the editor overview ruler. Only used when the minimap is enabled and placed on the right side of the editor.
2346    #[serde(
2347        default,
2348        rename = "editorOverviewRuler.background",
2349        deserialize_with = "empty_string_as_none"
2350    )]
2351    pub background: Option<String>,
2352    /// Color of the overview ruler border.
2353    #[serde(
2354        default,
2355        rename = "editorOverviewRuler.border",
2356        deserialize_with = "empty_string_as_none"
2357    )]
2358    pub border: Option<String>,
2359    /// Overview ruler marker color for find matches. The color must not be opaque so as not to hide underlying decorations.
2360    #[serde(
2361        default,
2362        rename = "editorOverviewRuler.findMatchForeground",
2363        deserialize_with = "empty_string_as_none"
2364    )]
2365    pub find_match_foreground: Option<String>,
2366    /// Overview ruler marker color for highlighted ranges, like by the Quick Open, Symbol in File and Find features. The color must not be opaque so as not to hide underlying decorations.
2367    #[serde(
2368        default,
2369        rename = "editorOverviewRuler.rangeHighlightForeground",
2370        deserialize_with = "empty_string_as_none"
2371    )]
2372    pub range_highlight_foreground: Option<String>,
2373    /// Overview ruler marker color for selection highlights. The color must not be opaque so as not to hide underlying decorations.
2374    #[serde(
2375        default,
2376        rename = "editorOverviewRuler.selectionHighlightForeground",
2377        deserialize_with = "empty_string_as_none"
2378    )]
2379    pub selection_highlight_foreground: Option<String>,
2380    /// Overview ruler marker color for symbol highlights. The color must not be opaque so as not to hide underlying decorations.
2381    #[serde(
2382        default,
2383        rename = "editorOverviewRuler.wordHighlightForeground",
2384        deserialize_with = "empty_string_as_none"
2385    )]
2386    pub word_highlight_foreground: Option<String>,
2387    /// Overview ruler marker color for write-access symbol highlights. The color must not be opaque so as not to hide underlying decorations.
2388    #[serde(
2389        default,
2390        rename = "editorOverviewRuler.wordHighlightStrongForeground",
2391        deserialize_with = "empty_string_as_none"
2392    )]
2393    pub word_highlight_strong_foreground: Option<String>,
2394    /// Overview ruler marker color of a textual occurrence for a symbol. The color must not be opaque so as not to hide underlying decorations.
2395    #[serde(
2396        default,
2397        rename = "editorOverviewRuler.wordHighlightTextForeground",
2398        deserialize_with = "empty_string_as_none"
2399    )]
2400    pub word_highlight_text_foreground: Option<String>,
2401    /// Overview ruler marker color for modified content.
2402    #[serde(
2403        default,
2404        rename = "editorOverviewRuler.modifiedForeground",
2405        deserialize_with = "empty_string_as_none"
2406    )]
2407    pub modified_foreground: Option<String>,
2408    /// Overview ruler marker color for added content.
2409    #[serde(
2410        default,
2411        rename = "editorOverviewRuler.addedForeground",
2412        deserialize_with = "empty_string_as_none"
2413    )]
2414    pub added_foreground: Option<String>,
2415    /// Overview ruler marker color for deleted content.
2416    #[serde(
2417        default,
2418        rename = "editorOverviewRuler.deletedForeground",
2419        deserialize_with = "empty_string_as_none"
2420    )]
2421    pub deleted_foreground: Option<String>,
2422    /// Overview ruler marker color for errors.
2423    #[serde(
2424        default,
2425        rename = "editorOverviewRuler.errorForeground",
2426        deserialize_with = "empty_string_as_none"
2427    )]
2428    pub error_foreground: Option<String>,
2429    /// Overview ruler marker color for warnings.
2430    #[serde(
2431        default,
2432        rename = "editorOverviewRuler.warningForeground",
2433        deserialize_with = "empty_string_as_none"
2434    )]
2435    pub warning_foreground: Option<String>,
2436    /// Overview ruler marker color for infos.
2437    #[serde(
2438        default,
2439        rename = "editorOverviewRuler.infoForeground",
2440        deserialize_with = "empty_string_as_none"
2441    )]
2442    pub info_foreground: Option<String>,
2443    /// Overview ruler marker color for matching brackets.
2444    #[serde(
2445        default,
2446        rename = "editorOverviewRuler.bracketMatchForeground",
2447        deserialize_with = "empty_string_as_none"
2448    )]
2449    pub bracket_match_foreground: Option<String>,
2450    /// Current overview ruler foreground for inline merge conflicts.
2451    #[serde(
2452        default,
2453        rename = "editorOverviewRuler.currentContentForeground",
2454        deserialize_with = "empty_string_as_none"
2455    )]
2456    pub current_content_foreground: Option<String>,
2457    /// Incoming overview ruler foreground for inline merge conflicts.
2458    #[serde(
2459        default,
2460        rename = "editorOverviewRuler.incomingContentForeground",
2461        deserialize_with = "empty_string_as_none"
2462    )]
2463    pub incoming_content_foreground: Option<String>,
2464    /// Common ancestor overview ruler foreground for inline merge conflicts.
2465    #[serde(
2466        default,
2467        rename = "editorOverviewRuler.commonContentForeground",
2468        deserialize_with = "empty_string_as_none"
2469    )]
2470    pub common_content_foreground: Option<String>,
2471    /// Editor overview ruler decoration color for resolved comments. This color should be opaque.
2472    #[serde(
2473        default,
2474        rename = "editorOverviewRuler.commentForeground",
2475        deserialize_with = "empty_string_as_none"
2476    )]
2477    pub comment_foreground: Option<String>,
2478    /// Editor overview ruler decoration color for unresolved comments. This color should be opaque.
2479    #[serde(
2480        default,
2481        rename = "editorOverviewRuler.commentUnresolvedForeground",
2482        deserialize_with = "empty_string_as_none"
2483    )]
2484    pub comment_unresolved_foreground: Option<String>,
2485}
2486#[derive(Debug, Clone, Serialize, Deserialize)]
2487pub struct EditorErrorColors {
2488    /// Foreground color of error squiggles in the editor.
2489    #[serde(
2490        default,
2491        rename = "editorError.foreground",
2492        deserialize_with = "empty_string_as_none"
2493    )]
2494    pub foreground: Option<String>,
2495    /// Border color of error boxes in the editor.
2496    #[serde(
2497        default,
2498        rename = "editorError.border",
2499        deserialize_with = "empty_string_as_none"
2500    )]
2501    pub border: Option<String>,
2502    /// Background color of error text in the editor. The color must not be opaque so as not to hide underlying decorations.
2503    #[serde(
2504        default,
2505        rename = "editorError.background",
2506        deserialize_with = "empty_string_as_none"
2507    )]
2508    pub background: Option<String>,
2509}
2510#[derive(Debug, Clone, Serialize, Deserialize)]
2511pub struct EditorWarningColors {
2512    /// Foreground color of warning squiggles in the editor.
2513    #[serde(
2514        default,
2515        rename = "editorWarning.foreground",
2516        deserialize_with = "empty_string_as_none"
2517    )]
2518    pub foreground: Option<String>,
2519    /// Border color of warning boxes in the editor.
2520    #[serde(
2521        default,
2522        rename = "editorWarning.border",
2523        deserialize_with = "empty_string_as_none"
2524    )]
2525    pub border: Option<String>,
2526    /// Background color of warning text in the editor. The color must not be opaque so as not to hide underlying decorations.
2527    #[serde(
2528        default,
2529        rename = "editorWarning.background",
2530        deserialize_with = "empty_string_as_none"
2531    )]
2532    pub background: Option<String>,
2533}
2534#[derive(Debug, Clone, Serialize, Deserialize)]
2535pub struct EditorInfoColors {
2536    /// Foreground color of info squiggles in the editor.
2537    #[serde(
2538        default,
2539        rename = "editorInfo.foreground",
2540        deserialize_with = "empty_string_as_none"
2541    )]
2542    pub foreground: Option<String>,
2543    /// Border color of info boxes in the editor.
2544    #[serde(
2545        default,
2546        rename = "editorInfo.border",
2547        deserialize_with = "empty_string_as_none"
2548    )]
2549    pub border: Option<String>,
2550    /// Background color of info text in the editor. The color must not be opaque so as not to hide underlying decorations.
2551    #[serde(
2552        default,
2553        rename = "editorInfo.background",
2554        deserialize_with = "empty_string_as_none"
2555    )]
2556    pub background: Option<String>,
2557}
2558#[derive(Debug, Clone, Serialize, Deserialize)]
2559pub struct EditorHintColors {
2560    /// Foreground color of hints in the editor.
2561    #[serde(
2562        default,
2563        rename = "editorHint.foreground",
2564        deserialize_with = "empty_string_as_none"
2565    )]
2566    pub foreground: Option<String>,
2567    /// Border color of hint boxes in the editor.
2568    #[serde(
2569        default,
2570        rename = "editorHint.border",
2571        deserialize_with = "empty_string_as_none"
2572    )]
2573    pub border: Option<String>,
2574}
2575#[derive(Debug, Clone, Serialize, Deserialize)]
2576pub struct ProblemsErrorIconColors {
2577    /// The color used for the problems error icon.
2578    #[serde(
2579        default,
2580        rename = "problemsErrorIcon.foreground",
2581        deserialize_with = "empty_string_as_none"
2582    )]
2583    pub foreground: Option<String>,
2584}
2585#[derive(Debug, Clone, Serialize, Deserialize)]
2586pub struct ProblemsWarningIconColors {
2587    /// The color used for the problems warning icon.
2588    #[serde(
2589        default,
2590        rename = "problemsWarningIcon.foreground",
2591        deserialize_with = "empty_string_as_none"
2592    )]
2593    pub foreground: Option<String>,
2594}
2595#[derive(Debug, Clone, Serialize, Deserialize)]
2596pub struct ProblemsInfoIconColors {
2597    /// The color used for the problems info icon.
2598    #[serde(
2599        default,
2600        rename = "problemsInfoIcon.foreground",
2601        deserialize_with = "empty_string_as_none"
2602    )]
2603    pub foreground: Option<String>,
2604}
2605#[derive(Debug, Clone, Serialize, Deserialize)]
2606pub struct EditorUnnecessaryCodeColors {
2607    /// Border color of unnecessary (unused) source code in the editor.
2608    #[serde(
2609        default,
2610        rename = "editorUnnecessaryCode.border",
2611        deserialize_with = "empty_string_as_none"
2612    )]
2613    pub border: Option<String>,
2614    /// Opacity of unnecessary (unused) source code in the editor. For example, `"#000000c0"` will render the code with 75% opacity. For high contrast themes, use the `"editorUnnecessaryCode.border"` theme color to underline unnecessary code instead of fading it out.
2615    #[serde(
2616        default,
2617        rename = "editorUnnecessaryCode.opacity",
2618        deserialize_with = "empty_string_as_none"
2619    )]
2620    pub opacity: Option<String>,
2621}
2622#[derive(Debug, Clone, Serialize, Deserialize)]
2623pub struct EditorGutterColors {
2624    /// Background color of the editor gutter. The gutter contains the glyph margins and the line numbers.
2625    #[serde(
2626        default,
2627        rename = "editorGutter.background",
2628        deserialize_with = "empty_string_as_none"
2629    )]
2630    pub background: Option<String>,
2631    /// Editor gutter background color for lines that are modified.
2632    #[serde(
2633        default,
2634        rename = "editorGutter.modifiedBackground",
2635        deserialize_with = "empty_string_as_none"
2636    )]
2637    pub modified_background: Option<String>,
2638    /// Editor gutter background color for lines that are added.
2639    #[serde(
2640        default,
2641        rename = "editorGutter.addedBackground",
2642        deserialize_with = "empty_string_as_none"
2643    )]
2644    pub added_background: Option<String>,
2645    /// Editor gutter background color for lines that are deleted.
2646    #[serde(
2647        default,
2648        rename = "editorGutter.deletedBackground",
2649        deserialize_with = "empty_string_as_none"
2650    )]
2651    pub deleted_background: Option<String>,
2652    /// Editor gutter decoration color for commenting ranges.
2653    #[serde(
2654        default,
2655        rename = "editorGutter.commentRangeForeground",
2656        deserialize_with = "empty_string_as_none"
2657    )]
2658    pub comment_range_foreground: Option<String>,
2659    /// Editor gutter decoration color for commenting glyphs.
2660    #[serde(
2661        default,
2662        rename = "editorGutter.commentGlyphForeground",
2663        deserialize_with = "empty_string_as_none"
2664    )]
2665    pub comment_glyph_foreground: Option<String>,
2666    /// Editor gutter decoration color for commenting glyphs for unresolved comment threads.
2667    #[serde(
2668        default,
2669        rename = "editorGutter.commentUnresolvedGlyphForeground",
2670        deserialize_with = "empty_string_as_none"
2671    )]
2672    pub comment_unresolved_glyph_foreground: Option<String>,
2673    /// Color of the folding control in the editor gutter.
2674    #[serde(
2675        default,
2676        rename = "editorGutter.foldingControlForeground",
2677        deserialize_with = "empty_string_as_none"
2678    )]
2679    pub folding_control_foreground: Option<String>,
2680}
2681#[derive(Debug, Clone, Serialize, Deserialize)]
2682pub struct EditorCommentsWidgetColors {
2683    /// Color of borders and arrow for resolved comments.
2684    #[serde(
2685        default,
2686        rename = "editorCommentsWidget.resolvedBorder",
2687        deserialize_with = "empty_string_as_none"
2688    )]
2689    pub resolved_border: Option<String>,
2690    /// Color of borders and arrow for unresolved comments.
2691    #[serde(
2692        default,
2693        rename = "editorCommentsWidget.unresolvedBorder",
2694        deserialize_with = "empty_string_as_none"
2695    )]
2696    pub unresolved_border: Option<String>,
2697    /// Color of background for comment ranges.
2698    #[serde(
2699        default,
2700        rename = "editorCommentsWidget.rangeBackground",
2701        deserialize_with = "empty_string_as_none"
2702    )]
2703    pub range_background: Option<String>,
2704    /// Color of background for currently selected or hovered comment range.
2705    #[serde(
2706        default,
2707        rename = "editorCommentsWidget.rangeActiveBackground",
2708        deserialize_with = "empty_string_as_none"
2709    )]
2710    pub range_active_background: Option<String>,
2711    /// Background color for comment reply input box.
2712    #[serde(
2713        default,
2714        rename = "editorCommentsWidget.replyInputBackground",
2715        deserialize_with = "empty_string_as_none"
2716    )]
2717    pub reply_input_background: Option<String>,
2718}
2719#[derive(Debug, Clone, Serialize, Deserialize)]
2720pub struct DiffEditorColors {
2721    /// Background color for text that got inserted. The color must not be opaque so as not to hide underlying decorations.
2722    #[serde(
2723        default,
2724        rename = "diffEditor.insertedTextBackground",
2725        deserialize_with = "empty_string_as_none"
2726    )]
2727    pub inserted_text_background: Option<String>,
2728    /// Outline color for the text that got inserted.
2729    #[serde(
2730        default,
2731        rename = "diffEditor.insertedTextBorder",
2732        deserialize_with = "empty_string_as_none"
2733    )]
2734    pub inserted_text_border: Option<String>,
2735    /// Background color for text that got removed. The color must not be opaque so as not to hide underlying decorations.
2736    #[serde(
2737        default,
2738        rename = "diffEditor.removedTextBackground",
2739        deserialize_with = "empty_string_as_none"
2740    )]
2741    pub removed_text_background: Option<String>,
2742    /// Outline color for text that got removed.
2743    #[serde(
2744        default,
2745        rename = "diffEditor.removedTextBorder",
2746        deserialize_with = "empty_string_as_none"
2747    )]
2748    pub removed_text_border: Option<String>,
2749    /// Border color between the two text editors.
2750    #[serde(
2751        default,
2752        rename = "diffEditor.border",
2753        deserialize_with = "empty_string_as_none"
2754    )]
2755    pub border: Option<String>,
2756    /// Color of the diff editor's diagonal fill. The diagonal fill is used in side-by-side diff views.
2757    #[serde(
2758        default,
2759        rename = "diffEditor.diagonalFill",
2760        deserialize_with = "empty_string_as_none"
2761    )]
2762    pub diagonal_fill: Option<String>,
2763    /// Background color for lines that got inserted. The color must not be opaque so as not to hide underlying decorations.
2764    #[serde(
2765        default,
2766        rename = "diffEditor.insertedLineBackground",
2767        deserialize_with = "empty_string_as_none"
2768    )]
2769    pub inserted_line_background: Option<String>,
2770    /// Background color for lines that got removed. The color must not be opaque so as not to hide underlying decorations.
2771    #[serde(
2772        default,
2773        rename = "diffEditor.removedLineBackground",
2774        deserialize_with = "empty_string_as_none"
2775    )]
2776    pub removed_line_background: Option<String>,
2777    /// The color of unchanged blocks in diff editor.
2778    #[serde(
2779        default,
2780        rename = "diffEditor.unchangedRegionBackground",
2781        deserialize_with = "empty_string_as_none"
2782    )]
2783    pub unchanged_region_background: Option<String>,
2784    /// The foreground color of unchanged blocks in the diff editor.
2785    #[serde(
2786        default,
2787        rename = "diffEditor.unchangedRegionForeground",
2788        deserialize_with = "empty_string_as_none"
2789    )]
2790    pub unchanged_region_foreground: Option<String>,
2791    /// The color of the shadow around unchanged region widgets.
2792    #[serde(
2793        default,
2794        rename = "diffEditor.unchangedRegionShadow",
2795        deserialize_with = "empty_string_as_none"
2796    )]
2797    pub unchanged_region_shadow: Option<String>,
2798    /// The background color of unchanged code in the diff editor.
2799    #[serde(
2800        default,
2801        rename = "diffEditor.unchangedCodeBackground",
2802        deserialize_with = "empty_string_as_none"
2803    )]
2804    pub unchanged_code_background: Option<String>,
2805    /// The border color for text that got moved in the diff editor.
2806    #[serde(
2807        default,
2808        rename = "diffEditor.move.border",
2809        deserialize_with = "empty_string_as_none"
2810    )]
2811    pub move_border: Option<String>,
2812    /// The active border color for text that got moved in the diff editor.
2813    #[serde(
2814        default,
2815        rename = "diffEditor.moveActive.border",
2816        deserialize_with = "empty_string_as_none"
2817    )]
2818    pub move_active_border: Option<String>,
2819}
2820#[derive(Debug, Clone, Serialize, Deserialize)]
2821pub struct DiffEditorGutterColors {
2822    /// Background color for the margin where lines got inserted.
2823    #[serde(
2824        default,
2825        rename = "diffEditorGutter.insertedLineBackground",
2826        deserialize_with = "empty_string_as_none"
2827    )]
2828    pub inserted_line_background: Option<String>,
2829    /// Background color for the margin where lines got removed.
2830    #[serde(
2831        default,
2832        rename = "diffEditorGutter.removedLineBackground",
2833        deserialize_with = "empty_string_as_none"
2834    )]
2835    pub removed_line_background: Option<String>,
2836}
2837#[derive(Debug, Clone, Serialize, Deserialize)]
2838pub struct DiffEditorOverviewColors {
2839    /// Diff overview ruler foreground for inserted content.
2840    #[serde(
2841        default,
2842        rename = "diffEditorOverview.insertedForeground",
2843        deserialize_with = "empty_string_as_none"
2844    )]
2845    pub inserted_foreground: Option<String>,
2846    /// Diff overview ruler foreground for removed content.
2847    #[serde(
2848        default,
2849        rename = "diffEditorOverview.removedForeground",
2850        deserialize_with = "empty_string_as_none"
2851    )]
2852    pub removed_foreground: Option<String>,
2853}
2854#[derive(Debug, Clone, Serialize, Deserialize)]
2855pub struct MultiDiffEditorColors {
2856    /// The background color of the diff editor's header
2857    #[serde(
2858        default,
2859        rename = "multiDiffEditor.headerBackground",
2860        deserialize_with = "empty_string_as_none"
2861    )]
2862    pub header_background: Option<String>,
2863}
2864#[derive(Debug, Clone, Serialize, Deserialize)]
2865pub struct ChatColors {
2866    /// The border color of a chat request.
2867    #[serde(
2868        default,
2869        rename = "chat.requestBorder",
2870        deserialize_with = "empty_string_as_none"
2871    )]
2872    pub request_border: Option<String>,
2873    /// The background color of a chat slash command.
2874    #[serde(
2875        default,
2876        rename = "chat.slashCommandBackground",
2877        deserialize_with = "empty_string_as_none"
2878    )]
2879    pub slash_command_background: Option<String>,
2880    /// The foreground color of a chat slash command.
2881    #[serde(
2882        default,
2883        rename = "chat.slashCommandForeground",
2884        deserialize_with = "empty_string_as_none"
2885    )]
2886    pub slash_command_foreground: Option<String>,
2887    /// The background color of a chat avatar.
2888    #[serde(
2889        default,
2890        rename = "chat.avatarBackground",
2891        deserialize_with = "empty_string_as_none"
2892    )]
2893    pub avatar_background: Option<String>,
2894    /// The foreground color of a chat avatar.
2895    #[serde(
2896        default,
2897        rename = "chat.avatarForeground",
2898        deserialize_with = "empty_string_as_none"
2899    )]
2900    pub avatar_foreground: Option<String>,
2901}
2902#[derive(Debug, Clone, Serialize, Deserialize)]
2903pub struct InlineChatColors {
2904    /// Background color of the interactive editor widget.
2905    #[serde(
2906        default,
2907        rename = "inlineChat.background",
2908        deserialize_with = "empty_string_as_none"
2909    )]
2910    pub background: Option<String>,
2911    /// Border color of the interactive editor widget.
2912    #[serde(
2913        default,
2914        rename = "inlineChat.border",
2915        deserialize_with = "empty_string_as_none"
2916    )]
2917    pub border: Option<String>,
2918    /// Shadow color of the interactive editor widget.
2919    #[serde(
2920        default,
2921        rename = "inlineChat.shadow",
2922        deserialize_with = "empty_string_as_none"
2923    )]
2924    pub shadow: Option<String>,
2925    /// Background highlighting of the current interactive region. Must be transparent.
2926    #[serde(
2927        default,
2928        rename = "inlineChat.regionHighlight",
2929        deserialize_with = "empty_string_as_none"
2930    )]
2931    pub region_highlight: Option<String>,
2932}
2933#[derive(Debug, Clone, Serialize, Deserialize)]
2934pub struct InlineChatInputColors {
2935    /// Border color of the interactive editor input.
2936    #[serde(
2937        default,
2938        rename = "inlineChatInput.border",
2939        deserialize_with = "empty_string_as_none"
2940    )]
2941    pub border: Option<String>,
2942    /// Border color of the interactive editor input when focused.
2943    #[serde(
2944        default,
2945        rename = "inlineChatInput.focusBorder",
2946        deserialize_with = "empty_string_as_none"
2947    )]
2948    pub focus_border: Option<String>,
2949    /// Foreground color of the interactive editor input placeholder.
2950    #[serde(
2951        default,
2952        rename = "inlineChatInput.placeholderForeground",
2953        deserialize_with = "empty_string_as_none"
2954    )]
2955    pub placeholder_foreground: Option<String>,
2956    /// Background color of the interactive editor input.
2957    #[serde(
2958        default,
2959        rename = "inlineChatInput.background",
2960        deserialize_with = "empty_string_as_none"
2961    )]
2962    pub background: Option<String>,
2963}
2964#[derive(Debug, Clone, Serialize, Deserialize)]
2965pub struct InlineChatDiffColors {
2966    /// Background color of inserted text in the interactive editor input.
2967    #[serde(
2968        default,
2969        rename = "inlineChatDiff.inserted",
2970        deserialize_with = "empty_string_as_none"
2971    )]
2972    pub inserted: Option<String>,
2973    /// Background color of removed text in the interactive editor input.
2974    #[serde(
2975        default,
2976        rename = "inlineChatDiff.removed",
2977        deserialize_with = "empty_string_as_none"
2978    )]
2979    pub removed: Option<String>,
2980}
2981#[derive(Debug, Clone, Serialize, Deserialize)]
2982pub struct EditorWidgetColors {
2983    /// Foreground color of editor widgets, such as find/replace.
2984    #[serde(
2985        default,
2986        rename = "editorWidget.foreground",
2987        deserialize_with = "empty_string_as_none"
2988    )]
2989    pub foreground: Option<String>,
2990    /// Background color of editor widgets, such as Find/Replace.
2991    #[serde(
2992        default,
2993        rename = "editorWidget.background",
2994        deserialize_with = "empty_string_as_none"
2995    )]
2996    pub background: Option<String>,
2997    /// Border color of the editor widget unless the widget does not contain a border or defines its own border color.
2998    #[serde(
2999        default,
3000        rename = "editorWidget.border",
3001        deserialize_with = "empty_string_as_none"
3002    )]
3003    pub border: Option<String>,
3004    /// Border color of the resize bar of editor widgets. The color is only used if the widget chooses to have a resize border and if the color is not overridden by a widget.
3005    #[serde(
3006        default,
3007        rename = "editorWidget.resizeBorder",
3008        deserialize_with = "empty_string_as_none"
3009    )]
3010    pub resize_border: Option<String>,
3011}
3012#[derive(Debug, Clone, Serialize, Deserialize)]
3013pub struct EditorSuggestWidgetColors {
3014    /// Background color of the suggestion widget.
3015    #[serde(
3016        default,
3017        rename = "editorSuggestWidget.background",
3018        deserialize_with = "empty_string_as_none"
3019    )]
3020    pub background: Option<String>,
3021    /// Border color of the suggestion widget.
3022    #[serde(
3023        default,
3024        rename = "editorSuggestWidget.border",
3025        deserialize_with = "empty_string_as_none"
3026    )]
3027    pub border: Option<String>,
3028    /// Foreground color of the suggestion widget.
3029    #[serde(
3030        default,
3031        rename = "editorSuggestWidget.foreground",
3032        deserialize_with = "empty_string_as_none"
3033    )]
3034    pub foreground: Option<String>,
3035    /// Color of the match highlights in the suggest widget when an item is focused.
3036    #[serde(
3037        default,
3038        rename = "editorSuggestWidget.focusHighlightForeground",
3039        deserialize_with = "empty_string_as_none"
3040    )]
3041    pub focus_highlight_foreground: Option<String>,
3042    /// Color of the match highlights in the suggestion widget.
3043    #[serde(
3044        default,
3045        rename = "editorSuggestWidget.highlightForeground",
3046        deserialize_with = "empty_string_as_none"
3047    )]
3048    pub highlight_foreground: Option<String>,
3049    /// Background color of the selected entry in the suggestion widget.
3050    #[serde(
3051        default,
3052        rename = "editorSuggestWidget.selectedBackground",
3053        deserialize_with = "empty_string_as_none"
3054    )]
3055    pub selected_background: Option<String>,
3056    /// Foreground color of the selected entry in the suggest widget.
3057    #[serde(
3058        default,
3059        rename = "editorSuggestWidget.selectedForeground",
3060        deserialize_with = "empty_string_as_none"
3061    )]
3062    pub selected_foreground: Option<String>,
3063    /// Icon foreground color of the selected entry in the suggest widget.
3064    #[serde(
3065        default,
3066        rename = "editorSuggestWidget.selectedIconForeground",
3067        deserialize_with = "empty_string_as_none"
3068    )]
3069    pub selected_icon_foreground: Option<String>,
3070}
3071#[derive(Debug, Clone, Serialize, Deserialize)]
3072pub struct EditorSuggestWidgetStatusColors {
3073    /// Foreground color of the suggest widget status.
3074    #[serde(
3075        default,
3076        rename = "editorSuggestWidgetStatus.foreground",
3077        deserialize_with = "empty_string_as_none"
3078    )]
3079    pub foreground: Option<String>,
3080}
3081#[derive(Debug, Clone, Serialize, Deserialize)]
3082pub struct EditorHoverWidgetColors {
3083    /// Foreground color of the editor hover.
3084    #[serde(
3085        default,
3086        rename = "editorHoverWidget.foreground",
3087        deserialize_with = "empty_string_as_none"
3088    )]
3089    pub foreground: Option<String>,
3090    /// Background color of the editor hover.
3091    #[serde(
3092        default,
3093        rename = "editorHoverWidget.background",
3094        deserialize_with = "empty_string_as_none"
3095    )]
3096    pub background: Option<String>,
3097    /// Border color of the editor hover.
3098    #[serde(
3099        default,
3100        rename = "editorHoverWidget.border",
3101        deserialize_with = "empty_string_as_none"
3102    )]
3103    pub border: Option<String>,
3104    /// Foreground color of the active item in the parameter hint.
3105    #[serde(
3106        default,
3107        rename = "editorHoverWidget.highlightForeground",
3108        deserialize_with = "empty_string_as_none"
3109    )]
3110    pub highlight_foreground: Option<String>,
3111    /// Background color of the editor hover status bar.
3112    #[serde(
3113        default,
3114        rename = "editorHoverWidget.statusBarBackground",
3115        deserialize_with = "empty_string_as_none"
3116    )]
3117    pub status_bar_background: Option<String>,
3118}
3119#[derive(Debug, Clone, Serialize, Deserialize)]
3120pub struct EditorGhostTextColors {
3121    /// Border color of the ghost text shown by inline completion providers and the suggest preview.
3122    #[serde(
3123        default,
3124        rename = "editorGhostText.border",
3125        deserialize_with = "empty_string_as_none"
3126    )]
3127    pub border: Option<String>,
3128    /// Background color of the ghost text in the editor.
3129    #[serde(
3130        default,
3131        rename = "editorGhostText.background",
3132        deserialize_with = "empty_string_as_none"
3133    )]
3134    pub background: Option<String>,
3135    /// Foreground color of the ghost text shown by inline completion providers and the suggest preview.
3136    #[serde(
3137        default,
3138        rename = "editorGhostText.foreground",
3139        deserialize_with = "empty_string_as_none"
3140    )]
3141    pub foreground: Option<String>,
3142}
3143#[derive(Debug, Clone, Serialize, Deserialize)]
3144pub struct EditorStickyScrollColors {
3145    /// Editor sticky scroll background color.
3146    #[serde(
3147        default,
3148        rename = "editorStickyScroll.background",
3149        deserialize_with = "empty_string_as_none"
3150    )]
3151    pub background: Option<String>,
3152}
3153#[derive(Debug, Clone, Serialize, Deserialize)]
3154pub struct EditorStickyScrollHoverColors {
3155    /// Editor sticky scroll on hover background color.
3156    #[serde(
3157        default,
3158        rename = "editorStickyScrollHover.background",
3159        deserialize_with = "empty_string_as_none"
3160    )]
3161    pub background: Option<String>,
3162}
3163#[derive(Debug, Clone, Serialize, Deserialize)]
3164pub struct DebugExceptionWidgetColors {
3165    /// Exception widget background color.
3166    #[serde(
3167        default,
3168        rename = "debugExceptionWidget.background",
3169        deserialize_with = "empty_string_as_none"
3170    )]
3171    pub background: Option<String>,
3172    /// Exception widget border color.
3173    #[serde(
3174        default,
3175        rename = "debugExceptionWidget.border",
3176        deserialize_with = "empty_string_as_none"
3177    )]
3178    pub border: Option<String>,
3179}
3180#[derive(Debug, Clone, Serialize, Deserialize)]
3181pub struct EditorMarkerNavigationColors {
3182    /// Editor marker navigation widget background.
3183    #[serde(
3184        default,
3185        rename = "editorMarkerNavigation.background",
3186        deserialize_with = "empty_string_as_none"
3187    )]
3188    pub background: Option<String>,
3189}
3190#[derive(Debug, Clone, Serialize, Deserialize)]
3191pub struct EditorMarkerNavigationErrorColors {
3192    /// Editor marker navigation widget error color.
3193    #[serde(
3194        default,
3195        rename = "editorMarkerNavigationError.background",
3196        deserialize_with = "empty_string_as_none"
3197    )]
3198    pub background: Option<String>,
3199    /// Editor marker navigation widget error heading background.
3200    #[serde(
3201        default,
3202        rename = "editorMarkerNavigationError.headerBackground",
3203        deserialize_with = "empty_string_as_none"
3204    )]
3205    pub header_background: Option<String>,
3206}
3207#[derive(Debug, Clone, Serialize, Deserialize)]
3208pub struct EditorMarkerNavigationWarningColors {
3209    /// Editor marker navigation widget warning color.
3210    #[serde(
3211        default,
3212        rename = "editorMarkerNavigationWarning.background",
3213        deserialize_with = "empty_string_as_none"
3214    )]
3215    pub background: Option<String>,
3216    /// Editor marker navigation widget warning heading background.
3217    #[serde(
3218        default,
3219        rename = "editorMarkerNavigationWarning.headerBackground",
3220        deserialize_with = "empty_string_as_none"
3221    )]
3222    pub header_background: Option<String>,
3223}
3224#[derive(Debug, Clone, Serialize, Deserialize)]
3225pub struct EditorMarkerNavigationInfoColors {
3226    /// Editor marker navigation widget info color.
3227    #[serde(
3228        default,
3229        rename = "editorMarkerNavigationInfo.background",
3230        deserialize_with = "empty_string_as_none"
3231    )]
3232    pub background: Option<String>,
3233    /// Editor marker navigation widget info heading background.
3234    #[serde(
3235        default,
3236        rename = "editorMarkerNavigationInfo.headerBackground",
3237        deserialize_with = "empty_string_as_none"
3238    )]
3239    pub header_background: Option<String>,
3240}
3241#[derive(Debug, Clone, Serialize, Deserialize)]
3242pub struct PeekViewColors {
3243    /// Color of the peek view borders and arrow.
3244    #[serde(
3245        default,
3246        rename = "peekView.border",
3247        deserialize_with = "empty_string_as_none"
3248    )]
3249    pub border: Option<String>,
3250}
3251#[derive(Debug, Clone, Serialize, Deserialize)]
3252pub struct PeekViewEditorColors {
3253    /// Background color of the peek view editor.
3254    #[serde(
3255        default,
3256        rename = "peekViewEditor.background",
3257        deserialize_with = "empty_string_as_none"
3258    )]
3259    pub background: Option<String>,
3260    /// Match highlight color in the peek view editor.
3261    #[serde(
3262        default,
3263        rename = "peekViewEditor.matchHighlightBackground",
3264        deserialize_with = "empty_string_as_none"
3265    )]
3266    pub match_highlight_background: Option<String>,
3267    /// Match highlight border color in the peek view editor.
3268    #[serde(
3269        default,
3270        rename = "peekViewEditor.matchHighlightBorder",
3271        deserialize_with = "empty_string_as_none"
3272    )]
3273    pub match_highlight_border: Option<String>,
3274}
3275#[derive(Debug, Clone, Serialize, Deserialize)]
3276pub struct PeekViewEditorGutterColors {
3277    /// Background color of the gutter in the peek view editor.
3278    #[serde(
3279        default,
3280        rename = "peekViewEditorGutter.background",
3281        deserialize_with = "empty_string_as_none"
3282    )]
3283    pub background: Option<String>,
3284}
3285#[derive(Debug, Clone, Serialize, Deserialize)]
3286pub struct PeekViewResultColors {
3287    /// Background color of the peek view result list.
3288    #[serde(
3289        default,
3290        rename = "peekViewResult.background",
3291        deserialize_with = "empty_string_as_none"
3292    )]
3293    pub background: Option<String>,
3294    /// Foreground color for file nodes in the peek view result list.
3295    #[serde(
3296        default,
3297        rename = "peekViewResult.fileForeground",
3298        deserialize_with = "empty_string_as_none"
3299    )]
3300    pub file_foreground: Option<String>,
3301    /// Foreground color for line nodes in the peek view result list.
3302    #[serde(
3303        default,
3304        rename = "peekViewResult.lineForeground",
3305        deserialize_with = "empty_string_as_none"
3306    )]
3307    pub line_foreground: Option<String>,
3308    /// Match highlight color in the peek view result list.
3309    #[serde(
3310        default,
3311        rename = "peekViewResult.matchHighlightBackground",
3312        deserialize_with = "empty_string_as_none"
3313    )]
3314    pub match_highlight_background: Option<String>,
3315    /// Background color of the selected entry in the peek view result list.
3316    #[serde(
3317        default,
3318        rename = "peekViewResult.selectionBackground",
3319        deserialize_with = "empty_string_as_none"
3320    )]
3321    pub selection_background: Option<String>,
3322    /// Foreground color of the selected entry in the peek view result list.
3323    #[serde(
3324        default,
3325        rename = "peekViewResult.selectionForeground",
3326        deserialize_with = "empty_string_as_none"
3327    )]
3328    pub selection_foreground: Option<String>,
3329}
3330#[derive(Debug, Clone, Serialize, Deserialize)]
3331pub struct PeekViewTitleColors {
3332    /// Background color of the peek view title area.
3333    #[serde(
3334        default,
3335        rename = "peekViewTitle.background",
3336        deserialize_with = "empty_string_as_none"
3337    )]
3338    pub background: Option<String>,
3339}
3340#[derive(Debug, Clone, Serialize, Deserialize)]
3341pub struct PeekViewTitleDescriptionColors {
3342    /// Color of the peek view title info.
3343    #[serde(
3344        default,
3345        rename = "peekViewTitleDescription.foreground",
3346        deserialize_with = "empty_string_as_none"
3347    )]
3348    pub foreground: Option<String>,
3349}
3350#[derive(Debug, Clone, Serialize, Deserialize)]
3351pub struct PeekViewTitleLabelColors {
3352    /// Color of the peek view title.
3353    #[serde(
3354        default,
3355        rename = "peekViewTitleLabel.foreground",
3356        deserialize_with = "empty_string_as_none"
3357    )]
3358    pub foreground: Option<String>,
3359}
3360#[derive(Debug, Clone, Serialize, Deserialize)]
3361pub struct PeekViewEditorStickyScrollColors {
3362    /// Background color of sticky scroll in the peek view editor.
3363    #[serde(
3364        default,
3365        rename = "peekViewEditorStickyScroll.background",
3366        deserialize_with = "empty_string_as_none"
3367    )]
3368    pub background: Option<String>,
3369}
3370#[derive(Debug, Clone, Serialize, Deserialize)]
3371pub struct MergeColors {
3372    /// Current header background in inline merge conflicts. The color must not be opaque so as not to hide underlying decorations.
3373    #[serde(
3374        default,
3375        rename = "merge.currentHeaderBackground",
3376        deserialize_with = "empty_string_as_none"
3377    )]
3378    pub current_header_background: Option<String>,
3379    /// Current content background in inline merge conflicts. The color must not be opaque so as not to hide underlying decorations.
3380    #[serde(
3381        default,
3382        rename = "merge.currentContentBackground",
3383        deserialize_with = "empty_string_as_none"
3384    )]
3385    pub current_content_background: Option<String>,
3386    /// Incoming header background in inline merge conflicts. The color must not be opaque so as not to hide underlying decorations.
3387    #[serde(
3388        default,
3389        rename = "merge.incomingHeaderBackground",
3390        deserialize_with = "empty_string_as_none"
3391    )]
3392    pub incoming_header_background: Option<String>,
3393    /// Incoming content background in inline merge conflicts. The color must not be opaque so as not to hide underlying decorations.
3394    #[serde(
3395        default,
3396        rename = "merge.incomingContentBackground",
3397        deserialize_with = "empty_string_as_none"
3398    )]
3399    pub incoming_content_background: Option<String>,
3400    /// Border color on headers and the splitter in inline merge conflicts.
3401    #[serde(
3402        default,
3403        rename = "merge.border",
3404        deserialize_with = "empty_string_as_none"
3405    )]
3406    pub border: Option<String>,
3407    /// Common ancestor content background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.
3408    #[serde(
3409        default,
3410        rename = "merge.commonContentBackground",
3411        deserialize_with = "empty_string_as_none"
3412    )]
3413    pub common_content_background: Option<String>,
3414    /// Common ancestor header background in inline merge-conflicts. The color must not be opaque so as not to hide underlying decorations.
3415    #[serde(
3416        default,
3417        rename = "merge.commonHeaderBackground",
3418        deserialize_with = "empty_string_as_none"
3419    )]
3420    pub common_header_background: Option<String>,
3421}
3422#[derive(Debug, Clone, Serialize, Deserialize)]
3423pub struct MergeEditorColors {
3424    /// The background color for changes.
3425    #[serde(
3426        default,
3427        rename = "mergeEditor.change.background",
3428        deserialize_with = "empty_string_as_none"
3429    )]
3430    pub change_background: Option<String>,
3431    /// The background color for word changes.
3432    #[serde(
3433        default,
3434        rename = "mergeEditor.change.word.background",
3435        deserialize_with = "empty_string_as_none"
3436    )]
3437    pub change_word_background: Option<String>,
3438    /// The border color of unhandled unfocused conflicts.
3439    #[serde(
3440        default,
3441        rename = "mergeEditor.conflict.unhandledUnfocused.border",
3442        deserialize_with = "empty_string_as_none"
3443    )]
3444    pub conflict_unhandled_unfocused_border: Option<String>,
3445    /// The border color of unhandled focused conflicts.
3446    #[serde(
3447        default,
3448        rename = "mergeEditor.conflict.unhandledFocused.border",
3449        deserialize_with = "empty_string_as_none"
3450    )]
3451    pub conflict_unhandled_focused_border: Option<String>,
3452    /// The border color of handled unfocused conflicts.
3453    #[serde(
3454        default,
3455        rename = "mergeEditor.conflict.handledUnfocused.border",
3456        deserialize_with = "empty_string_as_none"
3457    )]
3458    pub conflict_handled_unfocused_border: Option<String>,
3459    /// The border color of handled focused conflicts.
3460    #[serde(
3461        default,
3462        rename = "mergeEditor.conflict.handledFocused.border",
3463        deserialize_with = "empty_string_as_none"
3464    )]
3465    pub conflict_handled_focused_border: Option<String>,
3466    /// The foreground color for changes in input 1.
3467    #[serde(
3468        default,
3469        rename = "mergeEditor.conflict.handled.minimapOverViewRuler",
3470        deserialize_with = "empty_string_as_none"
3471    )]
3472    pub conflict_handled_minimap_over_view_ruler: Option<String>,
3473    /// The foreground color for changes in input 1.
3474    #[serde(
3475        default,
3476        rename = "mergeEditor.conflict.unhandled.minimapOverViewRuler",
3477        deserialize_with = "empty_string_as_none"
3478    )]
3479    pub conflict_unhandled_minimap_over_view_ruler: Option<String>,
3480    /// The background of the "Conflicting Lines" text.
3481    #[serde(
3482        default,
3483        rename = "mergeEditor.conflictingLines.background",
3484        deserialize_with = "empty_string_as_none"
3485    )]
3486    pub conflicting_lines_background: Option<String>,
3487    /// The background color for changes in base.
3488    #[serde(
3489        default,
3490        rename = "mergeEditor.changeBase.background",
3491        deserialize_with = "empty_string_as_none"
3492    )]
3493    pub change_base_background: Option<String>,
3494    /// The background color for word changes in base.
3495    #[serde(
3496        default,
3497        rename = "mergeEditor.changeBase.word.background",
3498        deserialize_with = "empty_string_as_none"
3499    )]
3500    pub change_base_word_background: Option<String>,
3501    /// The background color of decorations in input 1.
3502    #[serde(
3503        default,
3504        rename = "mergeEditor.conflict.input1.background",
3505        deserialize_with = "empty_string_as_none"
3506    )]
3507    pub conflict_input1_background: Option<String>,
3508    /// The background color of decorations in input 2.
3509    #[serde(
3510        default,
3511        rename = "mergeEditor.conflict.input2.background",
3512        deserialize_with = "empty_string_as_none"
3513    )]
3514    pub conflict_input2_background: Option<String>,
3515}
3516#[derive(Debug, Clone, Serialize, Deserialize)]
3517pub struct PanelColors {
3518    /// Panel background color.
3519    #[serde(
3520        default,
3521        rename = "panel.background",
3522        deserialize_with = "empty_string_as_none"
3523    )]
3524    pub background: Option<String>,
3525    /// Panel border color to separate the panel from the editor.
3526    #[serde(
3527        default,
3528        rename = "panel.border",
3529        deserialize_with = "empty_string_as_none"
3530    )]
3531    pub border: Option<String>,
3532    /// Drag and drop feedback color for the panel titles. Panels are shown below the editor area and contain views like output and integrated terminal.
3533    #[serde(
3534        default,
3535        rename = "panel.dropBorder",
3536        deserialize_with = "empty_string_as_none"
3537    )]
3538    pub drop_border: Option<String>,
3539}
3540#[derive(Debug, Clone, Serialize, Deserialize)]
3541pub struct PanelTitleColors {
3542    /// Border color for the active panel title.
3543    #[serde(
3544        default,
3545        rename = "panelTitle.activeBorder",
3546        deserialize_with = "empty_string_as_none"
3547    )]
3548    pub active_border: Option<String>,
3549    /// Title color for the active panel.
3550    #[serde(
3551        default,
3552        rename = "panelTitle.activeForeground",
3553        deserialize_with = "empty_string_as_none"
3554    )]
3555    pub active_foreground: Option<String>,
3556    /// Title color for the inactive panel.
3557    #[serde(
3558        default,
3559        rename = "panelTitle.inactiveForeground",
3560        deserialize_with = "empty_string_as_none"
3561    )]
3562    pub inactive_foreground: Option<String>,
3563}
3564#[derive(Debug, Clone, Serialize, Deserialize)]
3565pub struct PanelInputColors {
3566    /// Input box border for inputs in the panel.
3567    #[serde(
3568        default,
3569        rename = "panelInput.border",
3570        deserialize_with = "empty_string_as_none"
3571    )]
3572    pub border: Option<String>,
3573}
3574#[derive(Debug, Clone, Serialize, Deserialize)]
3575pub struct PanelSectionColors {
3576    /// Panel section border color used when multiple views are stacked horizontally in the panel. Panels are shown below the editor area and contain views like output and integrated terminal.
3577    #[serde(
3578        default,
3579        rename = "panelSection.border",
3580        deserialize_with = "empty_string_as_none"
3581    )]
3582    pub border: Option<String>,
3583    /// Drag and drop feedback color for the panel sections. The color should have transparency so that the panel sections can still shine through. Panels are shown below the editor area and contain views like output and integrated terminal.
3584    #[serde(
3585        default,
3586        rename = "panelSection.dropBackground",
3587        deserialize_with = "empty_string_as_none"
3588    )]
3589    pub drop_background: Option<String>,
3590}
3591#[derive(Debug, Clone, Serialize, Deserialize)]
3592pub struct PanelSectionHeaderColors {
3593    /// Panel section header background color. Panels are shown below the editor area and contain views like output and integrated terminal.
3594    #[serde(
3595        default,
3596        rename = "panelSectionHeader.background",
3597        deserialize_with = "empty_string_as_none"
3598    )]
3599    pub background: Option<String>,
3600    /// Panel section header foreground color. Panels are shown below the editor area and contain views like output and integrated terminal.
3601    #[serde(
3602        default,
3603        rename = "panelSectionHeader.foreground",
3604        deserialize_with = "empty_string_as_none"
3605    )]
3606    pub foreground: Option<String>,
3607    /// Panel section header border color used when multiple views are stacked vertically in the panel. Panels are shown below the editor area and contain views like output and integrated terminal.
3608    #[serde(
3609        default,
3610        rename = "panelSectionHeader.border",
3611        deserialize_with = "empty_string_as_none"
3612    )]
3613    pub border: Option<String>,
3614}
3615#[derive(Debug, Clone, Serialize, Deserialize)]
3616pub struct StatusBarColors {
3617    /// Standard Status Bar background color.
3618    #[serde(
3619        default,
3620        rename = "statusBar.background",
3621        deserialize_with = "empty_string_as_none"
3622    )]
3623    pub background: Option<String>,
3624    /// Status Bar foreground color.
3625    #[serde(
3626        default,
3627        rename = "statusBar.foreground",
3628        deserialize_with = "empty_string_as_none"
3629    )]
3630    pub foreground: Option<String>,
3631    /// Status Bar border color separating the Status Bar and editor.
3632    #[serde(
3633        default,
3634        rename = "statusBar.border",
3635        deserialize_with = "empty_string_as_none"
3636    )]
3637    pub border: Option<String>,
3638    /// Status Bar background color when a program is being debugged.
3639    #[serde(
3640        default,
3641        rename = "statusBar.debuggingBackground",
3642        deserialize_with = "empty_string_as_none"
3643    )]
3644    pub debugging_background: Option<String>,
3645    /// Status Bar foreground color when a program is being debugged.
3646    #[serde(
3647        default,
3648        rename = "statusBar.debuggingForeground",
3649        deserialize_with = "empty_string_as_none"
3650    )]
3651    pub debugging_foreground: Option<String>,
3652    /// Status Bar border color separating the Status Bar and editor when a program is being debugged.
3653    #[serde(
3654        default,
3655        rename = "statusBar.debuggingBorder",
3656        deserialize_with = "empty_string_as_none"
3657    )]
3658    pub debugging_border: Option<String>,
3659    /// Status Bar foreground color when no folder is opened.
3660    #[serde(
3661        default,
3662        rename = "statusBar.noFolderForeground",
3663        deserialize_with = "empty_string_as_none"
3664    )]
3665    pub no_folder_foreground: Option<String>,
3666    /// Status Bar background color when no folder is opened.
3667    #[serde(
3668        default,
3669        rename = "statusBar.noFolderBackground",
3670        deserialize_with = "empty_string_as_none"
3671    )]
3672    pub no_folder_background: Option<String>,
3673    /// Status Bar border color separating the Status Bar and editor when no folder is opened.
3674    #[serde(
3675        default,
3676        rename = "statusBar.noFolderBorder",
3677        deserialize_with = "empty_string_as_none"
3678    )]
3679    pub no_folder_border: Option<String>,
3680    /// Status bar border color when focused on keyboard navigation. The status bar is shown in the bottom of the window.
3681    #[serde(
3682        default,
3683        rename = "statusBar.focusBorder",
3684        deserialize_with = "empty_string_as_none"
3685    )]
3686    pub focus_border: Option<String>,
3687}
3688#[derive(Debug, Clone, Serialize, Deserialize)]
3689pub struct StatusBarItemColors {
3690    /// Status Bar item background color when clicking.
3691    #[serde(
3692        default,
3693        rename = "statusBarItem.activeBackground",
3694        deserialize_with = "empty_string_as_none"
3695    )]
3696    pub active_background: Option<String>,
3697    /// Status bar item foreground color when hovering. The status bar is shown in the bottom of the window.
3698    #[serde(
3699        default,
3700        rename = "statusBarItem.hoverForeground",
3701        deserialize_with = "empty_string_as_none"
3702    )]
3703    pub hover_foreground: Option<String>,
3704    /// Status Bar item background color when hovering.
3705    #[serde(
3706        default,
3707        rename = "statusBarItem.hoverBackground",
3708        deserialize_with = "empty_string_as_none"
3709    )]
3710    pub hover_background: Option<String>,
3711    /// Status Bar prominent items foreground color.
3712    #[serde(
3713        default,
3714        rename = "statusBarItem.prominentForeground",
3715        deserialize_with = "empty_string_as_none"
3716    )]
3717    pub prominent_foreground: Option<String>,
3718    /// Status Bar prominent items background color.
3719    #[serde(
3720        default,
3721        rename = "statusBarItem.prominentBackground",
3722        deserialize_with = "empty_string_as_none"
3723    )]
3724    pub prominent_background: Option<String>,
3725    /// Status bar prominent items foreground color when hovering. Prominent items stand out from other status bar entries to indicate importance. The status bar is shown in the bottom of the window.
3726    #[serde(
3727        default,
3728        rename = "statusBarItem.prominentHoverForeground",
3729        deserialize_with = "empty_string_as_none"
3730    )]
3731    pub prominent_hover_foreground: Option<String>,
3732    /// Status Bar prominent items background color when hovering.
3733    #[serde(
3734        default,
3735        rename = "statusBarItem.prominentHoverBackground",
3736        deserialize_with = "empty_string_as_none"
3737    )]
3738    pub prominent_hover_background: Option<String>,
3739    /// Background color for the remote indicator on the status bar.
3740    #[serde(
3741        default,
3742        rename = "statusBarItem.remoteBackground",
3743        deserialize_with = "empty_string_as_none"
3744    )]
3745    pub remote_background: Option<String>,
3746    /// Foreground color for the remote indicator on the status bar.
3747    #[serde(
3748        default,
3749        rename = "statusBarItem.remoteForeground",
3750        deserialize_with = "empty_string_as_none"
3751    )]
3752    pub remote_foreground: Option<String>,
3753    /// Background color for the remote indicator on the status bar when hovering.
3754    #[serde(
3755        default,
3756        rename = "statusBarItem.remoteHoverBackground",
3757        deserialize_with = "empty_string_as_none"
3758    )]
3759    pub remote_hover_background: Option<String>,
3760    /// Foreground color for the remote indicator on the status bar when hovering.
3761    #[serde(
3762        default,
3763        rename = "statusBarItem.remoteHoverForeground",
3764        deserialize_with = "empty_string_as_none"
3765    )]
3766    pub remote_hover_foreground: Option<String>,
3767    /// Status bar error items background color. Error items stand out from other status bar entries to indicate error conditions.
3768    #[serde(
3769        default,
3770        rename = "statusBarItem.errorBackground",
3771        deserialize_with = "empty_string_as_none"
3772    )]
3773    pub error_background: Option<String>,
3774    /// Status bar error items foreground color. Error items stand out from other status bar entries to indicate error conditions.
3775    #[serde(
3776        default,
3777        rename = "statusBarItem.errorForeground",
3778        deserialize_with = "empty_string_as_none"
3779    )]
3780    pub error_foreground: Option<String>,
3781    /// Status bar error items background color when hovering. Error items stand out from other status bar entries to indicate error conditions. The status bar is shown in the bottom of the window.
3782    #[serde(
3783        default,
3784        rename = "statusBarItem.errorHoverBackground",
3785        deserialize_with = "empty_string_as_none"
3786    )]
3787    pub error_hover_background: Option<String>,
3788    /// Status bar error items foreground color when hovering. Error items stand out from other status bar entries to indicate error conditions. The status bar is shown in the bottom of the window.
3789    #[serde(
3790        default,
3791        rename = "statusBarItem.errorHoverForeground",
3792        deserialize_with = "empty_string_as_none"
3793    )]
3794    pub error_hover_foreground: Option<String>,
3795    /// Status bar warning items background color. Warning items stand out from other status bar entries to indicate warning conditions. The status bar is shown in the bottom of the window.
3796    #[serde(
3797        default,
3798        rename = "statusBarItem.warningBackground",
3799        deserialize_with = "empty_string_as_none"
3800    )]
3801    pub warning_background: Option<String>,
3802    /// Status bar warning items foreground color. Warning items stand out from other status bar entries to indicate warning conditions. The status bar is shown in the bottom of the window.
3803    #[serde(
3804        default,
3805        rename = "statusBarItem.warningForeground",
3806        deserialize_with = "empty_string_as_none"
3807    )]
3808    pub warning_foreground: Option<String>,
3809    /// Status bar warning items background color when hovering. Warning items stand out from other status bar entries to indicate warning conditions. The status bar is shown in the bottom of the window.
3810    #[serde(
3811        default,
3812        rename = "statusBarItem.warningHoverBackground",
3813        deserialize_with = "empty_string_as_none"
3814    )]
3815    pub warning_hover_background: Option<String>,
3816    /// Status bar warning items foreground color when hovering. Warning items stand out from other status bar entries to indicate warning conditions. The status bar is shown in the bottom of the window.
3817    #[serde(
3818        default,
3819        rename = "statusBarItem.warningHoverForeground",
3820        deserialize_with = "empty_string_as_none"
3821    )]
3822    pub warning_hover_foreground: Option<String>,
3823    /// Status bar item background color when hovering an item that contains two hovers. The status bar is shown in the bottom of the window.
3824    #[serde(
3825        default,
3826        rename = "statusBarItem.compactHoverBackground",
3827        deserialize_with = "empty_string_as_none"
3828    )]
3829    pub compact_hover_background: Option<String>,
3830    /// Status bar item border color when focused on keyboard navigation. The status bar is shown in the bottom of the window.
3831    #[serde(
3832        default,
3833        rename = "statusBarItem.focusBorder",
3834        deserialize_with = "empty_string_as_none"
3835    )]
3836    pub focus_border: Option<String>,
3837    /// Status bar item background color when the workbench is offline.
3838    #[serde(
3839        default,
3840        rename = "statusBarItem.offlineBackground",
3841        deserialize_with = "empty_string_as_none"
3842    )]
3843    pub offline_background: Option<String>,
3844    /// Status bar item foreground color when the workbench is offline.
3845    #[serde(
3846        default,
3847        rename = "statusBarItem.offlineForeground",
3848        deserialize_with = "empty_string_as_none"
3849    )]
3850    pub offline_foreground: Option<String>,
3851    /// Status bar item foreground hover color when the workbench is offline.
3852    #[serde(
3853        default,
3854        rename = "statusBarItem.offlineHoverForeground",
3855        deserialize_with = "empty_string_as_none"
3856    )]
3857    pub offline_hover_foreground: Option<String>,
3858    /// Status bar item background hover color when the workbench is offline.
3859    #[serde(
3860        default,
3861        rename = "statusBarItem.offlineHoverBackground",
3862        deserialize_with = "empty_string_as_none"
3863    )]
3864    pub offline_hover_background: Option<String>,
3865}
3866#[derive(Debug, Clone, Serialize, Deserialize)]
3867pub struct TitleBarColors {
3868    /// Title Bar background when the window is active.
3869    #[serde(
3870        default,
3871        rename = "titleBar.activeBackground",
3872        deserialize_with = "empty_string_as_none"
3873    )]
3874    pub active_background: Option<String>,
3875    /// Title Bar foreground when the window is active.
3876    #[serde(
3877        default,
3878        rename = "titleBar.activeForeground",
3879        deserialize_with = "empty_string_as_none"
3880    )]
3881    pub active_foreground: Option<String>,
3882    /// Title Bar background when the window is inactive.
3883    #[serde(
3884        default,
3885        rename = "titleBar.inactiveBackground",
3886        deserialize_with = "empty_string_as_none"
3887    )]
3888    pub inactive_background: Option<String>,
3889    /// Title Bar foreground when the window is inactive.
3890    #[serde(
3891        default,
3892        rename = "titleBar.inactiveForeground",
3893        deserialize_with = "empty_string_as_none"
3894    )]
3895    pub inactive_foreground: Option<String>,
3896    /// Title bar border color.
3897    #[serde(
3898        default,
3899        rename = "titleBar.border",
3900        deserialize_with = "empty_string_as_none"
3901    )]
3902    pub border: Option<String>,
3903}
3904#[derive(Debug, Clone, Serialize, Deserialize)]
3905pub struct MenubarColors {
3906    /// Foreground color of the selected menu item in the menubar.
3907    #[serde(
3908        default,
3909        rename = "menubar.selectionForeground",
3910        deserialize_with = "empty_string_as_none"
3911    )]
3912    pub selection_foreground: Option<String>,
3913    /// Background color of the selected menu item in the menubar.
3914    #[serde(
3915        default,
3916        rename = "menubar.selectionBackground",
3917        deserialize_with = "empty_string_as_none"
3918    )]
3919    pub selection_background: Option<String>,
3920    /// Border color of the selected menu item in the menubar.
3921    #[serde(
3922        default,
3923        rename = "menubar.selectionBorder",
3924        deserialize_with = "empty_string_as_none"
3925    )]
3926    pub selection_border: Option<String>,
3927}
3928#[derive(Debug, Clone, Serialize, Deserialize)]
3929pub struct MenuColors {
3930    /// Foreground color of menu items.
3931    #[serde(
3932        default,
3933        rename = "menu.foreground",
3934        deserialize_with = "empty_string_as_none"
3935    )]
3936    pub foreground: Option<String>,
3937    /// Background color of menu items.
3938    #[serde(
3939        default,
3940        rename = "menu.background",
3941        deserialize_with = "empty_string_as_none"
3942    )]
3943    pub background: Option<String>,
3944    /// Foreground color of the selected menu item in menus.
3945    #[serde(
3946        default,
3947        rename = "menu.selectionForeground",
3948        deserialize_with = "empty_string_as_none"
3949    )]
3950    pub selection_foreground: Option<String>,
3951    /// Background color of the selected menu item in menus.
3952    #[serde(
3953        default,
3954        rename = "menu.selectionBackground",
3955        deserialize_with = "empty_string_as_none"
3956    )]
3957    pub selection_background: Option<String>,
3958    /// Border color of the selected menu item in menus.
3959    #[serde(
3960        default,
3961        rename = "menu.selectionBorder",
3962        deserialize_with = "empty_string_as_none"
3963    )]
3964    pub selection_border: Option<String>,
3965    /// Color of a separator menu item in menus.
3966    #[serde(
3967        default,
3968        rename = "menu.separatorBackground",
3969        deserialize_with = "empty_string_as_none"
3970    )]
3971    pub separator_background: Option<String>,
3972    /// Border color of menus.
3973    #[serde(
3974        default,
3975        rename = "menu.border",
3976        deserialize_with = "empty_string_as_none"
3977    )]
3978    pub border: Option<String>,
3979}
3980#[derive(Debug, Clone, Serialize, Deserialize)]
3981pub struct CommandCenterColors {
3982    /// Foreground color of the Command Center.
3983    #[serde(
3984        default,
3985        rename = "commandCenter.foreground",
3986        deserialize_with = "empty_string_as_none"
3987    )]
3988    pub foreground: Option<String>,
3989    /// Active foreground color of the Command Center.
3990    #[serde(
3991        default,
3992        rename = "commandCenter.activeForeground",
3993        deserialize_with = "empty_string_as_none"
3994    )]
3995    pub active_foreground: Option<String>,
3996    /// Background color of the Command Center.
3997    #[serde(
3998        default,
3999        rename = "commandCenter.background",
4000        deserialize_with = "empty_string_as_none"
4001    )]
4002    pub background: Option<String>,
4003    /// Active background color of the Command Center.
4004    #[serde(
4005        default,
4006        rename = "commandCenter.activeBackground",
4007        deserialize_with = "empty_string_as_none"
4008    )]
4009    pub active_background: Option<String>,
4010    /// Border color of the Command Center.
4011    #[serde(
4012        default,
4013        rename = "commandCenter.border",
4014        deserialize_with = "empty_string_as_none"
4015    )]
4016    pub border: Option<String>,
4017    /// Foreground color of the Command Center when the window is inactive.
4018    #[serde(
4019        default,
4020        rename = "commandCenter.inactiveForeground",
4021        deserialize_with = "empty_string_as_none"
4022    )]
4023    pub inactive_foreground: Option<String>,
4024    /// Border color of the Command Center when the window is inactive.
4025    #[serde(
4026        default,
4027        rename = "commandCenter.inactiveBorder",
4028        deserialize_with = "empty_string_as_none"
4029    )]
4030    pub inactive_border: Option<String>,
4031    /// Active border color of the Command Center.
4032    #[serde(
4033        default,
4034        rename = "commandCenter.activeBorder",
4035        deserialize_with = "empty_string_as_none"
4036    )]
4037    pub active_border: Option<String>,
4038    /// Command Center background color when a program is being debugged.
4039    #[serde(
4040        default,
4041        rename = "commandCenter.debuggingBackground",
4042        deserialize_with = "empty_string_as_none"
4043    )]
4044    pub debugging_background: Option<String>,
4045}
4046#[derive(Debug, Clone, Serialize, Deserialize)]
4047pub struct NotificationCenterColors {
4048    /// Notification Center border color.
4049    #[serde(
4050        default,
4051        rename = "notificationCenter.border",
4052        deserialize_with = "empty_string_as_none"
4053    )]
4054    pub border: Option<String>,
4055}
4056#[derive(Debug, Clone, Serialize, Deserialize)]
4057pub struct NotificationCenterHeaderColors {
4058    /// Notification Center header foreground color.
4059    #[serde(
4060        default,
4061        rename = "notificationCenterHeader.foreground",
4062        deserialize_with = "empty_string_as_none"
4063    )]
4064    pub foreground: Option<String>,
4065    /// Notification Center header background color.
4066    #[serde(
4067        default,
4068        rename = "notificationCenterHeader.background",
4069        deserialize_with = "empty_string_as_none"
4070    )]
4071    pub background: Option<String>,
4072}
4073#[derive(Debug, Clone, Serialize, Deserialize)]
4074pub struct NotificationToastColors {
4075    /// Notification toast border color.
4076    #[serde(
4077        default,
4078        rename = "notificationToast.border",
4079        deserialize_with = "empty_string_as_none"
4080    )]
4081    pub border: Option<String>,
4082}
4083#[derive(Debug, Clone, Serialize, Deserialize)]
4084pub struct NotificationsColors {
4085    /// Notification foreground color.
4086    #[serde(
4087        default,
4088        rename = "notifications.foreground",
4089        deserialize_with = "empty_string_as_none"
4090    )]
4091    pub foreground: Option<String>,
4092    /// Notification background color.
4093    #[serde(
4094        default,
4095        rename = "notifications.background",
4096        deserialize_with = "empty_string_as_none"
4097    )]
4098    pub background: Option<String>,
4099    /// Notification border color separating from other notifications in the Notification Center.
4100    #[serde(
4101        default,
4102        rename = "notifications.border",
4103        deserialize_with = "empty_string_as_none"
4104    )]
4105    pub border: Option<String>,
4106}
4107#[derive(Debug, Clone, Serialize, Deserialize)]
4108pub struct NotificationLinkColors {
4109    /// Notification links foreground color.
4110    #[serde(
4111        default,
4112        rename = "notificationLink.foreground",
4113        deserialize_with = "empty_string_as_none"
4114    )]
4115    pub foreground: Option<String>,
4116}
4117#[derive(Debug, Clone, Serialize, Deserialize)]
4118pub struct NotificationsErrorIconColors {
4119    /// The color used for the notification error icon.
4120    #[serde(
4121        default,
4122        rename = "notificationsErrorIcon.foreground",
4123        deserialize_with = "empty_string_as_none"
4124    )]
4125    pub foreground: Option<String>,
4126}
4127#[derive(Debug, Clone, Serialize, Deserialize)]
4128pub struct NotificationsWarningIconColors {
4129    /// The color used for the notification warning icon.
4130    #[serde(
4131        default,
4132        rename = "notificationsWarningIcon.foreground",
4133        deserialize_with = "empty_string_as_none"
4134    )]
4135    pub foreground: Option<String>,
4136}
4137#[derive(Debug, Clone, Serialize, Deserialize)]
4138pub struct NotificationsInfoIconColors {
4139    /// The color used for the notification info icon.
4140    #[serde(
4141        default,
4142        rename = "notificationsInfoIcon.foreground",
4143        deserialize_with = "empty_string_as_none"
4144    )]
4145    pub foreground: Option<String>,
4146}
4147#[derive(Debug, Clone, Serialize, Deserialize)]
4148pub struct BannerColors {
4149    /// Banner background color.
4150    #[serde(
4151        default,
4152        rename = "banner.background",
4153        deserialize_with = "empty_string_as_none"
4154    )]
4155    pub background: Option<String>,
4156    /// Banner foreground color.
4157    #[serde(
4158        default,
4159        rename = "banner.foreground",
4160        deserialize_with = "empty_string_as_none"
4161    )]
4162    pub foreground: Option<String>,
4163    /// Color for the icon in front of the banner text.
4164    #[serde(
4165        default,
4166        rename = "banner.iconForeground",
4167        deserialize_with = "empty_string_as_none"
4168    )]
4169    pub icon_foreground: Option<String>,
4170}
4171#[derive(Debug, Clone, Serialize, Deserialize)]
4172pub struct ExtensionButtonColors {
4173    /// Extension view button foreground color (for example **Install** button).
4174    #[serde(
4175        default,
4176        rename = "extensionButton.prominentForeground",
4177        deserialize_with = "empty_string_as_none"
4178    )]
4179    pub prominent_foreground: Option<String>,
4180    /// Extension view button background color.
4181    #[serde(
4182        default,
4183        rename = "extensionButton.prominentBackground",
4184        deserialize_with = "empty_string_as_none"
4185    )]
4186    pub prominent_background: Option<String>,
4187    /// Extension view button background hover color.
4188    #[serde(
4189        default,
4190        rename = "extensionButton.prominentHoverBackground",
4191        deserialize_with = "empty_string_as_none"
4192    )]
4193    pub prominent_hover_background: Option<String>,
4194    /// Button background color for extension actions.
4195    #[serde(
4196        default,
4197        rename = "extensionButton.background",
4198        deserialize_with = "empty_string_as_none"
4199    )]
4200    pub background: Option<String>,
4201    /// Button foreground color for extension actions.
4202    #[serde(
4203        default,
4204        rename = "extensionButton.foreground",
4205        deserialize_with = "empty_string_as_none"
4206    )]
4207    pub foreground: Option<String>,
4208    /// Button background hover color for extension actions.
4209    #[serde(
4210        default,
4211        rename = "extensionButton.hoverBackground",
4212        deserialize_with = "empty_string_as_none"
4213    )]
4214    pub hover_background: Option<String>,
4215    /// Button separator color for extension actions.
4216    #[serde(
4217        default,
4218        rename = "extensionButton.separator",
4219        deserialize_with = "empty_string_as_none"
4220    )]
4221    pub separator: Option<String>,
4222}
4223#[derive(Debug, Clone, Serialize, Deserialize)]
4224pub struct ExtensionBadgeColors {
4225    /// Background color for the remote badge in the extensions view.
4226    #[serde(
4227        default,
4228        rename = "extensionBadge.remoteBackground",
4229        deserialize_with = "empty_string_as_none"
4230    )]
4231    pub remote_background: Option<String>,
4232    /// Foreground color for the remote badge in the extensions view.
4233    #[serde(
4234        default,
4235        rename = "extensionBadge.remoteForeground",
4236        deserialize_with = "empty_string_as_none"
4237    )]
4238    pub remote_foreground: Option<String>,
4239}
4240#[derive(Debug, Clone, Serialize, Deserialize)]
4241pub struct ExtensionIconColors {
4242    /// The icon color for extension ratings.
4243    #[serde(
4244        default,
4245        rename = "extensionIcon.starForeground",
4246        deserialize_with = "empty_string_as_none"
4247    )]
4248    pub star_foreground: Option<String>,
4249    /// The icon color for extension verified publisher.
4250    #[serde(
4251        default,
4252        rename = "extensionIcon.verifiedForeground",
4253        deserialize_with = "empty_string_as_none"
4254    )]
4255    pub verified_foreground: Option<String>,
4256    /// The icon color for pre-release extension.
4257    #[serde(
4258        default,
4259        rename = "extensionIcon.preReleaseForeground",
4260        deserialize_with = "empty_string_as_none"
4261    )]
4262    pub pre_release_foreground: Option<String>,
4263    /// The icon color for extension sponsor.
4264    #[serde(
4265        default,
4266        rename = "extensionIcon.sponsorForeground",
4267        deserialize_with = "empty_string_as_none"
4268    )]
4269    pub sponsor_foreground: Option<String>,
4270}
4271#[derive(Debug, Clone, Serialize, Deserialize)]
4272pub struct PickerGroupColors {
4273    /// Quick picker (Quick Open) color for grouping borders.
4274    #[serde(
4275        default,
4276        rename = "pickerGroup.border",
4277        deserialize_with = "empty_string_as_none"
4278    )]
4279    pub border: Option<String>,
4280    /// Quick picker (Quick Open) color for grouping labels.
4281    #[serde(
4282        default,
4283        rename = "pickerGroup.foreground",
4284        deserialize_with = "empty_string_as_none"
4285    )]
4286    pub foreground: Option<String>,
4287}
4288#[derive(Debug, Clone, Serialize, Deserialize)]
4289pub struct QuickInputColors {
4290    /// Quick input background color. The quick input widget is the container for views like the color theme picker.
4291    #[serde(
4292        default,
4293        rename = "quickInput.background",
4294        deserialize_with = "empty_string_as_none"
4295    )]
4296    pub background: Option<String>,
4297    /// Quick input foreground color. The quick input widget is the container for views like the color theme picker.
4298    #[serde(
4299        default,
4300        rename = "quickInput.foreground",
4301        deserialize_with = "empty_string_as_none"
4302    )]
4303    pub foreground: Option<String>,
4304}
4305#[derive(Debug, Clone, Serialize, Deserialize)]
4306pub struct QuickInputListColors {
4307    /// Quick picker background color for the focused item.
4308    #[serde(
4309        default,
4310        rename = "quickInputList.focusBackground",
4311        deserialize_with = "empty_string_as_none"
4312    )]
4313    pub focus_background: Option<String>,
4314    /// Quick picker foreground color for the focused item.
4315    #[serde(
4316        default,
4317        rename = "quickInputList.focusForeground",
4318        deserialize_with = "empty_string_as_none"
4319    )]
4320    pub focus_foreground: Option<String>,
4321    /// Quick picker icon foreground color for the focused item.
4322    #[serde(
4323        default,
4324        rename = "quickInputList.focusIconForeground",
4325        deserialize_with = "empty_string_as_none"
4326    )]
4327    pub focus_icon_foreground: Option<String>,
4328}
4329#[derive(Debug, Clone, Serialize, Deserialize)]
4330pub struct QuickInputTitleColors {
4331    /// Quick picker title background color. The quick picker widget is the container for pickers like the Command Palette.
4332    #[serde(
4333        default,
4334        rename = "quickInputTitle.background",
4335        deserialize_with = "empty_string_as_none"
4336    )]
4337    pub background: Option<String>,
4338}
4339#[derive(Debug, Clone, Serialize, Deserialize)]
4340pub struct KeybindingLabelColors {
4341    /// Keybinding label background color. The keybinding label is used to represent a keyboard shortcut.
4342    #[serde(
4343        default,
4344        rename = "keybindingLabel.background",
4345        deserialize_with = "empty_string_as_none"
4346    )]
4347    pub background: Option<String>,
4348    /// Keybinding label foreground color. The keybinding label is used to represent a keyboard shortcut.
4349    #[serde(
4350        default,
4351        rename = "keybindingLabel.foreground",
4352        deserialize_with = "empty_string_as_none"
4353    )]
4354    pub foreground: Option<String>,
4355    /// Keybinding label border color. The keybinding label is used to represent a keyboard shortcut.
4356    #[serde(
4357        default,
4358        rename = "keybindingLabel.border",
4359        deserialize_with = "empty_string_as_none"
4360    )]
4361    pub border: Option<String>,
4362    /// Keybinding label border bottom color. The keybinding label is used to represent a keyboard shortcut.
4363    #[serde(
4364        default,
4365        rename = "keybindingLabel.bottomBorder",
4366        deserialize_with = "empty_string_as_none"
4367    )]
4368    pub bottom_border: Option<String>,
4369}
4370#[derive(Debug, Clone, Serialize, Deserialize)]
4371pub struct KeybindingTableColors {
4372    /// Background color for the keyboard shortcuts table header.
4373    #[serde(
4374        default,
4375        rename = "keybindingTable.headerBackground",
4376        deserialize_with = "empty_string_as_none"
4377    )]
4378    pub header_background: Option<String>,
4379    /// Background color for the keyboard shortcuts table alternating rows.
4380    #[serde(
4381        default,
4382        rename = "keybindingTable.rowsBackground",
4383        deserialize_with = "empty_string_as_none"
4384    )]
4385    pub rows_background: Option<String>,
4386}
4387#[derive(Debug, Clone, Serialize, Deserialize)]
4388pub struct TerminalColors {
4389    /// The background of the Integrated Terminal's viewport.
4390    #[serde(
4391        default,
4392        rename = "terminal.background",
4393        deserialize_with = "empty_string_as_none"
4394    )]
4395    pub background: Option<String>,
4396    /// The color of the border that separates split panes within the terminal. This defaults to panel.border.
4397    #[serde(
4398        default,
4399        rename = "terminal.border",
4400        deserialize_with = "empty_string_as_none"
4401    )]
4402    pub border: Option<String>,
4403    /// The default foreground color of the Integrated Terminal.
4404    #[serde(
4405        default,
4406        rename = "terminal.foreground",
4407        deserialize_with = "empty_string_as_none"
4408    )]
4409    pub foreground: Option<String>,
4410    /// 'Black' ANSI color in the terminal.
4411    #[serde(
4412        default,
4413        rename = "terminal.ansiBlack",
4414        deserialize_with = "empty_string_as_none"
4415    )]
4416    pub ansi_black: Option<String>,
4417    /// 'Blue' ANSI color in the terminal.
4418    #[serde(
4419        default,
4420        rename = "terminal.ansiBlue",
4421        deserialize_with = "empty_string_as_none"
4422    )]
4423    pub ansi_blue: Option<String>,
4424    /// 'BrightBlack' ANSI color in the terminal.
4425    #[serde(
4426        default,
4427        rename = "terminal.ansiBrightBlack",
4428        deserialize_with = "empty_string_as_none"
4429    )]
4430    pub ansi_bright_black: Option<String>,
4431    /// 'BrightBlue' ANSI color in the terminal.
4432    #[serde(
4433        default,
4434        rename = "terminal.ansiBrightBlue",
4435        deserialize_with = "empty_string_as_none"
4436    )]
4437    pub ansi_bright_blue: Option<String>,
4438    /// 'BrightCyan' ANSI color in the terminal.
4439    #[serde(
4440        default,
4441        rename = "terminal.ansiBrightCyan",
4442        deserialize_with = "empty_string_as_none"
4443    )]
4444    pub ansi_bright_cyan: Option<String>,
4445    /// 'BrightGreen' ANSI color in the terminal.
4446    #[serde(
4447        default,
4448        rename = "terminal.ansiBrightGreen",
4449        deserialize_with = "empty_string_as_none"
4450    )]
4451    pub ansi_bright_green: Option<String>,
4452    /// 'BrightMagenta' ANSI color in the terminal.
4453    #[serde(
4454        default,
4455        rename = "terminal.ansiBrightMagenta",
4456        deserialize_with = "empty_string_as_none"
4457    )]
4458    pub ansi_bright_magenta: Option<String>,
4459    /// 'BrightRed' ANSI color in the terminal.
4460    #[serde(
4461        default,
4462        rename = "terminal.ansiBrightRed",
4463        deserialize_with = "empty_string_as_none"
4464    )]
4465    pub ansi_bright_red: Option<String>,
4466    /// 'BrightWhite' ANSI color in the terminal.
4467    #[serde(
4468        default,
4469        rename = "terminal.ansiBrightWhite",
4470        deserialize_with = "empty_string_as_none"
4471    )]
4472    pub ansi_bright_white: Option<String>,
4473    /// 'BrightYellow' ANSI color in the terminal.
4474    #[serde(
4475        default,
4476        rename = "terminal.ansiBrightYellow",
4477        deserialize_with = "empty_string_as_none"
4478    )]
4479    pub ansi_bright_yellow: Option<String>,
4480    /// 'Cyan' ANSI color in the terminal.
4481    #[serde(
4482        default,
4483        rename = "terminal.ansiCyan",
4484        deserialize_with = "empty_string_as_none"
4485    )]
4486    pub ansi_cyan: Option<String>,
4487    /// 'Green' ANSI color in the terminal.
4488    #[serde(
4489        default,
4490        rename = "terminal.ansiGreen",
4491        deserialize_with = "empty_string_as_none"
4492    )]
4493    pub ansi_green: Option<String>,
4494    /// 'Magenta' ANSI color in the terminal.
4495    #[serde(
4496        default,
4497        rename = "terminal.ansiMagenta",
4498        deserialize_with = "empty_string_as_none"
4499    )]
4500    pub ansi_magenta: Option<String>,
4501    /// 'Red' ANSI color in the terminal.
4502    #[serde(
4503        default,
4504        rename = "terminal.ansiRed",
4505        deserialize_with = "empty_string_as_none"
4506    )]
4507    pub ansi_red: Option<String>,
4508    /// 'White' ANSI color in the terminal.
4509    #[serde(
4510        default,
4511        rename = "terminal.ansiWhite",
4512        deserialize_with = "empty_string_as_none"
4513    )]
4514    pub ansi_white: Option<String>,
4515    /// 'Yellow' ANSI color in the terminal.
4516    #[serde(
4517        default,
4518        rename = "terminal.ansiYellow",
4519        deserialize_with = "empty_string_as_none"
4520    )]
4521    pub ansi_yellow: Option<String>,
4522    /// The selection background color of the terminal.
4523    #[serde(
4524        default,
4525        rename = "terminal.selectionBackground",
4526        deserialize_with = "empty_string_as_none"
4527    )]
4528    pub selection_background: Option<String>,
4529    /// The selection foreground color of the terminal. When this is null the selection foreground will be retained and have the minimum contrast ratio feature applied.
4530    #[serde(
4531        default,
4532        rename = "terminal.selectionForeground",
4533        deserialize_with = "empty_string_as_none"
4534    )]
4535    pub selection_foreground: Option<String>,
4536    /// The selection background color of the terminal when it does not have focus.
4537    #[serde(
4538        default,
4539        rename = "terminal.inactiveSelectionBackground",
4540        deserialize_with = "empty_string_as_none"
4541    )]
4542    pub inactive_selection_background: Option<String>,
4543    /// Color of the current search match in the terminal. The color must not be opaque so as not to hide underlying terminal content.
4544    #[serde(
4545        default,
4546        rename = "terminal.findMatchBackground",
4547        deserialize_with = "empty_string_as_none"
4548    )]
4549    pub find_match_background: Option<String>,
4550    /// Border color of the current search match in the terminal.
4551    #[serde(
4552        default,
4553        rename = "terminal.findMatchBorder",
4554        deserialize_with = "empty_string_as_none"
4555    )]
4556    pub find_match_border: Option<String>,
4557    /// Color of the other search matches in the terminal. The color must not be opaque so as not to hide underlying terminal content.
4558    #[serde(
4559        default,
4560        rename = "terminal.findMatchHighlightBackground",
4561        deserialize_with = "empty_string_as_none"
4562    )]
4563    pub find_match_highlight_background: Option<String>,
4564    /// Border color of the other search matches in the terminal.
4565    #[serde(
4566        default,
4567        rename = "terminal.findMatchHighlightBorder",
4568        deserialize_with = "empty_string_as_none"
4569    )]
4570    pub find_match_highlight_border: Option<String>,
4571    /// Color of the highlight when hovering a link in the terminal.
4572    #[serde(
4573        default,
4574        rename = "terminal.hoverHighlightBackground",
4575        deserialize_with = "empty_string_as_none"
4576    )]
4577    pub hover_highlight_background: Option<String>,
4578    /// The background color when dragging on top of terminals. The color should have transparency so that the terminal contents can still shine through.
4579    #[serde(
4580        default,
4581        rename = "terminal.dropBackground",
4582        deserialize_with = "empty_string_as_none"
4583    )]
4584    pub drop_background: Option<String>,
4585    /// Border on the side of the terminal tab in the panel. This defaults to `tab.activeBorder`.
4586    #[serde(
4587        default,
4588        rename = "terminal.tab.activeBorder",
4589        deserialize_with = "empty_string_as_none"
4590    )]
4591    pub tab_active_border: Option<String>,
4592}
4593#[derive(Debug, Clone, Serialize, Deserialize)]
4594pub struct TerminalCursorColors {
4595    /// The background color of the terminal cursor. Allows customizing the color of a character overlapped by a block cursor.
4596    #[serde(
4597        default,
4598        rename = "terminalCursor.background",
4599        deserialize_with = "empty_string_as_none"
4600    )]
4601    pub background: Option<String>,
4602    /// The foreground color of the terminal cursor.
4603    #[serde(
4604        default,
4605        rename = "terminalCursor.foreground",
4606        deserialize_with = "empty_string_as_none"
4607    )]
4608    pub foreground: Option<String>,
4609}
4610#[derive(Debug, Clone, Serialize, Deserialize)]
4611pub struct TerminalCommandDecorationColors {
4612    /// The default terminal command decoration background color.
4613    #[serde(
4614        default,
4615        rename = "terminalCommandDecoration.defaultBackground",
4616        deserialize_with = "empty_string_as_none"
4617    )]
4618    pub default_background: Option<String>,
4619    /// The terminal command decoration background color for successful commands.
4620    #[serde(
4621        default,
4622        rename = "terminalCommandDecoration.successBackground",
4623        deserialize_with = "empty_string_as_none"
4624    )]
4625    pub success_background: Option<String>,
4626    /// The terminal command decoration background color for error commands.
4627    #[serde(
4628        default,
4629        rename = "terminalCommandDecoration.errorBackground",
4630        deserialize_with = "empty_string_as_none"
4631    )]
4632    pub error_background: Option<String>,
4633}
4634#[derive(Debug, Clone, Serialize, Deserialize)]
4635pub struct TerminalOverviewRulerColors {
4636    /// The overview ruler cursor color.
4637    #[serde(
4638        default,
4639        rename = "terminalOverviewRuler.cursorForeground",
4640        deserialize_with = "empty_string_as_none"
4641    )]
4642    pub cursor_foreground: Option<String>,
4643    /// Overview ruler marker color for find matches in the terminal.
4644    #[serde(
4645        default,
4646        rename = "terminalOverviewRuler.findMatchForeground",
4647        deserialize_with = "empty_string_as_none"
4648    )]
4649    pub find_match_foreground: Option<String>,
4650}
4651#[derive(Debug, Clone, Serialize, Deserialize)]
4652pub struct TerminalStickyScrollColors {
4653    /// The background color of the sticky scroll overlay in the terminal.
4654    #[serde(
4655        default,
4656        rename = "terminalStickyScroll.background",
4657        deserialize_with = "empty_string_as_none"
4658    )]
4659    pub background: Option<String>,
4660}
4661#[derive(Debug, Clone, Serialize, Deserialize)]
4662pub struct TerminalStickyScrollHoverColors {
4663    /// The background color of the sticky scroll overlay in the terminal when hovered.
4664    #[serde(
4665        default,
4666        rename = "terminalStickyScrollHover.background",
4667        deserialize_with = "empty_string_as_none"
4668    )]
4669    pub background: Option<String>,
4670}
4671#[derive(Debug, Clone, Serialize, Deserialize)]
4672pub struct DebugToolBarColors {
4673    /// Debug toolbar background color.
4674    #[serde(
4675        default,
4676        rename = "debugToolBar.background",
4677        deserialize_with = "empty_string_as_none"
4678    )]
4679    pub background: Option<String>,
4680    /// Debug toolbar border color.
4681    #[serde(
4682        default,
4683        rename = "debugToolBar.border",
4684        deserialize_with = "empty_string_as_none"
4685    )]
4686    pub border: Option<String>,
4687}
4688#[derive(Debug, Clone, Serialize, Deserialize)]
4689pub struct DebugViewColors {
4690    /// Foreground color for a label shown in the CALL STACK view when the debugger breaks on an exception.
4691    #[serde(
4692        default,
4693        rename = "debugView.exceptionLabelForeground",
4694        deserialize_with = "empty_string_as_none"
4695    )]
4696    pub exception_label_foreground: Option<String>,
4697    /// Background color for a label shown in the CALL STACK view when the debugger breaks on an exception.
4698    #[serde(
4699        default,
4700        rename = "debugView.exceptionLabelBackground",
4701        deserialize_with = "empty_string_as_none"
4702    )]
4703    pub exception_label_background: Option<String>,
4704    /// Foreground color for a label in the CALL STACK view showing the current session's or thread's state.
4705    #[serde(
4706        default,
4707        rename = "debugView.stateLabelForeground",
4708        deserialize_with = "empty_string_as_none"
4709    )]
4710    pub state_label_foreground: Option<String>,
4711    /// Background color for a label in the CALL STACK view showing the current session's or thread's state.
4712    #[serde(
4713        default,
4714        rename = "debugView.stateLabelBackground",
4715        deserialize_with = "empty_string_as_none"
4716    )]
4717    pub state_label_background: Option<String>,
4718    /// Color used to highlight value changes in the debug views (such as in the Variables view).
4719    #[serde(
4720        default,
4721        rename = "debugView.valueChangedHighlight",
4722        deserialize_with = "empty_string_as_none"
4723    )]
4724    pub value_changed_highlight: Option<String>,
4725}
4726#[derive(Debug, Clone, Serialize, Deserialize)]
4727pub struct DebugTokenExpressionColors {
4728    /// Foreground color for the token names shown in debug views (such as in the Variables or Watch view).
4729    #[serde(
4730        default,
4731        rename = "debugTokenExpression.name",
4732        deserialize_with = "empty_string_as_none"
4733    )]
4734    pub name: Option<String>,
4735    /// Foreground color for the token values shown in debug views.
4736    #[serde(
4737        default,
4738        rename = "debugTokenExpression.value",
4739        deserialize_with = "empty_string_as_none"
4740    )]
4741    pub value: Option<String>,
4742    /// Foreground color for strings in debug views.
4743    #[serde(
4744        default,
4745        rename = "debugTokenExpression.string",
4746        deserialize_with = "empty_string_as_none"
4747    )]
4748    pub string: Option<String>,
4749    /// Foreground color for booleans in debug views.
4750    #[serde(
4751        default,
4752        rename = "debugTokenExpression.boolean",
4753        deserialize_with = "empty_string_as_none"
4754    )]
4755    pub boolean: Option<String>,
4756    /// Foreground color for numbers in debug views.
4757    #[serde(
4758        default,
4759        rename = "debugTokenExpression.number",
4760        deserialize_with = "empty_string_as_none"
4761    )]
4762    pub number: Option<String>,
4763    /// Foreground color for expression errors in debug views.
4764    #[serde(
4765        default,
4766        rename = "debugTokenExpression.error",
4767        deserialize_with = "empty_string_as_none"
4768    )]
4769    pub error: Option<String>,
4770}
4771#[derive(Debug, Clone, Serialize, Deserialize)]
4772pub struct TestingColors {
4773    /// Color for the 'failed' icon in the test explorer.
4774    #[serde(
4775        default,
4776        rename = "testing.iconFailed",
4777        deserialize_with = "empty_string_as_none"
4778    )]
4779    pub icon_failed: Option<String>,
4780    /// Color for the 'Errored' icon in the test explorer.
4781    #[serde(
4782        default,
4783        rename = "testing.iconErrored",
4784        deserialize_with = "empty_string_as_none"
4785    )]
4786    pub icon_errored: Option<String>,
4787    /// Color for the 'passed' icon in the test explorer.
4788    #[serde(
4789        default,
4790        rename = "testing.iconPassed",
4791        deserialize_with = "empty_string_as_none"
4792    )]
4793    pub icon_passed: Option<String>,
4794    /// Color for 'run' icons in the editor.
4795    #[serde(
4796        default,
4797        rename = "testing.runAction",
4798        deserialize_with = "empty_string_as_none"
4799    )]
4800    pub run_action: Option<String>,
4801    /// Color for the 'Queued' icon in the test explorer.
4802    #[serde(
4803        default,
4804        rename = "testing.iconQueued",
4805        deserialize_with = "empty_string_as_none"
4806    )]
4807    pub icon_queued: Option<String>,
4808    /// Color for the 'Unset' icon in the test explorer.
4809    #[serde(
4810        default,
4811        rename = "testing.iconUnset",
4812        deserialize_with = "empty_string_as_none"
4813    )]
4814    pub icon_unset: Option<String>,
4815    /// Color for the 'Skipped' icon in the test explorer.
4816    #[serde(
4817        default,
4818        rename = "testing.iconSkipped",
4819        deserialize_with = "empty_string_as_none"
4820    )]
4821    pub icon_skipped: Option<String>,
4822    /// Color of the peek view borders and arrow.
4823    #[serde(
4824        default,
4825        rename = "testing.peekBorder",
4826        deserialize_with = "empty_string_as_none"
4827    )]
4828    pub peek_border: Option<String>,
4829    /// Color of the peek view borders and arrow.
4830    #[serde(
4831        default,
4832        rename = "testing.peekHeaderBackground",
4833        deserialize_with = "empty_string_as_none"
4834    )]
4835    pub peek_header_background: Option<String>,
4836    /// Text color of test error messages shown inline in the editor.
4837    #[serde(
4838        default,
4839        rename = "testing.message.error.decorationForeground",
4840        deserialize_with = "empty_string_as_none"
4841    )]
4842    pub message_error_decoration_foreground: Option<String>,
4843    /// Margin color beside error messages shown inline in the editor.
4844    #[serde(
4845        default,
4846        rename = "testing.message.error.lineBackground",
4847        deserialize_with = "empty_string_as_none"
4848    )]
4849    pub message_error_line_background: Option<String>,
4850    /// Text color of test info messages shown inline in the editor.
4851    #[serde(
4852        default,
4853        rename = "testing.message.info.decorationForeground",
4854        deserialize_with = "empty_string_as_none"
4855    )]
4856    pub message_info_decoration_foreground: Option<String>,
4857    /// Margin color beside info messages shown inline in the editor.
4858    #[serde(
4859        default,
4860        rename = "testing.message.info.lineBackground",
4861        deserialize_with = "empty_string_as_none"
4862    )]
4863    pub message_info_line_background: Option<String>,
4864}
4865#[derive(Debug, Clone, Serialize, Deserialize)]
4866pub struct WelcomePageColors {
4867    /// Background color for the Welcome page.
4868    #[serde(
4869        default,
4870        rename = "welcomePage.background",
4871        deserialize_with = "empty_string_as_none"
4872    )]
4873    pub background: Option<String>,
4874    /// Foreground color for the Welcome page progress bars.
4875    #[serde(
4876        default,
4877        rename = "welcomePage.progress.background",
4878        deserialize_with = "empty_string_as_none"
4879    )]
4880    pub progress_background: Option<String>,
4881    /// Background color for the Welcome page progress bars.
4882    #[serde(
4883        default,
4884        rename = "welcomePage.progress.foreground",
4885        deserialize_with = "empty_string_as_none"
4886    )]
4887    pub progress_foreground: Option<String>,
4888    /// Background color for the tiles on the Welcome page.
4889    #[serde(
4890        default,
4891        rename = "welcomePage.tileBackground",
4892        deserialize_with = "empty_string_as_none"
4893    )]
4894    pub tile_background: Option<String>,
4895    /// Hover background color for the tiles on the Welcome page.
4896    #[serde(
4897        default,
4898        rename = "welcomePage.tileHoverBackground",
4899        deserialize_with = "empty_string_as_none"
4900    )]
4901    pub tile_hover_background: Option<String>,
4902    /// Border color for the tiles on the Welcome page.
4903    #[serde(
4904        default,
4905        rename = "welcomePage.tileBorder",
4906        deserialize_with = "empty_string_as_none"
4907    )]
4908    pub tile_border: Option<String>,
4909}
4910#[derive(Debug, Clone, Serialize, Deserialize)]
4911pub struct WalkThroughColors {
4912    /// Background color for the embedded editors on the Interactive Playground.
4913    #[serde(
4914        default,
4915        rename = "walkThrough.embeddedEditorBackground",
4916        deserialize_with = "empty_string_as_none"
4917    )]
4918    pub embedded_editor_background: Option<String>,
4919}
4920#[derive(Debug, Clone, Serialize, Deserialize)]
4921pub struct WalkthroughColors {
4922    /// Foreground color of the heading of each walkthrough step.
4923    #[serde(
4924        default,
4925        rename = "walkthrough.stepTitle.foreground",
4926        deserialize_with = "empty_string_as_none"
4927    )]
4928    pub step_title_foreground: Option<String>,
4929}
4930#[derive(Debug, Clone, Serialize, Deserialize)]
4931pub struct GitDecorationColors {
4932    /// Color for added Git resources. Used for file labels and the SCM viewlet.
4933    #[serde(
4934        default,
4935        rename = "gitDecoration.addedResourceForeground",
4936        deserialize_with = "empty_string_as_none"
4937    )]
4938    pub added_resource_foreground: Option<String>,
4939    /// Color for modified Git resources. Used for file labels and the SCM viewlet.
4940    #[serde(
4941        default,
4942        rename = "gitDecoration.modifiedResourceForeground",
4943        deserialize_with = "empty_string_as_none"
4944    )]
4945    pub modified_resource_foreground: Option<String>,
4946    /// Color for deleted Git resources. Used for file labels and the SCM viewlet.
4947    #[serde(
4948        default,
4949        rename = "gitDecoration.deletedResourceForeground",
4950        deserialize_with = "empty_string_as_none"
4951    )]
4952    pub deleted_resource_foreground: Option<String>,
4953    /// Color for renamed or copied Git resources. Used for file labels and the SCM viewlet.
4954    #[serde(
4955        default,
4956        rename = "gitDecoration.renamedResourceForeground",
4957        deserialize_with = "empty_string_as_none"
4958    )]
4959    pub renamed_resource_foreground: Option<String>,
4960    /// Color for staged modifications git decorations.  Used for file labels and the SCM viewlet.
4961    #[serde(
4962        default,
4963        rename = "gitDecoration.stageModifiedResourceForeground",
4964        deserialize_with = "empty_string_as_none"
4965    )]
4966    pub stage_modified_resource_foreground: Option<String>,
4967    /// Color for staged deletions git decorations.  Used for file labels and the SCM viewlet.
4968    #[serde(
4969        default,
4970        rename = "gitDecoration.stageDeletedResourceForeground",
4971        deserialize_with = "empty_string_as_none"
4972    )]
4973    pub stage_deleted_resource_foreground: Option<String>,
4974    /// Color for untracked Git resources. Used for file labels and the SCM viewlet.
4975    #[serde(
4976        default,
4977        rename = "gitDecoration.untrackedResourceForeground",
4978        deserialize_with = "empty_string_as_none"
4979    )]
4980    pub untracked_resource_foreground: Option<String>,
4981    /// Color for ignored Git resources. Used for file labels and the SCM viewlet.
4982    #[serde(
4983        default,
4984        rename = "gitDecoration.ignoredResourceForeground",
4985        deserialize_with = "empty_string_as_none"
4986    )]
4987    pub ignored_resource_foreground: Option<String>,
4988    /// Color for conflicting Git resources. Used for file labels and the SCM viewlet.
4989    #[serde(
4990        default,
4991        rename = "gitDecoration.conflictingResourceForeground",
4992        deserialize_with = "empty_string_as_none"
4993    )]
4994    pub conflicting_resource_foreground: Option<String>,
4995    /// Color for submodule resources.
4996    #[serde(
4997        default,
4998        rename = "gitDecoration.submoduleResourceForeground",
4999        deserialize_with = "empty_string_as_none"
5000    )]
5001    pub submodule_resource_foreground: Option<String>,
5002}
5003#[derive(Debug, Clone, Serialize, Deserialize)]
5004pub struct SettingsColors {
5005    /// The foreground color for a section header or active title.
5006    #[serde(
5007        default,
5008        rename = "settings.headerForeground",
5009        deserialize_with = "empty_string_as_none"
5010    )]
5011    pub header_foreground: Option<String>,
5012    /// The line that indicates a modified setting.
5013    #[serde(
5014        default,
5015        rename = "settings.modifiedItemIndicator",
5016        deserialize_with = "empty_string_as_none"
5017    )]
5018    pub modified_item_indicator: Option<String>,
5019    /// Dropdown background.
5020    #[serde(
5021        default,
5022        rename = "settings.dropdownBackground",
5023        deserialize_with = "empty_string_as_none"
5024    )]
5025    pub dropdown_background: Option<String>,
5026    /// Dropdown foreground.
5027    #[serde(
5028        default,
5029        rename = "settings.dropdownForeground",
5030        deserialize_with = "empty_string_as_none"
5031    )]
5032    pub dropdown_foreground: Option<String>,
5033    /// Dropdown border.
5034    #[serde(
5035        default,
5036        rename = "settings.dropdownBorder",
5037        deserialize_with = "empty_string_as_none"
5038    )]
5039    pub dropdown_border: Option<String>,
5040    /// Dropdown list border.
5041    #[serde(
5042        default,
5043        rename = "settings.dropdownListBorder",
5044        deserialize_with = "empty_string_as_none"
5045    )]
5046    pub dropdown_list_border: Option<String>,
5047    /// Checkbox background.
5048    #[serde(
5049        default,
5050        rename = "settings.checkboxBackground",
5051        deserialize_with = "empty_string_as_none"
5052    )]
5053    pub checkbox_background: Option<String>,
5054    /// Checkbox foreground.
5055    #[serde(
5056        default,
5057        rename = "settings.checkboxForeground",
5058        deserialize_with = "empty_string_as_none"
5059    )]
5060    pub checkbox_foreground: Option<String>,
5061    /// Checkbox border.
5062    #[serde(
5063        default,
5064        rename = "settings.checkboxBorder",
5065        deserialize_with = "empty_string_as_none"
5066    )]
5067    pub checkbox_border: Option<String>,
5068    /// The background color of a settings row when hovered.
5069    #[serde(
5070        default,
5071        rename = "settings.rowHoverBackground",
5072        deserialize_with = "empty_string_as_none"
5073    )]
5074    pub row_hover_background: Option<String>,
5075    /// Text input box background.
5076    #[serde(
5077        default,
5078        rename = "settings.textInputBackground",
5079        deserialize_with = "empty_string_as_none"
5080    )]
5081    pub text_input_background: Option<String>,
5082    /// Text input box foreground.
5083    #[serde(
5084        default,
5085        rename = "settings.textInputForeground",
5086        deserialize_with = "empty_string_as_none"
5087    )]
5088    pub text_input_foreground: Option<String>,
5089    /// Text input box border.
5090    #[serde(
5091        default,
5092        rename = "settings.textInputBorder",
5093        deserialize_with = "empty_string_as_none"
5094    )]
5095    pub text_input_border: Option<String>,
5096    /// Number input box background.
5097    #[serde(
5098        default,
5099        rename = "settings.numberInputBackground",
5100        deserialize_with = "empty_string_as_none"
5101    )]
5102    pub number_input_background: Option<String>,
5103    /// Number input box foreground.
5104    #[serde(
5105        default,
5106        rename = "settings.numberInputForeground",
5107        deserialize_with = "empty_string_as_none"
5108    )]
5109    pub number_input_foreground: Option<String>,
5110    /// Number input box border.
5111    #[serde(
5112        default,
5113        rename = "settings.numberInputBorder",
5114        deserialize_with = "empty_string_as_none"
5115    )]
5116    pub number_input_border: Option<String>,
5117    /// Background color of a focused setting row.
5118    #[serde(
5119        default,
5120        rename = "settings.focusedRowBackground",
5121        deserialize_with = "empty_string_as_none"
5122    )]
5123    pub focused_row_background: Option<String>,
5124    /// The color of the row's top and bottom border when the row is focused.
5125    #[serde(
5126        default,
5127        rename = "settings.focusedRowBorder",
5128        deserialize_with = "empty_string_as_none"
5129    )]
5130    pub focused_row_border: Option<String>,
5131    /// The color of the header container border.
5132    #[serde(
5133        default,
5134        rename = "settings.headerBorder",
5135        deserialize_with = "empty_string_as_none"
5136    )]
5137    pub header_border: Option<String>,
5138    /// The color of the Settings editor splitview sash border.
5139    #[serde(
5140        default,
5141        rename = "settings.sashBorder",
5142        deserialize_with = "empty_string_as_none"
5143    )]
5144    pub sash_border: Option<String>,
5145    /// The foreground color for a section header or hovered title.
5146    #[serde(
5147        default,
5148        rename = "settings.settingsHeaderHoverForeground",
5149        deserialize_with = "empty_string_as_none"
5150    )]
5151    pub settings_header_hover_foreground: Option<String>,
5152}
5153#[derive(Debug, Clone, Serialize, Deserialize)]
5154pub struct BreadcrumbColors {
5155    /// Color of breadcrumb items.
5156    #[serde(
5157        default,
5158        rename = "breadcrumb.foreground",
5159        deserialize_with = "empty_string_as_none"
5160    )]
5161    pub foreground: Option<String>,
5162    /// Background color of breadcrumb items.
5163    #[serde(
5164        default,
5165        rename = "breadcrumb.background",
5166        deserialize_with = "empty_string_as_none"
5167    )]
5168    pub background: Option<String>,
5169    /// Color of focused breadcrumb items.
5170    #[serde(
5171        default,
5172        rename = "breadcrumb.focusForeground",
5173        deserialize_with = "empty_string_as_none"
5174    )]
5175    pub focus_foreground: Option<String>,
5176    /// Color of selected breadcrumb items.
5177    #[serde(
5178        default,
5179        rename = "breadcrumb.activeSelectionForeground",
5180        deserialize_with = "empty_string_as_none"
5181    )]
5182    pub active_selection_foreground: Option<String>,
5183}
5184#[derive(Debug, Clone, Serialize, Deserialize)]
5185pub struct BreadcrumbPickerColors {
5186    /// Background color of breadcrumb item picker.
5187    #[serde(
5188        default,
5189        rename = "breadcrumbPicker.background",
5190        deserialize_with = "empty_string_as_none"
5191    )]
5192    pub background: Option<String>,
5193}
5194#[derive(Debug, Clone, Serialize, Deserialize)]
5195pub struct SymbolIconColors {
5196    /// The foreground color for array symbols.
5197    #[serde(
5198        default,
5199        rename = "symbolIcon.arrayForeground",
5200        deserialize_with = "empty_string_as_none"
5201    )]
5202    pub array_foreground: Option<String>,
5203    /// The foreground color for boolean symbols.
5204    #[serde(
5205        default,
5206        rename = "symbolIcon.booleanForeground",
5207        deserialize_with = "empty_string_as_none"
5208    )]
5209    pub boolean_foreground: Option<String>,
5210    /// The foreground color for class symbols.
5211    #[serde(
5212        default,
5213        rename = "symbolIcon.classForeground",
5214        deserialize_with = "empty_string_as_none"
5215    )]
5216    pub class_foreground: Option<String>,
5217    /// The foreground color for color symbols.
5218    #[serde(
5219        default,
5220        rename = "symbolIcon.colorForeground",
5221        deserialize_with = "empty_string_as_none"
5222    )]
5223    pub color_foreground: Option<String>,
5224    /// The foreground color for constant symbols.
5225    #[serde(
5226        default,
5227        rename = "symbolIcon.constantForeground",
5228        deserialize_with = "empty_string_as_none"
5229    )]
5230    pub constant_foreground: Option<String>,
5231    /// The foreground color for constructor symbols.
5232    #[serde(
5233        default,
5234        rename = "symbolIcon.constructorForeground",
5235        deserialize_with = "empty_string_as_none"
5236    )]
5237    pub constructor_foreground: Option<String>,
5238    /// The foreground color for enumerator symbols.
5239    #[serde(
5240        default,
5241        rename = "symbolIcon.enumeratorForeground",
5242        deserialize_with = "empty_string_as_none"
5243    )]
5244    pub enumerator_foreground: Option<String>,
5245    /// The foreground color for enumerator member symbols.
5246    #[serde(
5247        default,
5248        rename = "symbolIcon.enumeratorMemberForeground",
5249        deserialize_with = "empty_string_as_none"
5250    )]
5251    pub enumerator_member_foreground: Option<String>,
5252    /// The foreground color for event symbols.
5253    #[serde(
5254        default,
5255        rename = "symbolIcon.eventForeground",
5256        deserialize_with = "empty_string_as_none"
5257    )]
5258    pub event_foreground: Option<String>,
5259    /// The foreground color for field symbols.
5260    #[serde(
5261        default,
5262        rename = "symbolIcon.fieldForeground",
5263        deserialize_with = "empty_string_as_none"
5264    )]
5265    pub field_foreground: Option<String>,
5266    /// The foreground color for file symbols.
5267    #[serde(
5268        default,
5269        rename = "symbolIcon.fileForeground",
5270        deserialize_with = "empty_string_as_none"
5271    )]
5272    pub file_foreground: Option<String>,
5273    /// The foreground color for folder symbols.
5274    #[serde(
5275        default,
5276        rename = "symbolIcon.folderForeground",
5277        deserialize_with = "empty_string_as_none"
5278    )]
5279    pub folder_foreground: Option<String>,
5280    /// The foreground color for function symbols.
5281    #[serde(
5282        default,
5283        rename = "symbolIcon.functionForeground",
5284        deserialize_with = "empty_string_as_none"
5285    )]
5286    pub function_foreground: Option<String>,
5287    /// The foreground color for interface symbols.
5288    #[serde(
5289        default,
5290        rename = "symbolIcon.interfaceForeground",
5291        deserialize_with = "empty_string_as_none"
5292    )]
5293    pub interface_foreground: Option<String>,
5294    /// The foreground color for key symbols.
5295    #[serde(
5296        default,
5297        rename = "symbolIcon.keyForeground",
5298        deserialize_with = "empty_string_as_none"
5299    )]
5300    pub key_foreground: Option<String>,
5301    /// The foreground color for keyword symbols.
5302    #[serde(
5303        default,
5304        rename = "symbolIcon.keywordForeground",
5305        deserialize_with = "empty_string_as_none"
5306    )]
5307    pub keyword_foreground: Option<String>,
5308    /// The foreground color for method symbols.
5309    #[serde(
5310        default,
5311        rename = "symbolIcon.methodForeground",
5312        deserialize_with = "empty_string_as_none"
5313    )]
5314    pub method_foreground: Option<String>,
5315    /// The foreground color for module symbols.
5316    #[serde(
5317        default,
5318        rename = "symbolIcon.moduleForeground",
5319        deserialize_with = "empty_string_as_none"
5320    )]
5321    pub module_foreground: Option<String>,
5322    /// The foreground color for namespace symbols.
5323    #[serde(
5324        default,
5325        rename = "symbolIcon.namespaceForeground",
5326        deserialize_with = "empty_string_as_none"
5327    )]
5328    pub namespace_foreground: Option<String>,
5329    /// The foreground color for null symbols.
5330    #[serde(
5331        default,
5332        rename = "symbolIcon.nullForeground",
5333        deserialize_with = "empty_string_as_none"
5334    )]
5335    pub null_foreground: Option<String>,
5336    /// The foreground color for number symbols.
5337    #[serde(
5338        default,
5339        rename = "symbolIcon.numberForeground",
5340        deserialize_with = "empty_string_as_none"
5341    )]
5342    pub number_foreground: Option<String>,
5343    /// The foreground color for object symbols.
5344    #[serde(
5345        default,
5346        rename = "symbolIcon.objectForeground",
5347        deserialize_with = "empty_string_as_none"
5348    )]
5349    pub object_foreground: Option<String>,
5350    /// The foreground color for operator symbols.
5351    #[serde(
5352        default,
5353        rename = "symbolIcon.operatorForeground",
5354        deserialize_with = "empty_string_as_none"
5355    )]
5356    pub operator_foreground: Option<String>,
5357    /// The foreground color for package symbols.
5358    #[serde(
5359        default,
5360        rename = "symbolIcon.packageForeground",
5361        deserialize_with = "empty_string_as_none"
5362    )]
5363    pub package_foreground: Option<String>,
5364    /// The foreground color for property symbols.
5365    #[serde(
5366        default,
5367        rename = "symbolIcon.propertyForeground",
5368        deserialize_with = "empty_string_as_none"
5369    )]
5370    pub property_foreground: Option<String>,
5371    /// The foreground color for reference symbols.
5372    #[serde(
5373        default,
5374        rename = "symbolIcon.referenceForeground",
5375        deserialize_with = "empty_string_as_none"
5376    )]
5377    pub reference_foreground: Option<String>,
5378    /// The foreground color for snippet symbols.
5379    #[serde(
5380        default,
5381        rename = "symbolIcon.snippetForeground",
5382        deserialize_with = "empty_string_as_none"
5383    )]
5384    pub snippet_foreground: Option<String>,
5385    /// The foreground color for string symbols.
5386    #[serde(
5387        default,
5388        rename = "symbolIcon.stringForeground",
5389        deserialize_with = "empty_string_as_none"
5390    )]
5391    pub string_foreground: Option<String>,
5392    /// The foreground color for struct symbols.
5393    #[serde(
5394        default,
5395        rename = "symbolIcon.structForeground",
5396        deserialize_with = "empty_string_as_none"
5397    )]
5398    pub struct_foreground: Option<String>,
5399    /// The foreground color for text symbols.
5400    #[serde(
5401        default,
5402        rename = "symbolIcon.textForeground",
5403        deserialize_with = "empty_string_as_none"
5404    )]
5405    pub text_foreground: Option<String>,
5406    /// The foreground color for type parameter symbols.
5407    #[serde(
5408        default,
5409        rename = "symbolIcon.typeParameterForeground",
5410        deserialize_with = "empty_string_as_none"
5411    )]
5412    pub type_parameter_foreground: Option<String>,
5413    /// The foreground color for unit symbols.
5414    #[serde(
5415        default,
5416        rename = "symbolIcon.unitForeground",
5417        deserialize_with = "empty_string_as_none"
5418    )]
5419    pub unit_foreground: Option<String>,
5420    /// The foreground color for variable symbols.
5421    #[serde(
5422        default,
5423        rename = "symbolIcon.variableForeground",
5424        deserialize_with = "empty_string_as_none"
5425    )]
5426    pub variable_foreground: Option<String>,
5427}
5428#[derive(Debug, Clone, Serialize, Deserialize)]
5429pub struct DebugIconColors {
5430    /// Icon color for breakpoints.
5431    #[serde(
5432        default,
5433        rename = "debugIcon.breakpointForeground",
5434        deserialize_with = "empty_string_as_none"
5435    )]
5436    pub breakpoint_foreground: Option<String>,
5437    /// Icon color for disabled breakpoints.
5438    #[serde(
5439        default,
5440        rename = "debugIcon.breakpointDisabledForeground",
5441        deserialize_with = "empty_string_as_none"
5442    )]
5443    pub breakpoint_disabled_foreground: Option<String>,
5444    /// Icon color for unverified breakpoints.
5445    #[serde(
5446        default,
5447        rename = "debugIcon.breakpointUnverifiedForeground",
5448        deserialize_with = "empty_string_as_none"
5449    )]
5450    pub breakpoint_unverified_foreground: Option<String>,
5451    /// Icon color for the current breakpoint stack frame.
5452    #[serde(
5453        default,
5454        rename = "debugIcon.breakpointCurrentStackframeForeground",
5455        deserialize_with = "empty_string_as_none"
5456    )]
5457    pub breakpoint_current_stackframe_foreground: Option<String>,
5458    /// Icon color for all breakpoint stack frames.
5459    #[serde(
5460        default,
5461        rename = "debugIcon.breakpointStackframeForeground",
5462        deserialize_with = "empty_string_as_none"
5463    )]
5464    pub breakpoint_stackframe_foreground: Option<String>,
5465    /// Debug toolbar icon for start debugging.
5466    #[serde(
5467        default,
5468        rename = "debugIcon.startForeground",
5469        deserialize_with = "empty_string_as_none"
5470    )]
5471    pub start_foreground: Option<String>,
5472    /// Debug toolbar icon for pause.
5473    #[serde(
5474        default,
5475        rename = "debugIcon.pauseForeground",
5476        deserialize_with = "empty_string_as_none"
5477    )]
5478    pub pause_foreground: Option<String>,
5479    /// Debug toolbar icon for stop.
5480    #[serde(
5481        default,
5482        rename = "debugIcon.stopForeground",
5483        deserialize_with = "empty_string_as_none"
5484    )]
5485    pub stop_foreground: Option<String>,
5486    /// Debug toolbar icon for disconnect.
5487    #[serde(
5488        default,
5489        rename = "debugIcon.disconnectForeground",
5490        deserialize_with = "empty_string_as_none"
5491    )]
5492    pub disconnect_foreground: Option<String>,
5493    /// Debug toolbar icon for restart.
5494    #[serde(
5495        default,
5496        rename = "debugIcon.restartForeground",
5497        deserialize_with = "empty_string_as_none"
5498    )]
5499    pub restart_foreground: Option<String>,
5500    /// Debug toolbar icon for step over.
5501    #[serde(
5502        default,
5503        rename = "debugIcon.stepOverForeground",
5504        deserialize_with = "empty_string_as_none"
5505    )]
5506    pub step_over_foreground: Option<String>,
5507    /// Debug toolbar icon for step into.
5508    #[serde(
5509        default,
5510        rename = "debugIcon.stepIntoForeground",
5511        deserialize_with = "empty_string_as_none"
5512    )]
5513    pub step_into_foreground: Option<String>,
5514    /// Debug toolbar icon for step over.
5515    #[serde(
5516        default,
5517        rename = "debugIcon.stepOutForeground",
5518        deserialize_with = "empty_string_as_none"
5519    )]
5520    pub step_out_foreground: Option<String>,
5521    /// Debug toolbar icon for continue.
5522    #[serde(
5523        default,
5524        rename = "debugIcon.continueForeground",
5525        deserialize_with = "empty_string_as_none"
5526    )]
5527    pub continue_foreground: Option<String>,
5528    /// Debug toolbar icon for step back.
5529    #[serde(
5530        default,
5531        rename = "debugIcon.stepBackForeground",
5532        deserialize_with = "empty_string_as_none"
5533    )]
5534    pub step_back_foreground: Option<String>,
5535}
5536#[derive(Debug, Clone, Serialize, Deserialize)]
5537pub struct DebugConsoleColors {
5538    /// Foreground color for info messages in debug REPL console.
5539    #[serde(
5540        default,
5541        rename = "debugConsole.infoForeground",
5542        deserialize_with = "empty_string_as_none"
5543    )]
5544    pub info_foreground: Option<String>,
5545    /// Foreground color for warning messages in debug REPL console.
5546    #[serde(
5547        default,
5548        rename = "debugConsole.warningForeground",
5549        deserialize_with = "empty_string_as_none"
5550    )]
5551    pub warning_foreground: Option<String>,
5552    /// Foreground color for error messages in debug REPL console.
5553    #[serde(
5554        default,
5555        rename = "debugConsole.errorForeground",
5556        deserialize_with = "empty_string_as_none"
5557    )]
5558    pub error_foreground: Option<String>,
5559    /// Foreground color for source filenames in debug REPL console.
5560    #[serde(
5561        default,
5562        rename = "debugConsole.sourceForeground",
5563        deserialize_with = "empty_string_as_none"
5564    )]
5565    pub source_foreground: Option<String>,
5566}
5567#[derive(Debug, Clone, Serialize, Deserialize)]
5568pub struct DebugConsoleInputIconColors {
5569    /// Foreground color for debug console input marker icon.
5570    #[serde(
5571        default,
5572        rename = "debugConsoleInputIcon.foreground",
5573        deserialize_with = "empty_string_as_none"
5574    )]
5575    pub foreground: Option<String>,
5576}
5577#[derive(Debug, Clone, Serialize, Deserialize)]
5578pub struct NotebookColors {
5579    /// Notebook background color.
5580    #[serde(
5581        default,
5582        rename = "notebook.editorBackground",
5583        deserialize_with = "empty_string_as_none"
5584    )]
5585    pub editor_background: Option<String>,
5586    /// The border color for notebook cells.
5587    #[serde(
5588        default,
5589        rename = "notebook.cellBorderColor",
5590        deserialize_with = "empty_string_as_none"
5591    )]
5592    pub cell_border_color: Option<String>,
5593    /// The background color of a cell when the cell is hovered.
5594    #[serde(
5595        default,
5596        rename = "notebook.cellHoverBackground",
5597        deserialize_with = "empty_string_as_none"
5598    )]
5599    pub cell_hover_background: Option<String>,
5600    /// The color of the notebook cell insertion indicator.
5601    #[serde(
5602        default,
5603        rename = "notebook.cellInsertionIndicator",
5604        deserialize_with = "empty_string_as_none"
5605    )]
5606    pub cell_insertion_indicator: Option<String>,
5607    /// The background color of notebook cell status bar items.
5608    #[serde(
5609        default,
5610        rename = "notebook.cellStatusBarItemHoverBackground",
5611        deserialize_with = "empty_string_as_none"
5612    )]
5613    pub cell_status_bar_item_hover_background: Option<String>,
5614    /// The color of the separator in the cell bottom toolbar
5615    #[serde(
5616        default,
5617        rename = "notebook.cellToolbarSeparator",
5618        deserialize_with = "empty_string_as_none"
5619    )]
5620    pub cell_toolbar_separator: Option<String>,
5621    /// The color of the notebook cell editor background
5622    #[serde(
5623        default,
5624        rename = "notebook.cellEditorBackground",
5625        deserialize_with = "empty_string_as_none"
5626    )]
5627    pub cell_editor_background: Option<String>,
5628    /// The background color of a cell when the cell is focused.
5629    #[serde(
5630        default,
5631        rename = "notebook.focusedCellBackground",
5632        deserialize_with = "empty_string_as_none"
5633    )]
5634    pub focused_cell_background: Option<String>,
5635    /// The color of the cell's focus indicator borders when the cell is focused.
5636    #[serde(
5637        default,
5638        rename = "notebook.focusedCellBorder",
5639        deserialize_with = "empty_string_as_none"
5640    )]
5641    pub focused_cell_border: Option<String>,
5642    /// The color of the notebook cell editor border.
5643    #[serde(
5644        default,
5645        rename = "notebook.focusedEditorBorder",
5646        deserialize_with = "empty_string_as_none"
5647    )]
5648    pub focused_editor_border: Option<String>,
5649    /// The color of the cell's top and bottom border when a cell is focused while the primary focus is outside of the editor.
5650    #[serde(
5651        default,
5652        rename = "notebook.inactiveFocusedCellBorder",
5653        deserialize_with = "empty_string_as_none"
5654    )]
5655    pub inactive_focused_cell_border: Option<String>,
5656    /// The color of the cell's borders when multiple cells are selected.
5657    #[serde(
5658        default,
5659        rename = "notebook.inactiveSelectedCellBorder",
5660        deserialize_with = "empty_string_as_none"
5661    )]
5662    pub inactive_selected_cell_border: Option<String>,
5663    /// The Color of the notebook output container background.
5664    #[serde(
5665        default,
5666        rename = "notebook.outputContainerBackgroundColor",
5667        deserialize_with = "empty_string_as_none"
5668    )]
5669    pub output_container_background_color: Option<String>,
5670    /// The border color of the notebook output container.
5671    #[serde(
5672        default,
5673        rename = "notebook.outputContainerBorderColor",
5674        deserialize_with = "empty_string_as_none"
5675    )]
5676    pub output_container_border_color: Option<String>,
5677    /// The background color of a cell when the cell is selected.
5678    #[serde(
5679        default,
5680        rename = "notebook.selectedCellBackground",
5681        deserialize_with = "empty_string_as_none"
5682    )]
5683    pub selected_cell_background: Option<String>,
5684    /// The color of the cell's top and bottom border when the cell is selected but not focused.
5685    #[serde(
5686        default,
5687        rename = "notebook.selectedCellBorder",
5688        deserialize_with = "empty_string_as_none"
5689    )]
5690    pub selected_cell_border: Option<String>,
5691    /// Background color of highlighted cell
5692    #[serde(
5693        default,
5694        rename = "notebook.symbolHighlightBackground",
5695        deserialize_with = "empty_string_as_none"
5696    )]
5697    pub symbol_highlight_background: Option<String>,
5698}
5699#[derive(Debug, Clone, Serialize, Deserialize)]
5700pub struct NotebookScrollbarSliderColors {
5701    /// Notebook scrollbar slider background color when clicked on.
5702    #[serde(
5703        default,
5704        rename = "notebookScrollbarSlider.activeBackground",
5705        deserialize_with = "empty_string_as_none"
5706    )]
5707    pub active_background: Option<String>,
5708    /// Notebook scrollbar slider background color.
5709    #[serde(
5710        default,
5711        rename = "notebookScrollbarSlider.background",
5712        deserialize_with = "empty_string_as_none"
5713    )]
5714    pub background: Option<String>,
5715    /// Notebook scrollbar slider background color when hovering.
5716    #[serde(
5717        default,
5718        rename = "notebookScrollbarSlider.hoverBackground",
5719        deserialize_with = "empty_string_as_none"
5720    )]
5721    pub hover_background: Option<String>,
5722}
5723#[derive(Debug, Clone, Serialize, Deserialize)]
5724pub struct NotebookStatusErrorIconColors {
5725    /// The error icon color of notebook cells in the cell status bar.
5726    #[serde(
5727        default,
5728        rename = "notebookStatusErrorIcon.foreground",
5729        deserialize_with = "empty_string_as_none"
5730    )]
5731    pub foreground: Option<String>,
5732}
5733#[derive(Debug, Clone, Serialize, Deserialize)]
5734pub struct NotebookStatusRunningIconColors {
5735    /// The running icon color of notebook cells in the cell status bar.
5736    #[serde(
5737        default,
5738        rename = "notebookStatusRunningIcon.foreground",
5739        deserialize_with = "empty_string_as_none"
5740    )]
5741    pub foreground: Option<String>,
5742}
5743#[derive(Debug, Clone, Serialize, Deserialize)]
5744pub struct NotebookStatusSuccessIconColors {
5745    /// The success icon color of notebook cells in the cell status bar.
5746    #[serde(
5747        default,
5748        rename = "notebookStatusSuccessIcon.foreground",
5749        deserialize_with = "empty_string_as_none"
5750    )]
5751    pub foreground: Option<String>,
5752}
5753#[derive(Debug, Clone, Serialize, Deserialize)]
5754pub struct NotebookEditorOverviewRulerColors {
5755    /// The color of the running cell decoration in the notebook editor overview ruler.
5756    #[serde(
5757        default,
5758        rename = "notebookEditorOverviewRuler.runningCellForeground",
5759        deserialize_with = "empty_string_as_none"
5760    )]
5761    pub running_cell_foreground: Option<String>,
5762}
5763#[derive(Debug, Clone, Serialize, Deserialize)]
5764pub struct ChartsColors {
5765    /// Contrast color for text in charts.
5766    #[serde(
5767        default,
5768        rename = "charts.foreground",
5769        deserialize_with = "empty_string_as_none"
5770    )]
5771    pub foreground: Option<String>,
5772    /// Color for lines in charts.
5773    #[serde(
5774        default,
5775        rename = "charts.lines",
5776        deserialize_with = "empty_string_as_none"
5777    )]
5778    pub lines: Option<String>,
5779    /// Color for red elements in charts.
5780    #[serde(
5781        default,
5782        rename = "charts.red",
5783        deserialize_with = "empty_string_as_none"
5784    )]
5785    pub red: Option<String>,
5786    /// Color for blue elements in charts.
5787    #[serde(
5788        default,
5789        rename = "charts.blue",
5790        deserialize_with = "empty_string_as_none"
5791    )]
5792    pub blue: Option<String>,
5793    /// Color for yellow elements in charts.
5794    #[serde(
5795        default,
5796        rename = "charts.yellow",
5797        deserialize_with = "empty_string_as_none"
5798    )]
5799    pub yellow: Option<String>,
5800    /// Color for orange elements in charts.
5801    #[serde(
5802        default,
5803        rename = "charts.orange",
5804        deserialize_with = "empty_string_as_none"
5805    )]
5806    pub orange: Option<String>,
5807    /// Color for green elements in charts.
5808    #[serde(
5809        default,
5810        rename = "charts.green",
5811        deserialize_with = "empty_string_as_none"
5812    )]
5813    pub green: Option<String>,
5814    /// Color for purple elements in charts.
5815    #[serde(
5816        default,
5817        rename = "charts.purple",
5818        deserialize_with = "empty_string_as_none"
5819    )]
5820    pub purple: Option<String>,
5821}
5822#[derive(Debug, Clone, Serialize, Deserialize)]
5823pub struct PortsColors {
5824    /// The color of the icon for a port that has an associated running process.
5825    #[serde(
5826        default,
5827        rename = "ports.iconRunningProcessForeground",
5828        deserialize_with = "empty_string_as_none"
5829    )]
5830    pub icon_running_process_foreground: Option<String>,
5831}
5832#[derive(Debug, Clone, Serialize, Deserialize)]
5833pub struct CommentsViewColors {
5834    /// Icon color for resolved comments.
5835    #[serde(
5836        default,
5837        rename = "commentsView.resolvedIcon",
5838        deserialize_with = "empty_string_as_none"
5839    )]
5840    pub resolved_icon: Option<String>,
5841    /// Icon color for unresolved comments.
5842    #[serde(
5843        default,
5844        rename = "commentsView.unresolvedIcon",
5845        deserialize_with = "empty_string_as_none"
5846    )]
5847    pub unresolved_icon: Option<String>,
5848}
5849#[derive(Debug, Clone, Serialize, Deserialize)]
5850pub struct ActionBarColors {
5851    /// Background color for toggled action items in action bar.
5852    #[serde(
5853        default,
5854        rename = "actionBar.toggledBackground",
5855        deserialize_with = "empty_string_as_none"
5856    )]
5857    pub toggled_background: Option<String>,
5858}
5859#[derive(Debug, Clone, Serialize, Deserialize)]
5860pub struct SimpleFindWidgetColors {
5861    /// Border color of the sash border.
5862    #[serde(
5863        default,
5864        rename = "simpleFindWidget.sashBorder",
5865        deserialize_with = "empty_string_as_none"
5866    )]
5867    pub sash_border: Option<String>,
5868}
5869#[derive(Debug, Clone, Serialize, Deserialize)]
5870pub struct ScmColors {
5871    /// History item additions foreground color.
5872    #[serde(
5873        default,
5874        rename = "scm.historyItemAdditionsForeground",
5875        deserialize_with = "empty_string_as_none"
5876    )]
5877    pub history_item_additions_foreground: Option<String>,
5878    /// History item deletions foreground color.
5879    #[serde(
5880        default,
5881        rename = "scm.historyItemDeletionsForeground",
5882        deserialize_with = "empty_string_as_none"
5883    )]
5884    pub history_item_deletions_foreground: Option<String>,
5885    /// History item statistics border color.
5886    #[serde(
5887        default,
5888        rename = "scm.historyItemStatisticsBorder",
5889        deserialize_with = "empty_string_as_none"
5890    )]
5891    pub history_item_statistics_border: Option<String>,
5892    /// History item selected statistics border color.
5893    #[serde(
5894        default,
5895        rename = "scm.historyItemSelectedStatisticsBorder",
5896        deserialize_with = "empty_string_as_none"
5897    )]
5898    pub history_item_selected_statistics_border: Option<String>,
5899}