title: 'Property does not exist on type 'never'
body: <p>This is similar to <a href="https://stackoverflow.com/questions/40796374/property-x-does-not-exist-on-type-never">#40796374</a> but that is around types, while I am using interfaces.</p>
  <p>Given the code below:</p>
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>interface Foo {
    name: string;
  }
  
  function go() {
    let instance: Foo | null = null;
    let mutator = () =&gt; {
     instance = {
       name: 'string'
     };  
    };
  
    mutator();
  
    if (instance == null) {
     console.log('Instance is null or undefined');
    } else {
     console.log(instance.name);
    }
  }</code></pre>
  </div>
  </div>
  </p>
  <p>I have an error saying 'Property 'name' does not exist on type 'never'.</p>
  <p>I don't understand how instance could ever be a 'never'.  Can anyone shed some light on this?</p>