@apollo/federation-internals 2.4.4 → 2.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/Subgraph.d.ts +1 -0
  3. package/dist/Subgraph.d.ts.map +1 -0
  4. package/dist/Subgraph.js +2 -0
  5. package/dist/Subgraph.js.map +1 -0
  6. package/dist/argumentCompositionStrategies.d.ts +34 -0
  7. package/dist/argumentCompositionStrategies.d.ts.map +1 -0
  8. package/dist/argumentCompositionStrategies.js +35 -0
  9. package/dist/argumentCompositionStrategies.js.map +1 -0
  10. package/dist/buildSchema.d.ts +10 -0
  11. package/dist/buildSchema.d.ts.map +1 -0
  12. package/dist/buildSchema.js +362 -0
  13. package/dist/buildSchema.js.map +1 -0
  14. package/dist/coreSpec.d.ts +127 -0
  15. package/dist/coreSpec.d.ts.map +1 -0
  16. package/dist/coreSpec.js +590 -0
  17. package/dist/coreSpec.js.map +1 -0
  18. package/dist/debug.d.ts +15 -0
  19. package/dist/debug.d.ts.map +1 -0
  20. package/dist/debug.js +122 -0
  21. package/dist/debug.js.map +1 -0
  22. package/dist/definitions.d.ts +663 -0
  23. package/dist/definitions.d.ts.map +1 -0
  24. package/dist/definitions.js +2841 -0
  25. package/dist/definitions.js.map +1 -0
  26. package/dist/directiveAndTypeSpecification.d.ts +67 -0
  27. package/dist/directiveAndTypeSpecification.d.ts.map +1 -0
  28. package/dist/directiveAndTypeSpecification.js +271 -0
  29. package/dist/directiveAndTypeSpecification.js.map +1 -0
  30. package/dist/error.d.ts +128 -0
  31. package/dist/error.d.ts.map +1 -0
  32. package/dist/error.js +315 -0
  33. package/dist/error.js.map +1 -0
  34. package/dist/extractSubgraphsFromSupergraph.d.ts +8 -0
  35. package/dist/extractSubgraphsFromSupergraph.d.ts.map +1 -0
  36. package/dist/extractSubgraphsFromSupergraph.js +576 -0
  37. package/dist/extractSubgraphsFromSupergraph.js.map +1 -0
  38. package/dist/federation.d.ts +175 -0
  39. package/dist/federation.d.ts.map +1 -0
  40. package/dist/federation.js +1414 -0
  41. package/dist/federation.js.map +1 -0
  42. package/dist/federationSpec.d.ts +25 -0
  43. package/dist/federationSpec.d.ts.map +1 -0
  44. package/dist/federationSpec.js +125 -0
  45. package/dist/federationSpec.js.map +1 -0
  46. package/dist/genErrorCodeDoc.d.ts +2 -0
  47. package/dist/genErrorCodeDoc.d.ts.map +1 -0
  48. package/dist/genErrorCodeDoc.js +61 -0
  49. package/dist/genErrorCodeDoc.js.map +1 -0
  50. package/dist/graphQLJSSchemaToAST.d.ts +8 -0
  51. package/dist/graphQLJSSchemaToAST.d.ts.map +1 -0
  52. package/dist/graphQLJSSchemaToAST.js +96 -0
  53. package/dist/graphQLJSSchemaToAST.js.map +1 -0
  54. package/dist/inaccessibleSpec.d.ts +18 -0
  55. package/dist/inaccessibleSpec.d.ts.map +1 -0
  56. package/dist/inaccessibleSpec.js +655 -0
  57. package/dist/inaccessibleSpec.js.map +1 -0
  58. package/dist/index.d.ts +24 -0
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/index.js +42 -0
  61. package/dist/index.js.map +1 -0
  62. package/dist/introspection.d.ts +6 -0
  63. package/dist/introspection.d.ts.map +1 -0
  64. package/dist/introspection.js +96 -0
  65. package/dist/introspection.js.map +1 -0
  66. package/dist/joinSpec.d.ts +51 -0
  67. package/dist/joinSpec.d.ts.map +1 -0
  68. package/dist/joinSpec.js +160 -0
  69. package/dist/joinSpec.js.map +1 -0
  70. package/dist/knownCoreFeatures.d.ts +5 -0
  71. package/dist/knownCoreFeatures.d.ts.map +1 -0
  72. package/dist/knownCoreFeatures.js +20 -0
  73. package/dist/knownCoreFeatures.js.map +1 -0
  74. package/dist/operations.d.ts +415 -0
  75. package/dist/operations.d.ts.map +1 -0
  76. package/dist/operations.js +2040 -0
  77. package/dist/operations.js.map +1 -0
  78. package/dist/precompute.d.ts +3 -0
  79. package/dist/precompute.d.ts.map +1 -0
  80. package/dist/precompute.js +54 -0
  81. package/dist/precompute.js.map +1 -0
  82. package/dist/print.d.ts +28 -0
  83. package/dist/print.d.ts.map +1 -0
  84. package/dist/print.js +299 -0
  85. package/dist/print.js.map +1 -0
  86. package/dist/schemaUpgrader.d.ts +121 -0
  87. package/dist/schemaUpgrader.d.ts.map +1 -0
  88. package/dist/schemaUpgrader.js +570 -0
  89. package/dist/schemaUpgrader.js.map +1 -0
  90. package/dist/suggestions.d.ts +3 -0
  91. package/dist/suggestions.d.ts.map +1 -0
  92. package/dist/suggestions.js +44 -0
  93. package/dist/suggestions.js.map +1 -0
  94. package/dist/supergraphs.d.ts +10 -0
  95. package/dist/supergraphs.d.ts.map +1 -0
  96. package/dist/supergraphs.js +76 -0
  97. package/dist/supergraphs.js.map +1 -0
  98. package/dist/tagSpec.d.ts +19 -0
  99. package/dist/tagSpec.d.ts.map +1 -0
  100. package/dist/tagSpec.js +66 -0
  101. package/dist/tagSpec.js.map +1 -0
  102. package/dist/types.d.ts +9 -0
  103. package/dist/types.d.ts.map +1 -0
  104. package/dist/types.js +64 -0
  105. package/dist/types.js.map +1 -0
  106. package/dist/utils.d.ts +64 -0
  107. package/dist/utils.d.ts.map +1 -0
  108. package/dist/utils.js +326 -0
  109. package/dist/utils.js.map +1 -0
  110. package/dist/validate.d.ts +4 -0
  111. package/dist/validate.d.ts.map +1 -0
  112. package/dist/validate.js +239 -0
  113. package/dist/validate.js.map +1 -0
  114. package/dist/validation/KnownTypeNamesInFederationRule.d.ts +4 -0
  115. package/dist/validation/KnownTypeNamesInFederationRule.d.ts.map +1 -0
  116. package/dist/validation/KnownTypeNamesInFederationRule.js +41 -0
  117. package/dist/validation/KnownTypeNamesInFederationRule.js.map +1 -0
  118. package/dist/values.d.ts +23 -0
  119. package/dist/values.d.ts.map +1 -0
  120. package/dist/values.js +580 -0
  121. package/dist/values.js.map +1 -0
  122. package/package.json +1 -1
  123. package/tsconfig.tsbuildinfo +1 -0
@@ -0,0 +1,415 @@
1
+ import { ArgumentNode, DocumentNode, FieldNode, FragmentDefinitionNode, FragmentSpreadNode, InlineFragmentNode, SelectionNode, SelectionSetNode } from "graphql";
2
+ import { Directive, DirectiveTargetElement, FieldDefinition, InterfaceType, ObjectType, Schema, SchemaRootKind, VariableCollector, VariableDefinitions, CompositeType, DeferDirectiveArgs, Variable, Type, Variables } from "./definitions";
3
+ import { SetMultiMap } from "./utils";
4
+ declare abstract class AbstractOperationElement<T extends AbstractOperationElement<T>> extends DirectiveTargetElement<T> {
5
+ private attachements?;
6
+ constructor(schema: Schema, directives?: readonly Directive<any>[]);
7
+ collectVariables(collector: VariableCollector): void;
8
+ abstract key(): string;
9
+ abstract asPathElement(): string | undefined;
10
+ abstract rebaseOn(parentType: CompositeType): T;
11
+ abstract withUpdatedDirectives(newDirectives: readonly Directive<any>[]): T;
12
+ protected abstract collectVariablesInElement(collector: VariableCollector): void;
13
+ addAttachement(key: string, value: string): void;
14
+ getAttachement(key: string): string | undefined;
15
+ protected copyAttachementsTo(elt: AbstractOperationElement<any>): void;
16
+ }
17
+ export declare class Field<TArgs extends {
18
+ [key: string]: any;
19
+ } = {
20
+ [key: string]: any;
21
+ }> extends AbstractOperationElement<Field<TArgs>> {
22
+ readonly definition: FieldDefinition<CompositeType>;
23
+ private readonly args?;
24
+ readonly alias?: string | undefined;
25
+ readonly kind: "Field";
26
+ constructor(definition: FieldDefinition<CompositeType>, args?: TArgs | undefined, directives?: readonly Directive<any>[], alias?: string | undefined);
27
+ protected collectVariablesInElement(collector: VariableCollector): void;
28
+ get name(): string;
29
+ argumentValue(name: string): any;
30
+ responseName(): string;
31
+ key(): string;
32
+ asPathElement(): string;
33
+ get parentType(): CompositeType;
34
+ isLeafField(): boolean;
35
+ withUpdatedDefinition(newDefinition: FieldDefinition<any>): Field<TArgs>;
36
+ withUpdatedAlias(newAlias: string | undefined): Field<TArgs>;
37
+ withUpdatedDirectives(newDirectives: readonly Directive<any>[]): Field<TArgs>;
38
+ argumentsToNodes(): ArgumentNode[] | undefined;
39
+ appliesTo(type: ObjectType | InterfaceType): boolean;
40
+ selects(definition: FieldDefinition<any>, assumeValid?: boolean, variableDefinitions?: VariableDefinitions): boolean;
41
+ validate(variableDefinitions: VariableDefinitions): void;
42
+ rebaseOn(parentType: CompositeType): Field<TArgs>;
43
+ private canRebaseOn;
44
+ typeIfAddedTo(parentType: CompositeType): Type | undefined;
45
+ hasDefer(): boolean;
46
+ deferDirectiveArgs(): undefined;
47
+ withoutDefer(): Field<TArgs>;
48
+ equals(that: OperationElement): boolean;
49
+ toString(): string;
50
+ }
51
+ export declare class FragmentElement extends AbstractOperationElement<FragmentElement> {
52
+ private readonly sourceType;
53
+ readonly kind: "FragmentElement";
54
+ readonly typeCondition?: CompositeType;
55
+ private computedKey;
56
+ constructor(sourceType: CompositeType, typeCondition?: string | CompositeType, directives?: readonly Directive<any>[]);
57
+ protected collectVariablesInElement(_: VariableCollector): void;
58
+ get parentType(): CompositeType;
59
+ key(): string;
60
+ castedType(): CompositeType;
61
+ asPathElement(): string | undefined;
62
+ withUpdatedSourceType(newSourceType: CompositeType): FragmentElement;
63
+ withUpdatedCondition(newCondition: CompositeType | undefined): FragmentElement;
64
+ withUpdatedTypes(newSourceType: CompositeType, newCondition: CompositeType | undefined): FragmentElement;
65
+ withUpdatedDirectives(newDirectives: Directive<OperationElement>[]): FragmentElement;
66
+ rebaseOn(parentType: CompositeType): FragmentElement;
67
+ private canRebaseOn;
68
+ castedTypeIfAddedTo(parentType: CompositeType): CompositeType | undefined;
69
+ hasDefer(): boolean;
70
+ hasStream(): boolean;
71
+ deferDirectiveArgs(): DeferDirectiveArgs | undefined;
72
+ withoutDefer(): FragmentElement | undefined;
73
+ withNormalizedDefer(normalizer: DeferNormalizer): FragmentElement | undefined;
74
+ equals(that: OperationElement): boolean;
75
+ toString(): string;
76
+ }
77
+ export type OperationElement = Field<any> | FragmentElement;
78
+ export type OperationPath = OperationElement[];
79
+ export declare function operationPathToStringPath(path: OperationPath): string[];
80
+ export declare function sameOperationPaths(p1: OperationPath, p2: OperationPath): boolean;
81
+ export declare function conditionalDirectivesInOperationPath(path: OperationPath): Directive<any, any>[];
82
+ export declare function concatOperationPaths(head: OperationPath, tail: OperationPath): OperationPath;
83
+ export type RootOperationPath = {
84
+ rootKind: SchemaRootKind;
85
+ path: OperationPath;
86
+ };
87
+ export declare class Operation {
88
+ readonly schema: Schema;
89
+ readonly rootKind: SchemaRootKind;
90
+ readonly selectionSet: SelectionSet;
91
+ readonly variableDefinitions: VariableDefinitions;
92
+ readonly name?: string | undefined;
93
+ constructor(schema: Schema, rootKind: SchemaRootKind, selectionSet: SelectionSet, variableDefinitions: VariableDefinitions, name?: string | undefined);
94
+ optimize(fragments?: NamedFragments, minUsagesToOptimize?: number): Operation;
95
+ expandAllFragments(): Operation;
96
+ trimUnsatisfiableBranches(): Operation;
97
+ withoutDefer(labelsToRemove?: Set<string>): Operation;
98
+ withNormalizedDefer(): {
99
+ operation: Operation;
100
+ hasDefers: boolean;
101
+ assignedDeferLabels: Set<string>;
102
+ deferConditions: SetMultiMap<string, string>;
103
+ };
104
+ collectDefaultedVariableValues(): Record<string, any>;
105
+ toString(expandFragments?: boolean, prettyPrint?: boolean): string;
106
+ }
107
+ export declare class NamedFragmentDefinition extends DirectiveTargetElement<NamedFragmentDefinition> {
108
+ readonly name: string;
109
+ readonly typeCondition: CompositeType;
110
+ private _selectionSet;
111
+ private readonly selectionSetsAtTypesCache;
112
+ constructor(schema: Schema, name: string, typeCondition: CompositeType, directives?: Directive<NamedFragmentDefinition>[]);
113
+ setSelectionSet(selectionSet: SelectionSet): NamedFragmentDefinition;
114
+ get selectionSet(): SelectionSet;
115
+ withUpdatedSelectionSet(newSelectionSet: SelectionSet): NamedFragmentDefinition;
116
+ collectUsedFragmentNames(collector: Map<string, number>): void;
117
+ toFragmentDefinitionNode(): FragmentDefinitionNode;
118
+ canApplyAtType(type: CompositeType): boolean;
119
+ selectionSetAtType(type: CompositeType): SelectionSet;
120
+ toString(indent?: string): string;
121
+ }
122
+ export declare class NamedFragments {
123
+ private readonly fragments;
124
+ isEmpty(): boolean;
125
+ names(): readonly string[];
126
+ add(fragment: NamedFragmentDefinition): void;
127
+ addIfNotExist(fragment: NamedFragmentDefinition): void;
128
+ maybeApplyingAtType(type: CompositeType): NamedFragmentDefinition[];
129
+ without(names: string[]): NamedFragments | undefined;
130
+ get(name: string): NamedFragmentDefinition | undefined;
131
+ has(name: string): boolean;
132
+ definitions(): readonly NamedFragmentDefinition[];
133
+ map(mapper: (def: NamedFragmentDefinition) => NamedFragmentDefinition): NamedFragments;
134
+ mapToExpandedSelectionSets(mapper: (selectionSet: SelectionSet) => SelectionSet | undefined, recreateFct?: (frag: NamedFragmentDefinition, newSelectionSet: SelectionSet) => NamedFragmentDefinition): NamedFragments | undefined;
135
+ rebaseOn(schema: Schema): NamedFragments | undefined;
136
+ validate(variableDefinitions: VariableDefinitions): void;
137
+ toFragmentDefinitionNodes(): FragmentDefinitionNode[];
138
+ toString(indent?: string): string;
139
+ }
140
+ declare class DeferNormalizer {
141
+ private index;
142
+ readonly assignedLabels: Set<string>;
143
+ readonly deferConditions: SetMultiMap<string, string>;
144
+ private readonly usedLabels;
145
+ init(selectionSet: SelectionSet): {
146
+ hasDefers: boolean;
147
+ hasNonLabelledOrConditionalDefers: boolean;
148
+ };
149
+ private nextLabel;
150
+ newLabel(): string;
151
+ registerCondition(label: string, condition: Variable): void;
152
+ }
153
+ export declare class SelectionSet {
154
+ readonly parentType: CompositeType;
155
+ readonly fragments?: NamedFragments | undefined;
156
+ private readonly _keyedSelections;
157
+ private readonly _selections;
158
+ constructor(parentType: CompositeType, keyedSelections?: Map<string, Selection>, fragments?: NamedFragments | undefined);
159
+ selectionsInReverseOrder(): readonly Selection[];
160
+ selections(): readonly Selection[];
161
+ hasTopLevelTypenameField(): boolean;
162
+ fieldsInSet(): {
163
+ path: string[];
164
+ field: FieldSelection;
165
+ }[];
166
+ usedVariables(): Variables;
167
+ collectVariables(collector: VariableCollector): void;
168
+ collectUsedFragmentNames(collector: Map<string, number>): void;
169
+ optimize(fragments?: NamedFragments): SelectionSet;
170
+ optimizeSelections(fragments: NamedFragments): SelectionSet;
171
+ expandAllFragments(): SelectionSet;
172
+ expandFragments(names: string[], updatedFragments: NamedFragments | undefined): SelectionSet;
173
+ trimUnsatisfiableBranches(parentType: CompositeType, options?: {
174
+ recursive?: boolean;
175
+ }): SelectionSet;
176
+ lazyMap(mapper: (selection: Selection) => Selection | readonly Selection[] | SelectionSet | undefined, options?: {
177
+ fragments?: NamedFragments | null;
178
+ parentType?: CompositeType;
179
+ }): SelectionSet;
180
+ private withUpdatedFragments;
181
+ withoutDefer(labelsToRemove?: Set<string>): SelectionSet;
182
+ withNormalizedDefer(normalizer: DeferNormalizer): SelectionSet;
183
+ hasDefer(): boolean;
184
+ filter(predicate: (selection: Selection) => boolean): SelectionSet;
185
+ withoutEmptyBranches(): SelectionSet | undefined;
186
+ rebaseOn(parentType: CompositeType): SelectionSet;
187
+ equals(that: SelectionSet): boolean;
188
+ private triviallyNestedSelectionsForKey;
189
+ private mergeSameKeySelections;
190
+ contains(that: SelectionSet): boolean;
191
+ diffWithNamedFragmentIfContained(candidate: NamedFragmentDefinition, parentType: CompositeType): {
192
+ contains: boolean;
193
+ diff?: SelectionSet;
194
+ };
195
+ minus(that: SelectionSet): SelectionSet;
196
+ canRebaseOn(parentTypeToTest: CompositeType): boolean;
197
+ validate(variableDefinitions: VariableDefinitions): void;
198
+ isEmpty(): boolean;
199
+ toSelectionSetNode(): SelectionSetNode;
200
+ private selectionsInPrintOrder;
201
+ toOperationPaths(): OperationPath[];
202
+ private toOperationPathsInternal;
203
+ forEachElement(callback: (elt: OperationElement) => void): void;
204
+ some(predicate: (elt: OperationElement) => boolean): boolean;
205
+ toOperationString(rootKind: SchemaRootKind, variableDefinitions: VariableDefinitions, operationName?: string, expandFragments?: boolean, prettyPrint?: boolean): string;
206
+ toString(expandFragments?: boolean, includeExternalBrackets?: boolean, indent?: string): string;
207
+ }
208
+ export declare class SelectionSetUpdates {
209
+ private readonly keyedUpdates;
210
+ isEmpty(): boolean;
211
+ add(selections: Selection | SelectionSet | readonly Selection[]): SelectionSetUpdates;
212
+ addAtPath(path: OperationPath, selections?: Selection | SelectionSet | readonly Selection[]): SelectionSetUpdates;
213
+ clone(): SelectionSetUpdates;
214
+ clear(): void;
215
+ toSelectionSet(parentType: CompositeType, fragments?: NamedFragments): SelectionSet;
216
+ }
217
+ export declare class MutableSelectionSet<TMemoizedValue extends {
218
+ [key: string]: any;
219
+ } = {}> {
220
+ readonly parentType: CompositeType;
221
+ private readonly _updates;
222
+ private readonly memoizer;
223
+ private computed;
224
+ private _memoized;
225
+ private constructor();
226
+ static empty(parentType: CompositeType): MutableSelectionSet;
227
+ static emptyWithMemoized<TMemoizedValue extends {
228
+ [key: string]: any;
229
+ }>(parentType: CompositeType, memoizer: (s: SelectionSet) => TMemoizedValue): MutableSelectionSet<TMemoizedValue>;
230
+ static of(selectionSet: SelectionSet): MutableSelectionSet;
231
+ static ofWithMemoized<TMemoizedValue extends {
232
+ [key: string]: any;
233
+ }>(selectionSet: SelectionSet, memoizer: (s: SelectionSet) => TMemoizedValue): MutableSelectionSet<TMemoizedValue>;
234
+ isEmpty(): boolean;
235
+ get(): SelectionSet;
236
+ updates(): SelectionSetUpdates;
237
+ clone(): MutableSelectionSet<TMemoizedValue>;
238
+ rebaseOn(parentType: CompositeType): MutableSelectionSet<TMemoizedValue>;
239
+ memoized(): TMemoizedValue;
240
+ toString(): string;
241
+ }
242
+ export declare function allFieldDefinitionsInSelectionSet(selection: SelectionSet): FieldDefinition<CompositeType>[];
243
+ export declare function selectionSetOf(parentType: CompositeType, selection: Selection, fragments?: NamedFragments): SelectionSet;
244
+ export declare function selectionSetOfElement(element: OperationElement, subSelection?: SelectionSet, fragments?: NamedFragments): SelectionSet;
245
+ export declare function selectionOfElement(element: OperationElement, subSelection?: SelectionSet): Selection;
246
+ export type Selection = FieldSelection | FragmentSelection;
247
+ declare abstract class AbstractSelection<TElement extends OperationElement, TIsLeaf extends undefined | never, TOwnType extends AbstractSelection<TElement, TIsLeaf, TOwnType>> {
248
+ readonly element: TElement;
249
+ constructor(element: TElement);
250
+ abstract get selectionSet(): SelectionSet | TIsLeaf;
251
+ protected abstract us(): TOwnType;
252
+ abstract key(): string;
253
+ abstract optimize(fragments: NamedFragments): Selection;
254
+ abstract toSelectionNode(): SelectionNode;
255
+ abstract validate(variableDefinitions: VariableDefinitions): void;
256
+ abstract rebaseOn(parentType: CompositeType): TOwnType;
257
+ get parentType(): CompositeType;
258
+ collectVariables(collector: VariableCollector): void;
259
+ collectUsedFragmentNames(collector: Map<string, number>): void;
260
+ namedFragments(): NamedFragments | undefined;
261
+ abstract withUpdatedComponents(element: TElement, selectionSet: SelectionSet | TIsLeaf): TOwnType;
262
+ withUpdatedSelectionSet(selectionSet: SelectionSet | TIsLeaf): TOwnType;
263
+ withUpdatedElement(element: TElement): TOwnType;
264
+ mapToSelectionSet(mapper: (s: SelectionSet) => SelectionSet): TOwnType;
265
+ abstract withoutDefer(labelsToRemove?: Set<string>): TOwnType | SelectionSet;
266
+ abstract withNormalizedDefer(normalizer: DeferNormalizer): TOwnType | SelectionSet;
267
+ abstract hasDefer(): boolean;
268
+ abstract expandAllFragments(): TOwnType | readonly Selection[];
269
+ abstract expandFragments(names: string[], updatedFragments: NamedFragments | undefined): TOwnType | readonly Selection[];
270
+ abstract trimUnsatisfiableBranches(parentType: CompositeType, options?: {
271
+ recursive?: boolean;
272
+ }): TOwnType | SelectionSet | undefined;
273
+ minus(that: Selection): TOwnType | undefined;
274
+ protected tryOptimizeSubselectionOnce(_: {
275
+ parentType: CompositeType;
276
+ subSelection: SelectionSet;
277
+ candidates: NamedFragmentDefinition[];
278
+ fragments: NamedFragments;
279
+ }): {
280
+ spread?: FragmentSpreadSelection;
281
+ optimizedSelection?: SelectionSet;
282
+ hasDiff?: boolean;
283
+ };
284
+ protected tryOptimizeSubselectionWithFragments({ parentType, subSelection, fragments, fragmentFilter, }: {
285
+ parentType: CompositeType;
286
+ subSelection: SelectionSet;
287
+ fragments: NamedFragments;
288
+ fragmentFilter?: (f: NamedFragmentDefinition) => boolean;
289
+ }): SelectionSet | FragmentSpreadSelection;
290
+ }
291
+ export declare class FieldSelection extends AbstractSelection<Field<any>, undefined, FieldSelection> {
292
+ private readonly _selectionSet?;
293
+ readonly kind: "FieldSelection";
294
+ constructor(field: Field<any>, _selectionSet?: SelectionSet | undefined);
295
+ get selectionSet(): SelectionSet | undefined;
296
+ protected us(): FieldSelection;
297
+ withUpdatedComponents(field: Field<any>, selectionSet: SelectionSet | undefined): FieldSelection;
298
+ key(): string;
299
+ optimize(fragments: NamedFragments): Selection;
300
+ protected tryOptimizeSubselectionOnce({ parentType, subSelection, candidates, fragments, }: {
301
+ parentType: CompositeType;
302
+ subSelection: SelectionSet;
303
+ candidates: NamedFragmentDefinition[];
304
+ fragments: NamedFragments;
305
+ }): {
306
+ spread?: FragmentSpreadSelection;
307
+ optimizedSelection?: SelectionSet;
308
+ hasDiff?: boolean;
309
+ };
310
+ filter(predicate: (selection: Selection) => boolean): FieldSelection | undefined;
311
+ validate(variableDefinitions: VariableDefinitions): void;
312
+ rebaseOn(parentType: CompositeType): FieldSelection;
313
+ canAddTo(parentType: CompositeType): boolean;
314
+ toSelectionNode(): FieldNode;
315
+ withoutDefer(labelsToRemove?: Set<string>): FieldSelection;
316
+ withNormalizedDefer(normalizer: DeferNormalizer): FieldSelection;
317
+ hasDefer(): boolean;
318
+ expandAllFragments(): FieldSelection;
319
+ trimUnsatisfiableBranches(_: CompositeType, options?: {
320
+ recursive?: boolean;
321
+ }): FieldSelection;
322
+ expandFragments(names: string[], updatedFragments: NamedFragments | undefined): FieldSelection;
323
+ equals(that: Selection): boolean;
324
+ contains(that: Selection): boolean;
325
+ isUnecessaryInlineFragment(_: CompositeType): this is InlineFragmentSelection;
326
+ toString(expandFragments?: boolean, indent?: string): string;
327
+ }
328
+ export declare abstract class FragmentSelection extends AbstractSelection<FragmentElement, never, FragmentSelection> {
329
+ readonly kind: "FragmentSelection";
330
+ abstract canAddTo(parentType: CompositeType): boolean;
331
+ protected us(): FragmentSelection;
332
+ protected validateDeferAndStream(): void;
333
+ filter(predicate: (selection: Selection) => boolean): FragmentSelection | undefined;
334
+ hasDefer(): boolean;
335
+ abstract equals(that: Selection): boolean;
336
+ abstract contains(that: Selection): boolean;
337
+ isUnecessaryInlineFragment(parentType: CompositeType): boolean;
338
+ }
339
+ declare class InlineFragmentSelection extends FragmentSelection {
340
+ private readonly _selectionSet;
341
+ constructor(fragment: FragmentElement, _selectionSet: SelectionSet);
342
+ get selectionSet(): SelectionSet;
343
+ key(): string;
344
+ withUpdatedComponents(fragment: FragmentElement, selectionSet: SelectionSet): InlineFragmentSelection;
345
+ validate(variableDefinitions: VariableDefinitions): void;
346
+ rebaseOn(parentType: CompositeType): FragmentSelection;
347
+ canAddTo(parentType: CompositeType): boolean;
348
+ toSelectionNode(): InlineFragmentNode;
349
+ optimize(fragments: NamedFragments): FragmentSelection;
350
+ protected tryOptimizeSubselectionOnce({ parentType, subSelection, candidates, fragments, }: {
351
+ parentType: CompositeType;
352
+ subSelection: SelectionSet;
353
+ candidates: NamedFragmentDefinition[];
354
+ fragments: NamedFragments;
355
+ }): {
356
+ spread?: FragmentSpreadSelection;
357
+ optimizedSelection?: SelectionSet;
358
+ hasDiff?: boolean;
359
+ };
360
+ withoutDefer(labelsToRemove?: Set<string>): InlineFragmentSelection | SelectionSet;
361
+ withNormalizedDefer(normalizer: DeferNormalizer): InlineFragmentSelection | SelectionSet;
362
+ trimUnsatisfiableBranches(currentType: CompositeType, options?: {
363
+ recursive?: boolean;
364
+ }): FragmentSelection | SelectionSet | undefined;
365
+ expandAllFragments(): FragmentSelection;
366
+ expandFragments(names: string[], updatedFragments: NamedFragments | undefined): FragmentSelection;
367
+ equals(that: Selection): boolean;
368
+ contains(that: Selection): boolean;
369
+ toString(expandFragments?: boolean, indent?: string): string;
370
+ }
371
+ declare class FragmentSpreadSelection extends FragmentSelection {
372
+ private readonly fragments;
373
+ readonly namedFragment: NamedFragmentDefinition;
374
+ private readonly spreadDirectives;
375
+ private computedKey;
376
+ constructor(sourceType: CompositeType, fragments: NamedFragments, namedFragment: NamedFragmentDefinition, spreadDirectives: readonly Directive<any>[]);
377
+ get selectionSet(): SelectionSet;
378
+ key(): string;
379
+ withUpdatedComponents(_fragment: FragmentElement, _selectionSet: SelectionSet): InlineFragmentSelection;
380
+ trimUnsatisfiableBranches(_: CompositeType): FragmentSelection;
381
+ namedFragments(): NamedFragments | undefined;
382
+ validate(): void;
383
+ toSelectionNode(): FragmentSpreadNode;
384
+ optimize(_: NamedFragments): FragmentSelection;
385
+ rebaseOn(_parentType: CompositeType): FragmentSelection;
386
+ canAddTo(_: CompositeType): boolean;
387
+ expandAllFragments(): FragmentSelection | readonly Selection[];
388
+ expandFragments(names: string[], updatedFragments: NamedFragments | undefined): FragmentSelection | readonly Selection[];
389
+ collectUsedFragmentNames(collector: Map<string, number>): void;
390
+ withoutDefer(_labelsToRemove?: Set<string>): FragmentSpreadSelection;
391
+ withNormalizedDefer(_normalizer: DeferNormalizer): FragmentSpreadSelection;
392
+ minus(that: Selection): undefined;
393
+ equals(that: Selection): boolean;
394
+ contains(that: Selection): boolean;
395
+ toString(expandFragments?: boolean, indent?: string): string;
396
+ }
397
+ export declare function operationFromDocument(schema: Schema, document: DocumentNode, options?: {
398
+ operationName?: string;
399
+ validate?: boolean;
400
+ }): Operation;
401
+ export declare function parseOperation(schema: Schema, operation: string, options?: {
402
+ operationName?: string;
403
+ validate?: boolean;
404
+ }): Operation;
405
+ export declare function parseSelectionSet({ parentType, source, variableDefinitions, fragments, fieldAccessor, validate, }: {
406
+ parentType: CompositeType;
407
+ source: string | SelectionSetNode;
408
+ variableDefinitions?: VariableDefinitions;
409
+ fragments?: NamedFragments;
410
+ fieldAccessor?: (type: CompositeType, fieldName: string) => (FieldDefinition<any> | undefined);
411
+ validate?: boolean;
412
+ }): SelectionSet;
413
+ export declare function operationToDocument(operation: Operation): DocumentNode;
414
+ export {};
415
+ //# sourceMappingURL=operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../src/operations.ts"],"names":[],"mappings":"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"}