В следующем коде я хотел бы определить форму типа ApplicationSettings
с помощью переменной testSettings
, чтобы внутри IDE функции useSettings
было известно, какие свойства доступны для объекта settings
:
/** @typedef ApplicationSettings */
var testSettings = {
apiService: {},
configuration: {}
};
/**
* @param {ApplicationSettings} settings
*/
function useSettings(settings) {
console.log(settings.apiService); // apiService is not recognized here
console.log(settings.configuration); // same for configuration
}
К сожалению, кажется, что @typedef
в этом случае не является допустимой аннотацией. Можно ли сообщить WebStorm, как должен выглядеть тип ApplicationSettings
, без явного указания всех его свойств в JSDoc?