code: function DeviceInfo(deviceId) {
      // you can't change the deviceId
      Object.defineProperty(this, 'deviceId', {
          enumerable: true,
          value: deviceId,
      });
  
      this.algorithms = [];
      this.keys = {};
      this.verified = DeviceVerification.UNVERIFIED;
      this.known = false;
      this.unsigned = {};
  }
docs: @module crypto/deviceinfo
   
  Information about a user's device
  
  @constructor
  @alias module:crypto/deviceinfo
  
  @property {string} deviceId the ID of this device
  
  @property {string[]} algorithms list of algorithms supported by this device
  
  @property {Object.<string,string>} keys a map from
  &lt;key type&gt;:&lt;id&gt; -> &lt;base64-encoded key&gt;>
  
  @property {module:crypto/deviceinfo.DeviceVerification} verified
  whether the device has been verified/blocked by the user
  
  @property {boolean} known
  whether the user knows of this device's existence (useful when warning
  the user that a user has added new devices)
  
  @property {Object} unsigned  additional data from the homeserver
  
  @param {string} deviceId id of the device