node.js – How to represent a map or object with key-value pairs in GraphQL?

How can I query for the following object?

{
     result: {
          '1': {
          ^^^ these are dynamic keys, never constant
               id: 'id1',
          },
          '20': {
               id: 'id2',
          },
          '300': {
               id: 'id3',
          },
     }
}

I know that I can define the result object fairly simply, if it wasn’t a key-value pair object.

const ResultQueryType = new GraphQLObjectType({
     name: 'ResultQueryType',
     fields: () => ({
          id: { type: GraphQLString }
     })
})

But this is clearly not what I need. I haven’t encountered such a scenario with GraphQL yet, what can I do here?

Read more here: Source link