src/PeskyCMF/PeskyCmfAppSettings.php
static public function configureScaffoldFormConfig(FormConfig $scaffold) {
        return $scaffold
            ->addTab($scaffold->translate(null, 'tab.general'), [
                static::DEFAULT_BROWSER_TITLE,
                static::BROWSER_TITLE_ADDITION,
            ])
            ->addTab($scaffold->translate(null, 'tab.localization'), [
                static::LANGUAGES => KeyValueSetFormInput::create()
                    ->setMinValuesCount(1)
                    ->setAddRowButtonLabel($scaffold->translate(null, 'input.languages_add'))
                    ->setDeleteRowButtonLabel($scaffold->translate(null, 'input.languages_delete')),
                static::DEFAULT_LANGUAGE => FormInput::create()
                    ->setType(FormInput::TYPE_SELECT)
                    ->setOptions(function () {
                        return static::languages();
                    }),
                static::FALLBACK_LANGUAGES => KeyValueSetFormInput::create()
                    ->setAddRowButtonLabel($scaffold->translate(null, 'input.fallback_languages_add'))
                    ->setDeleteRowButtonLabel($scaffold->translate(null, 'input.fallback_languages_delete')),
            ]);
    }
static public function configureScaffoldFormConfig(FormConfig $scaffold) {
        return $scaffold
            ->addTab($scaffold->translate(null, 'tab.general'), [
                static::DEFAULT_BROWSER_TITLE,
                static::BROWSER_TITLE_ADDITION,
            ])
            ->addTab($scaffold->translate(null, 'tab.localization'), [
                static::LANGUAGES => KeyValueSetFormInput::create()
                    ->setMinValuesCount(1)
                    ->setAddRowButtonLabel($scaffold->translate(null, 'input.languages_add'))
                    ->setDeleteRowButtonLabel($scaffold->translate(null, 'input.languages_delete')),
                static::DEFAULT_LANGUAGE => FormInput::create()
                    ->setType(FormInput::TYPE_SELECT)
                    ->setOptions(function () {
                        return static::languages();
                    }),
                static::FALLBACK_LANGUAGES => KeyValueSetFormInput::create()
                    ->setAddRowButtonLabel($scaffold->translate(null, 'input.fallback_languages_add'))
                    ->setDeleteRowButtonLabel($scaffold->translate(null, 'input.fallback_languages_delete')),
            ]);
    }
Get form inputs for app settings (used in CmfSettingsScaffoldConfig)
You can use setting name as form input - it will be simple text input;
In order to make non-text input - use instance of FormInput class or its descendants as value and
setting name as key;
@param FormConfig $scaffold
@return FormConfig