title: Why are arguments handled by type-graphql always coming through as undefined
body: <p>I am seeing some really unusual behaviour in a type-graphql project.</p>
  <p>I've followed the documentation here <a href="https://typegraphql.com/docs/resolvers.html" rel="nofollow noreferrer">https://typegraphql.com/docs/resolvers.html</a> to link some GQL into a JS function, but the object is simply empty when it enters the function. Really not sure why it is doing this.</p>
  <p>Given this type class:</p>
  <pre><code>@ArgsType()
  export class GetFoosArgs implements IGetFoosArgs {
    @Field(() =&gt; Boolean, { nullable: true, defaultValue: false })
    bar?: boolean;
  
    @Field(() =&gt; Int, { nullable: true, defaultValue: 0 })
    baz?: number;
  
    @Field(() =&gt; Int, { nullable: true, defaultValue: 100 })
    buzz?: number;
  }
  </code></pre>
  <p>And this query function:</p>
  <pre><code>@Query(_returns =&gt; [Foo], { name: 'foo' })
  async getFoos(@Args() {
      bar,
      baz,
      buzz
  }: GetFoosArgs): Promise&lt;Foo[]&gt; {
  console.log({
      foo,
      baz,
      buzz,
  });
  }
  </code></pre>
  <p>And this GQL query:</p>
  <pre><code>{
    foos(
      bar:true,
      baz:1,
      buzz:2,
    ) {
      _key
      }
  }
  </code></pre>
  <p>The console dump just shows:</p>
  <pre><code>  {
      bar: undefined,
      baz: undefined,
      buzz: undefined
    }
  </code></pre>
  <p>:-S</p>