this repo has no description
at v1.0.5 1.8 kB view raw
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 Select = "select", 23 MultiSelect = "multiselect", 24 List = "list", 25 Dictionary = "dictionary", 26 Custom = "custom" 27} 28 29export type SelectOption = 30 | string 31 | { 32 value: string; 33 label: string; 34 }; 35 36export type BooleanSettingType = { 37 type: ExtensionSettingType.Boolean; 38 default?: boolean; 39}; 40 41export type NumberSettingType = { 42 type: ExtensionSettingType.Number; 43 default?: number; 44 min?: number; 45 max?: number; 46}; 47 48export type StringSettingType = { 49 type: ExtensionSettingType.String; 50 default?: string; 51}; 52 53export type SelectSettingType = { 54 type: ExtensionSettingType.Select; 55 options: SelectOption[]; 56 default?: string; 57}; 58 59export type MultiSelectSettingType = { 60 type: ExtensionSettingType.MultiSelect; 61 options: string[]; 62 default?: string[]; 63}; 64 65export type ListSettingType = { 66 type: ExtensionSettingType.List; 67 default?: string[]; 68}; 69 70export type DictionarySettingType = { 71 type: ExtensionSettingType.Dictionary; 72 default?: Record<string, string>; 73}; 74 75export type CustomSettingType = { 76 type: ExtensionSettingType.Custom; 77 default?: any; 78}; 79 80export type ExtensionSettingsManifest = { 81 displayName?: string; 82 description?: string; 83} & ( 84 | BooleanSettingType 85 | NumberSettingType 86 | StringSettingType 87 | SelectSettingType 88 | MultiSelectSettingType 89 | ListSettingType 90 | DictionarySettingType 91 | CustomSettingType 92);