A cursor can be defined as a pointer that is generally an ID representing a specific location in a list. GraphQL uses the concept of connections for this purpose.
In the query, the subtree is the connection. It contains the following:
- edges: contains a list of SubtreeEdge types.
- node: the object containing information about an object, which would be an item in this case.
- cursor: a string specifying the location of an item in the list.
- pageInfo: this contains fields such as hasNextPage, hasPreviousPage, endCursor, startCursor, and totalNodes.