title: Vue2 class based data property is not reactive
body: <p>I was using typescript in a vue2 class based components. sampleData prop is not reactive in a component while using a custom type KeyValuePair.</p>
  <pre><code>export type KeyValuePair&lt;T&gt; = {
    [key in string | number]: T;
  };
  
  &lt;template&gt;
  &lt;div&gt;
  &lt;!-- remains empty even after sampleData is updated ! --&gt;
   {{ sampleData }} 
  &lt;/div&gt; 
  &lt;template&gt;
  
  &lt;script&gt;
  @Component()
  export default class Sample extends Vue {
  
  sampleData: KeyValuePair&lt;string&gt; = {}; 
  
  //assume it gets called somehow
  sampleMethod() {
     this.sampleData['0'] = 'sample data';
    }
  }
  &lt;/script&gt;
  </code></pre>
  <p>Also tried to access sampleData prop from a getter but still not working.
  Any solutions or suggestions might be helpful!</p>