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