This is a similar to [question 30360391](http://www.stackoverflow.com/questions/30360391). I want to express that the parameter of a function is a plain JS object that can have arbitrary properties (with unknown) names but all properties are objects themselves with fixed properties.

An example: The function is just like this

```
/**
 * @param {Descriptor} desc
 */
function foo( desc ) {
  // ...
}

```

and a typical `desc` looks like

```
desc = {
  unknownEntity1: {
    priority: 5;
    writable: false;
  },
  unknownEntity2: {
    priority: 42;
    writable: true;
  },
  unknownEntity3: {
    priority: 9;
    writable: false;
  }
}

```

I already have

```
/**
 * @typedef {Object} DescriptorEntry
 * @property {number} priority - The priority of the entity
 * @property {boolean} writable - True, if the entity can be modified
 */

```

I still need a `typedef` for `Descriptor` that basically express that Descriptor is an object with arbitrary properties but all of type `DescriptorEntry`. As pseudo-code it would be something like

```
/**
 * @typedef {Object} Descriptor
 * @property {DescriptorEntry} *
 */

```

Of course, the asterisk `*` as a wildcard for "any property" is invalid Jsdoc syntax. But how do I do it correctly?