stellate 1.30.0 → 1.31.0

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.
@@ -0,0 +1,4411 @@
1
+ interface Logger {
2
+ debug(message?: any): void;
3
+ info(message?: any): void;
4
+ warn(message?: any): void;
5
+ error(message?: any): void;
6
+ }
7
+
8
+ /** Conveniently represents flow's "Maybe" type https://flow.org/en/docs/types/maybe/ */
9
+ declare type Maybe<T> = null | undefined | T;
10
+
11
+ interface Location$1 {
12
+ line: number;
13
+ column: number;
14
+ }
15
+ /**
16
+ * A representation of source input to GraphQL. The `name` and `locationOffset` parameters are
17
+ * optional, but they are useful for clients who store GraphQL documents in source files.
18
+ * For example, if the GraphQL input starts at line 40 in a file named `Foo.graphql`, it might
19
+ * be useful for `name` to be `"Foo.graphql"` and location to be `{ line: 40, column: 1 }`.
20
+ * The `line` and `column` properties in `locationOffset` are 1-indexed.
21
+ */
22
+ declare class Source {
23
+ body: string;
24
+ name: string;
25
+ locationOffset: Location$1;
26
+ constructor(body: string, name?: string, locationOffset?: Location$1);
27
+ get [Symbol.toStringTag](): string;
28
+ }
29
+
30
+ interface ObjMap$1<T> {
31
+ [key: string]: T;
32
+ }
33
+
34
+ interface Path {
35
+ readonly prev: Path | undefined;
36
+ readonly key: string | number;
37
+ readonly typename: string | undefined;
38
+ }
39
+
40
+ declare type PromiseOrValue<T> = Promise<T> | T;
41
+
42
+ /**
43
+ * The set of allowed kind values for AST nodes.
44
+ */
45
+ declare enum Kind {
46
+ /** Name */
47
+ NAME = 'Name',
48
+ /** Document */
49
+ DOCUMENT = 'Document',
50
+ OPERATION_DEFINITION = 'OperationDefinition',
51
+ VARIABLE_DEFINITION = 'VariableDefinition',
52
+ SELECTION_SET = 'SelectionSet',
53
+ FIELD = 'Field',
54
+ ARGUMENT = 'Argument',
55
+ /** Fragments */
56
+ FRAGMENT_SPREAD = 'FragmentSpread',
57
+ INLINE_FRAGMENT = 'InlineFragment',
58
+ FRAGMENT_DEFINITION = 'FragmentDefinition',
59
+ /** Values */
60
+ VARIABLE = 'Variable',
61
+ INT = 'IntValue',
62
+ FLOAT = 'FloatValue',
63
+ STRING = 'StringValue',
64
+ BOOLEAN = 'BooleanValue',
65
+ NULL = 'NullValue',
66
+ ENUM = 'EnumValue',
67
+ LIST = 'ListValue',
68
+ OBJECT = 'ObjectValue',
69
+ OBJECT_FIELD = 'ObjectField',
70
+ /** Directives */
71
+ DIRECTIVE = 'Directive',
72
+ /** Types */
73
+ NAMED_TYPE = 'NamedType',
74
+ LIST_TYPE = 'ListType',
75
+ NON_NULL_TYPE = 'NonNullType',
76
+ /** Type System Definitions */
77
+ SCHEMA_DEFINITION = 'SchemaDefinition',
78
+ OPERATION_TYPE_DEFINITION = 'OperationTypeDefinition',
79
+ /** Type Definitions */
80
+ SCALAR_TYPE_DEFINITION = 'ScalarTypeDefinition',
81
+ OBJECT_TYPE_DEFINITION = 'ObjectTypeDefinition',
82
+ FIELD_DEFINITION = 'FieldDefinition',
83
+ INPUT_VALUE_DEFINITION = 'InputValueDefinition',
84
+ INTERFACE_TYPE_DEFINITION = 'InterfaceTypeDefinition',
85
+ UNION_TYPE_DEFINITION = 'UnionTypeDefinition',
86
+ ENUM_TYPE_DEFINITION = 'EnumTypeDefinition',
87
+ ENUM_VALUE_DEFINITION = 'EnumValueDefinition',
88
+ INPUT_OBJECT_TYPE_DEFINITION = 'InputObjectTypeDefinition',
89
+ /** Directive Definitions */
90
+ DIRECTIVE_DEFINITION = 'DirectiveDefinition',
91
+ /** Type System Extensions */
92
+ SCHEMA_EXTENSION = 'SchemaExtension',
93
+ /** Type Extensions */
94
+ SCALAR_TYPE_EXTENSION = 'ScalarTypeExtension',
95
+ OBJECT_TYPE_EXTENSION = 'ObjectTypeExtension',
96
+ INTERFACE_TYPE_EXTENSION = 'InterfaceTypeExtension',
97
+ UNION_TYPE_EXTENSION = 'UnionTypeExtension',
98
+ ENUM_TYPE_EXTENSION = 'EnumTypeExtension',
99
+ INPUT_OBJECT_TYPE_EXTENSION = 'InputObjectTypeExtension',
100
+ }
101
+
102
+ /**
103
+ * An exported enum describing the different kinds of tokens that the
104
+ * lexer emits.
105
+ */
106
+ declare enum TokenKind {
107
+ SOF = '<SOF>',
108
+ EOF = '<EOF>',
109
+ BANG = '!',
110
+ DOLLAR = '$',
111
+ AMP = '&',
112
+ PAREN_L = '(',
113
+ PAREN_R = ')',
114
+ SPREAD = '...',
115
+ COLON = ':',
116
+ EQUALS = '=',
117
+ AT = '@',
118
+ BRACKET_L = '[',
119
+ BRACKET_R = ']',
120
+ BRACE_L = '{',
121
+ PIPE = '|',
122
+ BRACE_R = '}',
123
+ NAME = 'Name',
124
+ INT = 'Int',
125
+ FLOAT = 'Float',
126
+ STRING = 'String',
127
+ BLOCK_STRING = 'BlockString',
128
+ COMMENT = 'Comment',
129
+ }
130
+
131
+ /**
132
+ * Contains a range of UTF-8 character offsets and token references that
133
+ * identify the region of the source from which the AST derived.
134
+ */
135
+ declare class Location {
136
+ /**
137
+ * The character offset at which this Node begins.
138
+ */
139
+ readonly start: number;
140
+ /**
141
+ * The character offset at which this Node ends.
142
+ */
143
+ readonly end: number;
144
+ /**
145
+ * The Token at which this Node begins.
146
+ */
147
+ readonly startToken: Token;
148
+ /**
149
+ * The Token at which this Node ends.
150
+ */
151
+ readonly endToken: Token;
152
+ /**
153
+ * The Source document the AST represents.
154
+ */
155
+ readonly source: Source;
156
+ constructor(startToken: Token, endToken: Token, source: Source);
157
+ get [Symbol.toStringTag](): string;
158
+ toJSON(): {
159
+ start: number;
160
+ end: number;
161
+ };
162
+ }
163
+ /**
164
+ * Represents a range of characters represented by a lexical token
165
+ * within a Source.
166
+ */
167
+ declare class Token {
168
+ /**
169
+ * The kind of Token.
170
+ */
171
+ readonly kind: TokenKind;
172
+ /**
173
+ * The character offset at which this Node begins.
174
+ */
175
+ readonly start: number;
176
+ /**
177
+ * The character offset at which this Node ends.
178
+ */
179
+ readonly end: number;
180
+ /**
181
+ * The 1-indexed line number on which this Token appears.
182
+ */
183
+ readonly line: number;
184
+ /**
185
+ * The 1-indexed column number at which this Token begins.
186
+ */
187
+ readonly column: number;
188
+ /**
189
+ * For non-punctuation tokens, represents the interpreted value of the token.
190
+ *
191
+ * Note: is undefined for punctuation tokens, but typed as string for
192
+ * convenience in the parser.
193
+ */
194
+ readonly value: string;
195
+ /**
196
+ * Tokens exist as nodes in a double-linked-list amongst all tokens
197
+ * including ignored tokens. <SOF> is always the first node and <EOF>
198
+ * the last.
199
+ */
200
+ readonly prev: Token | null;
201
+ readonly next: Token | null;
202
+ constructor(
203
+ kind: TokenKind,
204
+ start: number,
205
+ end: number,
206
+ line: number,
207
+ column: number,
208
+ value?: string,
209
+ );
210
+ get [Symbol.toStringTag](): string;
211
+ toJSON(): {
212
+ kind: TokenKind;
213
+ value?: string;
214
+ line: number;
215
+ column: number;
216
+ };
217
+ }
218
+ /**
219
+ * The list of all possible AST node types.
220
+ */
221
+ declare type ASTNode =
222
+ | NameNode
223
+ | DocumentNode
224
+ | OperationDefinitionNode
225
+ | VariableDefinitionNode
226
+ | VariableNode
227
+ | SelectionSetNode
228
+ | FieldNode
229
+ | ArgumentNode
230
+ | FragmentSpreadNode
231
+ | InlineFragmentNode
232
+ | FragmentDefinitionNode
233
+ | IntValueNode
234
+ | FloatValueNode
235
+ | StringValueNode
236
+ | BooleanValueNode
237
+ | NullValueNode
238
+ | EnumValueNode
239
+ | ListValueNode
240
+ | ObjectValueNode
241
+ | ObjectFieldNode
242
+ | DirectiveNode
243
+ | NamedTypeNode
244
+ | ListTypeNode
245
+ | NonNullTypeNode
246
+ | SchemaDefinitionNode
247
+ | OperationTypeDefinitionNode
248
+ | ScalarTypeDefinitionNode
249
+ | ObjectTypeDefinitionNode
250
+ | FieldDefinitionNode
251
+ | InputValueDefinitionNode
252
+ | InterfaceTypeDefinitionNode
253
+ | UnionTypeDefinitionNode
254
+ | EnumTypeDefinitionNode
255
+ | EnumValueDefinitionNode
256
+ | InputObjectTypeDefinitionNode
257
+ | DirectiveDefinitionNode
258
+ | SchemaExtensionNode
259
+ | ScalarTypeExtensionNode
260
+ | ObjectTypeExtensionNode
261
+ | InterfaceTypeExtensionNode
262
+ | UnionTypeExtensionNode
263
+ | EnumTypeExtensionNode
264
+ | InputObjectTypeExtensionNode;
265
+ /** Name */
266
+ interface NameNode {
267
+ readonly kind: Kind.NAME;
268
+ readonly loc?: Location;
269
+ readonly value: string;
270
+ }
271
+ /** Document */
272
+ interface DocumentNode {
273
+ readonly kind: Kind.DOCUMENT;
274
+ readonly loc?: Location;
275
+ readonly definitions: ReadonlyArray<DefinitionNode>;
276
+ }
277
+ declare type DefinitionNode =
278
+ | ExecutableDefinitionNode
279
+ | TypeSystemDefinitionNode
280
+ | TypeSystemExtensionNode;
281
+ declare type ExecutableDefinitionNode =
282
+ | OperationDefinitionNode
283
+ | FragmentDefinitionNode;
284
+ interface OperationDefinitionNode {
285
+ readonly kind: Kind.OPERATION_DEFINITION;
286
+ readonly loc?: Location;
287
+ readonly operation: OperationTypeNode;
288
+ readonly name?: NameNode;
289
+ readonly variableDefinitions?: ReadonlyArray<VariableDefinitionNode>;
290
+ readonly directives?: ReadonlyArray<DirectiveNode>;
291
+ readonly selectionSet: SelectionSetNode;
292
+ }
293
+ declare enum OperationTypeNode {
294
+ QUERY = 'query',
295
+ MUTATION = 'mutation',
296
+ SUBSCRIPTION = 'subscription',
297
+ }
298
+
299
+ interface VariableDefinitionNode {
300
+ readonly kind: Kind.VARIABLE_DEFINITION;
301
+ readonly loc?: Location;
302
+ readonly variable: VariableNode;
303
+ readonly type: TypeNode;
304
+ readonly defaultValue?: ConstValueNode;
305
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
306
+ }
307
+ interface VariableNode {
308
+ readonly kind: Kind.VARIABLE;
309
+ readonly loc?: Location;
310
+ readonly name: NameNode;
311
+ }
312
+ interface SelectionSetNode {
313
+ kind: Kind.SELECTION_SET;
314
+ loc?: Location;
315
+ selections: ReadonlyArray<SelectionNode>;
316
+ }
317
+ declare type SelectionNode =
318
+ | FieldNode
319
+ | FragmentSpreadNode
320
+ | InlineFragmentNode;
321
+ interface FieldNode {
322
+ readonly kind: Kind.FIELD;
323
+ readonly loc?: Location;
324
+ readonly alias?: NameNode;
325
+ readonly name: NameNode;
326
+ readonly arguments?: ReadonlyArray<ArgumentNode>;
327
+ readonly directives?: ReadonlyArray<DirectiveNode>;
328
+ readonly selectionSet?: SelectionSetNode;
329
+ }
330
+ interface ArgumentNode {
331
+ readonly kind: Kind.ARGUMENT;
332
+ readonly loc?: Location;
333
+ readonly name: NameNode;
334
+ readonly value: ValueNode;
335
+ }
336
+ interface ConstArgumentNode {
337
+ readonly kind: Kind.ARGUMENT;
338
+ readonly loc?: Location;
339
+ readonly name: NameNode;
340
+ readonly value: ConstValueNode;
341
+ }
342
+ /** Fragments */
343
+ interface FragmentSpreadNode {
344
+ readonly kind: Kind.FRAGMENT_SPREAD;
345
+ readonly loc?: Location;
346
+ readonly name: NameNode;
347
+ readonly directives?: ReadonlyArray<DirectiveNode>;
348
+ }
349
+ interface InlineFragmentNode {
350
+ readonly kind: Kind.INLINE_FRAGMENT;
351
+ readonly loc?: Location;
352
+ readonly typeCondition?: NamedTypeNode;
353
+ readonly directives?: ReadonlyArray<DirectiveNode>;
354
+ readonly selectionSet: SelectionSetNode;
355
+ }
356
+ interface FragmentDefinitionNode {
357
+ readonly kind: Kind.FRAGMENT_DEFINITION;
358
+ readonly loc?: Location;
359
+ readonly name: NameNode;
360
+ /** @deprecated variableDefinitions will be removed in v17.0.0 */
361
+ readonly variableDefinitions?: ReadonlyArray<VariableDefinitionNode>;
362
+ readonly typeCondition: NamedTypeNode;
363
+ readonly directives?: ReadonlyArray<DirectiveNode>;
364
+ readonly selectionSet: SelectionSetNode;
365
+ }
366
+ /** Values */
367
+ declare type ValueNode =
368
+ | VariableNode
369
+ | IntValueNode
370
+ | FloatValueNode
371
+ | StringValueNode
372
+ | BooleanValueNode
373
+ | NullValueNode
374
+ | EnumValueNode
375
+ | ListValueNode
376
+ | ObjectValueNode;
377
+ declare type ConstValueNode =
378
+ | IntValueNode
379
+ | FloatValueNode
380
+ | StringValueNode
381
+ | BooleanValueNode
382
+ | NullValueNode
383
+ | EnumValueNode
384
+ | ConstListValueNode
385
+ | ConstObjectValueNode;
386
+ interface IntValueNode {
387
+ readonly kind: Kind.INT;
388
+ readonly loc?: Location;
389
+ readonly value: string;
390
+ }
391
+ interface FloatValueNode {
392
+ readonly kind: Kind.FLOAT;
393
+ readonly loc?: Location;
394
+ readonly value: string;
395
+ }
396
+ interface StringValueNode {
397
+ readonly kind: Kind.STRING;
398
+ readonly loc?: Location;
399
+ readonly value: string;
400
+ readonly block?: boolean;
401
+ }
402
+ interface BooleanValueNode {
403
+ readonly kind: Kind.BOOLEAN;
404
+ readonly loc?: Location;
405
+ readonly value: boolean;
406
+ }
407
+ interface NullValueNode {
408
+ readonly kind: Kind.NULL;
409
+ readonly loc?: Location;
410
+ }
411
+ interface EnumValueNode {
412
+ readonly kind: Kind.ENUM;
413
+ readonly loc?: Location;
414
+ readonly value: string;
415
+ }
416
+ interface ListValueNode {
417
+ readonly kind: Kind.LIST;
418
+ readonly loc?: Location;
419
+ readonly values: ReadonlyArray<ValueNode>;
420
+ }
421
+ interface ConstListValueNode {
422
+ readonly kind: Kind.LIST;
423
+ readonly loc?: Location;
424
+ readonly values: ReadonlyArray<ConstValueNode>;
425
+ }
426
+ interface ObjectValueNode {
427
+ readonly kind: Kind.OBJECT;
428
+ readonly loc?: Location;
429
+ readonly fields: ReadonlyArray<ObjectFieldNode>;
430
+ }
431
+ interface ConstObjectValueNode {
432
+ readonly kind: Kind.OBJECT;
433
+ readonly loc?: Location;
434
+ readonly fields: ReadonlyArray<ConstObjectFieldNode>;
435
+ }
436
+ interface ObjectFieldNode {
437
+ readonly kind: Kind.OBJECT_FIELD;
438
+ readonly loc?: Location;
439
+ readonly name: NameNode;
440
+ readonly value: ValueNode;
441
+ }
442
+ interface ConstObjectFieldNode {
443
+ readonly kind: Kind.OBJECT_FIELD;
444
+ readonly loc?: Location;
445
+ readonly name: NameNode;
446
+ readonly value: ConstValueNode;
447
+ }
448
+ /** Directives */
449
+ interface DirectiveNode {
450
+ readonly kind: Kind.DIRECTIVE;
451
+ readonly loc?: Location;
452
+ readonly name: NameNode;
453
+ readonly arguments?: ReadonlyArray<ArgumentNode>;
454
+ }
455
+ interface ConstDirectiveNode {
456
+ readonly kind: Kind.DIRECTIVE;
457
+ readonly loc?: Location;
458
+ readonly name: NameNode;
459
+ readonly arguments?: ReadonlyArray<ConstArgumentNode>;
460
+ }
461
+ /** Type Reference */
462
+ declare type TypeNode = NamedTypeNode | ListTypeNode | NonNullTypeNode;
463
+ interface NamedTypeNode {
464
+ readonly kind: Kind.NAMED_TYPE;
465
+ readonly loc?: Location;
466
+ readonly name: NameNode;
467
+ }
468
+ interface ListTypeNode {
469
+ readonly kind: Kind.LIST_TYPE;
470
+ readonly loc?: Location;
471
+ readonly type: TypeNode;
472
+ }
473
+ interface NonNullTypeNode {
474
+ readonly kind: Kind.NON_NULL_TYPE;
475
+ readonly loc?: Location;
476
+ readonly type: NamedTypeNode | ListTypeNode;
477
+ }
478
+ /** Type System Definition */
479
+ declare type TypeSystemDefinitionNode =
480
+ | SchemaDefinitionNode
481
+ | TypeDefinitionNode
482
+ | DirectiveDefinitionNode;
483
+ interface SchemaDefinitionNode {
484
+ readonly kind: Kind.SCHEMA_DEFINITION;
485
+ readonly loc?: Location;
486
+ readonly description?: StringValueNode;
487
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
488
+ readonly operationTypes: ReadonlyArray<OperationTypeDefinitionNode>;
489
+ }
490
+ interface OperationTypeDefinitionNode {
491
+ readonly kind: Kind.OPERATION_TYPE_DEFINITION;
492
+ readonly loc?: Location;
493
+ readonly operation: OperationTypeNode;
494
+ readonly type: NamedTypeNode;
495
+ }
496
+ /** Type Definition */
497
+ declare type TypeDefinitionNode =
498
+ | ScalarTypeDefinitionNode
499
+ | ObjectTypeDefinitionNode
500
+ | InterfaceTypeDefinitionNode
501
+ | UnionTypeDefinitionNode
502
+ | EnumTypeDefinitionNode
503
+ | InputObjectTypeDefinitionNode;
504
+ interface ScalarTypeDefinitionNode {
505
+ readonly kind: Kind.SCALAR_TYPE_DEFINITION;
506
+ readonly loc?: Location;
507
+ readonly description?: StringValueNode;
508
+ readonly name: NameNode;
509
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
510
+ }
511
+ interface ObjectTypeDefinitionNode {
512
+ readonly kind: Kind.OBJECT_TYPE_DEFINITION;
513
+ readonly loc?: Location;
514
+ readonly description?: StringValueNode;
515
+ readonly name: NameNode;
516
+ readonly interfaces?: ReadonlyArray<NamedTypeNode>;
517
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
518
+ readonly fields?: ReadonlyArray<FieldDefinitionNode>;
519
+ }
520
+ interface FieldDefinitionNode {
521
+ readonly kind: Kind.FIELD_DEFINITION;
522
+ readonly loc?: Location;
523
+ readonly description?: StringValueNode;
524
+ readonly name: NameNode;
525
+ readonly arguments?: ReadonlyArray<InputValueDefinitionNode>;
526
+ readonly type: TypeNode;
527
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
528
+ }
529
+ interface InputValueDefinitionNode {
530
+ readonly kind: Kind.INPUT_VALUE_DEFINITION;
531
+ readonly loc?: Location;
532
+ readonly description?: StringValueNode;
533
+ readonly name: NameNode;
534
+ readonly type: TypeNode;
535
+ readonly defaultValue?: ConstValueNode;
536
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
537
+ }
538
+ interface InterfaceTypeDefinitionNode {
539
+ readonly kind: Kind.INTERFACE_TYPE_DEFINITION;
540
+ readonly loc?: Location;
541
+ readonly description?: StringValueNode;
542
+ readonly name: NameNode;
543
+ readonly interfaces?: ReadonlyArray<NamedTypeNode>;
544
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
545
+ readonly fields?: ReadonlyArray<FieldDefinitionNode>;
546
+ }
547
+ interface UnionTypeDefinitionNode {
548
+ readonly kind: Kind.UNION_TYPE_DEFINITION;
549
+ readonly loc?: Location;
550
+ readonly description?: StringValueNode;
551
+ readonly name: NameNode;
552
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
553
+ readonly types?: ReadonlyArray<NamedTypeNode>;
554
+ }
555
+ interface EnumTypeDefinitionNode {
556
+ readonly kind: Kind.ENUM_TYPE_DEFINITION;
557
+ readonly loc?: Location;
558
+ readonly description?: StringValueNode;
559
+ readonly name: NameNode;
560
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
561
+ readonly values?: ReadonlyArray<EnumValueDefinitionNode>;
562
+ }
563
+ interface EnumValueDefinitionNode {
564
+ readonly kind: Kind.ENUM_VALUE_DEFINITION;
565
+ readonly loc?: Location;
566
+ readonly description?: StringValueNode;
567
+ readonly name: NameNode;
568
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
569
+ }
570
+ interface InputObjectTypeDefinitionNode {
571
+ readonly kind: Kind.INPUT_OBJECT_TYPE_DEFINITION;
572
+ readonly loc?: Location;
573
+ readonly description?: StringValueNode;
574
+ readonly name: NameNode;
575
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
576
+ readonly fields?: ReadonlyArray<InputValueDefinitionNode>;
577
+ }
578
+ /** Directive Definitions */
579
+ interface DirectiveDefinitionNode {
580
+ readonly kind: Kind.DIRECTIVE_DEFINITION;
581
+ readonly loc?: Location;
582
+ readonly description?: StringValueNode;
583
+ readonly name: NameNode;
584
+ readonly arguments?: ReadonlyArray<InputValueDefinitionNode>;
585
+ readonly repeatable: boolean;
586
+ readonly locations: ReadonlyArray<NameNode>;
587
+ }
588
+ /** Type System Extensions */
589
+ declare type TypeSystemExtensionNode =
590
+ | SchemaExtensionNode
591
+ | TypeExtensionNode;
592
+ interface SchemaExtensionNode {
593
+ readonly kind: Kind.SCHEMA_EXTENSION;
594
+ readonly loc?: Location;
595
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
596
+ readonly operationTypes?: ReadonlyArray<OperationTypeDefinitionNode>;
597
+ }
598
+ /** Type Extensions */
599
+ declare type TypeExtensionNode =
600
+ | ScalarTypeExtensionNode
601
+ | ObjectTypeExtensionNode
602
+ | InterfaceTypeExtensionNode
603
+ | UnionTypeExtensionNode
604
+ | EnumTypeExtensionNode
605
+ | InputObjectTypeExtensionNode;
606
+ interface ScalarTypeExtensionNode {
607
+ readonly kind: Kind.SCALAR_TYPE_EXTENSION;
608
+ readonly loc?: Location;
609
+ readonly name: NameNode;
610
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
611
+ }
612
+ interface ObjectTypeExtensionNode {
613
+ readonly kind: Kind.OBJECT_TYPE_EXTENSION;
614
+ readonly loc?: Location;
615
+ readonly name: NameNode;
616
+ readonly interfaces?: ReadonlyArray<NamedTypeNode>;
617
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
618
+ readonly fields?: ReadonlyArray<FieldDefinitionNode>;
619
+ }
620
+ interface InterfaceTypeExtensionNode {
621
+ readonly kind: Kind.INTERFACE_TYPE_EXTENSION;
622
+ readonly loc?: Location;
623
+ readonly name: NameNode;
624
+ readonly interfaces?: ReadonlyArray<NamedTypeNode>;
625
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
626
+ readonly fields?: ReadonlyArray<FieldDefinitionNode>;
627
+ }
628
+ interface UnionTypeExtensionNode {
629
+ readonly kind: Kind.UNION_TYPE_EXTENSION;
630
+ readonly loc?: Location;
631
+ readonly name: NameNode;
632
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
633
+ readonly types?: ReadonlyArray<NamedTypeNode>;
634
+ }
635
+ interface EnumTypeExtensionNode {
636
+ readonly kind: Kind.ENUM_TYPE_EXTENSION;
637
+ readonly loc?: Location;
638
+ readonly name: NameNode;
639
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
640
+ readonly values?: ReadonlyArray<EnumValueDefinitionNode>;
641
+ }
642
+ interface InputObjectTypeExtensionNode {
643
+ readonly kind: Kind.INPUT_OBJECT_TYPE_EXTENSION;
644
+ readonly loc?: Location;
645
+ readonly name: NameNode;
646
+ readonly directives?: ReadonlyArray<ConstDirectiveNode>;
647
+ readonly fields?: ReadonlyArray<InputValueDefinitionNode>;
648
+ }
649
+
650
+ /**
651
+ * Represents a location in a Source.
652
+ */
653
+ interface SourceLocation {
654
+ readonly line: number;
655
+ readonly column: number;
656
+ }
657
+
658
+ /**
659
+ * Custom extensions
660
+ *
661
+ * @remarks
662
+ * Use a unique identifier name for your extension, for example the name of
663
+ * your library or project. Do not use a shortened identifier as this increases
664
+ * the risk of conflicts. We recommend you add at most one extension field,
665
+ * an object which can contain all the values you need.
666
+ */
667
+ interface GraphQLErrorExtensions {
668
+ [attributeName: string]: unknown;
669
+ }
670
+ interface GraphQLErrorOptions {
671
+ nodes?: ReadonlyArray<ASTNode> | ASTNode | null;
672
+ source?: Maybe<Source>;
673
+ positions?: Maybe<ReadonlyArray<number>>;
674
+ path?: Maybe<ReadonlyArray<string | number>>;
675
+ originalError?: Maybe<
676
+ Error & {
677
+ readonly extensions?: unknown;
678
+ }
679
+ >;
680
+ extensions?: Maybe<GraphQLErrorExtensions>;
681
+ }
682
+ /**
683
+ * A GraphQLError describes an Error found during the parse, validate, or
684
+ * execute phases of performing a GraphQL operation. In addition to a message
685
+ * and stack trace, it also includes information about the locations in a
686
+ * GraphQL document and/or execution result that correspond to the Error.
687
+ */
688
+ declare class GraphQLError extends Error {
689
+ /**
690
+ * An array of `{ line, column }` locations within the source GraphQL document
691
+ * which correspond to this error.
692
+ *
693
+ * Errors during validation often contain multiple locations, for example to
694
+ * point out two things with the same name. Errors during execution include a
695
+ * single location, the field which produced the error.
696
+ *
697
+ * Enumerable, and appears in the result of JSON.stringify().
698
+ */
699
+ readonly locations: ReadonlyArray<SourceLocation> | undefined;
700
+ /**
701
+ * An array describing the JSON-path into the execution response which
702
+ * corresponds to this error. Only included for errors during execution.
703
+ *
704
+ * Enumerable, and appears in the result of JSON.stringify().
705
+ */
706
+ readonly path: ReadonlyArray<string | number> | undefined;
707
+ /**
708
+ * An array of GraphQL AST Nodes corresponding to this error.
709
+ */
710
+ readonly nodes: ReadonlyArray<ASTNode> | undefined;
711
+ /**
712
+ * The source GraphQL document for the first location of this error.
713
+ *
714
+ * Note that if this Error represents more than one node, the source may not
715
+ * represent nodes after the first node.
716
+ */
717
+ readonly source: Source | undefined;
718
+ /**
719
+ * An array of character offsets within the source GraphQL document
720
+ * which correspond to this error.
721
+ */
722
+ readonly positions: ReadonlyArray<number> | undefined;
723
+ /**
724
+ * The original error thrown from a field resolver during execution.
725
+ */
726
+ readonly originalError: Error | undefined;
727
+ /**
728
+ * Extension fields to add to the formatted error.
729
+ */
730
+ readonly extensions: GraphQLErrorExtensions;
731
+ constructor(message: string, options?: GraphQLErrorOptions);
732
+ /**
733
+ * @deprecated Please use the `GraphQLErrorOptions` constructor overload instead.
734
+ */
735
+ constructor(
736
+ message: string,
737
+ nodes?: ReadonlyArray<ASTNode> | ASTNode | null,
738
+ source?: Maybe<Source>,
739
+ positions?: Maybe<ReadonlyArray<number>>,
740
+ path?: Maybe<ReadonlyArray<string | number>>,
741
+ originalError?: Maybe<
742
+ Error & {
743
+ readonly extensions?: unknown;
744
+ }
745
+ >,
746
+ extensions?: Maybe<GraphQLErrorExtensions>,
747
+ );
748
+ get [Symbol.toStringTag](): string;
749
+ toString(): string;
750
+ toJSON(): GraphQLFormattedError;
751
+ }
752
+ /**
753
+ * See: https://spec.graphql.org/draft/#sec-Errors
754
+ */
755
+ interface GraphQLFormattedError {
756
+ /**
757
+ * A short, human-readable summary of the problem that **SHOULD NOT** change
758
+ * from occurrence to occurrence of the problem, except for purposes of
759
+ * localization.
760
+ */
761
+ readonly message: string;
762
+ /**
763
+ * If an error can be associated to a particular point in the requested
764
+ * GraphQL document, it should contain a list of locations.
765
+ */
766
+ readonly locations?: ReadonlyArray<SourceLocation>;
767
+ /**
768
+ * If an error can be associated to a particular field in the GraphQL result,
769
+ * it _must_ contain an entry with the key `path` that details the path of
770
+ * the response field which experienced the error. This allows clients to
771
+ * identify whether a null result is intentional or caused by a runtime error.
772
+ */
773
+ readonly path?: ReadonlyArray<string | number>;
774
+ /**
775
+ * Reserved for implementors to extend the protocol however they see fit,
776
+ * and hence there are no additional restrictions on its contents.
777
+ */
778
+ readonly extensions?: {
779
+ [key: string]: unknown;
780
+ };
781
+ }
782
+
783
+ /**
784
+ * The set of allowed directive location values.
785
+ */
786
+ declare enum DirectiveLocation {
787
+ /** Request Definitions */
788
+ QUERY = 'QUERY',
789
+ MUTATION = 'MUTATION',
790
+ SUBSCRIPTION = 'SUBSCRIPTION',
791
+ FIELD = 'FIELD',
792
+ FRAGMENT_DEFINITION = 'FRAGMENT_DEFINITION',
793
+ FRAGMENT_SPREAD = 'FRAGMENT_SPREAD',
794
+ INLINE_FRAGMENT = 'INLINE_FRAGMENT',
795
+ VARIABLE_DEFINITION = 'VARIABLE_DEFINITION',
796
+ /** Type System Definitions */
797
+ SCHEMA = 'SCHEMA',
798
+ SCALAR = 'SCALAR',
799
+ OBJECT = 'OBJECT',
800
+ FIELD_DEFINITION = 'FIELD_DEFINITION',
801
+ ARGUMENT_DEFINITION = 'ARGUMENT_DEFINITION',
802
+ INTERFACE = 'INTERFACE',
803
+ UNION = 'UNION',
804
+ ENUM = 'ENUM',
805
+ ENUM_VALUE = 'ENUM_VALUE',
806
+ INPUT_OBJECT = 'INPUT_OBJECT',
807
+ INPUT_FIELD_DEFINITION = 'INPUT_FIELD_DEFINITION',
808
+ }
809
+
810
+ /**
811
+ * Custom extensions
812
+ *
813
+ * @remarks
814
+ * Use a unique identifier name for your extension, for example the name of
815
+ * your library or project. Do not use a shortened identifier as this increases
816
+ * the risk of conflicts. We recommend you add at most one extension field,
817
+ * an object which can contain all the values you need.
818
+ */
819
+ interface GraphQLDirectiveExtensions {
820
+ [attributeName: string]: unknown;
821
+ }
822
+ /**
823
+ * Directives are used by the GraphQL runtime as a way of modifying execution
824
+ * behavior. Type system creators will usually not create these directly.
825
+ */
826
+ declare class GraphQLDirective {
827
+ name: string;
828
+ description: Maybe<string>;
829
+ locations: ReadonlyArray<DirectiveLocation>;
830
+ args: ReadonlyArray<GraphQLArgument>;
831
+ isRepeatable: boolean;
832
+ extensions: Readonly<GraphQLDirectiveExtensions>;
833
+ astNode: Maybe<DirectiveDefinitionNode>;
834
+ constructor(config: Readonly<GraphQLDirectiveConfig>);
835
+ get [Symbol.toStringTag](): string;
836
+ toConfig(): GraphQLDirectiveNormalizedConfig;
837
+ toString(): string;
838
+ toJSON(): string;
839
+ }
840
+ interface GraphQLDirectiveConfig {
841
+ name: string;
842
+ description?: Maybe<string>;
843
+ locations: ReadonlyArray<DirectiveLocation>;
844
+ args?: Maybe<GraphQLFieldConfigArgumentMap>;
845
+ isRepeatable?: Maybe<boolean>;
846
+ extensions?: Maybe<Readonly<GraphQLDirectiveExtensions>>;
847
+ astNode?: Maybe<DirectiveDefinitionNode>;
848
+ }
849
+ interface GraphQLDirectiveNormalizedConfig extends GraphQLDirectiveConfig {
850
+ args: GraphQLFieldConfigArgumentMap;
851
+ isRepeatable: boolean;
852
+ extensions: Readonly<GraphQLDirectiveExtensions>;
853
+ }
854
+
855
+ /**
856
+ * Custom extensions
857
+ *
858
+ * @remarks
859
+ * Use a unique identifier name for your extension, for example the name of
860
+ * your library or project. Do not use a shortened identifier as this increases
861
+ * the risk of conflicts. We recommend you add at most one extension field,
862
+ * an object which can contain all the values you need.
863
+ */
864
+ interface GraphQLSchemaExtensions {
865
+ [attributeName: string]: unknown;
866
+ }
867
+ /**
868
+ * Schema Definition
869
+ *
870
+ * A Schema is created by supplying the root types of each type of operation,
871
+ * query and mutation (optional). A schema definition is then supplied to the
872
+ * validator and executor.
873
+ *
874
+ * Example:
875
+ *
876
+ * ```ts
877
+ * const MyAppSchema = new GraphQLSchema({
878
+ * query: MyAppQueryRootType,
879
+ * mutation: MyAppMutationRootType,
880
+ * })
881
+ * ```
882
+ *
883
+ * Note: When the schema is constructed, by default only the types that are
884
+ * reachable by traversing the root types are included, other types must be
885
+ * explicitly referenced.
886
+ *
887
+ * Example:
888
+ *
889
+ * ```ts
890
+ * const characterInterface = new GraphQLInterfaceType({
891
+ * name: 'Character',
892
+ * ...
893
+ * });
894
+ *
895
+ * const humanType = new GraphQLObjectType({
896
+ * name: 'Human',
897
+ * interfaces: [characterInterface],
898
+ * ...
899
+ * });
900
+ *
901
+ * const droidType = new GraphQLObjectType({
902
+ * name: 'Droid',
903
+ * interfaces: [characterInterface],
904
+ * ...
905
+ * });
906
+ *
907
+ * const schema = new GraphQLSchema({
908
+ * query: new GraphQLObjectType({
909
+ * name: 'Query',
910
+ * fields: {
911
+ * hero: { type: characterInterface, ... },
912
+ * }
913
+ * }),
914
+ * ...
915
+ * // Since this schema references only the `Character` interface it's
916
+ * // necessary to explicitly list the types that implement it if
917
+ * // you want them to be included in the final schema.
918
+ * types: [humanType, droidType],
919
+ * })
920
+ * ```
921
+ *
922
+ * Note: If an array of `directives` are provided to GraphQLSchema, that will be
923
+ * the exact list of directives represented and allowed. If `directives` is not
924
+ * provided then a default set of the specified directives (e.g. `@include` and
925
+ * `@skip`) will be used. If you wish to provide *additional* directives to these
926
+ * specified directives, you must explicitly declare them. Example:
927
+ *
928
+ * ```ts
929
+ * const MyAppSchema = new GraphQLSchema({
930
+ * ...
931
+ * directives: specifiedDirectives.concat([ myCustomDirective ]),
932
+ * })
933
+ * ```
934
+ */
935
+ declare class GraphQLSchema {
936
+ description: Maybe<string>;
937
+ extensions: Readonly<GraphQLSchemaExtensions>;
938
+ astNode: Maybe<SchemaDefinitionNode>;
939
+ extensionASTNodes: ReadonlyArray<SchemaExtensionNode>;
940
+ __validationErrors: Maybe<ReadonlyArray<GraphQLError>>;
941
+ private _queryType;
942
+ private _mutationType;
943
+ private _subscriptionType;
944
+ private _directives;
945
+ private _typeMap;
946
+ private _subTypeMap;
947
+ private _implementationsMap;
948
+ constructor(config: Readonly<GraphQLSchemaConfig>);
949
+ get [Symbol.toStringTag](): string;
950
+ getQueryType(): Maybe<GraphQLObjectType>;
951
+ getMutationType(): Maybe<GraphQLObjectType>;
952
+ getSubscriptionType(): Maybe<GraphQLObjectType>;
953
+ getRootType(operation: OperationTypeNode): Maybe<GraphQLObjectType>;
954
+ getTypeMap(): TypeMap;
955
+ getType(name: string): GraphQLNamedType | undefined;
956
+ getPossibleTypes(
957
+ abstractType: GraphQLAbstractType,
958
+ ): ReadonlyArray<GraphQLObjectType>;
959
+ getImplementations(interfaceType: GraphQLInterfaceType): {
960
+ objects: ReadonlyArray<GraphQLObjectType>;
961
+ interfaces: ReadonlyArray<GraphQLInterfaceType>;
962
+ };
963
+ isSubType(
964
+ abstractType: GraphQLAbstractType,
965
+ maybeSubType: GraphQLObjectType | GraphQLInterfaceType,
966
+ ): boolean;
967
+ getDirectives(): ReadonlyArray<GraphQLDirective>;
968
+ getDirective(name: string): Maybe<GraphQLDirective>;
969
+ toConfig(): GraphQLSchemaNormalizedConfig;
970
+ }
971
+ declare type TypeMap = ObjMap$1<GraphQLNamedType>;
972
+ interface GraphQLSchemaValidationOptions {
973
+ /**
974
+ * When building a schema from a GraphQL service's introspection result, it
975
+ * might be safe to assume the schema is valid. Set to true to assume the
976
+ * produced schema is valid.
977
+ *
978
+ * Default: false
979
+ */
980
+ assumeValid?: boolean;
981
+ }
982
+ interface GraphQLSchemaConfig extends GraphQLSchemaValidationOptions {
983
+ description?: Maybe<string>;
984
+ query?: Maybe<GraphQLObjectType>;
985
+ mutation?: Maybe<GraphQLObjectType>;
986
+ subscription?: Maybe<GraphQLObjectType>;
987
+ types?: Maybe<ReadonlyArray<GraphQLNamedType>>;
988
+ directives?: Maybe<ReadonlyArray<GraphQLDirective>>;
989
+ extensions?: Maybe<Readonly<GraphQLSchemaExtensions>>;
990
+ astNode?: Maybe<SchemaDefinitionNode>;
991
+ extensionASTNodes?: Maybe<ReadonlyArray<SchemaExtensionNode>>;
992
+ }
993
+ /**
994
+ * @internal
995
+ */
996
+ interface GraphQLSchemaNormalizedConfig extends GraphQLSchemaConfig {
997
+ description: Maybe<string>;
998
+ types: ReadonlyArray<GraphQLNamedType>;
999
+ directives: ReadonlyArray<GraphQLDirective>;
1000
+ extensions: Readonly<GraphQLSchemaExtensions>;
1001
+ extensionASTNodes: ReadonlyArray<SchemaExtensionNode>;
1002
+ assumeValid: boolean;
1003
+ }
1004
+
1005
+ /**
1006
+ * These are all of the possible kinds of types.
1007
+ */
1008
+ declare type GraphQLType =
1009
+ | GraphQLScalarType
1010
+ | GraphQLObjectType
1011
+ | GraphQLInterfaceType
1012
+ | GraphQLUnionType
1013
+ | GraphQLEnumType
1014
+ | GraphQLInputObjectType
1015
+ | GraphQLList<GraphQLType>
1016
+ | GraphQLNonNull<
1017
+ | GraphQLScalarType
1018
+ | GraphQLObjectType
1019
+ | GraphQLInterfaceType
1020
+ | GraphQLUnionType
1021
+ | GraphQLEnumType
1022
+ | GraphQLInputObjectType
1023
+ | GraphQLList<GraphQLType>
1024
+ >;
1025
+ /**
1026
+ * These types may be used as input types for arguments and directives.
1027
+ */
1028
+ declare type GraphQLInputType =
1029
+ | GraphQLScalarType
1030
+ | GraphQLEnumType
1031
+ | GraphQLInputObjectType
1032
+ | GraphQLList<GraphQLInputType>
1033
+ | GraphQLNonNull<
1034
+ | GraphQLScalarType
1035
+ | GraphQLEnumType
1036
+ | GraphQLInputObjectType
1037
+ | GraphQLList<GraphQLInputType>
1038
+ >;
1039
+ /**
1040
+ * These types may be used as output types as the result of fields.
1041
+ */
1042
+ declare type GraphQLOutputType =
1043
+ | GraphQLScalarType
1044
+ | GraphQLObjectType
1045
+ | GraphQLInterfaceType
1046
+ | GraphQLUnionType
1047
+ | GraphQLEnumType
1048
+ | GraphQLList<GraphQLOutputType>
1049
+ | GraphQLNonNull<
1050
+ | GraphQLScalarType
1051
+ | GraphQLObjectType
1052
+ | GraphQLInterfaceType
1053
+ | GraphQLUnionType
1054
+ | GraphQLEnumType
1055
+ | GraphQLList<GraphQLOutputType>
1056
+ >;
1057
+ /**
1058
+ * These types may describe the parent context of a selection set.
1059
+ */
1060
+ declare type GraphQLAbstractType =
1061
+ | GraphQLInterfaceType
1062
+ | GraphQLUnionType;
1063
+ /**
1064
+ * List Type Wrapper
1065
+ *
1066
+ * A list is a wrapping type which points to another type.
1067
+ * Lists are often created within the context of defining the fields of
1068
+ * an object type.
1069
+ *
1070
+ * Example:
1071
+ *
1072
+ * ```ts
1073
+ * const PersonType = new GraphQLObjectType({
1074
+ * name: 'Person',
1075
+ * fields: () => ({
1076
+ * parents: { type: new GraphQLList(PersonType) },
1077
+ * children: { type: new GraphQLList(PersonType) },
1078
+ * })
1079
+ * })
1080
+ * ```
1081
+ */
1082
+ declare class GraphQLList<T extends GraphQLType> {
1083
+ readonly ofType: T;
1084
+ constructor(ofType: T);
1085
+ get [Symbol.toStringTag](): string;
1086
+ toString(): string;
1087
+ toJSON(): string;
1088
+ }
1089
+ /**
1090
+ * Non-Null Type Wrapper
1091
+ *
1092
+ * A non-null is a wrapping type which points to another type.
1093
+ * Non-null types enforce that their values are never null and can ensure
1094
+ * an error is raised if this ever occurs during a request. It is useful for
1095
+ * fields which you can make a strong guarantee on non-nullability, for example
1096
+ * usually the id field of a database row will never be null.
1097
+ *
1098
+ * Example:
1099
+ *
1100
+ * ```ts
1101
+ * const RowType = new GraphQLObjectType({
1102
+ * name: 'Row',
1103
+ * fields: () => ({
1104
+ * id: { type: new GraphQLNonNull(GraphQLString) },
1105
+ * })
1106
+ * })
1107
+ * ```
1108
+ * Note: the enforcement of non-nullability occurs within the executor.
1109
+ */
1110
+ declare class GraphQLNonNull<T extends GraphQLNullableType> {
1111
+ readonly ofType: T;
1112
+ constructor(ofType: T);
1113
+ get [Symbol.toStringTag](): string;
1114
+ toString(): string;
1115
+ toJSON(): string;
1116
+ }
1117
+ /**
1118
+ * These types can all accept null as a value.
1119
+ */
1120
+ declare type GraphQLNullableType =
1121
+ | GraphQLScalarType
1122
+ | GraphQLObjectType
1123
+ | GraphQLInterfaceType
1124
+ | GraphQLUnionType
1125
+ | GraphQLEnumType
1126
+ | GraphQLInputObjectType
1127
+ | GraphQLList<GraphQLType>;
1128
+ /**
1129
+ * These named types do not include modifiers like List or NonNull.
1130
+ */
1131
+ declare type GraphQLNamedType =
1132
+ | GraphQLNamedInputType
1133
+ | GraphQLNamedOutputType;
1134
+ declare type GraphQLNamedInputType =
1135
+ | GraphQLScalarType
1136
+ | GraphQLEnumType
1137
+ | GraphQLInputObjectType;
1138
+ declare type GraphQLNamedOutputType =
1139
+ | GraphQLScalarType
1140
+ | GraphQLObjectType
1141
+ | GraphQLInterfaceType
1142
+ | GraphQLUnionType
1143
+ | GraphQLEnumType;
1144
+ /**
1145
+ * Used while defining GraphQL types to allow for circular references in
1146
+ * otherwise immutable type definitions.
1147
+ */
1148
+ declare type ThunkReadonlyArray<T> =
1149
+ | (() => ReadonlyArray<T>)
1150
+ | ReadonlyArray<T>;
1151
+ declare type ThunkObjMap<T> = (() => ObjMap$1<T>) | ObjMap$1<T>;
1152
+ /**
1153
+ * Custom extensions
1154
+ *
1155
+ * @remarks
1156
+ * Use a unique identifier name for your extension, for example the name of
1157
+ * your library or project. Do not use a shortened identifier as this increases
1158
+ * the risk of conflicts. We recommend you add at most one extension field,
1159
+ * an object which can contain all the values you need.
1160
+ */
1161
+ interface GraphQLScalarTypeExtensions {
1162
+ [attributeName: string]: unknown;
1163
+ }
1164
+ /**
1165
+ * Scalar Type Definition
1166
+ *
1167
+ * The leaf values of any request and input values to arguments are
1168
+ * Scalars (or Enums) and are defined with a name and a series of functions
1169
+ * used to parse input from ast or variables and to ensure validity.
1170
+ *
1171
+ * If a type's serialize function returns `null` or does not return a value
1172
+ * (i.e. it returns `undefined`) then an error will be raised and a `null`
1173
+ * value will be returned in the response. It is always better to validate
1174
+ *
1175
+ * Example:
1176
+ *
1177
+ * ```ts
1178
+ * const OddType = new GraphQLScalarType({
1179
+ * name: 'Odd',
1180
+ * serialize(value) {
1181
+ * if (!Number.isFinite(value)) {
1182
+ * throw new Error(
1183
+ * `Scalar "Odd" cannot represent "${value}" since it is not a finite number.`,
1184
+ * );
1185
+ * }
1186
+ *
1187
+ * if (value % 2 === 0) {
1188
+ * throw new Error(`Scalar "Odd" cannot represent "${value}" since it is even.`);
1189
+ * }
1190
+ * return value;
1191
+ * }
1192
+ * });
1193
+ * ```
1194
+ */
1195
+ declare class GraphQLScalarType<
1196
+ TInternal = unknown,
1197
+ TExternal = TInternal,
1198
+ > {
1199
+ name: string;
1200
+ description: Maybe<string>;
1201
+ specifiedByURL: Maybe<string>;
1202
+ serialize: GraphQLScalarSerializer<TExternal>;
1203
+ parseValue: GraphQLScalarValueParser<TInternal>;
1204
+ parseLiteral: GraphQLScalarLiteralParser<TInternal>;
1205
+ extensions: Readonly<GraphQLScalarTypeExtensions>;
1206
+ astNode: Maybe<ScalarTypeDefinitionNode>;
1207
+ extensionASTNodes: ReadonlyArray<ScalarTypeExtensionNode>;
1208
+ constructor(config: Readonly<GraphQLScalarTypeConfig<TInternal, TExternal>>);
1209
+ get [Symbol.toStringTag](): string;
1210
+ toConfig(): GraphQLScalarTypeNormalizedConfig<TInternal, TExternal>;
1211
+ toString(): string;
1212
+ toJSON(): string;
1213
+ }
1214
+ declare type GraphQLScalarSerializer<TExternal> = (
1215
+ outputValue: unknown,
1216
+ ) => TExternal;
1217
+ declare type GraphQLScalarValueParser<TInternal> = (
1218
+ inputValue: unknown,
1219
+ ) => TInternal;
1220
+ declare type GraphQLScalarLiteralParser<TInternal> = (
1221
+ valueNode: ValueNode,
1222
+ variables?: Maybe<ObjMap$1<unknown>>,
1223
+ ) => TInternal;
1224
+ interface GraphQLScalarTypeConfig<TInternal, TExternal> {
1225
+ name: string;
1226
+ description?: Maybe<string>;
1227
+ specifiedByURL?: Maybe<string>;
1228
+ /** Serializes an internal value to include in a response. */
1229
+ serialize?: GraphQLScalarSerializer<TExternal>;
1230
+ /** Parses an externally provided value to use as an input. */
1231
+ parseValue?: GraphQLScalarValueParser<TInternal>;
1232
+ /** Parses an externally provided literal value to use as an input. */
1233
+ parseLiteral?: GraphQLScalarLiteralParser<TInternal>;
1234
+ extensions?: Maybe<Readonly<GraphQLScalarTypeExtensions>>;
1235
+ astNode?: Maybe<ScalarTypeDefinitionNode>;
1236
+ extensionASTNodes?: Maybe<ReadonlyArray<ScalarTypeExtensionNode>>;
1237
+ }
1238
+ interface GraphQLScalarTypeNormalizedConfig<TInternal, TExternal>
1239
+ extends GraphQLScalarTypeConfig<TInternal, TExternal> {
1240
+ serialize: GraphQLScalarSerializer<TExternal>;
1241
+ parseValue: GraphQLScalarValueParser<TInternal>;
1242
+ parseLiteral: GraphQLScalarLiteralParser<TInternal>;
1243
+ extensions: Readonly<GraphQLScalarTypeExtensions>;
1244
+ extensionASTNodes: ReadonlyArray<ScalarTypeExtensionNode>;
1245
+ }
1246
+ /**
1247
+ * Custom extensions
1248
+ *
1249
+ * @remarks
1250
+ * Use a unique identifier name for your extension, for example the name of
1251
+ * your library or project. Do not use a shortened identifier as this increases
1252
+ * the risk of conflicts. We recommend you add at most one extension field,
1253
+ * an object which can contain all the values you need.
1254
+ *
1255
+ * We've provided these template arguments because this is an open type and
1256
+ * you may find them useful.
1257
+ */
1258
+ interface GraphQLObjectTypeExtensions<_TSource = any, _TContext = any> {
1259
+ [attributeName: string]: unknown;
1260
+ }
1261
+ /**
1262
+ * Object Type Definition
1263
+ *
1264
+ * Almost all of the GraphQL types you define will be object types. Object types
1265
+ * have a name, but most importantly describe their fields.
1266
+ *
1267
+ * Example:
1268
+ *
1269
+ * ```ts
1270
+ * const AddressType = new GraphQLObjectType({
1271
+ * name: 'Address',
1272
+ * fields: {
1273
+ * street: { type: GraphQLString },
1274
+ * number: { type: GraphQLInt },
1275
+ * formatted: {
1276
+ * type: GraphQLString,
1277
+ * resolve(obj) {
1278
+ * return obj.number + ' ' + obj.street
1279
+ * }
1280
+ * }
1281
+ * }
1282
+ * });
1283
+ * ```
1284
+ *
1285
+ * When two types need to refer to each other, or a type needs to refer to
1286
+ * itself in a field, you can use a function expression (aka a closure or a
1287
+ * thunk) to supply the fields lazily.
1288
+ *
1289
+ * Example:
1290
+ *
1291
+ * ```ts
1292
+ * const PersonType = new GraphQLObjectType({
1293
+ * name: 'Person',
1294
+ * fields: () => ({
1295
+ * name: { type: GraphQLString },
1296
+ * bestFriend: { type: PersonType },
1297
+ * })
1298
+ * });
1299
+ * ```
1300
+ */
1301
+ declare class GraphQLObjectType<TSource = any, TContext = any> {
1302
+ name: string;
1303
+ description: Maybe<string>;
1304
+ isTypeOf: Maybe<GraphQLIsTypeOfFn<TSource, TContext>>;
1305
+ extensions: Readonly<GraphQLObjectTypeExtensions<TSource, TContext>>;
1306
+ astNode: Maybe<ObjectTypeDefinitionNode>;
1307
+ extensionASTNodes: ReadonlyArray<ObjectTypeExtensionNode>;
1308
+ private _fields;
1309
+ private _interfaces;
1310
+ constructor(config: Readonly<GraphQLObjectTypeConfig<TSource, TContext>>);
1311
+ get [Symbol.toStringTag](): string;
1312
+ getFields(): GraphQLFieldMap<TSource, TContext>;
1313
+ getInterfaces(): ReadonlyArray<GraphQLInterfaceType>;
1314
+ toConfig(): GraphQLObjectTypeNormalizedConfig<TSource, TContext>;
1315
+ toString(): string;
1316
+ toJSON(): string;
1317
+ }
1318
+ interface GraphQLObjectTypeConfig<TSource, TContext> {
1319
+ name: string;
1320
+ description?: Maybe<string>;
1321
+ interfaces?: ThunkReadonlyArray<GraphQLInterfaceType>;
1322
+ fields: ThunkObjMap<GraphQLFieldConfig<TSource, TContext>>;
1323
+ isTypeOf?: Maybe<GraphQLIsTypeOfFn<TSource, TContext>>;
1324
+ extensions?: Maybe<Readonly<GraphQLObjectTypeExtensions<TSource, TContext>>>;
1325
+ astNode?: Maybe<ObjectTypeDefinitionNode>;
1326
+ extensionASTNodes?: Maybe<ReadonlyArray<ObjectTypeExtensionNode>>;
1327
+ }
1328
+ interface GraphQLObjectTypeNormalizedConfig<TSource, TContext>
1329
+ extends GraphQLObjectTypeConfig<any, any> {
1330
+ interfaces: ReadonlyArray<GraphQLInterfaceType>;
1331
+ fields: GraphQLFieldConfigMap<any, any>;
1332
+ extensions: Readonly<GraphQLObjectTypeExtensions<TSource, TContext>>;
1333
+ extensionASTNodes: ReadonlyArray<ObjectTypeExtensionNode>;
1334
+ }
1335
+ declare type GraphQLTypeResolver<TSource, TContext> = (
1336
+ value: TSource,
1337
+ context: TContext,
1338
+ info: GraphQLResolveInfo,
1339
+ abstractType: GraphQLAbstractType,
1340
+ ) => PromiseOrValue<string | undefined>;
1341
+ declare type GraphQLIsTypeOfFn<TSource, TContext> = (
1342
+ source: TSource,
1343
+ context: TContext,
1344
+ info: GraphQLResolveInfo,
1345
+ ) => PromiseOrValue<boolean>;
1346
+ declare type GraphQLFieldResolver<
1347
+ TSource,
1348
+ TContext,
1349
+ TArgs = any,
1350
+ TResult = unknown,
1351
+ > = (
1352
+ source: TSource,
1353
+ args: TArgs,
1354
+ context: TContext,
1355
+ info: GraphQLResolveInfo,
1356
+ ) => TResult;
1357
+ interface GraphQLResolveInfo {
1358
+ readonly fieldName: string;
1359
+ readonly fieldNodes: ReadonlyArray<FieldNode>;
1360
+ readonly returnType: GraphQLOutputType;
1361
+ readonly parentType: GraphQLObjectType;
1362
+ readonly path: Path;
1363
+ readonly schema: GraphQLSchema;
1364
+ readonly fragments: ObjMap$1<FragmentDefinitionNode>;
1365
+ readonly rootValue: unknown;
1366
+ readonly operation: OperationDefinitionNode;
1367
+ readonly variableValues: {
1368
+ [variable: string]: unknown;
1369
+ };
1370
+ }
1371
+ /**
1372
+ * Custom extensions
1373
+ *
1374
+ * @remarks
1375
+ * Use a unique identifier name for your extension, for example the name of
1376
+ * your library or project. Do not use a shortened identifier as this increases
1377
+ * the risk of conflicts. We recommend you add at most one extension field,
1378
+ * an object which can contain all the values you need.
1379
+ *
1380
+ * We've provided these template arguments because this is an open type and
1381
+ * you may find them useful.
1382
+ */
1383
+ interface GraphQLFieldExtensions<_TSource, _TContext, _TArgs = any> {
1384
+ [attributeName: string]: unknown;
1385
+ }
1386
+ interface GraphQLFieldConfig<TSource, TContext, TArgs = any> {
1387
+ description?: Maybe<string>;
1388
+ type: GraphQLOutputType;
1389
+ args?: GraphQLFieldConfigArgumentMap;
1390
+ resolve?: GraphQLFieldResolver<TSource, TContext, TArgs>;
1391
+ subscribe?: GraphQLFieldResolver<TSource, TContext, TArgs>;
1392
+ deprecationReason?: Maybe<string>;
1393
+ extensions?: Maybe<
1394
+ Readonly<GraphQLFieldExtensions<TSource, TContext, TArgs>>
1395
+ >;
1396
+ astNode?: Maybe<FieldDefinitionNode>;
1397
+ }
1398
+ declare type GraphQLFieldConfigArgumentMap =
1399
+ ObjMap$1<GraphQLArgumentConfig>;
1400
+ /**
1401
+ * Custom extensions
1402
+ *
1403
+ * @remarks
1404
+ * Use a unique identifier name for your extension, for example the name of
1405
+ * your library or project. Do not use a shortened identifier as this increases
1406
+ * the risk of conflicts. We recommend you add at most one extension field,
1407
+ * an object which can contain all the values you need.
1408
+ */
1409
+ interface GraphQLArgumentExtensions {
1410
+ [attributeName: string]: unknown;
1411
+ }
1412
+ interface GraphQLArgumentConfig {
1413
+ description?: Maybe<string>;
1414
+ type: GraphQLInputType;
1415
+ defaultValue?: unknown;
1416
+ deprecationReason?: Maybe<string>;
1417
+ extensions?: Maybe<Readonly<GraphQLArgumentExtensions>>;
1418
+ astNode?: Maybe<InputValueDefinitionNode>;
1419
+ }
1420
+ declare type GraphQLFieldConfigMap<TSource, TContext> = ObjMap$1<
1421
+ GraphQLFieldConfig<TSource, TContext>
1422
+ >;
1423
+ interface GraphQLField<TSource, TContext, TArgs = any> {
1424
+ name: string;
1425
+ description: Maybe<string>;
1426
+ type: GraphQLOutputType;
1427
+ args: ReadonlyArray<GraphQLArgument>;
1428
+ resolve?: GraphQLFieldResolver<TSource, TContext, TArgs>;
1429
+ subscribe?: GraphQLFieldResolver<TSource, TContext, TArgs>;
1430
+ deprecationReason: Maybe<string>;
1431
+ extensions: Readonly<GraphQLFieldExtensions<TSource, TContext, TArgs>>;
1432
+ astNode: Maybe<FieldDefinitionNode>;
1433
+ }
1434
+ interface GraphQLArgument {
1435
+ name: string;
1436
+ description: Maybe<string>;
1437
+ type: GraphQLInputType;
1438
+ defaultValue: unknown;
1439
+ deprecationReason: Maybe<string>;
1440
+ extensions: Readonly<GraphQLArgumentExtensions>;
1441
+ astNode: Maybe<InputValueDefinitionNode>;
1442
+ }
1443
+ declare type GraphQLFieldMap<TSource, TContext> = ObjMap$1<
1444
+ GraphQLField<TSource, TContext>
1445
+ >;
1446
+ /**
1447
+ * Custom extensions
1448
+ *
1449
+ * @remarks
1450
+ * Use a unique identifier name for your extension, for example the name of
1451
+ * your library or project. Do not use a shortened identifier as this increases
1452
+ * the risk of conflicts. We recommend you add at most one extension field,
1453
+ * an object which can contain all the values you need.
1454
+ */
1455
+ interface GraphQLInterfaceTypeExtensions {
1456
+ [attributeName: string]: unknown;
1457
+ }
1458
+ /**
1459
+ * Interface Type Definition
1460
+ *
1461
+ * When a field can return one of a heterogeneous set of types, a Interface type
1462
+ * is used to describe what types are possible, what fields are in common across
1463
+ * all types, as well as a function to determine which type is actually used
1464
+ * when the field is resolved.
1465
+ *
1466
+ * Example:
1467
+ *
1468
+ * ```ts
1469
+ * const EntityType = new GraphQLInterfaceType({
1470
+ * name: 'Entity',
1471
+ * fields: {
1472
+ * name: { type: GraphQLString }
1473
+ * }
1474
+ * });
1475
+ * ```
1476
+ */
1477
+ declare class GraphQLInterfaceType {
1478
+ name: string;
1479
+ description: Maybe<string>;
1480
+ resolveType: Maybe<GraphQLTypeResolver<any, any>>;
1481
+ extensions: Readonly<GraphQLInterfaceTypeExtensions>;
1482
+ astNode: Maybe<InterfaceTypeDefinitionNode>;
1483
+ extensionASTNodes: ReadonlyArray<InterfaceTypeExtensionNode>;
1484
+ private _fields;
1485
+ private _interfaces;
1486
+ constructor(config: Readonly<GraphQLInterfaceTypeConfig<any, any>>);
1487
+ get [Symbol.toStringTag](): string;
1488
+ getFields(): GraphQLFieldMap<any, any>;
1489
+ getInterfaces(): ReadonlyArray<GraphQLInterfaceType>;
1490
+ toConfig(): GraphQLInterfaceTypeNormalizedConfig;
1491
+ toString(): string;
1492
+ toJSON(): string;
1493
+ }
1494
+ interface GraphQLInterfaceTypeConfig<TSource, TContext> {
1495
+ name: string;
1496
+ description?: Maybe<string>;
1497
+ interfaces?: ThunkReadonlyArray<GraphQLInterfaceType>;
1498
+ fields: ThunkObjMap<GraphQLFieldConfig<TSource, TContext>>;
1499
+ /**
1500
+ * Optionally provide a custom type resolver function. If one is not provided,
1501
+ * the default implementation will call `isTypeOf` on each implementing
1502
+ * Object type.
1503
+ */
1504
+ resolveType?: Maybe<GraphQLTypeResolver<TSource, TContext>>;
1505
+ extensions?: Maybe<Readonly<GraphQLInterfaceTypeExtensions>>;
1506
+ astNode?: Maybe<InterfaceTypeDefinitionNode>;
1507
+ extensionASTNodes?: Maybe<ReadonlyArray<InterfaceTypeExtensionNode>>;
1508
+ }
1509
+ interface GraphQLInterfaceTypeNormalizedConfig
1510
+ extends GraphQLInterfaceTypeConfig<any, any> {
1511
+ interfaces: ReadonlyArray<GraphQLInterfaceType>;
1512
+ fields: GraphQLFieldConfigMap<any, any>;
1513
+ extensions: Readonly<GraphQLInterfaceTypeExtensions>;
1514
+ extensionASTNodes: ReadonlyArray<InterfaceTypeExtensionNode>;
1515
+ }
1516
+ /**
1517
+ * Custom extensions
1518
+ *
1519
+ * @remarks
1520
+ * Use a unique identifier name for your extension, for example the name of
1521
+ * your library or project. Do not use a shortened identifier as this increases
1522
+ * the risk of conflicts. We recommend you add at most one extension field,
1523
+ * an object which can contain all the values you need.
1524
+ */
1525
+ interface GraphQLUnionTypeExtensions {
1526
+ [attributeName: string]: unknown;
1527
+ }
1528
+ /**
1529
+ * Union Type Definition
1530
+ *
1531
+ * When a field can return one of a heterogeneous set of types, a Union type
1532
+ * is used to describe what types are possible as well as providing a function
1533
+ * to determine which type is actually used when the field is resolved.
1534
+ *
1535
+ * Example:
1536
+ *
1537
+ * ```ts
1538
+ * const PetType = new GraphQLUnionType({
1539
+ * name: 'Pet',
1540
+ * types: [ DogType, CatType ],
1541
+ * resolveType(value) {
1542
+ * if (value instanceof Dog) {
1543
+ * return DogType;
1544
+ * }
1545
+ * if (value instanceof Cat) {
1546
+ * return CatType;
1547
+ * }
1548
+ * }
1549
+ * });
1550
+ * ```
1551
+ */
1552
+ declare class GraphQLUnionType {
1553
+ name: string;
1554
+ description: Maybe<string>;
1555
+ resolveType: Maybe<GraphQLTypeResolver<any, any>>;
1556
+ extensions: Readonly<GraphQLUnionTypeExtensions>;
1557
+ astNode: Maybe<UnionTypeDefinitionNode>;
1558
+ extensionASTNodes: ReadonlyArray<UnionTypeExtensionNode>;
1559
+ private _types;
1560
+ constructor(config: Readonly<GraphQLUnionTypeConfig<any, any>>);
1561
+ get [Symbol.toStringTag](): string;
1562
+ getTypes(): ReadonlyArray<GraphQLObjectType>;
1563
+ toConfig(): GraphQLUnionTypeNormalizedConfig;
1564
+ toString(): string;
1565
+ toJSON(): string;
1566
+ }
1567
+ interface GraphQLUnionTypeConfig<TSource, TContext> {
1568
+ name: string;
1569
+ description?: Maybe<string>;
1570
+ types: ThunkReadonlyArray<GraphQLObjectType>;
1571
+ /**
1572
+ * Optionally provide a custom type resolver function. If one is not provided,
1573
+ * the default implementation will call `isTypeOf` on each implementing
1574
+ * Object type.
1575
+ */
1576
+ resolveType?: Maybe<GraphQLTypeResolver<TSource, TContext>>;
1577
+ extensions?: Maybe<Readonly<GraphQLUnionTypeExtensions>>;
1578
+ astNode?: Maybe<UnionTypeDefinitionNode>;
1579
+ extensionASTNodes?: Maybe<ReadonlyArray<UnionTypeExtensionNode>>;
1580
+ }
1581
+ interface GraphQLUnionTypeNormalizedConfig
1582
+ extends GraphQLUnionTypeConfig<any, any> {
1583
+ types: ReadonlyArray<GraphQLObjectType>;
1584
+ extensions: Readonly<GraphQLUnionTypeExtensions>;
1585
+ extensionASTNodes: ReadonlyArray<UnionTypeExtensionNode>;
1586
+ }
1587
+ /**
1588
+ * Custom extensions
1589
+ *
1590
+ * @remarks
1591
+ * Use a unique identifier name for your extension, for example the name of
1592
+ * your library or project. Do not use a shortened identifier as this increases
1593
+ * the risk of conflicts. We recommend you add at most one extension field,
1594
+ * an object which can contain all the values you need.
1595
+ */
1596
+ interface GraphQLEnumTypeExtensions {
1597
+ [attributeName: string]: unknown;
1598
+ }
1599
+ /**
1600
+ * Enum Type Definition
1601
+ *
1602
+ * Some leaf values of requests and input values are Enums. GraphQL serializes
1603
+ * Enum values as strings, however internally Enums can be represented by any
1604
+ * kind of type, often integers.
1605
+ *
1606
+ * Example:
1607
+ *
1608
+ * ```ts
1609
+ * const RGBType = new GraphQLEnumType({
1610
+ * name: 'RGB',
1611
+ * values: {
1612
+ * RED: { value: 0 },
1613
+ * GREEN: { value: 1 },
1614
+ * BLUE: { value: 2 }
1615
+ * }
1616
+ * });
1617
+ * ```
1618
+ *
1619
+ * Note: If a value is not provided in a definition, the name of the enum value
1620
+ * will be used as its internal value.
1621
+ */
1622
+ declare class GraphQLEnumType {
1623
+ name: string;
1624
+ description: Maybe<string>;
1625
+ extensions: Readonly<GraphQLEnumTypeExtensions>;
1626
+ astNode: Maybe<EnumTypeDefinitionNode>;
1627
+ extensionASTNodes: ReadonlyArray<EnumTypeExtensionNode>;
1628
+ private _values;
1629
+ private _valueLookup;
1630
+ private _nameLookup;
1631
+ constructor(config: Readonly<GraphQLEnumTypeConfig>);
1632
+ get [Symbol.toStringTag](): string;
1633
+ getValues(): ReadonlyArray<GraphQLEnumValue>;
1634
+ getValue(name: string): Maybe<GraphQLEnumValue>;
1635
+ serialize(outputValue: unknown): Maybe<string>;
1636
+ parseValue(inputValue: unknown): Maybe<any>;
1637
+ parseLiteral(
1638
+ valueNode: ValueNode,
1639
+ _variables: Maybe<ObjMap$1<unknown>>,
1640
+ ): Maybe<any>;
1641
+ toConfig(): GraphQLEnumTypeNormalizedConfig;
1642
+ toString(): string;
1643
+ toJSON(): string;
1644
+ }
1645
+ interface GraphQLEnumTypeConfig {
1646
+ name: string;
1647
+ description?: Maybe<string>;
1648
+ values: GraphQLEnumValueConfigMap;
1649
+ extensions?: Maybe<Readonly<GraphQLEnumTypeExtensions>>;
1650
+ astNode?: Maybe<EnumTypeDefinitionNode>;
1651
+ extensionASTNodes?: Maybe<ReadonlyArray<EnumTypeExtensionNode>>;
1652
+ }
1653
+ interface GraphQLEnumTypeNormalizedConfig extends GraphQLEnumTypeConfig {
1654
+ extensions: Readonly<GraphQLEnumTypeExtensions>;
1655
+ extensionASTNodes: ReadonlyArray<EnumTypeExtensionNode>;
1656
+ }
1657
+ declare type GraphQLEnumValueConfigMap = ObjMap$1<GraphQLEnumValueConfig>;
1658
+ /**
1659
+ * Custom extensions
1660
+ *
1661
+ * @remarks
1662
+ * Use a unique identifier name for your extension, for example the name of
1663
+ * your library or project. Do not use a shortened identifier as this increases
1664
+ * the risk of conflicts. We recommend you add at most one extension field,
1665
+ * an object which can contain all the values you need.
1666
+ */
1667
+ interface GraphQLEnumValueExtensions {
1668
+ [attributeName: string]: unknown;
1669
+ }
1670
+ interface GraphQLEnumValueConfig {
1671
+ description?: Maybe<string>;
1672
+ value?: any;
1673
+ deprecationReason?: Maybe<string>;
1674
+ extensions?: Maybe<Readonly<GraphQLEnumValueExtensions>>;
1675
+ astNode?: Maybe<EnumValueDefinitionNode>;
1676
+ }
1677
+ interface GraphQLEnumValue {
1678
+ name: string;
1679
+ description: Maybe<string>;
1680
+ value: any;
1681
+ deprecationReason: Maybe<string>;
1682
+ extensions: Readonly<GraphQLEnumValueExtensions>;
1683
+ astNode: Maybe<EnumValueDefinitionNode>;
1684
+ }
1685
+ /**
1686
+ * Custom extensions
1687
+ *
1688
+ * @remarks
1689
+ * Use a unique identifier name for your extension, for example the name of
1690
+ * your library or project. Do not use a shortened identifier as this increases
1691
+ * the risk of conflicts. We recommend you add at most one extension field,
1692
+ * an object which can contain all the values you need.
1693
+ */
1694
+ interface GraphQLInputObjectTypeExtensions {
1695
+ [attributeName: string]: unknown;
1696
+ }
1697
+ /**
1698
+ * Input Object Type Definition
1699
+ *
1700
+ * An input object defines a structured collection of fields which may be
1701
+ * supplied to a field argument.
1702
+ *
1703
+ * Using `NonNull` will ensure that a value must be provided by the query
1704
+ *
1705
+ * Example:
1706
+ *
1707
+ * ```ts
1708
+ * const GeoPoint = new GraphQLInputObjectType({
1709
+ * name: 'GeoPoint',
1710
+ * fields: {
1711
+ * lat: { type: new GraphQLNonNull(GraphQLFloat) },
1712
+ * lon: { type: new GraphQLNonNull(GraphQLFloat) },
1713
+ * alt: { type: GraphQLFloat, defaultValue: 0 },
1714
+ * }
1715
+ * });
1716
+ * ```
1717
+ */
1718
+ declare class GraphQLInputObjectType {
1719
+ name: string;
1720
+ description: Maybe<string>;
1721
+ extensions: Readonly<GraphQLInputObjectTypeExtensions>;
1722
+ astNode: Maybe<InputObjectTypeDefinitionNode>;
1723
+ extensionASTNodes: ReadonlyArray<InputObjectTypeExtensionNode>;
1724
+ private _fields;
1725
+ constructor(config: Readonly<GraphQLInputObjectTypeConfig>);
1726
+ get [Symbol.toStringTag](): string;
1727
+ getFields(): GraphQLInputFieldMap;
1728
+ toConfig(): GraphQLInputObjectTypeNormalizedConfig;
1729
+ toString(): string;
1730
+ toJSON(): string;
1731
+ }
1732
+ interface GraphQLInputObjectTypeConfig {
1733
+ name: string;
1734
+ description?: Maybe<string>;
1735
+ fields: ThunkObjMap<GraphQLInputFieldConfig>;
1736
+ extensions?: Maybe<Readonly<GraphQLInputObjectTypeExtensions>>;
1737
+ astNode?: Maybe<InputObjectTypeDefinitionNode>;
1738
+ extensionASTNodes?: Maybe<ReadonlyArray<InputObjectTypeExtensionNode>>;
1739
+ }
1740
+ interface GraphQLInputObjectTypeNormalizedConfig
1741
+ extends GraphQLInputObjectTypeConfig {
1742
+ fields: GraphQLInputFieldConfigMap;
1743
+ extensions: Readonly<GraphQLInputObjectTypeExtensions>;
1744
+ extensionASTNodes: ReadonlyArray<InputObjectTypeExtensionNode>;
1745
+ }
1746
+ /**
1747
+ * Custom extensions
1748
+ *
1749
+ * @remarks
1750
+ * Use a unique identifier name for your extension, for example the name of
1751
+ * your library or project. Do not use a shortened identifier as this increases
1752
+ * the risk of conflicts. We recommend you add at most one extension field,
1753
+ * an object which can contain all the values you need.
1754
+ */
1755
+ interface GraphQLInputFieldExtensions {
1756
+ [attributeName: string]: unknown;
1757
+ }
1758
+ interface GraphQLInputFieldConfig {
1759
+ description?: Maybe<string>;
1760
+ type: GraphQLInputType;
1761
+ defaultValue?: unknown;
1762
+ deprecationReason?: Maybe<string>;
1763
+ extensions?: Maybe<Readonly<GraphQLInputFieldExtensions>>;
1764
+ astNode?: Maybe<InputValueDefinitionNode>;
1765
+ }
1766
+ declare type GraphQLInputFieldConfigMap =
1767
+ ObjMap$1<GraphQLInputFieldConfig>;
1768
+ interface GraphQLInputField {
1769
+ name: string;
1770
+ description: Maybe<string>;
1771
+ type: GraphQLInputType;
1772
+ defaultValue: unknown;
1773
+ deprecationReason: Maybe<string>;
1774
+ extensions: Readonly<GraphQLInputFieldExtensions>;
1775
+ astNode: Maybe<InputValueDefinitionNode>;
1776
+ }
1777
+ declare type GraphQLInputFieldMap = ObjMap$1<GraphQLInputField>;
1778
+
1779
+ interface FormattedExecutionResult<
1780
+ TData = ObjMap$1<unknown>,
1781
+ TExtensions = ObjMap$1<unknown>,
1782
+ > {
1783
+ errors?: ReadonlyArray<GraphQLFormattedError>;
1784
+ data?: TData | null;
1785
+ extensions?: TExtensions;
1786
+ }
1787
+
1788
+ interface KeyValueCache<V = string> {
1789
+ get(key: string): Promise<V | undefined>;
1790
+ set(key: string, value: V, options?: KeyValueCacheSetOptions): Promise<void>;
1791
+ delete(key: string): Promise<boolean | void>;
1792
+ }
1793
+ interface KeyValueCacheSetOptions {
1794
+ ttl?: number | null;
1795
+ }
1796
+
1797
+ type BaseContext = {};
1798
+
1799
+ declare class HeaderMap extends Map<string, string> {
1800
+ private __identity;
1801
+ set(key: string, value: string): this;
1802
+ get(key: string): string | undefined;
1803
+ delete(key: string): boolean;
1804
+ has(key: string): boolean;
1805
+ }
1806
+
1807
+ interface HTTPGraphQLRequest {
1808
+ method: string;
1809
+ headers: HeaderMap;
1810
+ search: string;
1811
+ body: unknown;
1812
+ }
1813
+ interface HTTPGraphQLHead {
1814
+ status?: number;
1815
+ headers: HeaderMap;
1816
+ }
1817
+
1818
+ type WithRequired<T, K extends keyof T> = T & Required<Pick<T, K>>;
1819
+
1820
+ interface ObjMap<T> {
1821
+ [key: string]: T;
1822
+ }
1823
+ interface GraphQLExperimentalFormattedInitialIncrementalExecutionResult<TData = ObjMap<unknown>, TExtensions = ObjMap<unknown>> extends FormattedExecutionResult<TData, TExtensions> {
1824
+ hasNext: boolean;
1825
+ incremental?: ReadonlyArray<GraphQLExperimentalFormattedIncrementalResult<TData, TExtensions>>;
1826
+ extensions?: TExtensions;
1827
+ }
1828
+ interface GraphQLExperimentalFormattedSubsequentIncrementalExecutionResult<TData = ObjMap<unknown>, TExtensions = ObjMap<unknown>> {
1829
+ hasNext: boolean;
1830
+ incremental?: ReadonlyArray<GraphQLExperimentalFormattedIncrementalResult<TData, TExtensions>>;
1831
+ extensions?: TExtensions;
1832
+ }
1833
+ type GraphQLExperimentalFormattedIncrementalResult<TData = ObjMap<unknown>, TExtensions = ObjMap<unknown>> = GraphQLExperimentalFormattedIncrementalDeferResult<TData, TExtensions> | GraphQLExperimentalFormattedIncrementalStreamResult<TData, TExtensions>;
1834
+ interface GraphQLExperimentalFormattedIncrementalDeferResult<TData = ObjMap<unknown>, TExtensions = ObjMap<unknown>> extends FormattedExecutionResult<TData, TExtensions> {
1835
+ path?: ReadonlyArray<string | number>;
1836
+ label?: string;
1837
+ }
1838
+ interface GraphQLExperimentalFormattedIncrementalStreamResult<TData = Array<unknown>, TExtensions = ObjMap<unknown>> {
1839
+ errors?: ReadonlyArray<GraphQLFormattedError>;
1840
+ items?: TData | null;
1841
+ path?: ReadonlyArray<string | number>;
1842
+ label?: string;
1843
+ extensions?: TExtensions;
1844
+ }
1845
+
1846
+ interface GraphQLRequest<TVariables extends VariableValues = VariableValues> {
1847
+ query?: string;
1848
+ operationName?: string;
1849
+ variables?: TVariables;
1850
+ extensions?: Record<string, any>;
1851
+ http?: HTTPGraphQLRequest;
1852
+ }
1853
+ type VariableValues = {
1854
+ [name: string]: any;
1855
+ };
1856
+ type GraphQLResponseBody<TData = Record<string, unknown>> = {
1857
+ kind: 'single';
1858
+ singleResult: FormattedExecutionResult<TData>;
1859
+ } | {
1860
+ kind: 'incremental';
1861
+ initialResult: GraphQLExperimentalFormattedInitialIncrementalExecutionResult;
1862
+ subsequentResults: AsyncIterable<GraphQLExperimentalFormattedSubsequentIncrementalExecutionResult>;
1863
+ };
1864
+ type GraphQLInProgressResponse<TData = Record<string, unknown>> = {
1865
+ http: HTTPGraphQLHead;
1866
+ body?: GraphQLResponseBody<TData>;
1867
+ };
1868
+ type GraphQLResponse<TData = Record<string, unknown>> = WithRequired<GraphQLInProgressResponse<TData>, 'body'>;
1869
+
1870
+ // DO NOT EDIT! This is a generated file. Edit the JSDoc in src/*.js instead and run 'npm run types'.
1871
+
1872
+
1873
+ /** Wire format reader using `Uint8Array` if available, otherwise `Array`. */
1874
+ declare class Reader {
1875
+
1876
+ /**
1877
+ * Constructs a new reader instance using the specified buffer.
1878
+ * @param buffer Buffer to read from
1879
+ */
1880
+ constructor(buffer: Uint8Array);
1881
+
1882
+ /** Read buffer. */
1883
+ public buf: Uint8Array;
1884
+
1885
+ /** Read buffer position. */
1886
+ public pos: number;
1887
+
1888
+ /** Read buffer length. */
1889
+ public len: number;
1890
+
1891
+ /**
1892
+ * Creates a new reader using the specified buffer.
1893
+ * @param buffer Buffer to read from
1894
+ * @returns A {@link BufferReader} if `buffer` is a Buffer, otherwise a {@link Reader}
1895
+ * @throws {Error} If `buffer` is not a valid buffer
1896
+ */
1897
+ public static create(buffer: (Uint8Array|Buffer)): (Reader|BufferReader);
1898
+
1899
+ /**
1900
+ * Reads a varint as an unsigned 32 bit value.
1901
+ * @returns Value read
1902
+ */
1903
+ public uint32(): number;
1904
+
1905
+ /**
1906
+ * Reads a varint as a signed 32 bit value.
1907
+ * @returns Value read
1908
+ */
1909
+ public int32(): number;
1910
+
1911
+ /**
1912
+ * Reads a zig-zag encoded varint as a signed 32 bit value.
1913
+ * @returns Value read
1914
+ */
1915
+ public sint32(): number;
1916
+
1917
+ /**
1918
+ * Reads a varint as a boolean.
1919
+ * @returns Value read
1920
+ */
1921
+ public bool(): boolean;
1922
+
1923
+ /**
1924
+ * Reads fixed 32 bits as an unsigned 32 bit integer.
1925
+ * @returns Value read
1926
+ */
1927
+ public fixed32(): number;
1928
+
1929
+ /**
1930
+ * Reads fixed 32 bits as a signed 32 bit integer.
1931
+ * @returns Value read
1932
+ */
1933
+ public sfixed32(): number;
1934
+
1935
+ /**
1936
+ * Reads a float (32 bit) as a number.
1937
+ * @returns Value read
1938
+ */
1939
+ public float(): number;
1940
+
1941
+ /**
1942
+ * Reads a double (64 bit float) as a number.
1943
+ * @returns Value read
1944
+ */
1945
+ public double(): number;
1946
+
1947
+ /**
1948
+ * Reads a sequence of bytes preceeded by its length as a varint.
1949
+ * @returns Value read
1950
+ */
1951
+ public bytes(): Uint8Array;
1952
+
1953
+ /**
1954
+ * Reads a string preceeded by its byte length as a varint.
1955
+ * @returns Value read
1956
+ */
1957
+ public string(): string;
1958
+
1959
+ /**
1960
+ * Skips the specified number of bytes if specified, otherwise skips a varint.
1961
+ * @param [length] Length if known, otherwise a varint is assumed
1962
+ * @returns `this`
1963
+ */
1964
+ public skip(length?: number): Reader;
1965
+
1966
+ /**
1967
+ * Skips the next element of the specified wire type.
1968
+ * @param wireType Wire type received
1969
+ * @returns `this`
1970
+ */
1971
+ public skipType(wireType: number): Reader;
1972
+ }
1973
+
1974
+ /** Wire format reader using node buffers. */
1975
+ declare class BufferReader extends Reader {
1976
+
1977
+ /**
1978
+ * Constructs a new buffer reader instance.
1979
+ * @param buffer Buffer to read from
1980
+ */
1981
+ constructor(buffer: Buffer);
1982
+
1983
+ /**
1984
+ * Reads a sequence of bytes preceeded by its length as a varint.
1985
+ * @returns Value read
1986
+ */
1987
+ public bytes(): Buffer;
1988
+ }
1989
+
1990
+ /** Conversion options as used by {@link Type#toObject} and {@link Message.toObject}. */
1991
+ interface IConversionOptions {
1992
+
1993
+ /**
1994
+ * Long conversion type.
1995
+ * Valid values are `String` and `Number` (the global types).
1996
+ * Defaults to copy the present value, which is a possibly unsafe number without and a {@link Long} with a long library.
1997
+ */
1998
+ longs?: Function;
1999
+
2000
+ /**
2001
+ * Enum value conversion type.
2002
+ * Only valid value is `String` (the global type).
2003
+ * Defaults to copy the present value, which is the numeric id.
2004
+ */
2005
+ enums?: Function;
2006
+
2007
+ /**
2008
+ * Bytes value conversion type.
2009
+ * Valid values are `Array` and (a base64 encoded) `String` (the global types).
2010
+ * Defaults to copy the present value, which usually is a Buffer under node and an Uint8Array in the browser.
2011
+ */
2012
+ bytes?: Function;
2013
+
2014
+ /** Also sets default values on the resulting object */
2015
+ defaults?: boolean;
2016
+
2017
+ /** Sets empty arrays for missing repeated fields even if `defaults=false` */
2018
+ arrays?: boolean;
2019
+
2020
+ /** Sets empty objects for missing map fields even if `defaults=false` */
2021
+ objects?: boolean;
2022
+
2023
+ /** Includes virtual oneof properties set to the present field's name, if any */
2024
+ oneofs?: boolean;
2025
+
2026
+ /** Performs additional JSON compatibility conversions, i.e. NaN and Infinity to strings */
2027
+ json?: boolean;
2028
+ }
2029
+
2030
+ /**
2031
+ * Any compatible Buffer instance.
2032
+ * This is a minimal stand-alone definition of a Buffer instance. The actual type is that exported by node's typings.
2033
+ */
2034
+ interface Buffer extends Uint8Array {
2035
+ }
2036
+
2037
+ /** Wire format writer using `Uint8Array` if available, otherwise `Array`. */
2038
+ declare class Writer {
2039
+
2040
+ /** Constructs a new writer instance. */
2041
+ constructor();
2042
+
2043
+ /** Current length. */
2044
+ public len: number;
2045
+
2046
+ /** Operations head. */
2047
+ public head: object;
2048
+
2049
+ /** Operations tail */
2050
+ public tail: object;
2051
+
2052
+ /** Linked forked states. */
2053
+ public states: (object|null);
2054
+
2055
+ /**
2056
+ * Creates a new writer.
2057
+ * @returns A {@link BufferWriter} when Buffers are supported, otherwise a {@link Writer}
2058
+ */
2059
+ public static create(): (BufferWriter|Writer);
2060
+
2061
+ /**
2062
+ * Allocates a buffer of the specified size.
2063
+ * @param size Buffer size
2064
+ * @returns Buffer
2065
+ */
2066
+ public static alloc(size: number): Uint8Array;
2067
+
2068
+ /**
2069
+ * Writes an unsigned 32 bit value as a varint.
2070
+ * @param value Value to write
2071
+ * @returns `this`
2072
+ */
2073
+ public uint32(value: number): Writer;
2074
+
2075
+ /**
2076
+ * Writes a signed 32 bit value as a varint.
2077
+ * @param value Value to write
2078
+ * @returns `this`
2079
+ */
2080
+ public int32(value: number): Writer;
2081
+
2082
+ /**
2083
+ * Writes a 32 bit value as a varint, zig-zag encoded.
2084
+ * @param value Value to write
2085
+ * @returns `this`
2086
+ */
2087
+ public sint32(value: number): Writer;
2088
+
2089
+ /**
2090
+ * Writes an unsigned 64 bit value as a varint.
2091
+ * @param value Value to write
2092
+ * @returns `this`
2093
+ * @throws {TypeError} If `value` is a string and no long library is present.
2094
+ */
2095
+ public uint64(value: (number|string)): Writer;
2096
+
2097
+ /**
2098
+ * Writes a signed 64 bit value as a varint.
2099
+ * @param value Value to write
2100
+ * @returns `this`
2101
+ * @throws {TypeError} If `value` is a string and no long library is present.
2102
+ */
2103
+ public int64(value: (number|string)): Writer;
2104
+
2105
+ /**
2106
+ * Writes a signed 64 bit value as a varint, zig-zag encoded.
2107
+ * @param value Value to write
2108
+ * @returns `this`
2109
+ * @throws {TypeError} If `value` is a string and no long library is present.
2110
+ */
2111
+ public sint64(value: (number|string)): Writer;
2112
+
2113
+ /**
2114
+ * Writes a boolish value as a varint.
2115
+ * @param value Value to write
2116
+ * @returns `this`
2117
+ */
2118
+ public bool(value: boolean): Writer;
2119
+
2120
+ /**
2121
+ * Writes an unsigned 32 bit value as fixed 32 bits.
2122
+ * @param value Value to write
2123
+ * @returns `this`
2124
+ */
2125
+ public fixed32(value: number): Writer;
2126
+
2127
+ /**
2128
+ * Writes a signed 32 bit value as fixed 32 bits.
2129
+ * @param value Value to write
2130
+ * @returns `this`
2131
+ */
2132
+ public sfixed32(value: number): Writer;
2133
+
2134
+ /**
2135
+ * Writes an unsigned 64 bit value as fixed 64 bits.
2136
+ * @param value Value to write
2137
+ * @returns `this`
2138
+ * @throws {TypeError} If `value` is a string and no long library is present.
2139
+ */
2140
+ public fixed64(value: (number|string)): Writer;
2141
+
2142
+ /**
2143
+ * Writes a signed 64 bit value as fixed 64 bits.
2144
+ * @param value Value to write
2145
+ * @returns `this`
2146
+ * @throws {TypeError} If `value` is a string and no long library is present.
2147
+ */
2148
+ public sfixed64(value: (number|string)): Writer;
2149
+
2150
+ /**
2151
+ * Writes a float (32 bit).
2152
+ * @param value Value to write
2153
+ * @returns `this`
2154
+ */
2155
+ public float(value: number): Writer;
2156
+
2157
+ /**
2158
+ * Writes a double (64 bit float).
2159
+ * @param value Value to write
2160
+ * @returns `this`
2161
+ */
2162
+ public double(value: number): Writer;
2163
+
2164
+ /**
2165
+ * Writes a sequence of bytes.
2166
+ * @param value Buffer or base64 encoded string to write
2167
+ * @returns `this`
2168
+ */
2169
+ public bytes(value: (Uint8Array|string)): Writer;
2170
+
2171
+ /**
2172
+ * Writes a string.
2173
+ * @param value Value to write
2174
+ * @returns `this`
2175
+ */
2176
+ public string(value: string): Writer;
2177
+
2178
+ /**
2179
+ * Forks this writer's state by pushing it to a stack.
2180
+ * Calling {@link Writer#reset|reset} or {@link Writer#ldelim|ldelim} resets the writer to the previous state.
2181
+ * @returns `this`
2182
+ */
2183
+ public fork(): Writer;
2184
+
2185
+ /**
2186
+ * Resets this instance to the last state.
2187
+ * @returns `this`
2188
+ */
2189
+ public reset(): Writer;
2190
+
2191
+ /**
2192
+ * Resets to the last state and appends the fork state's current write length as a varint followed by its operations.
2193
+ * @returns `this`
2194
+ */
2195
+ public ldelim(): Writer;
2196
+
2197
+ /**
2198
+ * Finishes the write operation.
2199
+ * @returns Finished buffer
2200
+ */
2201
+ public finish(): Uint8Array;
2202
+ }
2203
+
2204
+ /** Wire format writer using node buffers. */
2205
+ declare class BufferWriter extends Writer {
2206
+
2207
+ /** Constructs a new buffer writer instance. */
2208
+ constructor();
2209
+
2210
+ /**
2211
+ * Finishes the write operation.
2212
+ * @returns Finished buffer
2213
+ */
2214
+ public finish(): Buffer;
2215
+
2216
+ /**
2217
+ * Allocates a buffer of the specified size.
2218
+ * @param size Buffer size
2219
+ * @returns Buffer
2220
+ */
2221
+ public static alloc(size: number): Buffer;
2222
+ }
2223
+
2224
+ interface NonFtv1ErrorPath {
2225
+ subgraph: string;
2226
+ path: GraphQLError['path'];
2227
+ }
2228
+
2229
+ interface ApolloConfig {
2230
+ key?: string;
2231
+ keyHash?: string;
2232
+ graphRef?: string;
2233
+ }
2234
+
2235
+ /** Properties of a Trace. */
2236
+ interface ITrace {
2237
+
2238
+ /** Trace startTime */
2239
+ startTime?: (google.protobuf.ITimestamp|null);
2240
+
2241
+ /** Trace endTime */
2242
+ endTime?: (google.protobuf.ITimestamp|null);
2243
+
2244
+ /** Trace durationNs */
2245
+ durationNs?: (number|null);
2246
+
2247
+ /** Trace root */
2248
+ root?: (Trace.INode|null);
2249
+
2250
+ /** Trace isIncomplete */
2251
+ isIncomplete?: (boolean|null);
2252
+
2253
+ /** Trace signature */
2254
+ signature?: (string|null);
2255
+
2256
+ /** Trace unexecutedOperationBody */
2257
+ unexecutedOperationBody?: (string|null);
2258
+
2259
+ /** Trace unexecutedOperationName */
2260
+ unexecutedOperationName?: (string|null);
2261
+
2262
+ /** Trace details */
2263
+ details?: (Trace.IDetails|null);
2264
+
2265
+ /** Trace clientName */
2266
+ clientName?: (string|null);
2267
+
2268
+ /** Trace clientVersion */
2269
+ clientVersion?: (string|null);
2270
+
2271
+ /** Trace http */
2272
+ http?: (Trace.IHTTP|null);
2273
+
2274
+ /** Trace cachePolicy */
2275
+ cachePolicy?: (Trace.ICachePolicy|null);
2276
+
2277
+ /** Trace queryPlan */
2278
+ queryPlan?: (Trace.IQueryPlanNode|null);
2279
+
2280
+ /** Trace fullQueryCacheHit */
2281
+ fullQueryCacheHit?: (boolean|null);
2282
+
2283
+ /** Trace persistedQueryHit */
2284
+ persistedQueryHit?: (boolean|null);
2285
+
2286
+ /** Trace persistedQueryRegister */
2287
+ persistedQueryRegister?: (boolean|null);
2288
+
2289
+ /** Trace registeredOperation */
2290
+ registeredOperation?: (boolean|null);
2291
+
2292
+ /** Trace forbiddenOperation */
2293
+ forbiddenOperation?: (boolean|null);
2294
+
2295
+ /** Trace fieldExecutionWeight */
2296
+ fieldExecutionWeight?: (number|null);
2297
+ }
2298
+
2299
+ /** Represents a Trace. */
2300
+ declare class Trace implements ITrace {
2301
+
2302
+ /**
2303
+ * Constructs a new Trace.
2304
+ * @param [properties] Properties to set
2305
+ */
2306
+ constructor(properties?: ITrace);
2307
+
2308
+ /** Trace startTime. */
2309
+ public startTime?: (google.protobuf.ITimestamp|null);
2310
+
2311
+ /** Trace endTime. */
2312
+ public endTime?: (google.protobuf.ITimestamp|null);
2313
+
2314
+ /** Trace durationNs. */
2315
+ public durationNs: number;
2316
+
2317
+ /** Trace root. */
2318
+ public root?: (Trace.INode|null);
2319
+
2320
+ /** Trace isIncomplete. */
2321
+ public isIncomplete: boolean;
2322
+
2323
+ /** Trace signature. */
2324
+ public signature: string;
2325
+
2326
+ /** Trace unexecutedOperationBody. */
2327
+ public unexecutedOperationBody: string;
2328
+
2329
+ /** Trace unexecutedOperationName. */
2330
+ public unexecutedOperationName: string;
2331
+
2332
+ /** Trace details. */
2333
+ public details?: (Trace.IDetails|null);
2334
+
2335
+ /** Trace clientName. */
2336
+ public clientName: string;
2337
+
2338
+ /** Trace clientVersion. */
2339
+ public clientVersion: string;
2340
+
2341
+ /** Trace http. */
2342
+ public http?: (Trace.IHTTP|null);
2343
+
2344
+ /** Trace cachePolicy. */
2345
+ public cachePolicy?: (Trace.ICachePolicy|null);
2346
+
2347
+ /** Trace queryPlan. */
2348
+ public queryPlan?: (Trace.IQueryPlanNode|null);
2349
+
2350
+ /** Trace fullQueryCacheHit. */
2351
+ public fullQueryCacheHit: boolean;
2352
+
2353
+ /** Trace persistedQueryHit. */
2354
+ public persistedQueryHit: boolean;
2355
+
2356
+ /** Trace persistedQueryRegister. */
2357
+ public persistedQueryRegister: boolean;
2358
+
2359
+ /** Trace registeredOperation. */
2360
+ public registeredOperation: boolean;
2361
+
2362
+ /** Trace forbiddenOperation. */
2363
+ public forbiddenOperation: boolean;
2364
+
2365
+ /** Trace fieldExecutionWeight. */
2366
+ public fieldExecutionWeight: number;
2367
+
2368
+ /**
2369
+ * Creates a new Trace instance using the specified properties.
2370
+ * @param [properties] Properties to set
2371
+ * @returns Trace instance
2372
+ */
2373
+ public static create(properties?: ITrace): Trace;
2374
+
2375
+ /**
2376
+ * Encodes the specified Trace message. Does not implicitly {@link Trace.verify|verify} messages.
2377
+ * @param message Trace message or plain object to encode
2378
+ * @param [writer] Writer to encode to
2379
+ * @returns Writer
2380
+ */
2381
+ public static encode(message: ITrace, writer?: Writer): Writer;
2382
+
2383
+ /**
2384
+ * Encodes the specified Trace message, length delimited. Does not implicitly {@link Trace.verify|verify} messages.
2385
+ * @param message Trace message or plain object to encode
2386
+ * @param [writer] Writer to encode to
2387
+ * @returns Writer
2388
+ */
2389
+ public static encodeDelimited(message: ITrace, writer?: Writer): Writer;
2390
+
2391
+ /**
2392
+ * Decodes a Trace message from the specified reader or buffer.
2393
+ * @param reader Reader or buffer to decode from
2394
+ * @param [length] Message length if known beforehand
2395
+ * @returns Trace
2396
+ * @throws {Error} If the payload is not a reader or valid buffer
2397
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2398
+ */
2399
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace;
2400
+
2401
+ /**
2402
+ * Decodes a Trace message from the specified reader or buffer, length delimited.
2403
+ * @param reader Reader or buffer to decode from
2404
+ * @returns Trace
2405
+ * @throws {Error} If the payload is not a reader or valid buffer
2406
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2407
+ */
2408
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace;
2409
+
2410
+ /**
2411
+ * Verifies a Trace message.
2412
+ * @param message Plain object to verify
2413
+ * @returns `null` if valid, otherwise the reason why it is not
2414
+ */
2415
+ public static verify(message: { [k: string]: any }): (string|null);
2416
+
2417
+ /**
2418
+ * Creates a plain object from a Trace message. Also converts values to other types if specified.
2419
+ * @param message Trace
2420
+ * @param [options] Conversion options
2421
+ * @returns Plain object
2422
+ */
2423
+ public static toObject(message: Trace, options?: IConversionOptions): { [k: string]: any };
2424
+
2425
+ /**
2426
+ * Converts this Trace to JSON.
2427
+ * @returns JSON object
2428
+ */
2429
+ public toJSON(): { [k: string]: any };
2430
+ }
2431
+
2432
+ declare namespace Trace {
2433
+
2434
+ /** Properties of a CachePolicy. */
2435
+ interface ICachePolicy {
2436
+
2437
+ /** CachePolicy scope */
2438
+ scope?: (Trace.CachePolicy.Scope|null);
2439
+
2440
+ /** CachePolicy maxAgeNs */
2441
+ maxAgeNs?: (number|null);
2442
+ }
2443
+
2444
+ /** Represents a CachePolicy. */
2445
+ class CachePolicy implements ICachePolicy {
2446
+
2447
+ /**
2448
+ * Constructs a new CachePolicy.
2449
+ * @param [properties] Properties to set
2450
+ */
2451
+ constructor(properties?: Trace.ICachePolicy);
2452
+
2453
+ /** CachePolicy scope. */
2454
+ public scope: Trace.CachePolicy.Scope;
2455
+
2456
+ /** CachePolicy maxAgeNs. */
2457
+ public maxAgeNs: number;
2458
+
2459
+ /**
2460
+ * Creates a new CachePolicy instance using the specified properties.
2461
+ * @param [properties] Properties to set
2462
+ * @returns CachePolicy instance
2463
+ */
2464
+ public static create(properties?: Trace.ICachePolicy): Trace.CachePolicy;
2465
+
2466
+ /**
2467
+ * Encodes the specified CachePolicy message. Does not implicitly {@link Trace.CachePolicy.verify|verify} messages.
2468
+ * @param message CachePolicy message or plain object to encode
2469
+ * @param [writer] Writer to encode to
2470
+ * @returns Writer
2471
+ */
2472
+ public static encode(message: Trace.ICachePolicy, writer?: Writer): Writer;
2473
+
2474
+ /**
2475
+ * Encodes the specified CachePolicy message, length delimited. Does not implicitly {@link Trace.CachePolicy.verify|verify} messages.
2476
+ * @param message CachePolicy message or plain object to encode
2477
+ * @param [writer] Writer to encode to
2478
+ * @returns Writer
2479
+ */
2480
+ public static encodeDelimited(message: Trace.ICachePolicy, writer?: Writer): Writer;
2481
+
2482
+ /**
2483
+ * Decodes a CachePolicy message from the specified reader or buffer.
2484
+ * @param reader Reader or buffer to decode from
2485
+ * @param [length] Message length if known beforehand
2486
+ * @returns CachePolicy
2487
+ * @throws {Error} If the payload is not a reader or valid buffer
2488
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2489
+ */
2490
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.CachePolicy;
2491
+
2492
+ /**
2493
+ * Decodes a CachePolicy message from the specified reader or buffer, length delimited.
2494
+ * @param reader Reader or buffer to decode from
2495
+ * @returns CachePolicy
2496
+ * @throws {Error} If the payload is not a reader or valid buffer
2497
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2498
+ */
2499
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.CachePolicy;
2500
+
2501
+ /**
2502
+ * Verifies a CachePolicy message.
2503
+ * @param message Plain object to verify
2504
+ * @returns `null` if valid, otherwise the reason why it is not
2505
+ */
2506
+ public static verify(message: { [k: string]: any }): (string|null);
2507
+
2508
+ /**
2509
+ * Creates a plain object from a CachePolicy message. Also converts values to other types if specified.
2510
+ * @param message CachePolicy
2511
+ * @param [options] Conversion options
2512
+ * @returns Plain object
2513
+ */
2514
+ public static toObject(message: Trace.CachePolicy, options?: IConversionOptions): { [k: string]: any };
2515
+
2516
+ /**
2517
+ * Converts this CachePolicy to JSON.
2518
+ * @returns JSON object
2519
+ */
2520
+ public toJSON(): { [k: string]: any };
2521
+ }
2522
+
2523
+ namespace CachePolicy {
2524
+
2525
+ /** Scope enum. */
2526
+ declare enum Scope {
2527
+ UNKNOWN = 0,
2528
+ PUBLIC = 1,
2529
+ PRIVATE = 2
2530
+ }
2531
+ }
2532
+
2533
+ /** Properties of a Details. */
2534
+ interface IDetails {
2535
+
2536
+ /** Details variablesJson */
2537
+ variablesJson?: ({ [k: string]: string }|null);
2538
+
2539
+ /** Details operationName */
2540
+ operationName?: (string|null);
2541
+ }
2542
+
2543
+ /** Represents a Details. */
2544
+ class Details implements IDetails {
2545
+
2546
+ /**
2547
+ * Constructs a new Details.
2548
+ * @param [properties] Properties to set
2549
+ */
2550
+ constructor(properties?: Trace.IDetails);
2551
+
2552
+ /** Details variablesJson. */
2553
+ public variablesJson: { [k: string]: string };
2554
+
2555
+ /** Details operationName. */
2556
+ public operationName: string;
2557
+
2558
+ /**
2559
+ * Creates a new Details instance using the specified properties.
2560
+ * @param [properties] Properties to set
2561
+ * @returns Details instance
2562
+ */
2563
+ public static create(properties?: Trace.IDetails): Trace.Details;
2564
+
2565
+ /**
2566
+ * Encodes the specified Details message. Does not implicitly {@link Trace.Details.verify|verify} messages.
2567
+ * @param message Details message or plain object to encode
2568
+ * @param [writer] Writer to encode to
2569
+ * @returns Writer
2570
+ */
2571
+ public static encode(message: Trace.IDetails, writer?: Writer): Writer;
2572
+
2573
+ /**
2574
+ * Encodes the specified Details message, length delimited. Does not implicitly {@link Trace.Details.verify|verify} messages.
2575
+ * @param message Details message or plain object to encode
2576
+ * @param [writer] Writer to encode to
2577
+ * @returns Writer
2578
+ */
2579
+ public static encodeDelimited(message: Trace.IDetails, writer?: Writer): Writer;
2580
+
2581
+ /**
2582
+ * Decodes a Details message from the specified reader or buffer.
2583
+ * @param reader Reader or buffer to decode from
2584
+ * @param [length] Message length if known beforehand
2585
+ * @returns Details
2586
+ * @throws {Error} If the payload is not a reader or valid buffer
2587
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2588
+ */
2589
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.Details;
2590
+
2591
+ /**
2592
+ * Decodes a Details message from the specified reader or buffer, length delimited.
2593
+ * @param reader Reader or buffer to decode from
2594
+ * @returns Details
2595
+ * @throws {Error} If the payload is not a reader or valid buffer
2596
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2597
+ */
2598
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.Details;
2599
+
2600
+ /**
2601
+ * Verifies a Details message.
2602
+ * @param message Plain object to verify
2603
+ * @returns `null` if valid, otherwise the reason why it is not
2604
+ */
2605
+ public static verify(message: { [k: string]: any }): (string|null);
2606
+
2607
+ /**
2608
+ * Creates a plain object from a Details message. Also converts values to other types if specified.
2609
+ * @param message Details
2610
+ * @param [options] Conversion options
2611
+ * @returns Plain object
2612
+ */
2613
+ public static toObject(message: Trace.Details, options?: IConversionOptions): { [k: string]: any };
2614
+
2615
+ /**
2616
+ * Converts this Details to JSON.
2617
+ * @returns JSON object
2618
+ */
2619
+ public toJSON(): { [k: string]: any };
2620
+ }
2621
+
2622
+ /** Properties of an Error. */
2623
+ interface IError {
2624
+
2625
+ /** Error message */
2626
+ message?: (string|null);
2627
+
2628
+ /** Error location */
2629
+ location?: (Trace.ILocation[]|null);
2630
+
2631
+ /** Error timeNs */
2632
+ timeNs?: (number|null);
2633
+
2634
+ /** Error json */
2635
+ json?: (string|null);
2636
+ }
2637
+
2638
+ /** Represents an Error. */
2639
+ class Error implements IError {
2640
+
2641
+ /**
2642
+ * Constructs a new Error.
2643
+ * @param [properties] Properties to set
2644
+ */
2645
+ constructor(properties?: Trace.IError);
2646
+
2647
+ /** Error message. */
2648
+ public message: string;
2649
+
2650
+ /** Error location. */
2651
+ public location: Trace.ILocation[];
2652
+
2653
+ /** Error timeNs. */
2654
+ public timeNs: number;
2655
+
2656
+ /** Error json. */
2657
+ public json: string;
2658
+
2659
+ /**
2660
+ * Creates a new Error instance using the specified properties.
2661
+ * @param [properties] Properties to set
2662
+ * @returns Error instance
2663
+ */
2664
+ public static create(properties?: Trace.IError): Trace.Error;
2665
+
2666
+ /**
2667
+ * Encodes the specified Error message. Does not implicitly {@link Trace.Error.verify|verify} messages.
2668
+ * @param message Error message or plain object to encode
2669
+ * @param [writer] Writer to encode to
2670
+ * @returns Writer
2671
+ */
2672
+ public static encode(message: Trace.IError, writer?: Writer): Writer;
2673
+
2674
+ /**
2675
+ * Encodes the specified Error message, length delimited. Does not implicitly {@link Trace.Error.verify|verify} messages.
2676
+ * @param message Error message or plain object to encode
2677
+ * @param [writer] Writer to encode to
2678
+ * @returns Writer
2679
+ */
2680
+ public static encodeDelimited(message: Trace.IError, writer?: Writer): Writer;
2681
+
2682
+ /**
2683
+ * Decodes an Error message from the specified reader or buffer.
2684
+ * @param reader Reader or buffer to decode from
2685
+ * @param [length] Message length if known beforehand
2686
+ * @returns Error
2687
+ * @throws {Error} If the payload is not a reader or valid buffer
2688
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2689
+ */
2690
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.Error;
2691
+
2692
+ /**
2693
+ * Decodes an Error message from the specified reader or buffer, length delimited.
2694
+ * @param reader Reader or buffer to decode from
2695
+ * @returns Error
2696
+ * @throws {Error} If the payload is not a reader or valid buffer
2697
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2698
+ */
2699
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.Error;
2700
+
2701
+ /**
2702
+ * Verifies an Error message.
2703
+ * @param message Plain object to verify
2704
+ * @returns `null` if valid, otherwise the reason why it is not
2705
+ */
2706
+ public static verify(message: { [k: string]: any }): (string|null);
2707
+
2708
+ /**
2709
+ * Creates a plain object from an Error message. Also converts values to other types if specified.
2710
+ * @param message Error
2711
+ * @param [options] Conversion options
2712
+ * @returns Plain object
2713
+ */
2714
+ public static toObject(message: Trace.Error, options?: IConversionOptions): { [k: string]: any };
2715
+
2716
+ /**
2717
+ * Converts this Error to JSON.
2718
+ * @returns JSON object
2719
+ */
2720
+ public toJSON(): { [k: string]: any };
2721
+ }
2722
+
2723
+ /** Properties of a HTTP. */
2724
+ interface IHTTP {
2725
+
2726
+ /** HTTP method */
2727
+ method?: (Trace.HTTP.Method|null);
2728
+
2729
+ /** HTTP requestHeaders */
2730
+ requestHeaders?: ({ [k: string]: Trace.HTTP.IValues }|null);
2731
+
2732
+ /** HTTP responseHeaders */
2733
+ responseHeaders?: ({ [k: string]: Trace.HTTP.IValues }|null);
2734
+
2735
+ /** HTTP statusCode */
2736
+ statusCode?: (number|null);
2737
+ }
2738
+
2739
+ /** Represents a HTTP. */
2740
+ class HTTP implements IHTTP {
2741
+
2742
+ /**
2743
+ * Constructs a new HTTP.
2744
+ * @param [properties] Properties to set
2745
+ */
2746
+ constructor(properties?: Trace.IHTTP);
2747
+
2748
+ /** HTTP method. */
2749
+ public method: Trace.HTTP.Method;
2750
+
2751
+ /** HTTP requestHeaders. */
2752
+ public requestHeaders: { [k: string]: Trace.HTTP.IValues };
2753
+
2754
+ /** HTTP responseHeaders. */
2755
+ public responseHeaders: { [k: string]: Trace.HTTP.IValues };
2756
+
2757
+ /** HTTP statusCode. */
2758
+ public statusCode: number;
2759
+
2760
+ /**
2761
+ * Creates a new HTTP instance using the specified properties.
2762
+ * @param [properties] Properties to set
2763
+ * @returns HTTP instance
2764
+ */
2765
+ public static create(properties?: Trace.IHTTP): Trace.HTTP;
2766
+
2767
+ /**
2768
+ * Encodes the specified HTTP message. Does not implicitly {@link Trace.HTTP.verify|verify} messages.
2769
+ * @param message HTTP message or plain object to encode
2770
+ * @param [writer] Writer to encode to
2771
+ * @returns Writer
2772
+ */
2773
+ public static encode(message: Trace.IHTTP, writer?: Writer): Writer;
2774
+
2775
+ /**
2776
+ * Encodes the specified HTTP message, length delimited. Does not implicitly {@link Trace.HTTP.verify|verify} messages.
2777
+ * @param message HTTP message or plain object to encode
2778
+ * @param [writer] Writer to encode to
2779
+ * @returns Writer
2780
+ */
2781
+ public static encodeDelimited(message: Trace.IHTTP, writer?: Writer): Writer;
2782
+
2783
+ /**
2784
+ * Decodes a HTTP message from the specified reader or buffer.
2785
+ * @param reader Reader or buffer to decode from
2786
+ * @param [length] Message length if known beforehand
2787
+ * @returns HTTP
2788
+ * @throws {Error} If the payload is not a reader or valid buffer
2789
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2790
+ */
2791
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.HTTP;
2792
+
2793
+ /**
2794
+ * Decodes a HTTP message from the specified reader or buffer, length delimited.
2795
+ * @param reader Reader or buffer to decode from
2796
+ * @returns HTTP
2797
+ * @throws {Error} If the payload is not a reader or valid buffer
2798
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2799
+ */
2800
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.HTTP;
2801
+
2802
+ /**
2803
+ * Verifies a HTTP message.
2804
+ * @param message Plain object to verify
2805
+ * @returns `null` if valid, otherwise the reason why it is not
2806
+ */
2807
+ public static verify(message: { [k: string]: any }): (string|null);
2808
+
2809
+ /**
2810
+ * Creates a plain object from a HTTP message. Also converts values to other types if specified.
2811
+ * @param message HTTP
2812
+ * @param [options] Conversion options
2813
+ * @returns Plain object
2814
+ */
2815
+ public static toObject(message: Trace.HTTP, options?: IConversionOptions): { [k: string]: any };
2816
+
2817
+ /**
2818
+ * Converts this HTTP to JSON.
2819
+ * @returns JSON object
2820
+ */
2821
+ public toJSON(): { [k: string]: any };
2822
+ }
2823
+
2824
+ namespace HTTP {
2825
+
2826
+ /** Properties of a Values. */
2827
+ interface IValues {
2828
+
2829
+ /** Values value */
2830
+ value?: (string[]|null);
2831
+ }
2832
+
2833
+ /** Represents a Values. */
2834
+ class Values implements IValues {
2835
+
2836
+ /**
2837
+ * Constructs a new Values.
2838
+ * @param [properties] Properties to set
2839
+ */
2840
+ constructor(properties?: Trace.HTTP.IValues);
2841
+
2842
+ /** Values value. */
2843
+ public value: string[];
2844
+
2845
+ /**
2846
+ * Creates a new Values instance using the specified properties.
2847
+ * @param [properties] Properties to set
2848
+ * @returns Values instance
2849
+ */
2850
+ public static create(properties?: Trace.HTTP.IValues): Trace.HTTP.Values;
2851
+
2852
+ /**
2853
+ * Encodes the specified Values message. Does not implicitly {@link Trace.HTTP.Values.verify|verify} messages.
2854
+ * @param message Values message or plain object to encode
2855
+ * @param [writer] Writer to encode to
2856
+ * @returns Writer
2857
+ */
2858
+ public static encode(message: Trace.HTTP.IValues, writer?: Writer): Writer;
2859
+
2860
+ /**
2861
+ * Encodes the specified Values message, length delimited. Does not implicitly {@link Trace.HTTP.Values.verify|verify} messages.
2862
+ * @param message Values message or plain object to encode
2863
+ * @param [writer] Writer to encode to
2864
+ * @returns Writer
2865
+ */
2866
+ public static encodeDelimited(message: Trace.HTTP.IValues, writer?: Writer): Writer;
2867
+
2868
+ /**
2869
+ * Decodes a Values message from the specified reader or buffer.
2870
+ * @param reader Reader or buffer to decode from
2871
+ * @param [length] Message length if known beforehand
2872
+ * @returns Values
2873
+ * @throws {Error} If the payload is not a reader or valid buffer
2874
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2875
+ */
2876
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.HTTP.Values;
2877
+
2878
+ /**
2879
+ * Decodes a Values message from the specified reader or buffer, length delimited.
2880
+ * @param reader Reader or buffer to decode from
2881
+ * @returns Values
2882
+ * @throws {Error} If the payload is not a reader or valid buffer
2883
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2884
+ */
2885
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.HTTP.Values;
2886
+
2887
+ /**
2888
+ * Verifies a Values message.
2889
+ * @param message Plain object to verify
2890
+ * @returns `null` if valid, otherwise the reason why it is not
2891
+ */
2892
+ public static verify(message: { [k: string]: any }): (string|null);
2893
+
2894
+ /**
2895
+ * Creates a plain object from a Values message. Also converts values to other types if specified.
2896
+ * @param message Values
2897
+ * @param [options] Conversion options
2898
+ * @returns Plain object
2899
+ */
2900
+ public static toObject(message: Trace.HTTP.Values, options?: IConversionOptions): { [k: string]: any };
2901
+
2902
+ /**
2903
+ * Converts this Values to JSON.
2904
+ * @returns JSON object
2905
+ */
2906
+ public toJSON(): { [k: string]: any };
2907
+ }
2908
+
2909
+ /** Method enum. */
2910
+ declare enum Method {
2911
+ UNKNOWN = 0,
2912
+ OPTIONS = 1,
2913
+ GET = 2,
2914
+ HEAD = 3,
2915
+ POST = 4,
2916
+ PUT = 5,
2917
+ DELETE = 6,
2918
+ TRACE = 7,
2919
+ CONNECT = 8,
2920
+ PATCH = 9
2921
+ }
2922
+ }
2923
+
2924
+ /** Properties of a Location. */
2925
+ interface ILocation {
2926
+
2927
+ /** Location line */
2928
+ line?: (number|null);
2929
+
2930
+ /** Location column */
2931
+ column?: (number|null);
2932
+ }
2933
+
2934
+ /** Represents a Location. */
2935
+ class Location implements ILocation {
2936
+
2937
+ /**
2938
+ * Constructs a new Location.
2939
+ * @param [properties] Properties to set
2940
+ */
2941
+ constructor(properties?: Trace.ILocation);
2942
+
2943
+ /** Location line. */
2944
+ public line: number;
2945
+
2946
+ /** Location column. */
2947
+ public column: number;
2948
+
2949
+ /**
2950
+ * Creates a new Location instance using the specified properties.
2951
+ * @param [properties] Properties to set
2952
+ * @returns Location instance
2953
+ */
2954
+ public static create(properties?: Trace.ILocation): Trace.Location;
2955
+
2956
+ /**
2957
+ * Encodes the specified Location message. Does not implicitly {@link Trace.Location.verify|verify} messages.
2958
+ * @param message Location message or plain object to encode
2959
+ * @param [writer] Writer to encode to
2960
+ * @returns Writer
2961
+ */
2962
+ public static encode(message: Trace.ILocation, writer?: Writer): Writer;
2963
+
2964
+ /**
2965
+ * Encodes the specified Location message, length delimited. Does not implicitly {@link Trace.Location.verify|verify} messages.
2966
+ * @param message Location message or plain object to encode
2967
+ * @param [writer] Writer to encode to
2968
+ * @returns Writer
2969
+ */
2970
+ public static encodeDelimited(message: Trace.ILocation, writer?: Writer): Writer;
2971
+
2972
+ /**
2973
+ * Decodes a Location message from the specified reader or buffer.
2974
+ * @param reader Reader or buffer to decode from
2975
+ * @param [length] Message length if known beforehand
2976
+ * @returns Location
2977
+ * @throws {Error} If the payload is not a reader or valid buffer
2978
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2979
+ */
2980
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.Location;
2981
+
2982
+ /**
2983
+ * Decodes a Location message from the specified reader or buffer, length delimited.
2984
+ * @param reader Reader or buffer to decode from
2985
+ * @returns Location
2986
+ * @throws {Error} If the payload is not a reader or valid buffer
2987
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2988
+ */
2989
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.Location;
2990
+
2991
+ /**
2992
+ * Verifies a Location message.
2993
+ * @param message Plain object to verify
2994
+ * @returns `null` if valid, otherwise the reason why it is not
2995
+ */
2996
+ public static verify(message: { [k: string]: any }): (string|null);
2997
+
2998
+ /**
2999
+ * Creates a plain object from a Location message. Also converts values to other types if specified.
3000
+ * @param message Location
3001
+ * @param [options] Conversion options
3002
+ * @returns Plain object
3003
+ */
3004
+ public static toObject(message: Trace.Location, options?: IConversionOptions): { [k: string]: any };
3005
+
3006
+ /**
3007
+ * Converts this Location to JSON.
3008
+ * @returns JSON object
3009
+ */
3010
+ public toJSON(): { [k: string]: any };
3011
+ }
3012
+
3013
+ /** Properties of a Node. */
3014
+ interface INode {
3015
+
3016
+ /** Node responseName */
3017
+ responseName?: (string|null);
3018
+
3019
+ /** Node index */
3020
+ index?: (number|null);
3021
+
3022
+ /** Node originalFieldName */
3023
+ originalFieldName?: (string|null);
3024
+
3025
+ /** Node type */
3026
+ type?: (string|null);
3027
+
3028
+ /** Node parentType */
3029
+ parentType?: (string|null);
3030
+
3031
+ /** Node cachePolicy */
3032
+ cachePolicy?: (Trace.ICachePolicy|null);
3033
+
3034
+ /** Node startTime */
3035
+ startTime?: (number|null);
3036
+
3037
+ /** Node endTime */
3038
+ endTime?: (number|null);
3039
+
3040
+ /** Node error */
3041
+ error?: (Trace.IError[]|null);
3042
+
3043
+ /** Node child */
3044
+ child?: (Trace.INode[]|null);
3045
+ }
3046
+
3047
+ /** Represents a Node. */
3048
+ class Node implements INode {
3049
+
3050
+ /**
3051
+ * Constructs a new Node.
3052
+ * @param [properties] Properties to set
3053
+ */
3054
+ constructor(properties?: Trace.INode);
3055
+
3056
+ /** Node responseName. */
3057
+ public responseName: string;
3058
+
3059
+ /** Node index. */
3060
+ public index: number;
3061
+
3062
+ /** Node originalFieldName. */
3063
+ public originalFieldName: string;
3064
+
3065
+ /** Node type. */
3066
+ public type: string;
3067
+
3068
+ /** Node parentType. */
3069
+ public parentType: string;
3070
+
3071
+ /** Node cachePolicy. */
3072
+ public cachePolicy?: (Trace.ICachePolicy|null);
3073
+
3074
+ /** Node startTime. */
3075
+ public startTime: number;
3076
+
3077
+ /** Node endTime. */
3078
+ public endTime: number;
3079
+
3080
+ /** Node error. */
3081
+ public error: Trace.IError[];
3082
+
3083
+ /** Node child. */
3084
+ public child: Trace.INode[];
3085
+
3086
+ /** Node id. */
3087
+ public id?: ("responseName"|"index");
3088
+
3089
+ /**
3090
+ * Creates a new Node instance using the specified properties.
3091
+ * @param [properties] Properties to set
3092
+ * @returns Node instance
3093
+ */
3094
+ public static create(properties?: Trace.INode): Trace.Node;
3095
+
3096
+ /**
3097
+ * Encodes the specified Node message. Does not implicitly {@link Trace.Node.verify|verify} messages.
3098
+ * @param message Node message or plain object to encode
3099
+ * @param [writer] Writer to encode to
3100
+ * @returns Writer
3101
+ */
3102
+ public static encode(message: Trace.INode, writer?: Writer): Writer;
3103
+
3104
+ /**
3105
+ * Encodes the specified Node message, length delimited. Does not implicitly {@link Trace.Node.verify|verify} messages.
3106
+ * @param message Node message or plain object to encode
3107
+ * @param [writer] Writer to encode to
3108
+ * @returns Writer
3109
+ */
3110
+ public static encodeDelimited(message: Trace.INode, writer?: Writer): Writer;
3111
+
3112
+ /**
3113
+ * Decodes a Node message from the specified reader or buffer.
3114
+ * @param reader Reader or buffer to decode from
3115
+ * @param [length] Message length if known beforehand
3116
+ * @returns Node
3117
+ * @throws {Error} If the payload is not a reader or valid buffer
3118
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3119
+ */
3120
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.Node;
3121
+
3122
+ /**
3123
+ * Decodes a Node message from the specified reader or buffer, length delimited.
3124
+ * @param reader Reader or buffer to decode from
3125
+ * @returns Node
3126
+ * @throws {Error} If the payload is not a reader or valid buffer
3127
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3128
+ */
3129
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.Node;
3130
+
3131
+ /**
3132
+ * Verifies a Node message.
3133
+ * @param message Plain object to verify
3134
+ * @returns `null` if valid, otherwise the reason why it is not
3135
+ */
3136
+ public static verify(message: { [k: string]: any }): (string|null);
3137
+
3138
+ /**
3139
+ * Creates a plain object from a Node message. Also converts values to other types if specified.
3140
+ * @param message Node
3141
+ * @param [options] Conversion options
3142
+ * @returns Plain object
3143
+ */
3144
+ public static toObject(message: Trace.Node, options?: IConversionOptions): { [k: string]: any };
3145
+
3146
+ /**
3147
+ * Converts this Node to JSON.
3148
+ * @returns JSON object
3149
+ */
3150
+ public toJSON(): { [k: string]: any };
3151
+ }
3152
+
3153
+ /** Properties of a QueryPlanNode. */
3154
+ interface IQueryPlanNode {
3155
+
3156
+ /** QueryPlanNode sequence */
3157
+ sequence?: (Trace.QueryPlanNode.ISequenceNode|null);
3158
+
3159
+ /** QueryPlanNode parallel */
3160
+ parallel?: (Trace.QueryPlanNode.IParallelNode|null);
3161
+
3162
+ /** QueryPlanNode fetch */
3163
+ fetch?: (Trace.QueryPlanNode.IFetchNode|null);
3164
+
3165
+ /** QueryPlanNode flatten */
3166
+ flatten?: (Trace.QueryPlanNode.IFlattenNode|null);
3167
+
3168
+ /** QueryPlanNode defer */
3169
+ defer?: (Trace.QueryPlanNode.IDeferNode|null);
3170
+
3171
+ /** QueryPlanNode condition */
3172
+ condition?: (Trace.QueryPlanNode.IConditionNode|null);
3173
+ }
3174
+
3175
+ /** Represents a QueryPlanNode. */
3176
+ class QueryPlanNode implements IQueryPlanNode {
3177
+
3178
+ /**
3179
+ * Constructs a new QueryPlanNode.
3180
+ * @param [properties] Properties to set
3181
+ */
3182
+ constructor(properties?: Trace.IQueryPlanNode);
3183
+
3184
+ /** QueryPlanNode sequence. */
3185
+ public sequence?: (Trace.QueryPlanNode.ISequenceNode|null);
3186
+
3187
+ /** QueryPlanNode parallel. */
3188
+ public parallel?: (Trace.QueryPlanNode.IParallelNode|null);
3189
+
3190
+ /** QueryPlanNode fetch. */
3191
+ public fetch?: (Trace.QueryPlanNode.IFetchNode|null);
3192
+
3193
+ /** QueryPlanNode flatten. */
3194
+ public flatten?: (Trace.QueryPlanNode.IFlattenNode|null);
3195
+
3196
+ /** QueryPlanNode defer. */
3197
+ public defer?: (Trace.QueryPlanNode.IDeferNode|null);
3198
+
3199
+ /** QueryPlanNode condition. */
3200
+ public condition?: (Trace.QueryPlanNode.IConditionNode|null);
3201
+
3202
+ /** QueryPlanNode node. */
3203
+ public node?: ("sequence"|"parallel"|"fetch"|"flatten"|"defer"|"condition");
3204
+
3205
+ /**
3206
+ * Creates a new QueryPlanNode instance using the specified properties.
3207
+ * @param [properties] Properties to set
3208
+ * @returns QueryPlanNode instance
3209
+ */
3210
+ public static create(properties?: Trace.IQueryPlanNode): Trace.QueryPlanNode;
3211
+
3212
+ /**
3213
+ * Encodes the specified QueryPlanNode message. Does not implicitly {@link Trace.QueryPlanNode.verify|verify} messages.
3214
+ * @param message QueryPlanNode message or plain object to encode
3215
+ * @param [writer] Writer to encode to
3216
+ * @returns Writer
3217
+ */
3218
+ public static encode(message: Trace.IQueryPlanNode, writer?: Writer): Writer;
3219
+
3220
+ /**
3221
+ * Encodes the specified QueryPlanNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.verify|verify} messages.
3222
+ * @param message QueryPlanNode message or plain object to encode
3223
+ * @param [writer] Writer to encode to
3224
+ * @returns Writer
3225
+ */
3226
+ public static encodeDelimited(message: Trace.IQueryPlanNode, writer?: Writer): Writer;
3227
+
3228
+ /**
3229
+ * Decodes a QueryPlanNode message from the specified reader or buffer.
3230
+ * @param reader Reader or buffer to decode from
3231
+ * @param [length] Message length if known beforehand
3232
+ * @returns QueryPlanNode
3233
+ * @throws {Error} If the payload is not a reader or valid buffer
3234
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3235
+ */
3236
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode;
3237
+
3238
+ /**
3239
+ * Decodes a QueryPlanNode message from the specified reader or buffer, length delimited.
3240
+ * @param reader Reader or buffer to decode from
3241
+ * @returns QueryPlanNode
3242
+ * @throws {Error} If the payload is not a reader or valid buffer
3243
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3244
+ */
3245
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode;
3246
+
3247
+ /**
3248
+ * Verifies a QueryPlanNode message.
3249
+ * @param message Plain object to verify
3250
+ * @returns `null` if valid, otherwise the reason why it is not
3251
+ */
3252
+ public static verify(message: { [k: string]: any }): (string|null);
3253
+
3254
+ /**
3255
+ * Creates a plain object from a QueryPlanNode message. Also converts values to other types if specified.
3256
+ * @param message QueryPlanNode
3257
+ * @param [options] Conversion options
3258
+ * @returns Plain object
3259
+ */
3260
+ public static toObject(message: Trace.QueryPlanNode, options?: IConversionOptions): { [k: string]: any };
3261
+
3262
+ /**
3263
+ * Converts this QueryPlanNode to JSON.
3264
+ * @returns JSON object
3265
+ */
3266
+ public toJSON(): { [k: string]: any };
3267
+ }
3268
+
3269
+ namespace QueryPlanNode {
3270
+
3271
+ /** Properties of a SequenceNode. */
3272
+ interface ISequenceNode {
3273
+
3274
+ /** SequenceNode nodes */
3275
+ nodes?: (Trace.IQueryPlanNode[]|null);
3276
+ }
3277
+
3278
+ /** Represents a SequenceNode. */
3279
+ class SequenceNode implements ISequenceNode {
3280
+
3281
+ /**
3282
+ * Constructs a new SequenceNode.
3283
+ * @param [properties] Properties to set
3284
+ */
3285
+ constructor(properties?: Trace.QueryPlanNode.ISequenceNode);
3286
+
3287
+ /** SequenceNode nodes. */
3288
+ public nodes: Trace.IQueryPlanNode[];
3289
+
3290
+ /**
3291
+ * Creates a new SequenceNode instance using the specified properties.
3292
+ * @param [properties] Properties to set
3293
+ * @returns SequenceNode instance
3294
+ */
3295
+ public static create(properties?: Trace.QueryPlanNode.ISequenceNode): Trace.QueryPlanNode.SequenceNode;
3296
+
3297
+ /**
3298
+ * Encodes the specified SequenceNode message. Does not implicitly {@link Trace.QueryPlanNode.SequenceNode.verify|verify} messages.
3299
+ * @param message SequenceNode message or plain object to encode
3300
+ * @param [writer] Writer to encode to
3301
+ * @returns Writer
3302
+ */
3303
+ public static encode(message: Trace.QueryPlanNode.ISequenceNode, writer?: Writer): Writer;
3304
+
3305
+ /**
3306
+ * Encodes the specified SequenceNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.SequenceNode.verify|verify} messages.
3307
+ * @param message SequenceNode message or plain object to encode
3308
+ * @param [writer] Writer to encode to
3309
+ * @returns Writer
3310
+ */
3311
+ public static encodeDelimited(message: Trace.QueryPlanNode.ISequenceNode, writer?: Writer): Writer;
3312
+
3313
+ /**
3314
+ * Decodes a SequenceNode message from the specified reader or buffer.
3315
+ * @param reader Reader or buffer to decode from
3316
+ * @param [length] Message length if known beforehand
3317
+ * @returns SequenceNode
3318
+ * @throws {Error} If the payload is not a reader or valid buffer
3319
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3320
+ */
3321
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.SequenceNode;
3322
+
3323
+ /**
3324
+ * Decodes a SequenceNode message from the specified reader or buffer, length delimited.
3325
+ * @param reader Reader or buffer to decode from
3326
+ * @returns SequenceNode
3327
+ * @throws {Error} If the payload is not a reader or valid buffer
3328
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3329
+ */
3330
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.SequenceNode;
3331
+
3332
+ /**
3333
+ * Verifies a SequenceNode message.
3334
+ * @param message Plain object to verify
3335
+ * @returns `null` if valid, otherwise the reason why it is not
3336
+ */
3337
+ public static verify(message: { [k: string]: any }): (string|null);
3338
+
3339
+ /**
3340
+ * Creates a plain object from a SequenceNode message. Also converts values to other types if specified.
3341
+ * @param message SequenceNode
3342
+ * @param [options] Conversion options
3343
+ * @returns Plain object
3344
+ */
3345
+ public static toObject(message: Trace.QueryPlanNode.SequenceNode, options?: IConversionOptions): { [k: string]: any };
3346
+
3347
+ /**
3348
+ * Converts this SequenceNode to JSON.
3349
+ * @returns JSON object
3350
+ */
3351
+ public toJSON(): { [k: string]: any };
3352
+ }
3353
+
3354
+ /** Properties of a ParallelNode. */
3355
+ interface IParallelNode {
3356
+
3357
+ /** ParallelNode nodes */
3358
+ nodes?: (Trace.IQueryPlanNode[]|null);
3359
+ }
3360
+
3361
+ /** Represents a ParallelNode. */
3362
+ class ParallelNode implements IParallelNode {
3363
+
3364
+ /**
3365
+ * Constructs a new ParallelNode.
3366
+ * @param [properties] Properties to set
3367
+ */
3368
+ constructor(properties?: Trace.QueryPlanNode.IParallelNode);
3369
+
3370
+ /** ParallelNode nodes. */
3371
+ public nodes: Trace.IQueryPlanNode[];
3372
+
3373
+ /**
3374
+ * Creates a new ParallelNode instance using the specified properties.
3375
+ * @param [properties] Properties to set
3376
+ * @returns ParallelNode instance
3377
+ */
3378
+ public static create(properties?: Trace.QueryPlanNode.IParallelNode): Trace.QueryPlanNode.ParallelNode;
3379
+
3380
+ /**
3381
+ * Encodes the specified ParallelNode message. Does not implicitly {@link Trace.QueryPlanNode.ParallelNode.verify|verify} messages.
3382
+ * @param message ParallelNode message or plain object to encode
3383
+ * @param [writer] Writer to encode to
3384
+ * @returns Writer
3385
+ */
3386
+ public static encode(message: Trace.QueryPlanNode.IParallelNode, writer?: Writer): Writer;
3387
+
3388
+ /**
3389
+ * Encodes the specified ParallelNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.ParallelNode.verify|verify} messages.
3390
+ * @param message ParallelNode message or plain object to encode
3391
+ * @param [writer] Writer to encode to
3392
+ * @returns Writer
3393
+ */
3394
+ public static encodeDelimited(message: Trace.QueryPlanNode.IParallelNode, writer?: Writer): Writer;
3395
+
3396
+ /**
3397
+ * Decodes a ParallelNode message from the specified reader or buffer.
3398
+ * @param reader Reader or buffer to decode from
3399
+ * @param [length] Message length if known beforehand
3400
+ * @returns ParallelNode
3401
+ * @throws {Error} If the payload is not a reader or valid buffer
3402
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3403
+ */
3404
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.ParallelNode;
3405
+
3406
+ /**
3407
+ * Decodes a ParallelNode message from the specified reader or buffer, length delimited.
3408
+ * @param reader Reader or buffer to decode from
3409
+ * @returns ParallelNode
3410
+ * @throws {Error} If the payload is not a reader or valid buffer
3411
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3412
+ */
3413
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.ParallelNode;
3414
+
3415
+ /**
3416
+ * Verifies a ParallelNode message.
3417
+ * @param message Plain object to verify
3418
+ * @returns `null` if valid, otherwise the reason why it is not
3419
+ */
3420
+ public static verify(message: { [k: string]: any }): (string|null);
3421
+
3422
+ /**
3423
+ * Creates a plain object from a ParallelNode message. Also converts values to other types if specified.
3424
+ * @param message ParallelNode
3425
+ * @param [options] Conversion options
3426
+ * @returns Plain object
3427
+ */
3428
+ public static toObject(message: Trace.QueryPlanNode.ParallelNode, options?: IConversionOptions): { [k: string]: any };
3429
+
3430
+ /**
3431
+ * Converts this ParallelNode to JSON.
3432
+ * @returns JSON object
3433
+ */
3434
+ public toJSON(): { [k: string]: any };
3435
+ }
3436
+
3437
+ /** Properties of a FetchNode. */
3438
+ interface IFetchNode {
3439
+
3440
+ /** FetchNode serviceName */
3441
+ serviceName?: (string|null);
3442
+
3443
+ /** FetchNode traceParsingFailed */
3444
+ traceParsingFailed?: (boolean|null);
3445
+
3446
+ /** FetchNode trace */
3447
+ trace?: (ITrace|null);
3448
+
3449
+ /** FetchNode sentTimeOffset */
3450
+ sentTimeOffset?: (number|null);
3451
+
3452
+ /** FetchNode sentTime */
3453
+ sentTime?: (google.protobuf.ITimestamp|null);
3454
+
3455
+ /** FetchNode receivedTime */
3456
+ receivedTime?: (google.protobuf.ITimestamp|null);
3457
+ }
3458
+
3459
+ /** Represents a FetchNode. */
3460
+ class FetchNode implements IFetchNode {
3461
+
3462
+ /**
3463
+ * Constructs a new FetchNode.
3464
+ * @param [properties] Properties to set
3465
+ */
3466
+ constructor(properties?: Trace.QueryPlanNode.IFetchNode);
3467
+
3468
+ /** FetchNode serviceName. */
3469
+ public serviceName: string;
3470
+
3471
+ /** FetchNode traceParsingFailed. */
3472
+ public traceParsingFailed: boolean;
3473
+
3474
+ /** FetchNode trace. */
3475
+ public trace?: (ITrace|null);
3476
+
3477
+ /** FetchNode sentTimeOffset. */
3478
+ public sentTimeOffset: number;
3479
+
3480
+ /** FetchNode sentTime. */
3481
+ public sentTime?: (google.protobuf.ITimestamp|null);
3482
+
3483
+ /** FetchNode receivedTime. */
3484
+ public receivedTime?: (google.protobuf.ITimestamp|null);
3485
+
3486
+ /**
3487
+ * Creates a new FetchNode instance using the specified properties.
3488
+ * @param [properties] Properties to set
3489
+ * @returns FetchNode instance
3490
+ */
3491
+ public static create(properties?: Trace.QueryPlanNode.IFetchNode): Trace.QueryPlanNode.FetchNode;
3492
+
3493
+ /**
3494
+ * Encodes the specified FetchNode message. Does not implicitly {@link Trace.QueryPlanNode.FetchNode.verify|verify} messages.
3495
+ * @param message FetchNode message or plain object to encode
3496
+ * @param [writer] Writer to encode to
3497
+ * @returns Writer
3498
+ */
3499
+ public static encode(message: Trace.QueryPlanNode.IFetchNode, writer?: Writer): Writer;
3500
+
3501
+ /**
3502
+ * Encodes the specified FetchNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.FetchNode.verify|verify} messages.
3503
+ * @param message FetchNode message or plain object to encode
3504
+ * @param [writer] Writer to encode to
3505
+ * @returns Writer
3506
+ */
3507
+ public static encodeDelimited(message: Trace.QueryPlanNode.IFetchNode, writer?: Writer): Writer;
3508
+
3509
+ /**
3510
+ * Decodes a FetchNode message from the specified reader or buffer.
3511
+ * @param reader Reader or buffer to decode from
3512
+ * @param [length] Message length if known beforehand
3513
+ * @returns FetchNode
3514
+ * @throws {Error} If the payload is not a reader or valid buffer
3515
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3516
+ */
3517
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.FetchNode;
3518
+
3519
+ /**
3520
+ * Decodes a FetchNode message from the specified reader or buffer, length delimited.
3521
+ * @param reader Reader or buffer to decode from
3522
+ * @returns FetchNode
3523
+ * @throws {Error} If the payload is not a reader or valid buffer
3524
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3525
+ */
3526
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.FetchNode;
3527
+
3528
+ /**
3529
+ * Verifies a FetchNode message.
3530
+ * @param message Plain object to verify
3531
+ * @returns `null` if valid, otherwise the reason why it is not
3532
+ */
3533
+ public static verify(message: { [k: string]: any }): (string|null);
3534
+
3535
+ /**
3536
+ * Creates a plain object from a FetchNode message. Also converts values to other types if specified.
3537
+ * @param message FetchNode
3538
+ * @param [options] Conversion options
3539
+ * @returns Plain object
3540
+ */
3541
+ public static toObject(message: Trace.QueryPlanNode.FetchNode, options?: IConversionOptions): { [k: string]: any };
3542
+
3543
+ /**
3544
+ * Converts this FetchNode to JSON.
3545
+ * @returns JSON object
3546
+ */
3547
+ public toJSON(): { [k: string]: any };
3548
+ }
3549
+
3550
+ /** Properties of a FlattenNode. */
3551
+ interface IFlattenNode {
3552
+
3553
+ /** FlattenNode responsePath */
3554
+ responsePath?: (Trace.QueryPlanNode.IResponsePathElement[]|null);
3555
+
3556
+ /** FlattenNode node */
3557
+ node?: (Trace.IQueryPlanNode|null);
3558
+ }
3559
+
3560
+ /** Represents a FlattenNode. */
3561
+ class FlattenNode implements IFlattenNode {
3562
+
3563
+ /**
3564
+ * Constructs a new FlattenNode.
3565
+ * @param [properties] Properties to set
3566
+ */
3567
+ constructor(properties?: Trace.QueryPlanNode.IFlattenNode);
3568
+
3569
+ /** FlattenNode responsePath. */
3570
+ public responsePath: Trace.QueryPlanNode.IResponsePathElement[];
3571
+
3572
+ /** FlattenNode node. */
3573
+ public node?: (Trace.IQueryPlanNode|null);
3574
+
3575
+ /**
3576
+ * Creates a new FlattenNode instance using the specified properties.
3577
+ * @param [properties] Properties to set
3578
+ * @returns FlattenNode instance
3579
+ */
3580
+ public static create(properties?: Trace.QueryPlanNode.IFlattenNode): Trace.QueryPlanNode.FlattenNode;
3581
+
3582
+ /**
3583
+ * Encodes the specified FlattenNode message. Does not implicitly {@link Trace.QueryPlanNode.FlattenNode.verify|verify} messages.
3584
+ * @param message FlattenNode message or plain object to encode
3585
+ * @param [writer] Writer to encode to
3586
+ * @returns Writer
3587
+ */
3588
+ public static encode(message: Trace.QueryPlanNode.IFlattenNode, writer?: Writer): Writer;
3589
+
3590
+ /**
3591
+ * Encodes the specified FlattenNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.FlattenNode.verify|verify} messages.
3592
+ * @param message FlattenNode message or plain object to encode
3593
+ * @param [writer] Writer to encode to
3594
+ * @returns Writer
3595
+ */
3596
+ public static encodeDelimited(message: Trace.QueryPlanNode.IFlattenNode, writer?: Writer): Writer;
3597
+
3598
+ /**
3599
+ * Decodes a FlattenNode message from the specified reader or buffer.
3600
+ * @param reader Reader or buffer to decode from
3601
+ * @param [length] Message length if known beforehand
3602
+ * @returns FlattenNode
3603
+ * @throws {Error} If the payload is not a reader or valid buffer
3604
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3605
+ */
3606
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.FlattenNode;
3607
+
3608
+ /**
3609
+ * Decodes a FlattenNode message from the specified reader or buffer, length delimited.
3610
+ * @param reader Reader or buffer to decode from
3611
+ * @returns FlattenNode
3612
+ * @throws {Error} If the payload is not a reader or valid buffer
3613
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3614
+ */
3615
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.FlattenNode;
3616
+
3617
+ /**
3618
+ * Verifies a FlattenNode message.
3619
+ * @param message Plain object to verify
3620
+ * @returns `null` if valid, otherwise the reason why it is not
3621
+ */
3622
+ public static verify(message: { [k: string]: any }): (string|null);
3623
+
3624
+ /**
3625
+ * Creates a plain object from a FlattenNode message. Also converts values to other types if specified.
3626
+ * @param message FlattenNode
3627
+ * @param [options] Conversion options
3628
+ * @returns Plain object
3629
+ */
3630
+ public static toObject(message: Trace.QueryPlanNode.FlattenNode, options?: IConversionOptions): { [k: string]: any };
3631
+
3632
+ /**
3633
+ * Converts this FlattenNode to JSON.
3634
+ * @returns JSON object
3635
+ */
3636
+ public toJSON(): { [k: string]: any };
3637
+ }
3638
+
3639
+ /** Properties of a DeferNode. */
3640
+ interface IDeferNode {
3641
+
3642
+ /** DeferNode primary */
3643
+ primary?: (Trace.QueryPlanNode.IDeferNodePrimary|null);
3644
+
3645
+ /** DeferNode deferred */
3646
+ deferred?: (Trace.QueryPlanNode.IDeferredNode[]|null);
3647
+ }
3648
+
3649
+ /** Represents a DeferNode. */
3650
+ class DeferNode implements IDeferNode {
3651
+
3652
+ /**
3653
+ * Constructs a new DeferNode.
3654
+ * @param [properties] Properties to set
3655
+ */
3656
+ constructor(properties?: Trace.QueryPlanNode.IDeferNode);
3657
+
3658
+ /** DeferNode primary. */
3659
+ public primary?: (Trace.QueryPlanNode.IDeferNodePrimary|null);
3660
+
3661
+ /** DeferNode deferred. */
3662
+ public deferred: Trace.QueryPlanNode.IDeferredNode[];
3663
+
3664
+ /**
3665
+ * Creates a new DeferNode instance using the specified properties.
3666
+ * @param [properties] Properties to set
3667
+ * @returns DeferNode instance
3668
+ */
3669
+ public static create(properties?: Trace.QueryPlanNode.IDeferNode): Trace.QueryPlanNode.DeferNode;
3670
+
3671
+ /**
3672
+ * Encodes the specified DeferNode message. Does not implicitly {@link Trace.QueryPlanNode.DeferNode.verify|verify} messages.
3673
+ * @param message DeferNode message or plain object to encode
3674
+ * @param [writer] Writer to encode to
3675
+ * @returns Writer
3676
+ */
3677
+ public static encode(message: Trace.QueryPlanNode.IDeferNode, writer?: Writer): Writer;
3678
+
3679
+ /**
3680
+ * Encodes the specified DeferNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.DeferNode.verify|verify} messages.
3681
+ * @param message DeferNode message or plain object to encode
3682
+ * @param [writer] Writer to encode to
3683
+ * @returns Writer
3684
+ */
3685
+ public static encodeDelimited(message: Trace.QueryPlanNode.IDeferNode, writer?: Writer): Writer;
3686
+
3687
+ /**
3688
+ * Decodes a DeferNode message from the specified reader or buffer.
3689
+ * @param reader Reader or buffer to decode from
3690
+ * @param [length] Message length if known beforehand
3691
+ * @returns DeferNode
3692
+ * @throws {Error} If the payload is not a reader or valid buffer
3693
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3694
+ */
3695
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.DeferNode;
3696
+
3697
+ /**
3698
+ * Decodes a DeferNode message from the specified reader or buffer, length delimited.
3699
+ * @param reader Reader or buffer to decode from
3700
+ * @returns DeferNode
3701
+ * @throws {Error} If the payload is not a reader or valid buffer
3702
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3703
+ */
3704
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.DeferNode;
3705
+
3706
+ /**
3707
+ * Verifies a DeferNode message.
3708
+ * @param message Plain object to verify
3709
+ * @returns `null` if valid, otherwise the reason why it is not
3710
+ */
3711
+ public static verify(message: { [k: string]: any }): (string|null);
3712
+
3713
+ /**
3714
+ * Creates a plain object from a DeferNode message. Also converts values to other types if specified.
3715
+ * @param message DeferNode
3716
+ * @param [options] Conversion options
3717
+ * @returns Plain object
3718
+ */
3719
+ public static toObject(message: Trace.QueryPlanNode.DeferNode, options?: IConversionOptions): { [k: string]: any };
3720
+
3721
+ /**
3722
+ * Converts this DeferNode to JSON.
3723
+ * @returns JSON object
3724
+ */
3725
+ public toJSON(): { [k: string]: any };
3726
+ }
3727
+
3728
+ /** Properties of a ConditionNode. */
3729
+ interface IConditionNode {
3730
+
3731
+ /** ConditionNode condition */
3732
+ condition?: (string|null);
3733
+
3734
+ /** ConditionNode ifClause */
3735
+ ifClause?: (Trace.IQueryPlanNode|null);
3736
+
3737
+ /** ConditionNode elseClause */
3738
+ elseClause?: (Trace.IQueryPlanNode|null);
3739
+ }
3740
+
3741
+ /** Represents a ConditionNode. */
3742
+ class ConditionNode implements IConditionNode {
3743
+
3744
+ /**
3745
+ * Constructs a new ConditionNode.
3746
+ * @param [properties] Properties to set
3747
+ */
3748
+ constructor(properties?: Trace.QueryPlanNode.IConditionNode);
3749
+
3750
+ /** ConditionNode condition. */
3751
+ public condition: string;
3752
+
3753
+ /** ConditionNode ifClause. */
3754
+ public ifClause?: (Trace.IQueryPlanNode|null);
3755
+
3756
+ /** ConditionNode elseClause. */
3757
+ public elseClause?: (Trace.IQueryPlanNode|null);
3758
+
3759
+ /**
3760
+ * Creates a new ConditionNode instance using the specified properties.
3761
+ * @param [properties] Properties to set
3762
+ * @returns ConditionNode instance
3763
+ */
3764
+ public static create(properties?: Trace.QueryPlanNode.IConditionNode): Trace.QueryPlanNode.ConditionNode;
3765
+
3766
+ /**
3767
+ * Encodes the specified ConditionNode message. Does not implicitly {@link Trace.QueryPlanNode.ConditionNode.verify|verify} messages.
3768
+ * @param message ConditionNode message or plain object to encode
3769
+ * @param [writer] Writer to encode to
3770
+ * @returns Writer
3771
+ */
3772
+ public static encode(message: Trace.QueryPlanNode.IConditionNode, writer?: Writer): Writer;
3773
+
3774
+ /**
3775
+ * Encodes the specified ConditionNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.ConditionNode.verify|verify} messages.
3776
+ * @param message ConditionNode message or plain object to encode
3777
+ * @param [writer] Writer to encode to
3778
+ * @returns Writer
3779
+ */
3780
+ public static encodeDelimited(message: Trace.QueryPlanNode.IConditionNode, writer?: Writer): Writer;
3781
+
3782
+ /**
3783
+ * Decodes a ConditionNode message from the specified reader or buffer.
3784
+ * @param reader Reader or buffer to decode from
3785
+ * @param [length] Message length if known beforehand
3786
+ * @returns ConditionNode
3787
+ * @throws {Error} If the payload is not a reader or valid buffer
3788
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3789
+ */
3790
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.ConditionNode;
3791
+
3792
+ /**
3793
+ * Decodes a ConditionNode message from the specified reader or buffer, length delimited.
3794
+ * @param reader Reader or buffer to decode from
3795
+ * @returns ConditionNode
3796
+ * @throws {Error} If the payload is not a reader or valid buffer
3797
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3798
+ */
3799
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.ConditionNode;
3800
+
3801
+ /**
3802
+ * Verifies a ConditionNode message.
3803
+ * @param message Plain object to verify
3804
+ * @returns `null` if valid, otherwise the reason why it is not
3805
+ */
3806
+ public static verify(message: { [k: string]: any }): (string|null);
3807
+
3808
+ /**
3809
+ * Creates a plain object from a ConditionNode message. Also converts values to other types if specified.
3810
+ * @param message ConditionNode
3811
+ * @param [options] Conversion options
3812
+ * @returns Plain object
3813
+ */
3814
+ public static toObject(message: Trace.QueryPlanNode.ConditionNode, options?: IConversionOptions): { [k: string]: any };
3815
+
3816
+ /**
3817
+ * Converts this ConditionNode to JSON.
3818
+ * @returns JSON object
3819
+ */
3820
+ public toJSON(): { [k: string]: any };
3821
+ }
3822
+
3823
+ /** Properties of a DeferNodePrimary. */
3824
+ interface IDeferNodePrimary {
3825
+
3826
+ /** DeferNodePrimary node */
3827
+ node?: (Trace.IQueryPlanNode|null);
3828
+ }
3829
+
3830
+ /** Represents a DeferNodePrimary. */
3831
+ class DeferNodePrimary implements IDeferNodePrimary {
3832
+
3833
+ /**
3834
+ * Constructs a new DeferNodePrimary.
3835
+ * @param [properties] Properties to set
3836
+ */
3837
+ constructor(properties?: Trace.QueryPlanNode.IDeferNodePrimary);
3838
+
3839
+ /** DeferNodePrimary node. */
3840
+ public node?: (Trace.IQueryPlanNode|null);
3841
+
3842
+ /**
3843
+ * Creates a new DeferNodePrimary instance using the specified properties.
3844
+ * @param [properties] Properties to set
3845
+ * @returns DeferNodePrimary instance
3846
+ */
3847
+ public static create(properties?: Trace.QueryPlanNode.IDeferNodePrimary): Trace.QueryPlanNode.DeferNodePrimary;
3848
+
3849
+ /**
3850
+ * Encodes the specified DeferNodePrimary message. Does not implicitly {@link Trace.QueryPlanNode.DeferNodePrimary.verify|verify} messages.
3851
+ * @param message DeferNodePrimary message or plain object to encode
3852
+ * @param [writer] Writer to encode to
3853
+ * @returns Writer
3854
+ */
3855
+ public static encode(message: Trace.QueryPlanNode.IDeferNodePrimary, writer?: Writer): Writer;
3856
+
3857
+ /**
3858
+ * Encodes the specified DeferNodePrimary message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.DeferNodePrimary.verify|verify} messages.
3859
+ * @param message DeferNodePrimary message or plain object to encode
3860
+ * @param [writer] Writer to encode to
3861
+ * @returns Writer
3862
+ */
3863
+ public static encodeDelimited(message: Trace.QueryPlanNode.IDeferNodePrimary, writer?: Writer): Writer;
3864
+
3865
+ /**
3866
+ * Decodes a DeferNodePrimary message from the specified reader or buffer.
3867
+ * @param reader Reader or buffer to decode from
3868
+ * @param [length] Message length if known beforehand
3869
+ * @returns DeferNodePrimary
3870
+ * @throws {Error} If the payload is not a reader or valid buffer
3871
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3872
+ */
3873
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.DeferNodePrimary;
3874
+
3875
+ /**
3876
+ * Decodes a DeferNodePrimary message from the specified reader or buffer, length delimited.
3877
+ * @param reader Reader or buffer to decode from
3878
+ * @returns DeferNodePrimary
3879
+ * @throws {Error} If the payload is not a reader or valid buffer
3880
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3881
+ */
3882
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.DeferNodePrimary;
3883
+
3884
+ /**
3885
+ * Verifies a DeferNodePrimary message.
3886
+ * @param message Plain object to verify
3887
+ * @returns `null` if valid, otherwise the reason why it is not
3888
+ */
3889
+ public static verify(message: { [k: string]: any }): (string|null);
3890
+
3891
+ /**
3892
+ * Creates a plain object from a DeferNodePrimary message. Also converts values to other types if specified.
3893
+ * @param message DeferNodePrimary
3894
+ * @param [options] Conversion options
3895
+ * @returns Plain object
3896
+ */
3897
+ public static toObject(message: Trace.QueryPlanNode.DeferNodePrimary, options?: IConversionOptions): { [k: string]: any };
3898
+
3899
+ /**
3900
+ * Converts this DeferNodePrimary to JSON.
3901
+ * @returns JSON object
3902
+ */
3903
+ public toJSON(): { [k: string]: any };
3904
+ }
3905
+
3906
+ /** Properties of a DeferredNode. */
3907
+ interface IDeferredNode {
3908
+
3909
+ /** DeferredNode depends */
3910
+ depends?: (Trace.QueryPlanNode.IDeferredNodeDepends[]|null);
3911
+
3912
+ /** DeferredNode label */
3913
+ label?: (string|null);
3914
+
3915
+ /** DeferredNode path */
3916
+ path?: (Trace.QueryPlanNode.IResponsePathElement[]|null);
3917
+
3918
+ /** DeferredNode node */
3919
+ node?: (Trace.IQueryPlanNode|null);
3920
+ }
3921
+
3922
+ /** Represents a DeferredNode. */
3923
+ class DeferredNode implements IDeferredNode {
3924
+
3925
+ /**
3926
+ * Constructs a new DeferredNode.
3927
+ * @param [properties] Properties to set
3928
+ */
3929
+ constructor(properties?: Trace.QueryPlanNode.IDeferredNode);
3930
+
3931
+ /** DeferredNode depends. */
3932
+ public depends: Trace.QueryPlanNode.IDeferredNodeDepends[];
3933
+
3934
+ /** DeferredNode label. */
3935
+ public label: string;
3936
+
3937
+ /** DeferredNode path. */
3938
+ public path: Trace.QueryPlanNode.IResponsePathElement[];
3939
+
3940
+ /** DeferredNode node. */
3941
+ public node?: (Trace.IQueryPlanNode|null);
3942
+
3943
+ /**
3944
+ * Creates a new DeferredNode instance using the specified properties.
3945
+ * @param [properties] Properties to set
3946
+ * @returns DeferredNode instance
3947
+ */
3948
+ public static create(properties?: Trace.QueryPlanNode.IDeferredNode): Trace.QueryPlanNode.DeferredNode;
3949
+
3950
+ /**
3951
+ * Encodes the specified DeferredNode message. Does not implicitly {@link Trace.QueryPlanNode.DeferredNode.verify|verify} messages.
3952
+ * @param message DeferredNode message or plain object to encode
3953
+ * @param [writer] Writer to encode to
3954
+ * @returns Writer
3955
+ */
3956
+ public static encode(message: Trace.QueryPlanNode.IDeferredNode, writer?: Writer): Writer;
3957
+
3958
+ /**
3959
+ * Encodes the specified DeferredNode message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.DeferredNode.verify|verify} messages.
3960
+ * @param message DeferredNode message or plain object to encode
3961
+ * @param [writer] Writer to encode to
3962
+ * @returns Writer
3963
+ */
3964
+ public static encodeDelimited(message: Trace.QueryPlanNode.IDeferredNode, writer?: Writer): Writer;
3965
+
3966
+ /**
3967
+ * Decodes a DeferredNode message from the specified reader or buffer.
3968
+ * @param reader Reader or buffer to decode from
3969
+ * @param [length] Message length if known beforehand
3970
+ * @returns DeferredNode
3971
+ * @throws {Error} If the payload is not a reader or valid buffer
3972
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3973
+ */
3974
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.DeferredNode;
3975
+
3976
+ /**
3977
+ * Decodes a DeferredNode message from the specified reader or buffer, length delimited.
3978
+ * @param reader Reader or buffer to decode from
3979
+ * @returns DeferredNode
3980
+ * @throws {Error} If the payload is not a reader or valid buffer
3981
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3982
+ */
3983
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.DeferredNode;
3984
+
3985
+ /**
3986
+ * Verifies a DeferredNode message.
3987
+ * @param message Plain object to verify
3988
+ * @returns `null` if valid, otherwise the reason why it is not
3989
+ */
3990
+ public static verify(message: { [k: string]: any }): (string|null);
3991
+
3992
+ /**
3993
+ * Creates a plain object from a DeferredNode message. Also converts values to other types if specified.
3994
+ * @param message DeferredNode
3995
+ * @param [options] Conversion options
3996
+ * @returns Plain object
3997
+ */
3998
+ public static toObject(message: Trace.QueryPlanNode.DeferredNode, options?: IConversionOptions): { [k: string]: any };
3999
+
4000
+ /**
4001
+ * Converts this DeferredNode to JSON.
4002
+ * @returns JSON object
4003
+ */
4004
+ public toJSON(): { [k: string]: any };
4005
+ }
4006
+
4007
+ /** Properties of a DeferredNodeDepends. */
4008
+ interface IDeferredNodeDepends {
4009
+
4010
+ /** DeferredNodeDepends id */
4011
+ id?: (string|null);
4012
+
4013
+ /** DeferredNodeDepends deferLabel */
4014
+ deferLabel?: (string|null);
4015
+ }
4016
+
4017
+ /** Represents a DeferredNodeDepends. */
4018
+ class DeferredNodeDepends implements IDeferredNodeDepends {
4019
+
4020
+ /**
4021
+ * Constructs a new DeferredNodeDepends.
4022
+ * @param [properties] Properties to set
4023
+ */
4024
+ constructor(properties?: Trace.QueryPlanNode.IDeferredNodeDepends);
4025
+
4026
+ /** DeferredNodeDepends id. */
4027
+ public id: string;
4028
+
4029
+ /** DeferredNodeDepends deferLabel. */
4030
+ public deferLabel: string;
4031
+
4032
+ /**
4033
+ * Creates a new DeferredNodeDepends instance using the specified properties.
4034
+ * @param [properties] Properties to set
4035
+ * @returns DeferredNodeDepends instance
4036
+ */
4037
+ public static create(properties?: Trace.QueryPlanNode.IDeferredNodeDepends): Trace.QueryPlanNode.DeferredNodeDepends;
4038
+
4039
+ /**
4040
+ * Encodes the specified DeferredNodeDepends message. Does not implicitly {@link Trace.QueryPlanNode.DeferredNodeDepends.verify|verify} messages.
4041
+ * @param message DeferredNodeDepends message or plain object to encode
4042
+ * @param [writer] Writer to encode to
4043
+ * @returns Writer
4044
+ */
4045
+ public static encode(message: Trace.QueryPlanNode.IDeferredNodeDepends, writer?: Writer): Writer;
4046
+
4047
+ /**
4048
+ * Encodes the specified DeferredNodeDepends message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.DeferredNodeDepends.verify|verify} messages.
4049
+ * @param message DeferredNodeDepends message or plain object to encode
4050
+ * @param [writer] Writer to encode to
4051
+ * @returns Writer
4052
+ */
4053
+ public static encodeDelimited(message: Trace.QueryPlanNode.IDeferredNodeDepends, writer?: Writer): Writer;
4054
+
4055
+ /**
4056
+ * Decodes a DeferredNodeDepends message from the specified reader or buffer.
4057
+ * @param reader Reader or buffer to decode from
4058
+ * @param [length] Message length if known beforehand
4059
+ * @returns DeferredNodeDepends
4060
+ * @throws {Error} If the payload is not a reader or valid buffer
4061
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4062
+ */
4063
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.DeferredNodeDepends;
4064
+
4065
+ /**
4066
+ * Decodes a DeferredNodeDepends message from the specified reader or buffer, length delimited.
4067
+ * @param reader Reader or buffer to decode from
4068
+ * @returns DeferredNodeDepends
4069
+ * @throws {Error} If the payload is not a reader or valid buffer
4070
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4071
+ */
4072
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.DeferredNodeDepends;
4073
+
4074
+ /**
4075
+ * Verifies a DeferredNodeDepends message.
4076
+ * @param message Plain object to verify
4077
+ * @returns `null` if valid, otherwise the reason why it is not
4078
+ */
4079
+ public static verify(message: { [k: string]: any }): (string|null);
4080
+
4081
+ /**
4082
+ * Creates a plain object from a DeferredNodeDepends message. Also converts values to other types if specified.
4083
+ * @param message DeferredNodeDepends
4084
+ * @param [options] Conversion options
4085
+ * @returns Plain object
4086
+ */
4087
+ public static toObject(message: Trace.QueryPlanNode.DeferredNodeDepends, options?: IConversionOptions): { [k: string]: any };
4088
+
4089
+ /**
4090
+ * Converts this DeferredNodeDepends to JSON.
4091
+ * @returns JSON object
4092
+ */
4093
+ public toJSON(): { [k: string]: any };
4094
+ }
4095
+
4096
+ /** Properties of a ResponsePathElement. */
4097
+ interface IResponsePathElement {
4098
+
4099
+ /** ResponsePathElement fieldName */
4100
+ fieldName?: (string|null);
4101
+
4102
+ /** ResponsePathElement index */
4103
+ index?: (number|null);
4104
+ }
4105
+
4106
+ /** Represents a ResponsePathElement. */
4107
+ class ResponsePathElement implements IResponsePathElement {
4108
+
4109
+ /**
4110
+ * Constructs a new ResponsePathElement.
4111
+ * @param [properties] Properties to set
4112
+ */
4113
+ constructor(properties?: Trace.QueryPlanNode.IResponsePathElement);
4114
+
4115
+ /** ResponsePathElement fieldName. */
4116
+ public fieldName: string;
4117
+
4118
+ /** ResponsePathElement index. */
4119
+ public index: number;
4120
+
4121
+ /** ResponsePathElement id. */
4122
+ public id?: ("fieldName"|"index");
4123
+
4124
+ /**
4125
+ * Creates a new ResponsePathElement instance using the specified properties.
4126
+ * @param [properties] Properties to set
4127
+ * @returns ResponsePathElement instance
4128
+ */
4129
+ public static create(properties?: Trace.QueryPlanNode.IResponsePathElement): Trace.QueryPlanNode.ResponsePathElement;
4130
+
4131
+ /**
4132
+ * Encodes the specified ResponsePathElement message. Does not implicitly {@link Trace.QueryPlanNode.ResponsePathElement.verify|verify} messages.
4133
+ * @param message ResponsePathElement message or plain object to encode
4134
+ * @param [writer] Writer to encode to
4135
+ * @returns Writer
4136
+ */
4137
+ public static encode(message: Trace.QueryPlanNode.IResponsePathElement, writer?: Writer): Writer;
4138
+
4139
+ /**
4140
+ * Encodes the specified ResponsePathElement message, length delimited. Does not implicitly {@link Trace.QueryPlanNode.ResponsePathElement.verify|verify} messages.
4141
+ * @param message ResponsePathElement message or plain object to encode
4142
+ * @param [writer] Writer to encode to
4143
+ * @returns Writer
4144
+ */
4145
+ public static encodeDelimited(message: Trace.QueryPlanNode.IResponsePathElement, writer?: Writer): Writer;
4146
+
4147
+ /**
4148
+ * Decodes a ResponsePathElement message from the specified reader or buffer.
4149
+ * @param reader Reader or buffer to decode from
4150
+ * @param [length] Message length if known beforehand
4151
+ * @returns ResponsePathElement
4152
+ * @throws {Error} If the payload is not a reader or valid buffer
4153
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4154
+ */
4155
+ public static decode(reader: (Reader|Uint8Array), length?: number): Trace.QueryPlanNode.ResponsePathElement;
4156
+
4157
+ /**
4158
+ * Decodes a ResponsePathElement message from the specified reader or buffer, length delimited.
4159
+ * @param reader Reader or buffer to decode from
4160
+ * @returns ResponsePathElement
4161
+ * @throws {Error} If the payload is not a reader or valid buffer
4162
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4163
+ */
4164
+ public static decodeDelimited(reader: (Reader|Uint8Array)): Trace.QueryPlanNode.ResponsePathElement;
4165
+
4166
+ /**
4167
+ * Verifies a ResponsePathElement message.
4168
+ * @param message Plain object to verify
4169
+ * @returns `null` if valid, otherwise the reason why it is not
4170
+ */
4171
+ public static verify(message: { [k: string]: any }): (string|null);
4172
+
4173
+ /**
4174
+ * Creates a plain object from a ResponsePathElement message. Also converts values to other types if specified.
4175
+ * @param message ResponsePathElement
4176
+ * @param [options] Conversion options
4177
+ * @returns Plain object
4178
+ */
4179
+ public static toObject(message: Trace.QueryPlanNode.ResponsePathElement, options?: IConversionOptions): { [k: string]: any };
4180
+
4181
+ /**
4182
+ * Converts this ResponsePathElement to JSON.
4183
+ * @returns JSON object
4184
+ */
4185
+ public toJSON(): { [k: string]: any };
4186
+ }
4187
+ }
4188
+ }
4189
+
4190
+ /** Namespace google. */
4191
+ declare namespace google {
4192
+
4193
+ /** Namespace protobuf. */
4194
+ namespace protobuf {
4195
+
4196
+ /** Properties of a Timestamp. */
4197
+ interface ITimestamp {
4198
+
4199
+ /** Timestamp seconds */
4200
+ seconds?: (number|null);
4201
+
4202
+ /** Timestamp nanos */
4203
+ nanos?: (number|null);
4204
+ }
4205
+
4206
+ /** Represents a Timestamp. */
4207
+ class Timestamp implements ITimestamp {
4208
+
4209
+ /**
4210
+ * Constructs a new Timestamp.
4211
+ * @param [properties] Properties to set
4212
+ */
4213
+ constructor(properties?: google.protobuf.ITimestamp);
4214
+
4215
+ /** Timestamp seconds. */
4216
+ public seconds: number;
4217
+
4218
+ /** Timestamp nanos. */
4219
+ public nanos: number;
4220
+
4221
+ /**
4222
+ * Creates a new Timestamp instance using the specified properties.
4223
+ * @param [properties] Properties to set
4224
+ * @returns Timestamp instance
4225
+ */
4226
+ public static create(properties?: google.protobuf.ITimestamp): google.protobuf.Timestamp;
4227
+
4228
+ /**
4229
+ * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
4230
+ * @param message Timestamp message or plain object to encode
4231
+ * @param [writer] Writer to encode to
4232
+ * @returns Writer
4233
+ */
4234
+ public static encode(message: google.protobuf.ITimestamp, writer?: Writer): Writer;
4235
+
4236
+ /**
4237
+ * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
4238
+ * @param message Timestamp message or plain object to encode
4239
+ * @param [writer] Writer to encode to
4240
+ * @returns Writer
4241
+ */
4242
+ public static encodeDelimited(message: google.protobuf.ITimestamp, writer?: Writer): Writer;
4243
+
4244
+ /**
4245
+ * Decodes a Timestamp message from the specified reader or buffer.
4246
+ * @param reader Reader or buffer to decode from
4247
+ * @param [length] Message length if known beforehand
4248
+ * @returns Timestamp
4249
+ * @throws {Error} If the payload is not a reader or valid buffer
4250
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4251
+ */
4252
+ public static decode(reader: (Reader|Uint8Array), length?: number): google.protobuf.Timestamp;
4253
+
4254
+ /**
4255
+ * Decodes a Timestamp message from the specified reader or buffer, length delimited.
4256
+ * @param reader Reader or buffer to decode from
4257
+ * @returns Timestamp
4258
+ * @throws {Error} If the payload is not a reader or valid buffer
4259
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
4260
+ */
4261
+ public static decodeDelimited(reader: (Reader|Uint8Array)): google.protobuf.Timestamp;
4262
+
4263
+ /**
4264
+ * Verifies a Timestamp message.
4265
+ * @param message Plain object to verify
4266
+ * @returns `null` if valid, otherwise the reason why it is not
4267
+ */
4268
+ public static verify(message: { [k: string]: any }): (string|null);
4269
+
4270
+ /**
4271
+ * Creates a plain object from a Timestamp message. Also converts values to other types if specified.
4272
+ * @param message Timestamp
4273
+ * @param [options] Conversion options
4274
+ * @returns Plain object
4275
+ */
4276
+ public static toObject(message: google.protobuf.Timestamp, options?: IConversionOptions): { [k: string]: any };
4277
+
4278
+ /**
4279
+ * Converts this Timestamp to JSON.
4280
+ * @returns JSON object
4281
+ */
4282
+ public toJSON(): { [k: string]: any };
4283
+ }
4284
+ }
4285
+ }
4286
+
4287
+ type CacheScope = 'PUBLIC' | 'PRIVATE';
4288
+ interface CacheHint {
4289
+ maxAge?: number;
4290
+ scope?: CacheScope;
4291
+ }
4292
+ interface CachePolicy extends CacheHint {
4293
+ replace(hint: CacheHint): void;
4294
+ restrict(hint: CacheHint): void;
4295
+ policyIfCacheable(): Required<CacheHint> | null;
4296
+ }
4297
+
4298
+ interface GraphQLRequestMetrics {
4299
+ captureTraces?: boolean;
4300
+ persistedQueryHit?: boolean;
4301
+ persistedQueryRegister?: boolean;
4302
+ responseCacheHit?: boolean;
4303
+ forbiddenOperation?: boolean;
4304
+ registeredOperation?: boolean;
4305
+ startHrTime?: [number, number];
4306
+ queryPlanTrace?: Trace.QueryPlanNode;
4307
+ nonFtv1ErrorPaths?: NonFtv1ErrorPath[];
4308
+ }
4309
+ interface GraphQLRequestContext<TContext extends BaseContext> {
4310
+ readonly logger: Logger;
4311
+ readonly cache: KeyValueCache<string>;
4312
+ readonly request: GraphQLRequest;
4313
+ readonly response: GraphQLInProgressResponse;
4314
+ readonly schema: GraphQLSchema;
4315
+ readonly contextValue: TContext;
4316
+ readonly queryHash?: string;
4317
+ readonly document?: DocumentNode;
4318
+ readonly source?: string;
4319
+ readonly operationName?: string | null;
4320
+ readonly operation?: OperationDefinitionNode;
4321
+ readonly errors?: ReadonlyArray<GraphQLError>;
4322
+ readonly metrics: GraphQLRequestMetrics;
4323
+ readonly overallCachePolicy: CachePolicy;
4324
+ readonly requestIsBatched: boolean;
4325
+ }
4326
+ type GraphQLRequestContextDidResolveSource<TContext extends BaseContext> = WithRequired<GraphQLRequestContext<TContext>, 'source' | 'queryHash'>;
4327
+ type GraphQLRequestContextParsingDidStart<TContext extends BaseContext> = GraphQLRequestContextDidResolveSource<TContext>;
4328
+ type GraphQLRequestContextValidationDidStart<TContext extends BaseContext> = GraphQLRequestContextParsingDidStart<TContext> & WithRequired<GraphQLRequestContext<TContext>, 'document'>;
4329
+ type GraphQLRequestContextDidResolveOperation<TContext extends BaseContext> = GraphQLRequestContextValidationDidStart<TContext> & WithRequired<GraphQLRequestContext<TContext>, 'operationName'>;
4330
+ type GraphQLRequestContextDidEncounterErrors<TContext extends BaseContext> = WithRequired<GraphQLRequestContext<TContext>, 'errors'>;
4331
+ type GraphQLRequestContextResponseForOperation<TContext extends BaseContext> = WithRequired<GraphQLRequestContext<TContext>, 'source' | 'document' | 'operation' | 'operationName'>;
4332
+ type GraphQLRequestContextExecutionDidStart<TContext extends BaseContext> = GraphQLRequestContextParsingDidStart<TContext> & WithRequired<GraphQLRequestContext<TContext>, 'document' | 'operation' | 'operationName'>;
4333
+ type GraphQLRequestContextWillSendResponse<TContext extends BaseContext> = GraphQLRequestContextDidResolveSource<TContext> & {
4334
+ readonly response: GraphQLResponse;
4335
+ };
4336
+ type GraphQLRequestContextDidEncounterSubsequentErrors<TContext extends BaseContext> = GraphQLRequestContextWillSendResponse<TContext>;
4337
+ type GraphQLRequestContextWillSendSubsequentPayload<TContext extends BaseContext> = GraphQLRequestContextWillSendResponse<TContext>;
4338
+
4339
+ interface GraphQLServerContext {
4340
+ readonly logger: Logger;
4341
+ readonly cache: KeyValueCache<string>;
4342
+ schema: GraphQLSchema;
4343
+ apollo: ApolloConfig;
4344
+ startedInBackground: boolean;
4345
+ }
4346
+ interface GraphQLSchemaContext {
4347
+ apiSchema: GraphQLSchema;
4348
+ coreSupergraphSdl?: string;
4349
+ }
4350
+ interface ApolloServerPlugin<in TContext extends BaseContext = BaseContext> {
4351
+ serverWillStart?(service: GraphQLServerContext): Promise<GraphQLServerListener | void>;
4352
+ requestDidStart?(requestContext: GraphQLRequestContext<TContext>): Promise<GraphQLRequestListener<TContext> | void>;
4353
+ unexpectedErrorProcessingRequest?({ requestContext, error, }: {
4354
+ requestContext: GraphQLRequestContext<TContext>;
4355
+ error: Error;
4356
+ }): Promise<void>;
4357
+ contextCreationDidFail?({ error }: {
4358
+ error: Error;
4359
+ }): Promise<void>;
4360
+ invalidRequestWasReceived?({ error }: {
4361
+ error: Error;
4362
+ }): Promise<void>;
4363
+ startupDidFail?({ error }: {
4364
+ error: Error;
4365
+ }): Promise<void>;
4366
+ }
4367
+ interface GraphQLServerListener {
4368
+ schemaDidLoadOrUpdate?(schemaContext: GraphQLSchemaContext): void;
4369
+ drainServer?(): Promise<void>;
4370
+ serverWillStop?(): Promise<void>;
4371
+ renderLandingPage?(): Promise<LandingPage>;
4372
+ }
4373
+ interface LandingPage {
4374
+ html: string | (() => Promise<string>);
4375
+ }
4376
+ type GraphQLRequestListenerParsingDidEnd = (err?: Error) => Promise<void>;
4377
+ type GraphQLRequestListenerValidationDidEnd = (err?: ReadonlyArray<Error>) => Promise<void>;
4378
+ type GraphQLRequestListenerExecutionDidEnd = (err?: Error) => Promise<void>;
4379
+ type GraphQLRequestListenerDidResolveField = (error: Error | null, result?: any) => void;
4380
+ interface GraphQLRequestListener<TContext extends BaseContext> {
4381
+ didResolveSource?(requestContext: GraphQLRequestContextDidResolveSource<TContext>): Promise<void>;
4382
+ parsingDidStart?(requestContext: GraphQLRequestContextParsingDidStart<TContext>): Promise<GraphQLRequestListenerParsingDidEnd | void>;
4383
+ validationDidStart?(requestContext: GraphQLRequestContextValidationDidStart<TContext>): Promise<GraphQLRequestListenerValidationDidEnd | void>;
4384
+ didResolveOperation?(requestContext: GraphQLRequestContextDidResolveOperation<TContext>): Promise<void>;
4385
+ didEncounterErrors?(requestContext: GraphQLRequestContextDidEncounterErrors<TContext>): Promise<void>;
4386
+ responseForOperation?(requestContext: GraphQLRequestContextResponseForOperation<TContext>): Promise<GraphQLResponse | null>;
4387
+ executionDidStart?(requestContext: GraphQLRequestContextExecutionDidStart<TContext>): Promise<GraphQLRequestExecutionListener<TContext> | void>;
4388
+ willSendResponse?(requestContext: GraphQLRequestContextWillSendResponse<TContext>): Promise<void>;
4389
+ didEncounterSubsequentErrors?(requestContext: GraphQLRequestContextDidEncounterSubsequentErrors<TContext>, errors: ReadonlyArray<GraphQLError>): Promise<void>;
4390
+ willSendSubsequentPayload?(requestContext: GraphQLRequestContextWillSendSubsequentPayload<TContext>, payload: GraphQLExperimentalFormattedSubsequentIncrementalExecutionResult): Promise<void>;
4391
+ }
4392
+ type GraphQLFieldResolverParams<TSource, TContext, TArgs = {
4393
+ [argName: string]: any;
4394
+ }> = {
4395
+ source: TSource;
4396
+ args: TArgs;
4397
+ contextValue: TContext;
4398
+ info: GraphQLResolveInfo;
4399
+ };
4400
+ interface GraphQLRequestExecutionListener<TContext extends BaseContext> {
4401
+ executionDidEnd?: GraphQLRequestListenerExecutionDidEnd;
4402
+ willResolveField?(fieldResolverParams: GraphQLFieldResolverParams<any, TContext>): GraphQLRequestListenerDidResolveField | void;
4403
+ }
4404
+
4405
+ interface Options {
4406
+ serviceName: string;
4407
+ token: string;
4408
+ }
4409
+ declare const createStellateLoggerPlugin: (options: Options) => ApolloServerPlugin;
4410
+
4411
+ export { createStellateLoggerPlugin };