diff --git a/core/lib/Drupal/Core/Entity/Field/Type/Field.php b/core/lib/Drupal/Core/Entity/Field/Type/Field.php
index cc5951c..864cd87 100644
--- a/core/lib/Drupal/Core/Entity/Field/Type/Field.php
+++ b/core/lib/Drupal/Core/Entity/Field/Type/Field.php
@@ -238,6 +238,20 @@ public function getPropertyDefinitions() {
   }
 
   /**
+   * Implements Drupal\Core\TypedData\ListInterface::getArray().
+   */
+  public function getArray() {
+    return $this->list;
+  }
+
+  /**
+   * Implements Drupal\Core\TypedData\ListInterface::setArray().
+   */
+  public function setArray(array $array) {
+    $this->list = $array;
+  }
+
+  /**
    * Delegate.
    */
   public function __get($property_name) {
diff --git a/core/lib/Drupal/Core/TypedData/ListInterface.php b/core/lib/Drupal/Core/TypedData/ListInterface.php
index 4ce6af0..30cb3f0 100644
--- a/core/lib/Drupal/Core/TypedData/ListInterface.php
+++ b/core/lib/Drupal/Core/TypedData/ListInterface.php
@@ -29,4 +29,19 @@
    *   TRUE if the list is empty, FALSE otherwise.
    */
   public function isEmpty();
+
+  /**
+   * Returns the array of list items.
+   *
+   * @return array
+   */
+  public function getArray();
+
+  /**
+   * Sets the array of list items.
+   *
+   * @param array $items
+   *   The array of list items to set.
+   */
+  public function setArray(array $array);
 }
