System.register([], function (_export, _context) {
  "use strict";

  return {
    setters: [],
    execute: function () {
      const __SystemJSRewritingHack = {};
      _recorder_._src_client_utils_local_storage_js = _recorder_._src_client_utils_local_storage_js || {};
      Object.defineProperty(_recorder_._src_client_utils_local_storage_js, "hasItem", {
        get() {
          return hasItem;
        },

        set(thisIsVererySecretVariableName) {
          _export("hasItem", hasItem = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      Object.defineProperty(_recorder_._src_client_utils_local_storage_js, "saveJSON", {
        get() {
          return saveJSON;
        },

        set(thisIsVererySecretVariableName) {
          _export("saveJSON", saveJSON = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      Object.defineProperty(_recorder_._src_client_utils_local_storage_js, "loadJSON", {
        get() {
          return loadJSON;
        },

        set(thisIsVererySecretVariableName) {
          _export("loadJSON", loadJSON = thisIsVererySecretVariableName);

          return true;
        },

        enumerable: true,
        configurable: true
      });
      function loadJSON(key) {
        const stringValue = this.getItem(key);
        if (stringValue === null) {
          return undefined;
        }
        return JSON.parse(stringValue);
      }

      _export("loadJSON", loadJSON);

      function saveJSON(key, json) {
        const stringValue = JSON.stringify(json, undefined, 2);
        return this.setItem(key, stringValue);
      }

      _export("saveJSON", saveJSON);

      function hasItem(key) {
        return this.getItem(key) !== null;
      }

      _export("hasItem", hasItem);
    }
  };
});