title: AWS-CDK Appsync Codefirst input types
body: <p>To avoid duplication of data structures I wanted to reuse a type definition on an input type like this</p>
  <pre><code>export const DeviceStatus = new ObjectType('DeviceStatus', {
      definition: {
          time: timestamp,
          firmwareVersion: string
      },
  });
  
  export const DeviceStatusInput = new InputType('DeviceStatusInput', {
      definition: {
          tenantId: id_required,
          deviceId: id_required,
          // Reuse of DeviceStatus Field definition
          status: DeviceStatus.attribute()
      }
  });
  </code></pre>
  <p>There is no error since the return type of <code>DeviceStatus.attribute()</code> is fine, and this works for <code>ObjectType</code> inheritance.</p>
  <p>From my perspective this should work, but deploying results in a nasty &quot;Internal Error creating Schema&quot; error.</p>
  <p>Of course I could move the whole definition into an object and reuse it but that seems weird. Is there any good solution on this for the CodeFirst approach</p>