Skip to content

Instantly share code, notes, and snippets.

@magicmark
Created March 7, 2021 11:44
Show Gist options
  • Save magicmark/16bd0d7fbb987fc7f75b536993bdbaa5 to your computer and use it in GitHub Desktop.
Save magicmark/16bd0d7fbb987fc7f75b536993bdbaa5 to your computer and use it in GitHub Desktop.
export type SchemaCoordinate = {|
+kind: 'SchemaCoordinate',
+coordinate: CoordinateNode,
|};
export type CoordinateNode =
| EnumNode
| ObjectNode
| InputObjectNode
| InterfaceNode;
export type EnumNode = {|
+kind: 'EnumNode',
+name: NameNode,
+member?: EnumMemberNode,
|};
export type EnumMemberNode = {|
+kind: 'EnumMemberNode',
+name: NameNode,
|};
export type ObjectNode = {|
+kind: 'ObjectNode',
+type: TypeName,
|};
export type TypeNameNode = {|
+kind: 'TypeNameNode',
+name: NameNode,
+field?: FieldNameNode,
|};
export type FieldNameNode = {|
+kind: 'FieldNameNode',
+name: NameNode,
+argument?: ArgumentNameNode,
|};
export type ArgumentNameNode = {|
+kind: 'ArgumentNameNode',
+name: NameNode,
|};
export type NameNode = {|
+kind: 'Name',
+value: string,
|};
export type InputObjectNode = {|
+kind: 'InputObjectNode',
+type: TypeName,
|};
export type InterfaceNode = {|
+kind: 'InterfaceNode',
+type: TypeName,
|};
@magicmark
Copy link
Author

magicmark commented Mar 7, 2021

hmm maybe:

-  +type: TypeName,
+  +typeName: TypeName,
-  +argument?: ArgumentNameNode,
+  +argumentName?: ArgumentNameNode,

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment