this repo has no description
1export type Config = {
2 extensions: ConfigExtensions;
3 repositories: string[];
4 devSearchPaths?: string[];
5 loggerLevel?: string;
6 patchAll?: boolean;
7};
8
9export type ConfigExtensions = { [key: string]: boolean } | { [key: string]: ConfigExtension };
10
11export type ConfigExtension = {
12 enabled: boolean;
13 config?: Record<string, any>;
14};
15
16export enum ExtensionSettingType {
17 Boolean = "boolean",
18 Number = "number",
19 String = "string",
20 MultilineString = "multilinestring",
21 Select = "select",
22 MultiSelect = "multiselect",
23 List = "list",
24 Dictionary = "dictionary",
25 Custom = "custom"
26}
27
28export type SelectOption =
29 | string
30 | {
31 value: string;
32 label: string;
33 };
34
35export type BooleanSettingType = {
36 type: ExtensionSettingType.Boolean;
37 default?: boolean;
38};
39
40export type NumberSettingType = {
41 type: ExtensionSettingType.Number;
42 default?: number;
43 min?: number;
44 max?: number;
45};
46
47export type StringSettingType = {
48 type: ExtensionSettingType.String;
49 default?: string;
50};
51
52export type MultilineTextInputSettingType = {
53 type: ExtensionSettingType.MultilineString;
54 default?: string;
55};
56
57export type SelectSettingType = {
58 type: ExtensionSettingType.Select;
59 options: SelectOption[];
60 default?: string;
61};
62
63export type MultiSelectSettingType = {
64 type: ExtensionSettingType.MultiSelect;
65 options: string[];
66 default?: string[];
67};
68
69export type ListSettingType = {
70 type: ExtensionSettingType.List;
71 default?: string[];
72};
73
74export type DictionarySettingType = {
75 type: ExtensionSettingType.Dictionary;
76 default?: Record<string, string>;
77};
78
79export type CustomSettingType = {
80 type: ExtensionSettingType.Custom;
81 default?: any;
82};
83
84export enum ExtensionSettingsAdvice {
85 None = "none",
86 Reload = "reload",
87 Restart = "restart"
88}
89
90export type ExtensionSettingsManifest = {
91 displayName?: string;
92 description?: string;
93 advice?: ExtensionSettingsAdvice;
94} & (
95 | BooleanSettingType
96 | NumberSettingType
97 | StringSettingType
98 | MultilineTextInputSettingType
99 | SelectSettingType
100 | MultiSelectSettingType
101 | ListSettingType
102 | DictionarySettingType
103 | CustomSettingType
104);