I have some code that returns a promise object, e.g. using Q library for NodeJS.
var Q = require(\'q\');
/**
* @returns
Even if they don't exist in Javascript, I found that JSdoc understands "generic types".
So you can define your custom types and then use /* @return Promise
. The following result in a nice TokenConsume(token) → {Promise.Token
type in the doc.
/**
* @typedef Token
* @property {bool} valid True if the token is valid.
* @property {string} id The user id bound to the token.
*/
/**
* Consume a token
* @param {string} token [description]
* @return {Promise} A promise to the token.
*/
TokenConsume = function (string) {
// bla bla
}
It even works with /* @return Promise
or /* @return Promise
.