Please, explain to me the best way to describe this module:
/**
* Common util methods
* @module Utils
*/
var Utils = (/** @lends module:Utils */
function () {
/**
* Some default value
* @constant
* @public
* @static
* @type {string}
*/
var staticConstantField = "Some value";
//export to public access
var exports = {
staticConstantField: staticConstantField,
getUrlArgs: getUrlArgs,
isJSON: isJSON
};
return exports;
/**
* Return url arguments as associate array
* @public
* @static
* @returns {Array} - url args
*/
function getUrlArgs() {
return [];
}
/**
* Validate json
* @public
* @static
* @param {string} json - json as string to validate
* @returns {boolean} - is json valid
*/
function isJSON(json) {
return true;
}
/**
* Some private method
* @private
* @static
* @param {string} json - json to parse
* @returns {object} - parsed object
*/
function parseJson(json) {
return {};
}
})();
In this example my @public and @static annotation are ignored, all @public methods marks as "inner", @private methods marks as "private, inner", return statement is ignored. In generated docs I don't see what methods I can use as api ('exports' object in my code) and if I return
var exports = {
anotherFieldName: staticConstantField,
anotherGgetUrlArgsName: getUrlArgs,
anotherIsJSONName: isJSON
};
this API would not show up in docs.
Generated documentation: