Skip to content

Commit 181b45e

Browse files
committed
further refine incremental result types
continue work with #4313
1 parent 555e2ac commit 181b45e

File tree

1 file changed

+26
-16
lines changed

1 file changed

+26
-16
lines changed

Diff for: src/execution/types.ts

+26-16
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,13 @@ export interface FormattedExecutionResult<
3636

3737
export interface ExperimentalIncrementalExecutionResults<
3838
TInitial = ObjMap<unknown>,
39-
TSubsequent = unknown,
39+
TData = ObjMap<unknown>,
40+
TItems = ReadonlyArray<unknown>,
4041
TExtensions = ObjMap<unknown>,
4142
> {
4243
initialResult: InitialIncrementalExecutionResult<TInitial, TExtensions>;
4344
subsequentResults: AsyncGenerator<
44-
SubsequentIncrementalExecutionResult<TSubsequent, TExtensions>,
45+
SubsequentIncrementalExecutionResult<TData, TItems, TExtensions>,
4546
void,
4647
void
4748
>;
@@ -68,23 +69,27 @@ export interface FormattedInitialIncrementalExecutionResult<
6869
}
6970

7071
export interface SubsequentIncrementalExecutionResult<
71-
TData = unknown,
72+
TData = ObjMap<unknown>,
73+
TItems = ReadonlyArray<unknown>,
7274
TExtensions = ObjMap<unknown>,
7375
> {
7476
pending?: ReadonlyArray<PendingResult>;
75-
incremental?: ReadonlyArray<IncrementalResult<TData, TExtensions>>;
77+
incremental?: ReadonlyArray<IncrementalResult<TData, TItems, TExtensions>>;
7678
completed?: ReadonlyArray<CompletedResult>;
7779
hasNext: boolean;
7880
extensions?: TExtensions;
7981
}
8082

8183
export interface FormattedSubsequentIncrementalExecutionResult<
82-
TData = unknown,
84+
TData = ObjMap<unknown>,
85+
TItems = ReadonlyArray<unknown>,
8386
TExtensions = ObjMap<unknown>,
8487
> {
8588
hasNext: boolean;
8689
pending?: ReadonlyArray<PendingResult>;
87-
incremental?: ReadonlyArray<FormattedIncrementalResult<TData, TExtensions>>;
90+
incremental?: ReadonlyArray<
91+
FormattedIncrementalResult<TData, TItems, TExtensions>
92+
>;
8893
completed?: ReadonlyArray<FormattedCompletedResult>;
8994
extensions?: TExtensions;
9095
}
@@ -114,41 +119,46 @@ export interface FormattedIncrementalDeferResult<
114119
extensions?: TExtensions;
115120
}
116121

117-
interface StreamItemsRecordResult<TData = ReadonlyArray<unknown>> {
122+
interface StreamItemsRecordResult<TItems = ReadonlyArray<unknown>> {
118123
errors?: ReadonlyArray<GraphQLError>;
119-
items: TData;
124+
items: TItems;
120125
}
121126

122127
export interface IncrementalStreamResult<
123-
TData = ReadonlyArray<unknown>,
128+
TItems = ReadonlyArray<unknown>,
124129
TExtensions = ObjMap<unknown>,
125-
> extends StreamItemsRecordResult<TData> {
130+
> extends StreamItemsRecordResult<TItems> {
126131
id: string;
127132
subPath?: ReadonlyArray<string | number>;
128133
extensions?: TExtensions;
129134
}
130135

131136
export interface FormattedIncrementalStreamResult<
132-
TData = Array<unknown>,
137+
TItems = Array<unknown>,
133138
TExtensions = ObjMap<unknown>,
134139
> {
135140
errors?: ReadonlyArray<GraphQLFormattedError>;
136-
items: TData;
141+
items: TItems;
137142
id: string;
138143
subPath?: ReadonlyArray<string | number>;
139144
extensions?: TExtensions;
140145
}
141146

142-
export type IncrementalResult<TData = unknown, TExtensions = ObjMap<unknown>> =
147+
export type IncrementalResult<
148+
TData = ObjMap<unknown>,
149+
TItems = ReadonlyArray<unknown>,
150+
TExtensions = ObjMap<unknown>,
151+
> =
143152
| IncrementalDeferResult<TData, TExtensions>
144-
| IncrementalStreamResult<TData, TExtensions>;
153+
| IncrementalStreamResult<TItems, TExtensions>;
145154

146155
export type FormattedIncrementalResult<
147-
TData = unknown,
156+
TData = ObjMap<unknown>,
157+
TItems = ReadonlyArray<unknown>,
148158
TExtensions = ObjMap<unknown>,
149159
> =
150160
| FormattedIncrementalDeferResult<TData, TExtensions>
151-
| FormattedIncrementalStreamResult<TData, TExtensions>;
161+
| FormattedIncrementalStreamResult<TItems, TExtensions>;
152162

153163
export interface PendingResult {
154164
id: string;

0 commit comments

Comments
 (0)