@@ -234,3 +234,43 @@ const (
234234 PlayerStateStopped PlayerState = "STOPPED"
235235 PlayerStateLoading PlayerState = "LOADING"
236236)
237+
238+ type PreferenceTypes string
239+
240+ const (
241+ DirectoryGroup PreferenceTypes = "DirectoryGroup"
242+ EditText PreferenceTypes = "EditText"
243+ FilePicker PreferenceTypes = "FilePicker"
244+ CheckboxGroup PreferenceTypes = "CheckboxGroup"
245+ ThemeSelector PreferenceTypes = "ThemeSelector"
246+ Extensions PreferenceTypes = "Extensions"
247+ ButtonGroup PreferenceTypes = "ButtonGroup"
248+ ProgressBar PreferenceTypes = "ProgressBar"
249+ TextField PreferenceTypes = "TextField"
250+ InfoField PreferenceTypes = "InfoField"
251+ Dropdown PreferenceTypes = "Dropdown"
252+ )
253+
254+ type InputType string
255+
256+ const (
257+ Text InputType = "text"
258+ Number InputType = "number"
259+ )
260+
261+ type CheckboxItems struct {
262+ Title string `json:"title"`
263+ Key string `json:"key"`
264+ }
265+
266+ type PreferenceUIData struct {
267+ Type PreferenceTypes `json:"type"`
268+ Title string `json:"title"`
269+ Key string `json:"key"`
270+ Description string `json:"description"`
271+ InputType * InputType `json:"inputType,omitempty"`
272+ Single * bool `json:"single,omitempty"`
273+ Items * []CheckboxItems `json:"items,omitempty"`
274+ Default any `json:"default,omitempty"`
275+ Mobile * bool `json:"mobile,omitempty"`
276+ }
0 commit comments