diff --git a/core/modules/layout_builder/config/schema/layout_builder.schema.yml b/core/modules/layout_builder/config/schema/layout_builder.schema.yml
index 862c90ec..93750398 100644
--- a/core/modules/layout_builder/config/schema/layout_builder.schema.yml
+++ b/core/modules/layout_builder/config/schema/layout_builder.schema.yml
@@ -52,6 +52,11 @@ layout_builder.component:
     additional:
       type: ignore
       label: 'Additional data'
+    third_party_settings:
+      type: sequence
+      label: 'Third party settings'
+      sequence:
+        type: '[%parent.%parent.%type].third_party.[%key]'
 
 inline_block:
   type: block_settings
diff --git a/core/modules/layout_builder/layout_builder.post_update.php b/core/modules/layout_builder/layout_builder.post_update.php
index 47d94aa5..d0e54cfc 100644
--- a/core/modules/layout_builder/layout_builder.post_update.php
+++ b/core/modules/layout_builder/layout_builder.post_update.php
@@ -34,3 +34,10 @@ function layout_builder_removed_post_updates() {
 function layout_builder_post_update_override_entity_form_controller() {
   // Empty post-update hook.
 }
+
+/**
+ * Clear caches due to config schema addition.
+ */
+function layout_builder_post_update_component_third_party_settings_schema() {
+  // Empty post-update hook.
+}
diff --git a/core/modules/layout_builder/src/Entity/LayoutBuilderEntityViewDisplay.php b/core/modules/layout_builder/src/Entity/LayoutBuilderEntityViewDisplay.php
index 8f3b0228..c4d55af1 100644
--- a/core/modules/layout_builder/src/Entity/LayoutBuilderEntityViewDisplay.php
+++ b/core/modules/layout_builder/src/Entity/LayoutBuilderEntityViewDisplay.php
@@ -436,7 +436,7 @@ class LayoutBuilderEntityViewDisplay extends BaseEntityViewDisplay implements La
 
       $section = $this->getDefaultSection();
       $region = isset($options['region']) ? $options['region'] : $section->getDefaultRegion();
-      $new_component = (new SectionComponent(\Drupal::service('uuid')->generate(), $region, $configuration));
+      $new_component = (SectionComponent::create(\Drupal::service('uuid')->generate(), $region, $configuration));
       $section->appendComponent($new_component);
     }
     return $this;
diff --git a/core/modules/layout_builder/src/Form/AddBlockForm.php b/core/modules/layout_builder/src/Form/AddBlockForm.php
index 63c79c2c..a982b86a 100644
--- a/core/modules/layout_builder/src/Form/AddBlockForm.php
+++ b/core/modules/layout_builder/src/Form/AddBlockForm.php
@@ -53,7 +53,7 @@ class AddBlockForm extends ConfigureBlockFormBase {
   public function buildForm(array $form, FormStateInterface $form_state, SectionStorageInterface $section_storage = NULL, $delta = NULL, $region = NULL, $plugin_id = NULL) {
     // Only generate a new component once per form submission.
     if (!$component = $form_state->get('layout_builder__component')) {
-      $component = new SectionComponent($this->uuidGenerator->generate(), $region, ['id' => $plugin_id]);
+      $component = SectionComponent::create($this->uuidGenerator->generate(), $region, ['id' => $plugin_id]);
       $section_storage->getSection($delta)->appendComponent($component);
       $form_state->set('layout_builder__component', $component);
     }
diff --git a/core/modules/layout_builder/src/SectionComponent.php b/core/modules/layout_builder/src/SectionComponent.php
index 4003f7e7..e5107014 100644
--- a/core/modules/layout_builder/src/SectionComponent.php
+++ b/core/modules/layout_builder/src/SectionComponent.php
@@ -3,6 +3,7 @@
 namespace Drupal\layout_builder;
 
 use Drupal\Component\Plugin\Exception\PluginException;
+use Drupal\Core\Config\Entity\ThirdPartySettingsInterface;
 use Drupal\Core\Plugin\ContextAwarePluginInterface;
 use Drupal\layout_builder\Event\SectionComponentBuildRenderArrayEvent;
 
@@ -18,7 +19,7 @@ use Drupal\layout_builder\Event\SectionComponentBuildRenderArrayEvent;
  * @see \Drupal\layout_builder\Section
  * @see \Drupal\layout_builder\SectionStorageInterface
  */
-class SectionComponent {
+class SectionComponent implements ThirdPartySettingsInterface {
 
   /**
    * The UUID of the component.
@@ -52,9 +53,24 @@ class SectionComponent {
    * Any additional properties and values.
    *
    * @var mixed[]
+   *
+   * @deprecated in drupal:9.1.0 and is removed from drupal:10.0.0.
+   *   Additional component properties should be set
+   *   via ::setThirdPartySetting().
+   *
+   * @see https://www.drupal.org/node/3100177
    */
   protected $additional = [];
 
+  /**
+   * Third party settings.
+   *
+   * An array of key/value pairs keyed by provider.
+   *
+   * @var array[]
+   */
+  protected $thirdPartySettings = [];
+
   /**
    * Constructs a new SectionComponent.
    *
@@ -65,13 +81,50 @@ class SectionComponent {
    * @param mixed[] $configuration
    *   The plugin configuration.
    * @param mixed[] $additional
-   *   An additional values.
+   *   (optional) Additional values.
+   * @param array[] $third_party_settings
+   *   (optional) Any third party settings.
+   * @param bool $instantiated_by_create
+   *   (optional) Whether the object is being instantiated by ::create().
+   *
+   * @todo Change constructor from public to private in
+   *   https://www.drupal.org/project/drupal/issues/3160644 when the
+   *   drupal:10.0.x branch is opened.
    */
-  public function __construct($uuid, $region, array $configuration = [], array $additional = []) {
+  public function __construct($uuid, $region, array $configuration = [], array $additional = [], array $third_party_settings = [], $instantiated_by_create = FALSE) {
     $this->uuid = $uuid;
     $this->region = $region;
     $this->configuration = $configuration;
+    // @todo Remove below $additional code when the drupal:10.0.x branch is opened.
+    // @see https://www.drupal.org/project/drupal/issues/3160644
     $this->additional = $additional;
+    if ($additional) {
+      @trigger_error('Setting additional properties is deprecated in drupal:9.1.0 and is removed from drupal:10.0.0. Additional component properties should be set via ::setThirdPartySetting(). See https://www.drupal.org/node/3100177', E_USER_DEPRECATED);
+    }
+    $this->thirdPartySettings = $third_party_settings;
+    // @todo Remove below conditional when the drupal:10.0.x branch is opened.
+    // @see https://www.drupal.org/project/drupal/issues/3160644
+    if (!$instantiated_by_create) {
+      @trigger_error('Instantiating a SectionComponent object directly is deprecated in drupal:9.1.0 and is removed from drupal:10.0.0. SectionComponents should be instantiated using the SectionComponent::create() method instead. See https://www.drupal.org/node/3100177', E_USER_DEPRECATED);
+    }
+  }
+
+  /**
+   * Create a new SectionComponent object.
+   *
+   * @param string $uuid
+   *   The UUID.
+   * @param string $region
+   *   The region.
+   * @param mixed[] $configuration
+   *   The plugin configuration.
+   * @param array[] $third_party_settings
+   *   (optional) Any third party settings.
+   *
+   * @return static
+   */
+  public static function create($uuid, $region, array $configuration = [], array $third_party_settings = []) {
+    return new static($uuid, $region, $configuration, [], $third_party_settings, TRUE);
   }
 
   /**
@@ -99,6 +152,12 @@ class SectionComponent {
    * @param string $property
    *   The property to retrieve.
    *
+   * @deprecated in drupal:9.1.0 and is removed from drupal:10.0.0.
+   *   Additional component properties should be gotten
+   *   via ::setThirdPartySetting().
+   *
+   * @see https://www.drupal.org/node/3100177
+   *
    * @return mixed
    *   The value for that property, or NULL if the property does not exist.
    */
@@ -109,6 +168,7 @@ class SectionComponent {
     else {
       $value = isset($this->additional[$property]) ? $this->additional[$property] : NULL;
     }
+    @trigger_error('Getting additional properties is deprecated in drupal:9.1.0 and is removed from drupal:10.0.0. Additional component properties should be gotten via ::setThirdPartySetting(). See https://www.drupal.org/node/3100177', E_USER_DEPRECATED);
     return $value;
   }
 
@@ -120,6 +180,12 @@ class SectionComponent {
    * @param mixed $value
    *   The value to set.
    *
+   * @deprecated in drupal:9.1.0 and is removed from drupal:10.0.0.
+   *   Additional component properties should be set
+   *   via ::setThirdPartySetting().
+   *
+   * @see https://www.drupal.org/node/3100177
+   *
    * @return $this
    */
   public function set($property, $value) {
@@ -129,6 +195,7 @@ class SectionComponent {
     else {
       $this->additional[$property] = $value;
     }
+    @trigger_error('Setting additional properties is deprecated in drupal:9.1.0 and is removed from drupal:10.0.0. Additional component properties should be set via ::setThirdPartySetting(). See https://www.drupal.org/node/3100177', E_USER_DEPRECATED);
     return $this;
   }
 
@@ -294,6 +361,7 @@ class SectionComponent {
       'configuration' => $this->getConfiguration(),
       'additional' => $this->additional,
       'weight' => $this->getWeight(),
+      'third_party_settings' => $this->thirdPartySettings,
     ];
   }
 
@@ -309,12 +377,71 @@ class SectionComponent {
    *   The section component object.
    */
   public static function fromArray(array $component) {
+    // Ensure expected array keys are present.
+    $component += [
+      'uuid' => '',
+      'region' => [],
+      'configuration' => [],
+      'additional' => [],
+      'third_party_settings' => [],
+    ];
     return (new static(
       $component['uuid'],
       $component['region'],
       $component['configuration'],
-      $component['additional']
+      // @todo Remove below argument when the drupal:10.0.x branch is opened.
+      // @see https://www.drupal.org/project/drupal/issues/3160644
+      $component['additional'],
+      $component['third_party_settings'],
+      // @todo Remove below argument when the drupal:10.0.x branch is opened.
+      // @see https://www.drupal.org/project/drupal/issues/3160644
+      TRUE,
     ))->setWeight($component['weight']);
   }
 
+  /**
+   * {@inheritdoc}
+   */
+  public function getThirdPartySetting($provider, $key, $default = NULL) {
+    return isset($this->thirdPartySettings[$provider][$key]) ? $this->thirdPartySettings[$provider][$key] : $default;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getThirdPartySettings($provider) {
+    return isset($this->thirdPartySettings[$provider]) ? $this->thirdPartySettings[$provider] : [];
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function setThirdPartySetting($provider, $key, $value) {
+    $this->thirdPartySettings[$provider][$key] = $value;
+    return $this;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public function unsetThirdPartySetting($provider, $key) {
+    unset($this->thirdPartySettings[$provider][$key]);
+    // If the third party is no longer storing any information, completely
+    // remove the array holding the settings for this provider.
+    if (empty($this->thirdPartySettings[$provider])) {
+      unset($this->thirdPartySettings[$provider]);
+    }
+    return $this;
+  }
+
+  /**
+   * Gets the list of third parties that store information.
+   *
+   * @return array
+   *   The list of third parties.
+   */
+  public function getThirdPartyProviders() {
+    return array_keys($this->thirdPartySettings);
+  }
+
 }
diff --git a/core/modules/layout_builder/tests/modules/layout_builder_defaults_test/config/schema/layout_builder_defaults_test.schema.yml b/core/modules/layout_builder/tests/modules/layout_builder_defaults_test/config/schema/layout_builder_defaults_test.schema.yml
index cd7d1515..f270995d 100644
--- a/core/modules/layout_builder/tests/modules/layout_builder_defaults_test/config/schema/layout_builder_defaults_test.schema.yml
+++ b/core/modules/layout_builder/tests/modules/layout_builder_defaults_test/config/schema/layout_builder_defaults_test.schema.yml
@@ -4,3 +4,9 @@ layout_builder.section.third_party.layout_builder_defaults_test:
     which_party:
       label: 'Which party?'
       type: string
+layout_builder.component.third_party.layout_builder_defaults_test:
+  type: mapping
+  mapping:
+    harold:
+      type: string
+      label: Some arbitrary string.
diff --git a/core/modules/layout_builder/tests/modules/layout_builder_test/src/Plugin/SectionStorage/TestStateBasedSectionStorage.php b/core/modules/layout_builder/tests/modules/layout_builder_test/src/Plugin/SectionStorage/TestStateBasedSectionStorage.php
index d51cdc72..7c00ce6e 100644
--- a/core/modules/layout_builder/tests/modules/layout_builder_test/src/Plugin/SectionStorage/TestStateBasedSectionStorage.php
+++ b/core/modules/layout_builder/tests/modules/layout_builder_test/src/Plugin/SectionStorage/TestStateBasedSectionStorage.php
@@ -24,7 +24,7 @@ class TestStateBasedSectionStorage extends SectionStorageBase {
   public function getSections() {
     // Return a custom section.
     $section = new Section('layout_onecol');
-    $section->appendComponent(new SectionComponent('fake-uuid', 'content', [
+    $section->appendComponent(SectionComponent::create('fake-uuid', 'content', [
       'id' => 'system_powered_by_block',
       'label' => 'Test block title',
       'label_display' => 'visible',
diff --git a/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php b/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php
index fadfe3b9..9c247311 100644
--- a/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php
+++ b/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php
@@ -65,7 +65,7 @@ class LayoutSectionTest extends BrowserTestBase {
       [
         [
           'section' => new Section('layout_onecol', [], [
-            'baz' => new SectionComponent('baz', 'content', [
+            'baz' => SectionComponent::create('baz', 'content', [
               'id' => 'test_context_aware',
               'context_mapping' => [
                 'user' => '@user.current_user_context:current_user',
@@ -89,7 +89,7 @@ class LayoutSectionTest extends BrowserTestBase {
       [
         [
           'section' => new Section('layout_onecol', [], [
-            'baz' => new SectionComponent('baz', 'content', [
+            'baz' => SectionComponent::create('baz', 'content', [
               'id' => 'field_block:node:bundle_with_section_field:body',
               'context_mapping' => [
                 'entity' => 'layout_builder.entity',
@@ -114,7 +114,7 @@ class LayoutSectionTest extends BrowserTestBase {
       [
         [
           'section' => new Section('layout_onecol', [], [
-            'baz' => new SectionComponent('baz', 'content', [
+            'baz' => SectionComponent::create('baz', 'content', [
               'id' => 'system_powered_by_block',
             ]),
           ]),
@@ -130,18 +130,18 @@ class LayoutSectionTest extends BrowserTestBase {
       [
         [
           'section' => new Section('layout_onecol', [], [
-            'baz' => new SectionComponent('baz', 'content', [
+            'baz' => SectionComponent::create('baz', 'content', [
               'id' => 'system_powered_by_block',
             ]),
           ]),
         ],
         [
           'section' => new Section('layout_twocol', [], [
-            'foo' => new SectionComponent('foo', 'first', [
+            'foo' => SectionComponent::create('foo', 'first', [
               'id' => 'test_block_instantiation',
               'display_message' => 'foo text',
             ]),
-            'bar' => new SectionComponent('bar', 'second', [
+            'bar' => SectionComponent::create('bar', 'second', [
               'id' => 'test_block_instantiation',
               'display_message' => 'bar text',
             ]),
@@ -187,7 +187,7 @@ class LayoutSectionTest extends BrowserTestBase {
     $node = $this->createSectionNode([
       [
         'section' => new Section('layout_onecol', [], [
-          'baz' => new SectionComponent('baz', 'content', [
+          'baz' => SectionComponent::create('baz', 'content', [
             'id' => 'test_access',
           ]),
         ]),
diff --git a/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php b/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php
index 81f6f02b..a3660d21 100644
--- a/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php
@@ -115,7 +115,7 @@ class DefaultsSectionStorageTest extends KernelTestBase {
         'layout_onecol',
         [],
         [
-          'first-uuid' => new SectionComponent('first-uuid', 'content', ['id' => 'foo'], ['harold' => 'maude']),
+          'first-uuid' => SectionComponent::create('first-uuid', 'content', ['id' => 'foo'], ['layout_builder_defaults_test' => ['harold' => 'kumar']]),
         ],
         ['layout_builder_defaults_test' => ['which_party' => 'third']]
       ),
diff --git a/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php b/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php
index 822f121a..f49de8b8 100644
--- a/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php
@@ -120,7 +120,7 @@ class OverridesSectionStorageTest extends KernelTestBase {
   public function providerTestAccess() {
     $section_data = [
       new Section('layout_onecol', [], [
-        'first-uuid' => new SectionComponent('first-uuid', 'content', ['id' => 'foo']),
+        'first-uuid' => SectionComponent::create('first-uuid', 'content', ['id' => 'foo']),
       ]),
     ];
 
diff --git a/core/modules/layout_builder/tests/src/Kernel/SectionStorageTestBase.php b/core/modules/layout_builder/tests/src/Kernel/SectionStorageTestBase.php
index 567645ef..757bb27b 100644
--- a/core/modules/layout_builder/tests/src/Kernel/SectionStorageTestBase.php
+++ b/core/modules/layout_builder/tests/src/Kernel/SectionStorageTestBase.php
@@ -37,10 +37,10 @@ abstract class SectionStorageTestBase extends EntityKernelTestBase {
 
     $section_data = [
       new Section('layout_test_plugin', [], [
-        'first-uuid' => new SectionComponent('first-uuid', 'content', ['id' => 'foo']),
+        'first-uuid' => SectionComponent::create('first-uuid', 'content', ['id' => 'foo']),
       ]),
       new Section('layout_test_plugin', ['setting_1' => 'bar'], [
-        'second-uuid' => new SectionComponent('second-uuid', 'content', ['id' => 'foo']),
+        'second-uuid' => SectionComponent::create('second-uuid', 'content', ['id' => 'foo']),
       ]),
     ];
     $this->sectionStorage = $this->getSectionStorage($section_data);
@@ -63,10 +63,10 @@ abstract class SectionStorageTestBase extends EntityKernelTestBase {
   public function testGetSections() {
     $expected = [
       new Section('layout_test_plugin', ['setting_1' => 'Default'], [
-        'first-uuid' => new SectionComponent('first-uuid', 'content', ['id' => 'foo']),
+        'first-uuid' => SectionComponent::create('first-uuid', 'content', ['id' => 'foo']),
       ]),
       new Section('layout_test_plugin', ['setting_1' => 'bar'], [
-        'second-uuid' => new SectionComponent('second-uuid', 'content', ['id' => 'foo']),
+        'second-uuid' => SectionComponent::create('second-uuid', 'content', ['id' => 'foo']),
       ]),
     ];
     $this->assertSections($expected);
@@ -94,11 +94,11 @@ abstract class SectionStorageTestBase extends EntityKernelTestBase {
   public function testInsertSection() {
     $expected = [
       new Section('layout_test_plugin', ['setting_1' => 'Default'], [
-        'first-uuid' => new SectionComponent('first-uuid', 'content', ['id' => 'foo']),
+        'first-uuid' => SectionComponent::create('first-uuid', 'content', ['id' => 'foo']),
       ]),
       new Section('layout_onecol'),
       new Section('layout_test_plugin', ['setting_1' => 'bar'], [
-        'second-uuid' => new SectionComponent('second-uuid', 'content', ['id' => 'foo']),
+        'second-uuid' => SectionComponent::create('second-uuid', 'content', ['id' => 'foo']),
       ]),
     ];
 
@@ -112,10 +112,10 @@ abstract class SectionStorageTestBase extends EntityKernelTestBase {
   public function testAppendSection() {
     $expected = [
       new Section('layout_test_plugin', ['setting_1' => 'Default'], [
-        'first-uuid' => new SectionComponent('first-uuid', 'content', ['id' => 'foo']),
+        'first-uuid' => SectionComponent::create('first-uuid', 'content', ['id' => 'foo']),
       ]),
       new Section('layout_test_plugin', ['setting_1' => 'bar'], [
-        'second-uuid' => new SectionComponent('second-uuid', 'content', ['id' => 'foo']),
+        'second-uuid' => SectionComponent::create('second-uuid', 'content', ['id' => 'foo']),
       ]),
       new Section('layout_onecol'),
     ];
@@ -156,7 +156,7 @@ abstract class SectionStorageTestBase extends EntityKernelTestBase {
   public function testRemoveSection() {
     $expected = [
       new Section('layout_test_plugin', ['setting_1' => 'bar'], [
-        'second-uuid' => new SectionComponent('second-uuid', 'content', ['id' => 'foo']),
+        'second-uuid' => SectionComponent::create('second-uuid', 'content', ['id' => 'foo']),
       ]),
     ];
 
diff --git a/core/modules/layout_builder/tests/src/Kernel/TranslatableFieldTest.php b/core/modules/layout_builder/tests/src/Kernel/TranslatableFieldTest.php
index b7a1ee43..63ae79b1 100644
--- a/core/modules/layout_builder/tests/src/Kernel/TranslatableFieldTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/TranslatableFieldTest.php
@@ -68,7 +68,7 @@ class TranslatableFieldTest extends KernelTestBase {
   public function testSectionsClearedOnCreateTranslation() {
     $section_data = [
       new Section('layout_onecol', [], [
-        'first-uuid' => new SectionComponent('first-uuid', 'content', ['id' => 'foo']),
+        'first-uuid' => SectionComponent::create('first-uuid', 'content', ['id' => 'foo']),
       ]),
     ];
     $entity = EntityTest::create([OverridesSectionStorage::FIELD_NAME => $section_data]);
diff --git a/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php b/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php
index 18890aaa..21b4d805 100644
--- a/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php
@@ -106,7 +106,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
     $block->build()->willReturn($block_content);
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn($block->reveal());
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $in_preview = FALSE;
     $event = new SectionComponentBuildRenderArrayEvent($component, $contexts, $in_preview);
 
@@ -176,7 +176,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
     $block->build()->willReturn($block_content);
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn($block->reveal());
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $in_preview = FALSE;
     $event = new SectionComponentBuildRenderArrayEvent($component, $contexts, $in_preview);
 
@@ -248,7 +248,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
     $block->build()->willReturn($block_content);
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn($block->reveal());
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $in_preview = FALSE;
     $event = new SectionComponentBuildRenderArrayEvent($component, $contexts, $in_preview);
 
@@ -307,7 +307,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
     $block->build()->willReturn($block_content);
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn($block->reveal());
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $in_preview = TRUE;
     $event = new SectionComponentBuildRenderArrayEvent($component, $contexts, $in_preview);
 
@@ -363,7 +363,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
     $block->build()->willReturn($block_content);
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn($block->reveal());
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $event = new SectionComponentBuildRenderArrayEvent($component, [], TRUE);
 
     $subscriber = new BlockComponentRenderArray($this->account->reveal());
@@ -421,7 +421,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
     ]);
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn($block->reveal());
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $event = new SectionComponentBuildRenderArrayEvent($component, [], FALSE);
 
     $subscriber = new BlockComponentRenderArray($this->account->reveal());
@@ -469,7 +469,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
     $block->build()->willReturn($block_content);
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn($block->reveal());
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $event = new SectionComponentBuildRenderArrayEvent($component, [], FALSE);
 
     $subscriber = new BlockComponentRenderArray($this->account->reveal());
@@ -497,7 +497,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
   public function testOnBuildRenderNoBlock() {
     $this->blockManager->createInstance('some_block_id', ['id' => 'some_block_id'])->willReturn(NULL);
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $contexts = [];
     $in_preview = FALSE;
     $event = new SectionComponentBuildRenderArrayEvent($component, $contexts, $in_preview);
diff --git a/core/modules/layout_builder/tests/src/Unit/SectionComponentTest.php b/core/modules/layout_builder/tests/src/Unit/SectionComponentTest.php
index 48a24778..ea3ae0a2 100644
--- a/core/modules/layout_builder/tests/src/Unit/SectionComponentTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/SectionComponentTest.php
@@ -9,6 +9,7 @@ use Drupal\Core\Layout\LayoutInterface;
 use Drupal\Core\Layout\LayoutPluginManagerInterface;
 use Drupal\layout_builder\Event\SectionComponentBuildRenderArrayEvent;
 use Drupal\layout_builder\LayoutBuilderEvents;
+use Drupal\layout_builder\Section;
 use Drupal\layout_builder\SectionComponent;
 use Drupal\Tests\UnitTestCase;
 use Prophecy\Argument;
@@ -20,6 +21,37 @@ use Symfony\Component\EventDispatcher\EventDispatcherInterface;
  */
 class SectionComponentTest extends UnitTestCase {
 
+  /**
+   * The section object to test.
+   *
+   * @var \Drupal\layout_builder\Section
+   */
+  protected $section;
+
+  /**
+   * {@inheritdoc}
+   */
+  protected function setUp(): void {
+    parent::setUp();
+
+    $component = SectionComponent::create(
+      'some-uuid',
+      'some-region',
+      ['id' => 'existing-block-id'],
+      [
+        'Initech' => [
+          'Bill Lumbergh' => 'TPS reports',
+          'Milton Waddams' => 'Red Stapler',
+        ],
+        'Chotchkies' => [
+          'flair' => TRUE,
+        ],
+      ]
+    );
+
+    $this->section = new Section('layout_onecol', [], [$component]);
+  }
+
   /**
    * @covers ::toRenderArray
    */
@@ -63,9 +95,152 @@ class SectionComponentTest extends UnitTestCase {
       '#markup' => 'block_plugin_id',
     ];
 
-    $component = new SectionComponent('some-uuid', 'some-region', ['id' => 'some_block_id']);
+    $component = SectionComponent::create('some-uuid', 'some-region', ['id' => 'some_block_id']);
     $result = $component->toRenderArray();
     $this->assertEquals($expected, $result);
   }
 
+  /**
+   * @covers ::getThirdPartySettings
+   * @dataProvider providerTestGetThirdPartySettings
+   */
+  public function testGetThirdPartySettings($provider, $expected) {
+    $this->assertSame($expected, $this->section->getComponent('some-uuid')->getThirdPartySettings($provider));
+  }
+
+  /**
+   * Provides test data for ::testGetThirdPartySettings().
+   */
+  public function providerTestGetThirdPartySettings() {
+    $data = [];
+    $data['Initech third party settings'] = [
+      'Initech',
+      [
+        'Bill Lumbergh' => 'TPS reports',
+        'Milton Waddams' => 'Red Stapler',
+      ],
+    ];
+    $data['Chotchkies third party settings'] = [
+      'Chotchkies',
+      ['flair' => TRUE],
+    ];
+    $data['Nonexisting provider'] = [
+      'non_existing_provider',
+      [],
+    ];
+    return $data;
+  }
+
+  /**
+   * @covers ::getThirdPartySetting
+   * @dataProvider providerTestGetThirdPartySetting
+   */
+  public function testGetThirdPartySetting($provider, $key, $expected, $default = FALSE) {
+    if ($default) {
+      $this->assertSame($expected, $this->section->getComponent('some-uuid')->getThirdPartySetting($provider, $key, $default));
+    }
+    else {
+      $this->assertSame($expected, $this->section->getComponent('some-uuid')->getThirdPartySetting($provider, $key));
+    }
+  }
+
+  /**
+   * Provides test data for ::testGetThirdPartySetting().
+   */
+  public function providerTestGetThirdPartySetting() {
+    $data = [];
+    $data['Initech third party setting for "Bill Lumbergh" key'] = [
+      'Initech',
+      'Bill Lumbergh',
+      'TPS reports',
+    ];
+    $data['Chotchkies third party setting for "flair" key'] = [
+      'Chotchkies',
+      'flair',
+      TRUE,
+    ];
+    $data['Chotchkies third party setting for nonexisting key'] = [
+      'Chotchkies',
+      'non_existing_key',
+      NULL,
+    ];
+    $data['Nonexisting provider third party setting for nonexisting key'] = [
+      'non_existing_provider',
+      'non_existing_key',
+      NULL,
+    ];
+    $data['Nonexisting provider third party setting for nonexisting key with a default value provided'] = [
+      'non_existing_provider',
+      'non_existing_key',
+      'default value',
+      'default value',
+    ];
+    return $data;
+  }
+
+  /**
+   * @covers ::setThirdPartySetting
+   * @dataProvider providerTestSetThirdPartySetting
+   */
+  public function testSetThirdPartySetting($provider, $key, $value, $expected) {
+    $this->section->getComponent('some-uuid')->setThirdPartySetting($provider, $key, $value);
+    $this->assertSame($expected, $this->section->getComponent('some-uuid')->getThirdPartySettings($provider));
+  }
+
+  /**
+   * Provides test data for ::testSetThirdPartySettings().
+   */
+  public function providerTestSetThirdPartySetting() {
+    $data = [];
+    $data['Override "Milton Waddams" third party setting for Initech provider'] = [
+      'Initech',
+      'Milton Waddams',
+      'Storage B',
+      [
+        'Bill Lumbergh' => 'TPS reports',
+        'Milton Waddams' => 'Storage B',
+      ],
+    ];
+    $data['Add "Peter Gibbons" third party setting for Initech provider'] = [
+      'Initech',
+      'Peter Gibbons',
+      'Programmer',
+      [
+        'Bill Lumbergh' => 'TPS reports',
+        'Milton Waddams' => 'Red Stapler',
+        'Peter Gibbons' => 'Programmer',
+      ],
+    ];
+    $data['Add "Medical Providers" provider third party settings'] = [
+      'Medical Providers',
+      'Dr. Swanson',
+      'Hypnotist',
+      [
+        'Dr. Swanson' => 'Hypnotist',
+      ],
+    ];
+    return $data;
+  }
+
+  /**
+   * @covers ::unsetThirdPartySetting
+   */
+  public function testUnsetThirdPartySetting() {
+    $this->section->getComponent('some-uuid')->unsetThirdPartySetting('Initech', 'Bill Lumbergh');
+    $this->assertSame(['Milton Waddams' => 'Red Stapler'], $this->section->getComponent('some-uuid')->getThirdPartySettings('Initech'));
+    $this->section->getComponent('some-uuid')->unsetThirdPartySetting('Chotchkies', 'flair');
+    $this->assertSame([], $this->section->getComponent('some-uuid')->getThirdPartySettings('Chotchkies'));
+    $this->section->getComponent('some-uuid')->unsetThirdPartySetting('Initech', 'non_existing_key');
+    $this->section->getComponent('some-uuid')->unsetThirdPartySetting('non_existing_provider', 'non_existing_key');
+  }
+
+  /**
+   * @covers ::getThirdPartyProviders
+   */
+  public function testGetThirdPartyProviders() {
+    $this->assertSame(['Initech', 'Chotchkies'], $this->section->getComponent('some-uuid')->getThirdPartyProviders());
+    $this->section->getComponent('some-uuid')->unsetThirdPartySetting('Chotchkies', 'flair');
+    $this->assertSame(['Initech'], $this->section->getComponent('some-uuid')->getThirdPartyProviders());
+  }
+
 }
diff --git a/core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php b/core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php
index fe9fbdc3..b62ba63c 100644
--- a/core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php
@@ -133,7 +133,7 @@ class SectionRenderTest extends UnitTestCase {
     $block->getPreviewFallbackString()->willReturn($placeholder_label);
 
     $section = [
-      new SectionComponent('some_uuid', 'content', ['id' => 'block_plugin_id']),
+      SectionComponent::create('some_uuid', 'content', ['id' => 'block_plugin_id']),
     ];
     $expected = [
       'content' => [
@@ -159,7 +159,7 @@ class SectionRenderTest extends UnitTestCase {
     $block->getCacheMaxAge()->willReturn(Cache::PERMANENT);
 
     $section = [
-      new SectionComponent('some_uuid', 'content', ['id' => 'block_plugin_id']),
+      SectionComponent::create('some_uuid', 'content', ['id' => 'block_plugin_id']),
     ];
     $expected = [
       'content' => [
@@ -214,7 +214,7 @@ class SectionRenderTest extends UnitTestCase {
     $block->getPreviewFallbackString()->willReturn($placeholder_label);
 
     $section = [
-      new SectionComponent('some_uuid', 'content', ['id' => 'block_plugin_id']),
+      SectionComponent::create('some_uuid', 'content', ['id' => 'block_plugin_id']),
     ];
     $expected = [
       'content' => [
@@ -275,7 +275,7 @@ class SectionRenderTest extends UnitTestCase {
     $block->getPreviewFallbackString()->willReturn($placeholder_label);
 
     $section = [
-      new SectionComponent('some_uuid', 'content', ['id' => 'block_plugin_id']),
+      SectionComponent::create('some_uuid', 'content', ['id' => 'block_plugin_id']),
     ];
     $expected = [
       'content' => [
@@ -292,7 +292,7 @@ class SectionRenderTest extends UnitTestCase {
   public function testToRenderArrayMissingPluginId() {
     $this->expectException(PluginException::class);
     $this->expectExceptionMessage('No plugin ID specified for component with "some_uuid" UUID');
-    (new Section('layout_onecol', [], [new SectionComponent('some_uuid', 'content')]))->toRenderArray();
+    (new Section('layout_onecol', [], [SectionComponent::create('some_uuid', 'content')]))->toRenderArray();
   }
 
 }
diff --git a/core/modules/layout_builder/tests/src/Unit/SectionTest.php b/core/modules/layout_builder/tests/src/Unit/SectionTest.php
index f2349183..fca9d4cd 100644
--- a/core/modules/layout_builder/tests/src/Unit/SectionTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/SectionTest.php
@@ -29,9 +29,9 @@ class SectionTest extends UnitTestCase {
       'layout_onecol',
       [],
       [
-        new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']),
-        (new SectionComponent('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
-        (new SectionComponent('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
+        SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']),
+        (SectionComponent::create('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
+        (SectionComponent::create('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
       ],
       [
         'bad_judgement' => ['blink_speed' => 'fast', 'spin_direction' => 'clockwise'],
@@ -47,9 +47,9 @@ class SectionTest extends UnitTestCase {
    */
   public function testGetComponents() {
     $expected = [
-      'existing-uuid' => (new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
-      'second-uuid' => (new SectionComponent('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
-      'first-uuid' => (new SectionComponent('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
+      'existing-uuid' => (SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
+      'second-uuid' => (SectionComponent::create('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
+      'first-uuid' => (SectionComponent::create('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
     ];
 
     $this->assertComponents($expected, $this->section);
@@ -68,7 +68,7 @@ class SectionTest extends UnitTestCase {
    * @covers ::getComponent
    */
   public function testGetComponent() {
-    $expected = new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']);
+    $expected = SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']);
 
     $this->assertEquals($expected, $this->section->getComponent('existing-uuid'));
   }
@@ -79,8 +79,8 @@ class SectionTest extends UnitTestCase {
    */
   public function testRemoveComponent() {
     $expected = [
-      'existing-uuid' => (new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
-      'second-uuid' => (new SectionComponent('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
+      'existing-uuid' => (SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
+      'second-uuid' => (SectionComponent::create('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
     ];
 
     $this->section->removeComponent('first-uuid');
@@ -94,13 +94,13 @@ class SectionTest extends UnitTestCase {
    */
   public function testAppendComponent() {
     $expected = [
-      'existing-uuid' => (new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
-      'second-uuid' => (new SectionComponent('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
-      'first-uuid' => (new SectionComponent('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
-      'new-uuid' => (new SectionComponent('new-uuid', 'some-region', []))->setWeight(1),
+      'existing-uuid' => (SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
+      'second-uuid' => (SectionComponent::create('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
+      'first-uuid' => (SectionComponent::create('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
+      'new-uuid' => (SectionComponent::create('new-uuid', 'some-region', []))->setWeight(1),
     ];
 
-    $this->section->appendComponent(new SectionComponent('new-uuid', 'some-region'));
+    $this->section->appendComponent(SectionComponent::create('new-uuid', 'some-region'));
     $this->assertComponents($expected, $this->section);
   }
 
@@ -109,13 +109,13 @@ class SectionTest extends UnitTestCase {
    */
   public function testInsertAfterComponent() {
     $expected = [
-      'existing-uuid' => (new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
-      'second-uuid' => (new SectionComponent('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(4),
-      'first-uuid' => (new SectionComponent('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
-      'new-uuid' => (new SectionComponent('new-uuid', 'ordered-region', []))->setWeight(3),
+      'existing-uuid' => (SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
+      'second-uuid' => (SectionComponent::create('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(4),
+      'first-uuid' => (SectionComponent::create('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
+      'new-uuid' => (SectionComponent::create('new-uuid', 'ordered-region', []))->setWeight(3),
     ];
 
-    $this->section->insertAfterComponent('first-uuid', new SectionComponent('new-uuid', 'ordered-region'));
+    $this->section->insertAfterComponent('first-uuid', SectionComponent::create('new-uuid', 'ordered-region'));
     $this->assertComponents($expected, $this->section);
   }
 
@@ -125,7 +125,7 @@ class SectionTest extends UnitTestCase {
   public function testInsertAfterComponentValidUuidRegionMismatch() {
     $this->expectException(\InvalidArgumentException::class);
     $this->expectExceptionMessage('Invalid preceding UUID "existing-uuid"');
-    $this->section->insertAfterComponent('existing-uuid', new SectionComponent('new-uuid', 'ordered-region'));
+    $this->section->insertAfterComponent('existing-uuid', SectionComponent::create('new-uuid', 'ordered-region'));
   }
 
   /**
@@ -134,7 +134,7 @@ class SectionTest extends UnitTestCase {
   public function testInsertAfterComponentInvalidUuid() {
     $this->expectException(\InvalidArgumentException::class);
     $this->expectExceptionMessage('Invalid preceding UUID "invalid-uuid"');
-    $this->section->insertAfterComponent('invalid-uuid', new SectionComponent('new-uuid', 'ordered-region'));
+    $this->section->insertAfterComponent('invalid-uuid', SectionComponent::create('new-uuid', 'ordered-region'));
   }
 
   /**
@@ -143,13 +143,13 @@ class SectionTest extends UnitTestCase {
    */
   public function testInsertComponent() {
     $expected = [
-      'existing-uuid' => (new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
-      'second-uuid' => (new SectionComponent('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(4),
-      'first-uuid' => (new SectionComponent('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(3),
-      'new-uuid' => (new SectionComponent('new-uuid', 'ordered-region', []))->setWeight(2),
+      'existing-uuid' => (SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
+      'second-uuid' => (SectionComponent::create('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(4),
+      'first-uuid' => (SectionComponent::create('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(3),
+      'new-uuid' => (SectionComponent::create('new-uuid', 'ordered-region', []))->setWeight(2),
     ];
 
-    $this->section->insertComponent(0, new SectionComponent('new-uuid', 'ordered-region'));
+    $this->section->insertComponent(0, SectionComponent::create('new-uuid', 'ordered-region'));
     $this->assertComponents($expected, $this->section);
   }
 
@@ -158,13 +158,13 @@ class SectionTest extends UnitTestCase {
    */
   public function testInsertComponentAppend() {
     $expected = [
-      'existing-uuid' => (new SectionComponent('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
-      'second-uuid' => (new SectionComponent('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
-      'first-uuid' => (new SectionComponent('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
-      'new-uuid' => (new SectionComponent('new-uuid', 'ordered-region', []))->setWeight(4),
+      'existing-uuid' => (SectionComponent::create('existing-uuid', 'some-region', ['id' => 'existing-block-id']))->setWeight(0),
+      'second-uuid' => (SectionComponent::create('second-uuid', 'ordered-region', ['id' => 'second-block-id']))->setWeight(3),
+      'first-uuid' => (SectionComponent::create('first-uuid', 'ordered-region', ['id' => 'first-block-id']))->setWeight(2),
+      'new-uuid' => (SectionComponent::create('new-uuid', 'ordered-region', []))->setWeight(4),
     ];
 
-    $this->section->insertComponent(2, new SectionComponent('new-uuid', 'ordered-region'));
+    $this->section->insertComponent(2, SectionComponent::create('new-uuid', 'ordered-region'));
     $this->assertComponents($expected, $this->section);
   }
 
@@ -174,7 +174,7 @@ class SectionTest extends UnitTestCase {
   public function testInsertComponentInvalidDelta() {
     $this->expectException(\OutOfBoundsException::class);
     $this->expectExceptionMessage('Invalid delta "7" for the "new-uuid" component');
-    $this->section->insertComponent(7, new SectionComponent('new-uuid', 'ordered-region'));
+    $this->section->insertComponent(7, SectionComponent::create('new-uuid', 'ordered-region'));
   }
 
   /**
diff --git a/core/profiles/demo_umami/config/install/core.entity_view_display.node.recipe.full.yml b/core/profiles/demo_umami/config/install/core.entity_view_display.node.recipe.full.yml
index eddea371..db6a6314 100644
--- a/core/profiles/demo_umami/config/install/core.entity_view_display.node.recipe.full.yml
+++ b/core/profiles/demo_umami/config/install/core.entity_view_display.node.recipe.full.yml
@@ -47,6 +47,7 @@ third_party_settings:
                 type: entity_reference_label
             additional: {  }
             weight: 3
+            third_party_settings: {  }
           0eff9e1d-4e73-4748-b910-e5568df1d5aa:
             uuid: 0eff9e1d-4e73-4748-b910-e5568df1d5aa
             region: content
@@ -63,6 +64,7 @@ third_party_settings:
                 type: entity_reference_label
             additional: {  }
             weight: 2
+            third_party_settings: {  }
           44801518-fe93-421a-bdcb-550493c7925d:
             uuid: 44801518-fe93-421a-bdcb-550493c7925d
             region: content
@@ -78,6 +80,7 @@ third_party_settings:
                 type: text_default
             additional: {  }
             weight: 4
+            third_party_settings: {  }
         third_party_settings: {  }
       -
         layout_id: layout_oneplusfourgrid_section
@@ -103,6 +106,7 @@ third_party_settings:
                 view_mode: view_mode
             additional: {  }
             weight: 4
+            third_party_settings: {  }
           df8bfafc-210c-4d86-9745-e47081ab0fd4:
             uuid: df8bfafc-210c-4d86-9745-e47081ab0fd4
             region: fifth
@@ -118,6 +122,7 @@ third_party_settings:
                 type: list_default
             additional: {  }
             weight: 0
+            third_party_settings: {  }
           a2d450d0-08ce-4123-bca0-411bfa1da132:
             uuid: a2d450d0-08ce-4123-bca0-411bfa1da132
             region: fourth
@@ -135,6 +140,7 @@ third_party_settings:
                 type: number_integer
             additional: {  }
             weight: 0
+            third_party_settings: {  }
           f91febc6-d924-47a2-8ffd-b71d3b2597c7:
             uuid: f91febc6-d924-47a2-8ffd-b71d3b2597c7
             region: third
@@ -152,6 +158,7 @@ third_party_settings:
                 type: number_integer
             additional: {  }
             weight: 0
+            third_party_settings: {  }
           00488840-db50-4afe-9c30-a123e6707fa9:
             uuid: 00488840-db50-4afe-9c30-a123e6707fa9
             region: second
@@ -169,6 +176,7 @@ third_party_settings:
                 type: number_integer
             additional: {  }
             weight: 0
+            third_party_settings: {  }
           69d8bce1-28ae-4287-a05b-a2166679f867:
             uuid: 69d8bce1-28ae-4287-a05b-a2166679f867
             region: first
@@ -188,6 +196,7 @@ third_party_settings:
                 view_mode: view_mode
             additional: {  }
             weight: 0
+            third_party_settings: {  }
         third_party_settings: {  }
       -
         layout_id: layout_twocol_section
@@ -211,6 +220,7 @@ third_party_settings:
                 type: string
             additional: {  }
             weight: 0
+            third_party_settings: {  }
           f61cae40-5865-4c4c-98fa-14b8234e7b98:
             uuid: f61cae40-5865-4c4c-98fa-14b8234e7b98
             region: second
@@ -226,6 +236,7 @@ third_party_settings:
                 type: text_default
             additional: {  }
             weight: 0
+            third_party_settings: {  }
         third_party_settings: {  }
       -
         layout_id: layout_onecol
@@ -242,6 +253,7 @@ third_party_settings:
               id: 'extra_field_block:node:recipe:content_moderation_control'
             additional: {  }
             weight: 0
+            third_party_settings: {  }
         third_party_settings: {  }
     allow_custom: true
     enabled: true
