For the following type definitions:
type One {
id: String!
other: String
}
type Two {
id: String!
other: String
}
union All = One | Two
The type will always come out as __typename: "One"
{
__typename: 'Two',
id: 'twoone',
other: 'other',
}
This happens regardless of what __typename
is set to or any typescript types.