title: TypeScript - what do square brackets in property name mean?
body: <p>I saw this TypeScript code somewhere. It compiles without any issues:</p>
  
  <pre><code>const eventName = entityName + commandName;
  pubsub.publish(triggerName, { [eventName]: response });
  </code></pre>
  
  <p>I assumes it dynamically creates an object literal with property name called eventName. Is this assumption correct? Where in the TypeScript docs is this feature described?</p>