SettingGroupSchema Interface

Metadata describing a group of related SettingSchemas. You can register setting schema groups via addGroup and remove them via removeGroup.

All of the settings share the same schemaPrefix, which must be unique amongst all other groups. The prefix is combined with the name of each SettingSchema in the group to form the fully-qualified name used to refer to the setting outside of the group, e.g., when accessing settingDefs or in extends. In the following example, the fully-qualified name of the setting named "metric" is "format/units/metric".

 {
   "schemaPrefix": "format/units",
   "settingDefs": {
     "metric": { "type": "boolean" }
   }
 }

A group can also define SettingSchemas that, rather than describing actual Settings, instead describe types that can be extended by Settings via extends. A SettingSchema can refer to type definitions defined in its own group or any other group.

Properties

Name Type Description
description Readonly string A description of this group suitable for displaying to a user.  
order Readonly number | undefined An integer used when displaying a list of schemas in a user interface, to sort schemas with a lower order before those with a higher order.  
schemaPrefix Readonly string Uniquely identifies this group amongst all other groups.  
settingDefs Readonly [name: string]: SettingSchema | undefined | undefined Metadata for each Setting in this group.  
typeDefs Readonly [name: string]: SettingSchema | undefined | undefined Metadata for types that can be extended by other Settings via extends.  

Defined in

Last Updated: 17 December, 2024