diff --git a/frontend-js/src/main/js/ServerConnector.js b/frontend-js/src/main/js/ServerConnector.js
index 7c5ee7d128a8a179f7cffd3573276fd889f81241..8dfe29d3a5b1f17a3161a845b11b1021a2cd509c 100644
--- a/frontend-js/src/main/js/ServerConnector.js
+++ b/frontend-js/src/main/js/ServerConnector.js
@@ -2212,6 +2212,11 @@ ServerConnector.getOverlayTypes = function () {
   });
 };
 
+/**
+ *
+ * @param params
+ * @returns {Promise}
+ */
 ServerConnector.getPublications = function (params) {
   var self = this;
   if (params === undefined) {
diff --git a/frontend-js/src/main/js/SessionData.js b/frontend-js/src/main/js/SessionData.js
index d09649faf30412dc8c77f05d7554197d070b50cc..32db59d92b6206e26670e9cc6c6876221292ce8e 100644
--- a/frontend-js/src/main/js/SessionData.js
+++ b/frontend-js/src/main/js/SessionData.js
@@ -206,7 +206,7 @@ SessionData.prototype.getVisibleOverlays = function () {
 
 /**
  *
- * @param {string} value
+ * @param {number[]} value
  */
 SessionData.prototype.setVisibleOverlays = function (value) {
   var key = this.getKey(SessionObjectType.VISIBLE_OVERLAYS);
diff --git a/frontend-js/src/main/js/map/CustomMap.js b/frontend-js/src/main/js/map/CustomMap.js
index 419f45e184381afff816ca69ccad199e3bc87022..def66cc57d2d0aa518d875ce40ab4fa5544a737d 100644
--- a/frontend-js/src/main/js/map/CustomMap.js
+++ b/frontend-js/src/main/js/map/CustomMap.js
@@ -363,7 +363,7 @@ CustomMap.prototype.registerDbOverlay = function (dbOverlay) {
 /**
  * Refresh comment list.
  *
- * @return {PromiseLike} promise that is resolved when comment list is refreshed
+ * @return {Promise} promise that is resolved when comment list is refreshed
  */
 CustomMap.prototype.refreshComments = function () {
   var self = this;
@@ -716,12 +716,12 @@ CustomMap.prototype.layoutContainsOverlays = function (overlayId) {
 /**
  * Renders markers, lines, etc. for elements highlighted in OverlayCollection.
  *
- * @param {boolean} params.fitBounds <code>true</code> if the borders should fit bounds after creating
+ * @param {boolean} [params.fitBounds=false] <code>true</code> if the borders should fit bounds after creating
  *          all elements
  * @param {AbstractDbOverlay} params.overlayCollection to be processed
  *
  * @param params
- * @returns {PromiseLike}
+ * @returns {Promise}
  */
 CustomMap.prototype.renderOverlayCollection = function (params) {
   var self = this;
@@ -1271,7 +1271,7 @@ CustomMap.prototype.getSubmaps = function () {
 };
 
 /**
- * 
+ *
  */
 CustomMap.prototype.destroy = function () {
   var self = this;
diff --git a/frontend-js/src/main/js/map/data/MapModel.js b/frontend-js/src/main/js/map/data/MapModel.js
index 0586050a26ec45b08cf8ad0c2ae677cf777a330a..6824693a367849c36327bb495f1c83144da83024 100644
--- a/frontend-js/src/main/js/map/data/MapModel.js
+++ b/frontend-js/src/main/js/map/data/MapModel.js
@@ -637,7 +637,7 @@ MapModel.prototype.setTileSize = function (tileSize) {
 /**
  *
  * @param {IdentifiedElement} ie
- * @param {boolean} complete
+ * @param {boolean} [complete=false]
  * @returns {Promise}
  */
 MapModel.prototype.getByIdentifiedElement = function (ie, complete) {
diff --git a/frontend-js/src/main/js/map/overlay/AbstractDbOverlay.js b/frontend-js/src/main/js/map/overlay/AbstractDbOverlay.js
index 5f008db463a6dfed580c053d7152b68dcf1f1aba..b5002b82b2213b45d90cc9b0a65ddc6aa422a8dd 100644
--- a/frontend-js/src/main/js/map/overlay/AbstractDbOverlay.js
+++ b/frontend-js/src/main/js/map/overlay/AbstractDbOverlay.js
@@ -389,7 +389,7 @@ AbstractDbOverlay.prototype.getColor = function (colorId) {
 /**
  *
  * @param {number} colorId
- * @param {number} id
+ * @param {number} [id]
  * @returns {string}
  */
 AbstractDbOverlay.prototype.getIcon = function (colorId, id) {
diff --git a/frontend-js/src/test/js/ObjectWithListeners-test.js b/frontend-js/src/test/js/ObjectWithListeners-test.js
index 289444da46760c774c930ab309d7f894ac7b6d9f..e693fab01687d381481781e147ba1b962fe962b0 100644
--- a/frontend-js/src/test/js/ObjectWithListeners-test.js
+++ b/frontend-js/src/test/js/ObjectWithListeners-test.js
@@ -12,7 +12,7 @@ describe('ObjectWithListeners', function() {
   beforeEach(function() {
     logger.flushBuffer();
   });
-  
+
   it("ObjectWithListeners constructor", function() {
     var obj = new ObjectWithListeners();
     assert.ok(obj);
@@ -21,24 +21,26 @@ describe('ObjectWithListeners', function() {
   it("add invalid listener", function() {
     var obj = new ObjectWithListeners();
     obj.registerListenerType("t");
-    var code = function(){obj.addListener("t", "not a function");};
+    var code = function(){// noinspection JSCheckFunctionSignatures
+      obj.addListener("t", "not a function");};
     expect(code).to.throw(/string/);
-    
+
   });
 
   it("add invalid property change listener", function() {
     var obj = new ObjectWithListeners();
     var code = function(){obj.addPropertyChangeListener ("t", function(){});};
     expect(code).to.throw(/Unknown property/);
-    
+
   });
 
   it("add invalid property change listener 2", function() {
     var obj = new ObjectWithListeners();
     obj.registerPropertyType("t");
-    var code = function(){obj.addPropertyChangeListener ("t", "not a function");};
+    var code = function(){// noinspection JSCheckFunctionSignatures
+      obj.addPropertyChangeListener ("t", "not a function");};
     expect(code).to.throw(/string/);
-    
+
   });
 
   it("re-register listener type", function() {
@@ -46,7 +48,7 @@ describe('ObjectWithListeners', function() {
     obj.registerListenerType("t");
     var code = function(){obj.registerListenerType("t");};
     expect(code).to.throw(/already registered/);
-    
+
   });
 
   it("re-register property type", function() {
@@ -54,7 +56,7 @@ describe('ObjectWithListeners', function() {
     obj.registerPropertyType ("t");
     var code = function(){obj.registerPropertyType ("t");};
     expect(code).to.throw(/already registered/);
-    
+
   });
 
   it("remove invalid listener", function() {
@@ -63,7 +65,7 @@ describe('ObjectWithListeners', function() {
     var fun = function(){};
     var code = function(){obj.removeListener(name, fun);};
     expect(code).to.throw(/Unknown listener type/);
-    
+
   });
 
   it("remove invalid listener 2", function() {
@@ -73,7 +75,7 @@ describe('ObjectWithListeners', function() {
     obj.registerListenerType(name, fun);
     var code = function(){obj.removeListener(name, "not a function");};
     expect(code).to.throw(/string/);
-    
+
   });
 
   it("remove invalid listener 3", function() {
@@ -83,7 +85,7 @@ describe('ObjectWithListeners', function() {
     obj.registerListenerType(name, fun);
     obj.removeListener(name, function(){});
     assert.equal(logger.getWarnings().length, 1);
-    
+
   });
 
   it("remove invalid property listener", function() {
@@ -92,7 +94,7 @@ describe('ObjectWithListeners', function() {
     var fun = function(){};
     var code = function(){obj.removePropertyListener (name, fun);};
     expect(code).to.throw(/Unknown property/);
-    
+
   });
 
   it("remove invalid property listener 2", function() {
@@ -101,7 +103,7 @@ describe('ObjectWithListeners', function() {
     obj.registerPropertyType(name);
     var code = function(){obj.removePropertyListener (name, "not a function");};
     expect(code).to.throw(/string/);
-    
+
   });
 
   it("remove invalid property listener 3", function() {
@@ -111,7 +113,7 @@ describe('ObjectWithListeners', function() {
     obj.registerPropertyType(name);
     obj.removePropertyListener (name, fun);
     assert.equal(logger.getWarnings().length, 1);
-    
+
   });
 
   it("call invalid listeners", function() {
@@ -119,14 +121,14 @@ describe('ObjectWithListeners', function() {
     var name = "t";
     var code = function(){obj.callListeners(name);};
     expect(code).to.throw(/Unknown listener/);
-    
+
   });
   it("fire invalid property change listeners", function() {
     var obj = new ObjectWithListeners();
     var name = "t";
     var code = function(){obj.firePropertyChangeListener (name,"old","new");};
     expect(code).to.throw(/Unknown property/);
-    
+
   });
 
   it("ObjectWithListeners property changes", function() {