From 1d96beacb44f669afdcb9a0d3d39092f819a8a55 Mon Sep 17 00:00:00 2001 From: Dotan Simha Date: Sun, 16 Aug 2020 12:06:05 +0300 Subject: [PATCH 1/2] reduce changes to minimum --- src/language/ast.d.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/language/ast.d.ts b/src/language/ast.d.ts index 61cb9f4eb5..4d3b01272d 100644 --- a/src/language/ast.d.ts +++ b/src/language/ast.d.ts @@ -209,7 +209,12 @@ export interface NameNode { // Document -export interface DocumentNode { +export interface DocumentNode< + TData = Record, + TVariables = Record +> { + readonly __resultType?: TData; + readonly __variablesType?: TVariables; readonly kind: 'Document'; readonly loc?: Location; readonly definitions: ReadonlyArray; From c46ab737da5fb8ae2a9790c0c08a230bbeae8aeb Mon Sep 17 00:00:00 2001 From: Dotan Simha Date: Sun, 16 Aug 2020 12:07:48 +0300 Subject: [PATCH 2/2] added comments --- src/language/ast.d.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/language/ast.d.ts b/src/language/ast.d.ts index 4d3b01272d..1075c196a4 100644 --- a/src/language/ast.d.ts +++ b/src/language/ast.d.ts @@ -213,8 +213,10 @@ export interface DocumentNode< TData = Record, TVariables = Record > { - readonly __resultType?: TData; - readonly __variablesType?: TVariables; + // __resultType and __variablesType are unused, and defined only to enforce TS structural + // types and make sure they are not being stripped. + readonly __resultType?: TData; + readonly __variablesType?: TVariables; readonly kind: 'Document'; readonly loc?: Location; readonly definitions: ReadonlyArray;