title: What does -? mean in TypeScript?
body: <p>I came across this line in the <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/blob/14d0a6329aaf71eaa43e6d87e43e6ec74ea17c1c/types/prop-types/index.d.ts#L27" rel="noreferrer">type definitions for <code>prop-types</code></a>:</p>
  
  <pre class="lang-ts prettyprint-override"><code>export type ValidationMap&lt;T&gt; = { [K in keyof T]-?: Validator&lt;T[K]&gt; };
  </code></pre>
  
  <p>Without <code>-</code> it would be a pretty standard partial <a href="https://www.typescriptlang.org/docs/handbook/advanced-types.html#mapped-types" rel="noreferrer">mapped type</a>, but I can't find anywhere in the docs where it talks about <code>-?</code>.</p>
  
  <p>Can anyone explain what <code>-?</code> means?</p>