diff --git a/typo3/sysext/backend/Classes/Controller/BackendController.php b/typo3/sysext/backend/Classes/Controller/BackendController.php
index 1dfc65342655918126573044dc9b8349e87b4a17..4ad27830104c0b2ba9112fc67b76cfdba816fd2c 100644
--- a/typo3/sysext/backend/Classes/Controller/BackendController.php
+++ b/typo3/sysext/backend/Classes/Controller/BackendController.php
@@ -155,6 +155,7 @@ class BackendController
         $this->pageRenderer->loadRequireJsModule('TYPO3/CMS/Backend/ContextMenu');
 
         // load the storage API and fill the UC into the PersistentStorage, so no additional AJAX call is needed
+        $this->pageRenderer->loadRequireJsModule('TYPO3/CMS/Backend/Storage');
         $this->pageRenderer->loadRequireJsModule('TYPO3/CMS/Backend/Storage/Persistent', 'function(PersistentStorage) {
             PersistentStorage.load(' . json_encode($this->getBackendUser()->uc) . ');
         }');
diff --git a/typo3/sysext/backend/Resources/Private/TypeScript/Storage.ts b/typo3/sysext/backend/Resources/Private/TypeScript/Storage.ts
index ae329c0ea99d65c1ce3269c4e65fc8d8d7ce0d47..6c8a83f6b708df5f02366283bba30effa426fc03 100644
--- a/typo3/sysext/backend/Resources/Private/TypeScript/Storage.ts
+++ b/typo3/sysext/backend/Resources/Private/TypeScript/Storage.ts
@@ -27,13 +27,71 @@ class Storage {
   public Persistent: any;
 
   constructor() {
+    this.Client = {
+      clear: (): any => {
+        this.logDeprecated('Client', 'clear');
+        Client.clear();
+      },
+      get: (key: string): any => {
+        this.logDeprecated('Client', 'get');
+        return Client.get(key);
+      },
+      isset: (key: string): any => {
+        this.logDeprecated('Client', 'isset');
+        return Client.isset(key);
+      },
+      set: (key: string, value: string): any => {
+        this.logDeprecated('Client', 'set');
+        return Client.set(key, value);
+      },
+      unset: (key: string): any => {
+        this.logDeprecated('Client', 'unset');
+        return Client.unset(key);
+      },
+    };
+    this.Persistent = {
+      addToList: (key: string, value: string): any => {
+        this.logDeprecated('Persistent', 'addToList');
+        return Persistent.addToList(key, value);
+      },
+      clear: (): any => {
+        this.logDeprecated('Persistent', 'clear');
+        Persistent.clear();
+      },
+      get: (key: string): any => {
+        this.logDeprecated('Persistent', 'get');
+        return Persistent.get(key);
+      },
+      isset: (key: string): any => {
+        this.logDeprecated('Persistent', 'isset');
+        return Persistent.isset(key);
+      },
+      load: (data: any): any => {
+        this.logDeprecated('Persistent', 'load');
+        return Persistent.load(data);
+      },
+      removeFromList: (key: string, value: string): any => {
+        this.logDeprecated('Persistent', 'removeFromList');
+        return Persistent.removeFromList(key, value);
+      },
+      set: (key: string, value: string): any => {
+        this.logDeprecated('Persistent', 'set');
+        return Persistent.set(key, value);
+      },
+      unset: (key: string): any => {
+        this.logDeprecated('Persistent', 'unset');
+        return Persistent.unset(key);
+      },
+    };
+  }
+
+  private logDeprecated = (className: string, methodName: string): any => {
     if (console) {
       console.warn(
-        'TYPO3/CMS/Backend/Storage and TYPO3.Storage are deprecated since TYPO3 v9 and will be removed in TYPO3 v10.',
+        'top.TYPO3.Storage.' + className + '.' + methodName + '() is marked as deprecated since TYPO3 v9 and will be '
+        + 'removed in TYPO3 v10.',
       );
     }
-    this.Client = Client;
-    this.Persistent = Persistent;
   }
 }
 
diff --git a/typo3/sysext/backend/Resources/Public/JavaScript/Storage.js b/typo3/sysext/backend/Resources/Public/JavaScript/Storage.js
index bf481179129bfc75bf8bea7199abf012ace9ed21..5c891e02d18bf726c78991a02b3ce307e60acbf2 100644
--- a/typo3/sysext/backend/Resources/Public/JavaScript/Storage.js
+++ b/typo3/sysext/backend/Resources/Public/JavaScript/Storage.js
@@ -22,11 +22,69 @@ define(["require", "exports", "./Storage/Client", "./Storage/Persistent"], funct
      */
     var Storage = (function () {
         function Storage() {
-            if (console) {
-                console.warn('TYPO3/CMS/Backend/Storage and TYPO3.Storage are deprecated since TYPO3 v9 and will be removed in TYPO3 v10.');
-            }
-            this.Client = Client;
-            this.Persistent = Persistent;
+            var _this = this;
+            this.logDeprecated = function (className, methodName) {
+                if (console) {
+                    console.warn('top.TYPO3.Storage.' + className + '.' + methodName + '() is marked as deprecated since TYPO3 v9 and will be '
+                        + 'removed in TYPO3 v10.');
+                }
+            };
+            this.Client = {
+                clear: function () {
+                    _this.logDeprecated('Client', 'clear');
+                    Client.clear();
+                },
+                get: function (key) {
+                    _this.logDeprecated('Client', 'get');
+                    return Client.get(key);
+                },
+                isset: function (key) {
+                    _this.logDeprecated('Client', 'isset');
+                    return Client.isset(key);
+                },
+                set: function (key, value) {
+                    _this.logDeprecated('Client', 'set');
+                    return Client.set(key, value);
+                },
+                unset: function (key) {
+                    _this.logDeprecated('Client', 'unset');
+                    return Client.unset(key);
+                },
+            };
+            this.Persistent = {
+                addToList: function (key, value) {
+                    _this.logDeprecated('Persistent', 'addToList');
+                    return Persistent.addToList(key, value);
+                },
+                clear: function () {
+                    _this.logDeprecated('Persistent', 'clear');
+                    Persistent.clear();
+                },
+                get: function (key) {
+                    _this.logDeprecated('Persistent', 'get');
+                    return Persistent.get(key);
+                },
+                isset: function (key) {
+                    _this.logDeprecated('Persistent', 'isset');
+                    return Persistent.isset(key);
+                },
+                load: function (data) {
+                    _this.logDeprecated('Persistent', 'load');
+                    return Persistent.load(data);
+                },
+                removeFromList: function (key, value) {
+                    _this.logDeprecated('Persistent', 'removeFromList');
+                    return Persistent.removeFromList(key, value);
+                },
+                set: function (key, value) {
+                    _this.logDeprecated('Persistent', 'set');
+                    return Persistent.set(key, value);
+                },
+                unset: function (key) {
+                    _this.logDeprecated('Persistent', 'unset');
+                    return Persistent.unset(key);
+                },
+            };
         }
         return Storage;
     }());