The #2212069: Non-English Drupal sites get default configuration in English, edited in English, originals not actually used if translated resolution now mandates that all configuration files may get a top level langcode top level key in them to store the language of the file. Several core simple configuration schemas did not define that key. In that issue we made it automated to add such a key to configuration schemas, however that made it impossible to parse configuration purely through its static schema. However the promise of the schema system is that that would be possible.
To make this newly required langcode key easier, we introduced a config_object type which defines a mapping with a langcode key only and should be used as the base type for every configuration name that is not a configuration entity. (Configuration entities should continue using the config_entity type). In other words, a configuration file's schema should either extend from config_object (for simple configuration) or config_entity (for entities).
Before config/schema/mymodule.schema.yml:
mymodule.settings:
type: mapping
mapping:
my_setting.....
After config/schema/mymodule.schema.yml:
mymodule.settings:
type: config_object
mapping:
my_setting.....
While technically you could also just add the langcode key yourself, using the config_object base type also helps you identify later which elements are schema definitions for configuration files and which are internal types. Plus in case there are new required keys added later to configuration files, you will not need to change anything again.