title: Apollo can't upload file in Object of class
body: <p>In my project I try to upload files in a multipart request via Graphql.
  The problem is, when I create an object of a class, which contains a File, the file is not uploaded. When it is just an Object without a class it is working.</p>
  <p>This is working:</p>
  <pre class="lang-ts prettyprint-override"><code>const upload = {
     file: new File()
  };
  apollo.mutate({
     mutation,
     variables:{
        fileParam: upload
     }
  });
  </code></pre>
  <p>This is not working:</p>
  <pre class="lang-js prettyprint-override"><code>class FileWrapper{
     constructor(public file: File){}
  }
  const upload = new FileWrapper(new File());
  apollo.mutate({
     mutation,
     variables:{
        fileParam: upload
     }
  });
  </code></pre>
  <p>This is working:</p>
  <pre class="lang-ts prettyprint-override"><code>class FileWrapper{
     constructor(public file: File){}
  }
  const upload = new FileWrapper(new File());
  apollo.mutate({
     mutation,
     variables:{
        fileParam: {...upload}
     }
  });
  </code></pre>
  <p>Packages I am using:</p>
  <pre><code>    &quot;nuxt&quot;: &quot;^2.0.0&quot;,
      &quot;@nuxtjs/apollo&quot;: &quot;^4.0.1-rc.1&quot;,
  </code></pre>
  <p>I replaced the standard HttpLink with createUploadLink like so:</p>
  <pre class="lang-ts prettyprint-override"><code>  return ApolloLink.from([
      mutationTrackerLink(getModule(MutationTrackState, ctx.store), providerName),
      queueLink,
      serializingLink,
      retryLink,
      authLink,
      createUploadLink({
        uri: `${endpoint}/graphql`,
      }),
    ]);
  </code></pre>
  <p>I tried to remove all the other links, but with the same result.</p>