ast-types 0.13.2 → 0.14.1

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.
@@ -47,6 +47,7 @@ export declare namespace namedTypes {
47
47
  rest?: K.IdentifierKind | null;
48
48
  returnType?: K.TypeAnnotationKind | K.TSTypeAnnotationKind | null;
49
49
  typeParameters?: K.TypeParameterDeclarationKind | K.TSTypeParameterDeclarationKind | null;
50
+ predicate?: K.FlowPredicateKind | null;
50
51
  }
51
52
  interface Expression extends Node {
52
53
  }
@@ -162,7 +163,7 @@ export declare namespace namedTypes {
162
163
  }
163
164
  interface FunctionDeclaration extends Omit<Function, "type" | "id">, Omit<Declaration, "type"> {
164
165
  type: "FunctionDeclaration";
165
- id: K.IdentifierKind;
166
+ id: K.IdentifierKind | null;
166
167
  }
167
168
  interface FunctionExpression extends Omit<Function, "type">, Omit<Expression, "type"> {
168
169
  type: "FunctionExpression";
@@ -213,13 +214,13 @@ export declare namespace namedTypes {
213
214
  }
214
215
  interface BinaryExpression extends Omit<Expression, "type"> {
215
216
  type: "BinaryExpression";
216
- operator: "==" | "!=" | "===" | "!==" | "<" | "<=" | ">" | ">=" | "<<" | ">>" | ">>>" | "+" | "-" | "*" | "/" | "%" | "**" | "&" | "|" | "^" | "in" | "instanceof";
217
+ operator: "==" | "!=" | "===" | "!==" | "<" | "<=" | ">" | ">=" | "<<" | ">>" | ">>>" | "+" | "-" | "*" | "/" | "%" | "&" | "|" | "^" | "in" | "instanceof" | "**";
217
218
  left: K.ExpressionKind;
218
219
  right: K.ExpressionKind;
219
220
  }
220
221
  interface AssignmentExpression extends Omit<Expression, "type"> {
221
222
  type: "AssignmentExpression";
222
- operator: "=" | "+=" | "-=" | "*=" | "/=" | "%=" | "<<=" | ">>=" | ">>>=" | "|=" | "^=" | "&=";
223
+ operator: "=" | "+=" | "-=" | "*=" | "/=" | "%=" | "<<=" | ">>=" | ">>>=" | "|=" | "^=" | "&=" | "**=";
223
224
  left: K.PatternKind | K.MemberExpressionKind;
224
225
  right: K.ExpressionKind;
225
226
  }
@@ -287,6 +288,7 @@ export declare namespace namedTypes {
287
288
  left: K.VariableDeclarationKind | K.PatternKind;
288
289
  right: K.ExpressionKind;
289
290
  body: K.StatementKind;
291
+ await?: boolean;
290
292
  }
291
293
  interface YieldExpression extends Omit<Expression, "type"> {
292
294
  type: "YieldExpression";
@@ -335,15 +337,6 @@ export declare namespace namedTypes {
335
337
  type: "ArrayPattern";
336
338
  elements: (K.PatternKind | K.SpreadElementKind | null)[];
337
339
  }
338
- interface MethodDefinition extends Omit<Declaration, "type"> {
339
- type: "MethodDefinition";
340
- kind: "constructor" | "method" | "get" | "set";
341
- key: K.ExpressionKind;
342
- value: K.FunctionKind;
343
- computed?: boolean;
344
- static?: boolean;
345
- decorators?: K.DecoratorKind[] | null;
346
- }
347
340
  interface SpreadElement extends Omit<Node, "type"> {
348
341
  type: "SpreadElement";
349
342
  argument: K.ExpressionKind;
@@ -353,6 +346,15 @@ export declare namespace namedTypes {
353
346
  left: K.PatternKind;
354
347
  right: K.ExpressionKind;
355
348
  }
349
+ interface MethodDefinition extends Omit<Declaration, "type"> {
350
+ type: "MethodDefinition";
351
+ kind: "constructor" | "method" | "get" | "set";
352
+ key: K.ExpressionKind;
353
+ value: K.FunctionKind;
354
+ computed?: boolean;
355
+ static?: boolean;
356
+ decorators?: K.DecoratorKind[] | null;
357
+ }
356
358
  interface ClassPropertyDefinition extends Omit<Declaration, "type"> {
357
359
  type: "ClassPropertyDefinition";
358
360
  definition: K.MethodDefinitionKind | K.VariableDeclaratorKind | K.ClassPropertyDefinitionKind | K.ClassPropertyKind;
@@ -389,6 +391,9 @@ export declare namespace namedTypes {
389
391
  superTypeParameters?: K.TypeParameterInstantiationKind | K.TSTypeParameterInstantiationKind | null;
390
392
  implements?: K.ClassImplementsKind[] | K.TSExpressionWithTypeArgumentsKind[];
391
393
  }
394
+ interface Super extends Omit<Expression, "type"> {
395
+ type: "Super";
396
+ }
392
397
  interface Specifier extends Node {
393
398
  }
394
399
  interface ModuleSpecifier extends Specifier {
@@ -400,17 +405,36 @@ export declare namespace namedTypes {
400
405
  type: "ImportSpecifier";
401
406
  imported: K.IdentifierKind;
402
407
  }
403
- interface ImportNamespaceSpecifier extends Omit<ModuleSpecifier, "type"> {
404
- type: "ImportNamespaceSpecifier";
405
- }
406
408
  interface ImportDefaultSpecifier extends Omit<ModuleSpecifier, "type"> {
407
409
  type: "ImportDefaultSpecifier";
408
410
  }
411
+ interface ImportNamespaceSpecifier extends Omit<ModuleSpecifier, "type"> {
412
+ type: "ImportNamespaceSpecifier";
413
+ }
409
414
  interface ImportDeclaration extends Omit<Declaration, "type"> {
410
415
  type: "ImportDeclaration";
411
416
  specifiers?: (K.ImportSpecifierKind | K.ImportNamespaceSpecifierKind | K.ImportDefaultSpecifierKind)[];
412
417
  source: K.LiteralKind;
413
- importKind?: "value" | "type";
418
+ importKind?: "value" | "type" | "typeof";
419
+ }
420
+ interface ExportNamedDeclaration extends Omit<Declaration, "type"> {
421
+ type: "ExportNamedDeclaration";
422
+ declaration: K.DeclarationKind | null;
423
+ specifiers?: K.ExportSpecifierKind[];
424
+ source?: K.LiteralKind | null;
425
+ }
426
+ interface ExportSpecifier extends Omit<ModuleSpecifier, "type"> {
427
+ type: "ExportSpecifier";
428
+ exported: K.IdentifierKind;
429
+ }
430
+ interface ExportDefaultDeclaration extends Omit<Declaration, "type"> {
431
+ type: "ExportDefaultDeclaration";
432
+ declaration: K.DeclarationKind | K.ExpressionKind;
433
+ }
434
+ interface ExportAllDeclaration extends Omit<Declaration, "type"> {
435
+ type: "ExportAllDeclaration";
436
+ source: K.LiteralKind;
437
+ exported: K.IdentifierKind | null;
414
438
  }
415
439
  interface TaggedTemplateExpression extends Omit<Expression, "type"> {
416
440
  type: "TaggedTemplateExpression";
@@ -425,11 +449,21 @@ export declare namespace namedTypes {
425
449
  interface TemplateElement extends Omit<Node, "type"> {
426
450
  type: "TemplateElement";
427
451
  value: {
428
- cooked: string;
452
+ cooked: string | null;
429
453
  raw: string;
430
454
  };
431
455
  tail: boolean;
432
456
  }
457
+ interface MetaProperty extends Omit<Expression, "type"> {
458
+ type: "MetaProperty";
459
+ meta: K.IdentifierKind;
460
+ property: K.IdentifierKind;
461
+ }
462
+ interface AwaitExpression extends Omit<Expression, "type"> {
463
+ type: "AwaitExpression";
464
+ argument: K.ExpressionKind | null;
465
+ all?: boolean;
466
+ }
433
467
  interface SpreadProperty extends Omit<Node, "type"> {
434
468
  type: "SpreadProperty";
435
469
  argument: K.ExpressionKind;
@@ -438,15 +472,22 @@ export declare namespace namedTypes {
438
472
  type: "SpreadPropertyPattern";
439
473
  argument: K.PatternKind;
440
474
  }
441
- interface AwaitExpression extends Omit<Expression, "type"> {
442
- type: "AwaitExpression";
443
- argument: K.ExpressionKind | null;
444
- all?: boolean;
475
+ interface ImportExpression extends Omit<Expression, "type"> {
476
+ type: "ImportExpression";
477
+ source: K.ExpressionKind;
478
+ }
479
+ interface OptionalMemberExpression extends Omit<MemberExpression, "type"> {
480
+ type: "OptionalMemberExpression";
481
+ optional?: boolean;
482
+ }
483
+ interface OptionalCallExpression extends Omit<CallExpression, "type"> {
484
+ type: "OptionalCallExpression";
485
+ optional?: boolean;
445
486
  }
446
487
  interface JSXAttribute extends Omit<Node, "type"> {
447
488
  type: "JSXAttribute";
448
489
  name: K.JSXIdentifierKind | K.JSXNamespacedNameKind;
449
- value?: K.LiteralKind | K.JSXExpressionContainerKind | null;
490
+ value?: K.LiteralKind | K.JSXExpressionContainerKind | K.JSXElementKind | K.JSXFragmentKind | null;
450
491
  }
451
492
  interface JSXIdentifier extends Omit<Identifier, "type" | "name"> {
452
493
  type: "JSXIdentifier";
@@ -459,7 +500,22 @@ export declare namespace namedTypes {
459
500
  }
460
501
  interface JSXExpressionContainer extends Omit<Expression, "type"> {
461
502
  type: "JSXExpressionContainer";
462
- expression: K.ExpressionKind;
503
+ expression: K.ExpressionKind | K.JSXEmptyExpressionKind;
504
+ }
505
+ interface JSXElement extends Omit<Expression, "type"> {
506
+ type: "JSXElement";
507
+ openingElement: K.JSXOpeningElementKind;
508
+ closingElement?: K.JSXClosingElementKind | null;
509
+ children?: (K.JSXTextKind | K.JSXExpressionContainerKind | K.JSXSpreadChildKind | K.JSXElementKind | K.JSXFragmentKind | K.LiteralKind)[];
510
+ name?: K.JSXIdentifierKind | K.JSXNamespacedNameKind | K.JSXMemberExpressionKind;
511
+ selfClosing?: boolean;
512
+ attributes?: (K.JSXAttributeKind | K.JSXSpreadAttributeKind)[];
513
+ }
514
+ interface JSXFragment extends Omit<Expression, "type"> {
515
+ type: "JSXFragment";
516
+ openingFragment: K.JSXOpeningFragmentKind;
517
+ closingFragment: K.JSXClosingFragmentKind;
518
+ children?: (K.JSXTextKind | K.JSXExpressionContainerKind | K.JSXSpreadChildKind | K.JSXElementKind | K.JSXFragmentKind | K.LiteralKind)[];
463
519
  }
464
520
  interface JSXMemberExpression extends Omit<MemberExpression, "type" | "object" | "property" | "computed"> {
465
521
  type: "JSXMemberExpression";
@@ -471,14 +527,17 @@ export declare namespace namedTypes {
471
527
  type: "JSXSpreadAttribute";
472
528
  argument: K.ExpressionKind;
473
529
  }
474
- interface JSXElement extends Omit<Expression, "type"> {
475
- type: "JSXElement";
476
- openingElement: K.JSXOpeningElementKind;
477
- closingElement?: K.JSXClosingElementKind | null;
478
- children?: (K.JSXElementKind | K.JSXExpressionContainerKind | K.JSXFragmentKind | K.JSXTextKind | K.LiteralKind)[];
479
- name?: K.JSXIdentifierKind | K.JSXNamespacedNameKind | K.JSXMemberExpressionKind;
480
- selfClosing?: boolean;
481
- attributes?: (K.JSXAttributeKind | K.JSXSpreadAttributeKind)[];
530
+ interface JSXEmptyExpression extends Omit<Node, "type"> {
531
+ type: "JSXEmptyExpression";
532
+ }
533
+ interface JSXText extends Omit<Literal, "type" | "value"> {
534
+ type: "JSXText";
535
+ value: string;
536
+ raw?: string;
537
+ }
538
+ interface JSXSpreadChild extends Omit<Node, "type"> {
539
+ type: "JSXSpreadChild";
540
+ expression: K.ExpressionKind;
482
541
  }
483
542
  interface JSXOpeningElement extends Omit<Node, "type"> {
484
543
  type: "JSXOpeningElement";
@@ -490,29 +549,25 @@ export declare namespace namedTypes {
490
549
  type: "JSXClosingElement";
491
550
  name: K.JSXIdentifierKind | K.JSXNamespacedNameKind | K.JSXMemberExpressionKind;
492
551
  }
493
- interface JSXFragment extends Omit<Expression, "type"> {
494
- type: "JSXFragment";
495
- openingElement: K.JSXOpeningFragmentKind;
496
- closingElement: K.JSXClosingFragmentKind;
497
- children?: (K.JSXElementKind | K.JSXExpressionContainerKind | K.JSXFragmentKind | K.JSXTextKind | K.LiteralKind)[];
498
- }
499
- interface JSXText extends Omit<Literal, "type" | "value"> {
500
- type: "JSXText";
501
- value: string;
502
- }
503
552
  interface JSXOpeningFragment extends Omit<Node, "type"> {
504
553
  type: "JSXOpeningFragment";
505
554
  }
506
555
  interface JSXClosingFragment extends Omit<Node, "type"> {
507
556
  type: "JSXClosingFragment";
508
557
  }
509
- interface JSXEmptyExpression extends Omit<Expression, "type"> {
510
- type: "JSXEmptyExpression";
511
- }
512
- interface JSXSpreadChild extends Omit<Expression, "type"> {
513
- type: "JSXSpreadChild";
558
+ interface Decorator extends Omit<Node, "type"> {
559
+ type: "Decorator";
514
560
  expression: K.ExpressionKind;
515
561
  }
562
+ interface PrivateName extends Omit<Expression, "type">, Omit<Pattern, "type"> {
563
+ type: "PrivateName";
564
+ id: K.IdentifierKind;
565
+ }
566
+ interface ClassPrivateProperty extends Omit<ClassProperty, "type" | "key" | "value"> {
567
+ type: "ClassPrivateProperty";
568
+ key: K.PrivateNameKind;
569
+ value?: K.ExpressionKind | null;
570
+ }
516
571
  interface TypeParameterDeclaration extends Omit<Node, "type"> {
517
572
  type: "TypeParameterDeclaration";
518
573
  params: K.TypeParameterKind[];
@@ -560,9 +615,15 @@ export declare namespace namedTypes {
560
615
  interface VoidTypeAnnotation extends Omit<FlowType, "type"> {
561
616
  type: "VoidTypeAnnotation";
562
617
  }
618
+ interface SymbolTypeAnnotation extends Omit<FlowType, "type"> {
619
+ type: "SymbolTypeAnnotation";
620
+ }
563
621
  interface NumberTypeAnnotation extends Omit<FlowType, "type"> {
564
622
  type: "NumberTypeAnnotation";
565
623
  }
624
+ interface BigIntTypeAnnotation extends Omit<FlowType, "type"> {
625
+ type: "BigIntTypeAnnotation";
626
+ }
566
627
  interface NumberLiteralTypeAnnotation extends Omit<FlowType, "type"> {
567
628
  type: "NumberLiteralTypeAnnotation";
568
629
  value: number;
@@ -573,6 +634,11 @@ export declare namespace namedTypes {
573
634
  value: number;
574
635
  raw: string;
575
636
  }
637
+ interface BigIntLiteralTypeAnnotation extends Omit<FlowType, "type"> {
638
+ type: "BigIntLiteralTypeAnnotation";
639
+ value: null;
640
+ raw: string;
641
+ }
576
642
  interface StringTypeAnnotation extends Omit<FlowType, "type"> {
577
643
  type: "StringTypeAnnotation";
578
644
  }
@@ -617,7 +683,7 @@ export declare namespace namedTypes {
617
683
  }
618
684
  interface FunctionTypeParam extends Omit<Node, "type"> {
619
685
  type: "FunctionTypeParam";
620
- name: K.IdentifierKind;
686
+ name: K.IdentifierKind | null;
621
687
  typeAnnotation: K.FlowTypeKind;
622
688
  optional: boolean;
623
689
  }
@@ -651,6 +717,7 @@ export declare namespace namedTypes {
651
717
  key: K.FlowTypeKind;
652
718
  value: K.FlowTypeKind;
653
719
  variance?: K.VarianceKind | "plus" | "minus" | null;
720
+ static?: boolean;
654
721
  }
655
722
  interface ObjectTypeCallProperty extends Omit<Node, "type"> {
656
723
  type: "ObjectTypeCallProperty";
@@ -701,6 +768,7 @@ export declare namespace namedTypes {
701
768
  name: string;
702
769
  variance?: K.VarianceKind | "plus" | "minus" | null;
703
770
  bound?: K.TypeAnnotationKind | null;
771
+ default?: K.FlowTypeKind | null;
704
772
  }
705
773
  interface InterfaceTypeAnnotation extends Omit<FlowType, "type"> {
706
774
  type: "InterfaceTypeAnnotation";
@@ -728,18 +796,19 @@ export declare namespace namedTypes {
728
796
  typeParameters: K.TypeParameterDeclarationKind | null;
729
797
  right: K.FlowTypeKind;
730
798
  }
799
+ interface DeclareTypeAlias extends Omit<TypeAlias, "type"> {
800
+ type: "DeclareTypeAlias";
801
+ }
731
802
  interface OpaqueType extends Omit<Declaration, "type"> {
732
803
  type: "OpaqueType";
733
804
  id: K.IdentifierKind;
734
805
  typeParameters: K.TypeParameterDeclarationKind | null;
735
806
  impltype: K.FlowTypeKind;
736
- supertype: K.FlowTypeKind;
807
+ supertype: K.FlowTypeKind | null;
737
808
  }
738
- interface DeclareTypeAlias extends Omit<TypeAlias, "type"> {
739
- type: "DeclareTypeAlias";
740
- }
741
- interface DeclareOpaqueType extends Omit<TypeAlias, "type"> {
809
+ interface DeclareOpaqueType extends Omit<OpaqueType, "type" | "impltype"> {
742
810
  type: "DeclareOpaqueType";
811
+ impltype: K.FlowTypeKind | null;
743
812
  }
744
813
  interface TypeCastExpression extends Omit<Expression, "type"> {
745
814
  type: "TypeCastExpression";
@@ -757,6 +826,9 @@ export declare namespace namedTypes {
757
826
  interface DeclareFunction extends Omit<Statement, "type"> {
758
827
  type: "DeclareFunction";
759
828
  id: K.IdentifierKind;
829
+ predicate?: K.FlowPredicateKind | null;
830
+ }
831
+ interface FlowPredicate extends Flow {
760
832
  }
761
833
  interface DeclareClass extends Omit<InterfaceDeclaration, "type"> {
762
834
  type: "DeclareClass";
@@ -773,14 +845,10 @@ export declare namespace namedTypes {
773
845
  interface DeclareExportDeclaration extends Omit<Declaration, "type"> {
774
846
  type: "DeclareExportDeclaration";
775
847
  default: boolean;
776
- declaration: K.DeclareVariableKind | K.DeclareFunctionKind | K.DeclareClassKind | K.FlowTypeKind | null;
848
+ declaration: K.DeclareVariableKind | K.DeclareFunctionKind | K.DeclareClassKind | K.FlowTypeKind | K.TypeAliasKind | K.DeclareOpaqueTypeKind | K.InterfaceDeclarationKind | null;
777
849
  specifiers?: (K.ExportSpecifierKind | K.ExportBatchSpecifierKind)[];
778
850
  source?: K.LiteralKind | null;
779
851
  }
780
- interface ExportSpecifier extends Omit<ModuleSpecifier, "type"> {
781
- type: "ExportSpecifier";
782
- exported: K.IdentifierKind;
783
- }
784
852
  interface ExportBatchSpecifier extends Omit<Specifier, "type"> {
785
853
  type: "ExportBatchSpecifier";
786
854
  }
@@ -788,8 +856,6 @@ export declare namespace namedTypes {
788
856
  type: "DeclareExportAllDeclaration";
789
857
  source?: K.LiteralKind | null;
790
858
  }
791
- interface FlowPredicate extends Flow {
792
- }
793
859
  interface InferredPredicate extends Omit<FlowPredicate, "type"> {
794
860
  type: "InferredPredicate";
795
861
  }
@@ -797,6 +863,49 @@ export declare namespace namedTypes {
797
863
  type: "DeclaredPredicate";
798
864
  value: K.ExpressionKind;
799
865
  }
866
+ interface EnumDeclaration extends Omit<Declaration, "type"> {
867
+ type: "EnumDeclaration";
868
+ id: K.IdentifierKind;
869
+ body: K.EnumBooleanBodyKind | K.EnumNumberBodyKind | K.EnumStringBodyKind | K.EnumSymbolBodyKind;
870
+ }
871
+ interface EnumBooleanBody {
872
+ type: "EnumBooleanBody";
873
+ members: K.EnumBooleanMemberKind[];
874
+ explicitType: boolean;
875
+ }
876
+ interface EnumNumberBody {
877
+ type: "EnumNumberBody";
878
+ members: K.EnumNumberMemberKind[];
879
+ explicitType: boolean;
880
+ }
881
+ interface EnumStringBody {
882
+ type: "EnumStringBody";
883
+ members: K.EnumStringMemberKind[] | K.EnumDefaultedMemberKind[];
884
+ explicitType: boolean;
885
+ }
886
+ interface EnumSymbolBody {
887
+ type: "EnumSymbolBody";
888
+ members: K.EnumDefaultedMemberKind[];
889
+ }
890
+ interface EnumBooleanMember {
891
+ type: "EnumBooleanMember";
892
+ id: K.IdentifierKind;
893
+ init: K.LiteralKind | boolean;
894
+ }
895
+ interface EnumNumberMember {
896
+ type: "EnumNumberMember";
897
+ id: K.IdentifierKind;
898
+ init: K.LiteralKind;
899
+ }
900
+ interface EnumStringMember {
901
+ type: "EnumStringMember";
902
+ id: K.IdentifierKind;
903
+ init: K.LiteralKind;
904
+ }
905
+ interface EnumDefaultedMember {
906
+ type: "EnumDefaultedMember";
907
+ id: K.IdentifierKind;
908
+ }
800
909
  interface ExportDeclaration extends Omit<Declaration, "type"> {
801
910
  type: "ExportDeclaration";
802
911
  default: boolean;
@@ -817,37 +926,15 @@ export declare namespace namedTypes {
817
926
  type: "DoExpression";
818
927
  body: K.StatementKind[];
819
928
  }
820
- interface Super extends Omit<Expression, "type"> {
821
- type: "Super";
822
- }
823
929
  interface BindExpression extends Omit<Expression, "type"> {
824
930
  type: "BindExpression";
825
931
  object: K.ExpressionKind | null;
826
932
  callee: K.ExpressionKind;
827
933
  }
828
- interface Decorator extends Omit<Node, "type"> {
829
- type: "Decorator";
830
- expression: K.ExpressionKind;
831
- }
832
- interface MetaProperty extends Omit<Expression, "type"> {
833
- type: "MetaProperty";
834
- meta: K.IdentifierKind;
835
- property: K.IdentifierKind;
836
- }
837
934
  interface ParenthesizedExpression extends Omit<Expression, "type"> {
838
935
  type: "ParenthesizedExpression";
839
936
  expression: K.ExpressionKind;
840
937
  }
841
- interface ExportDefaultDeclaration extends Omit<Declaration, "type"> {
842
- type: "ExportDefaultDeclaration";
843
- declaration: K.DeclarationKind | K.ExpressionKind;
844
- }
845
- interface ExportNamedDeclaration extends Omit<Declaration, "type"> {
846
- type: "ExportNamedDeclaration";
847
- declaration: K.DeclarationKind | null;
848
- specifiers?: K.ExportSpecifierKind[];
849
- source?: K.LiteralKind | null;
850
- }
851
938
  interface ExportNamespaceSpecifier extends Omit<Specifier, "type"> {
852
939
  type: "ExportNamespaceSpecifier";
853
940
  exported: K.IdentifierKind;
@@ -856,11 +943,6 @@ export declare namespace namedTypes {
856
943
  type: "ExportDefaultSpecifier";
857
944
  exported: K.IdentifierKind;
858
945
  }
859
- interface ExportAllDeclaration extends Omit<Declaration, "type"> {
860
- type: "ExportAllDeclaration";
861
- exported: K.IdentifierKind | null;
862
- source: K.LiteralKind;
863
- }
864
946
  interface CommentBlock extends Comment {
865
947
  type: "CommentBlock";
866
948
  }
@@ -926,11 +1008,6 @@ export declare namespace namedTypes {
926
1008
  accessibility?: K.LiteralKind | null;
927
1009
  decorators?: K.DecoratorKind[] | null;
928
1010
  }
929
- interface ClassPrivateProperty extends Omit<ClassProperty, "type" | "key" | "value"> {
930
- type: "ClassPrivateProperty";
931
- key: K.PrivateNameKind;
932
- value?: K.ExpressionKind | null;
933
- }
934
1011
  interface ClassMethod extends Omit<Declaration, "type">, Omit<Function, "type" | "body"> {
935
1012
  type: "ClassMethod";
936
1013
  key: K.LiteralKind | K.IdentifierKind | K.ExpressionKind;
@@ -957,10 +1034,6 @@ export declare namespace namedTypes {
957
1034
  decorators?: K.DecoratorKind[] | null;
958
1035
  optional?: boolean | null;
959
1036
  }
960
- interface PrivateName extends Omit<Expression, "type">, Omit<Pattern, "type"> {
961
- type: "PrivateName";
962
- id: K.IdentifierKind;
963
- }
964
1037
  interface RestProperty extends Omit<Node, "type"> {
965
1038
  type: "RestProperty";
966
1039
  argument: K.ExpressionKind;
@@ -1119,7 +1192,13 @@ export declare namespace namedTypes {
1119
1192
  }
1120
1193
  interface TSTupleType extends Omit<TSType, "type"> {
1121
1194
  type: "TSTupleType";
1122
- elementTypes: K.TSTypeKind[];
1195
+ elementTypes: (K.TSTypeKind | K.TSNamedTupleMemberKind)[];
1196
+ }
1197
+ interface TSNamedTupleMember extends Omit<TSType, "type"> {
1198
+ type: "TSNamedTupleMember";
1199
+ label: K.IdentifierKind;
1200
+ optional?: boolean;
1201
+ elementType: K.TSTypeKind;
1123
1202
  }
1124
1203
  interface TSRestType extends Omit<TSType, "type"> {
1125
1204
  type: "TSRestType";
@@ -1159,10 +1238,11 @@ export declare namespace namedTypes {
1159
1238
  optional?: boolean;
1160
1239
  parameters: (K.IdentifierKind | K.RestElementKind | K.ArrayPatternKind | K.ObjectPatternKind)[];
1161
1240
  }
1162
- interface TSTypePredicate extends Omit<TSTypeAnnotation, "type" | "typeAnnotation"> {
1241
+ interface TSTypePredicate extends Omit<TSTypeAnnotation, "type" | "typeAnnotation">, Omit<TSType, "type"> {
1163
1242
  type: "TSTypePredicate";
1164
1243
  parameterName: K.IdentifierKind | K.TSThisTypeKind;
1165
- typeAnnotation: K.TSTypeAnnotationKind;
1244
+ typeAnnotation?: K.TSTypeAnnotationKind | null;
1245
+ asserts?: boolean;
1166
1246
  }
1167
1247
  interface TSCallSignatureDeclaration extends Omit<Declaration, "type">, TSHasOptionalTypeParameters, TSHasOptionalTypeAnnotation {
1168
1248
  type: "TSCallSignatureDeclaration";
@@ -1258,15 +1338,7 @@ export declare namespace namedTypes {
1258
1338
  readonly?: boolean;
1259
1339
  parameter: K.IdentifierKind | K.AssignmentPatternKind;
1260
1340
  }
1261
- interface OptionalMemberExpression extends Omit<MemberExpression, "type"> {
1262
- type: "OptionalMemberExpression";
1263
- optional?: boolean;
1264
- }
1265
- interface OptionalCallExpression extends Omit<CallExpression, "type"> {
1266
- type: "OptionalCallExpression";
1267
- optional?: boolean;
1268
- }
1269
- type ASTNode = File | Program | Identifier | BlockStatement | EmptyStatement | ExpressionStatement | IfStatement | LabeledStatement | BreakStatement | ContinueStatement | WithStatement | SwitchStatement | SwitchCase | ReturnStatement | ThrowStatement | TryStatement | CatchClause | WhileStatement | DoWhileStatement | ForStatement | VariableDeclaration | ForInStatement | DebuggerStatement | FunctionDeclaration | FunctionExpression | VariableDeclarator | ThisExpression | ArrayExpression | ObjectExpression | Property | Literal | SequenceExpression | UnaryExpression | BinaryExpression | AssignmentExpression | MemberExpression | UpdateExpression | LogicalExpression | ConditionalExpression | NewExpression | CallExpression | RestElement | TypeAnnotation | TSTypeAnnotation | SpreadElementPattern | ArrowFunctionExpression | ForOfStatement | YieldExpression | GeneratorExpression | ComprehensionBlock | ComprehensionExpression | ObjectProperty | PropertyPattern | ObjectPattern | ArrayPattern | MethodDefinition | SpreadElement | AssignmentPattern | ClassPropertyDefinition | ClassProperty | ClassBody | ClassDeclaration | ClassExpression | ImportSpecifier | ImportNamespaceSpecifier | ImportDefaultSpecifier | ImportDeclaration | TaggedTemplateExpression | TemplateLiteral | TemplateElement | SpreadProperty | SpreadPropertyPattern | AwaitExpression | JSXAttribute | JSXIdentifier | JSXNamespacedName | JSXExpressionContainer | JSXMemberExpression | JSXSpreadAttribute | JSXElement | JSXOpeningElement | JSXClosingElement | JSXFragment | JSXText | JSXOpeningFragment | JSXClosingFragment | JSXEmptyExpression | JSXSpreadChild | TypeParameterDeclaration | TSTypeParameterDeclaration | TypeParameterInstantiation | TSTypeParameterInstantiation | ClassImplements | TSExpressionWithTypeArguments | AnyTypeAnnotation | EmptyTypeAnnotation | MixedTypeAnnotation | VoidTypeAnnotation | NumberTypeAnnotation | NumberLiteralTypeAnnotation | NumericLiteralTypeAnnotation | StringTypeAnnotation | StringLiteralTypeAnnotation | BooleanTypeAnnotation | BooleanLiteralTypeAnnotation | NullableTypeAnnotation | NullLiteralTypeAnnotation | NullTypeAnnotation | ThisTypeAnnotation | ExistsTypeAnnotation | ExistentialTypeParam | FunctionTypeAnnotation | FunctionTypeParam | ArrayTypeAnnotation | ObjectTypeAnnotation | ObjectTypeProperty | ObjectTypeSpreadProperty | ObjectTypeIndexer | ObjectTypeCallProperty | ObjectTypeInternalSlot | Variance | QualifiedTypeIdentifier | GenericTypeAnnotation | MemberTypeAnnotation | UnionTypeAnnotation | IntersectionTypeAnnotation | TypeofTypeAnnotation | TypeParameter | InterfaceTypeAnnotation | InterfaceExtends | InterfaceDeclaration | DeclareInterface | TypeAlias | OpaqueType | DeclareTypeAlias | DeclareOpaqueType | TypeCastExpression | TupleTypeAnnotation | DeclareVariable | DeclareFunction | DeclareClass | DeclareModule | DeclareModuleExports | DeclareExportDeclaration | ExportSpecifier | ExportBatchSpecifier | DeclareExportAllDeclaration | InferredPredicate | DeclaredPredicate | ExportDeclaration | Block | Line | Noop | DoExpression | Super | BindExpression | Decorator | MetaProperty | ParenthesizedExpression | ExportDefaultDeclaration | ExportNamedDeclaration | ExportNamespaceSpecifier | ExportDefaultSpecifier | ExportAllDeclaration | CommentBlock | CommentLine | Directive | DirectiveLiteral | InterpreterDirective | StringLiteral | NumericLiteral | BigIntLiteral | NullLiteral | BooleanLiteral | RegExpLiteral | ObjectMethod | ClassPrivateProperty | ClassMethod | ClassPrivateMethod | PrivateName | RestProperty | ForAwaitStatement | Import | TSQualifiedName | TSTypeReference | TSAsExpression | TSNonNullExpression | TSAnyKeyword | TSBigIntKeyword | TSBooleanKeyword | TSNeverKeyword | TSNullKeyword | TSNumberKeyword | TSObjectKeyword | TSStringKeyword | TSSymbolKeyword | TSUndefinedKeyword | TSUnknownKeyword | TSVoidKeyword | TSThisType | TSArrayType | TSLiteralType | TSUnionType | TSIntersectionType | TSConditionalType | TSInferType | TSTypeParameter | TSParenthesizedType | TSFunctionType | TSConstructorType | TSDeclareFunction | TSDeclareMethod | TSMappedType | TSTupleType | TSRestType | TSOptionalType | TSIndexedAccessType | TSTypeOperator | TSIndexSignature | TSPropertySignature | TSMethodSignature | TSTypePredicate | TSCallSignatureDeclaration | TSConstructSignatureDeclaration | TSEnumMember | TSTypeQuery | TSImportType | TSTypeLiteral | TSTypeAssertion | TSEnumDeclaration | TSTypeAliasDeclaration | TSModuleBlock | TSModuleDeclaration | TSImportEqualsDeclaration | TSExternalModuleReference | TSExportAssignment | TSNamespaceExportDeclaration | TSInterfaceBody | TSInterfaceDeclaration | TSParameterProperty | OptionalMemberExpression | OptionalCallExpression;
1341
+ type ASTNode = File | Program | Identifier | BlockStatement | EmptyStatement | ExpressionStatement | IfStatement | LabeledStatement | BreakStatement | ContinueStatement | WithStatement | SwitchStatement | SwitchCase | ReturnStatement | ThrowStatement | TryStatement | CatchClause | WhileStatement | DoWhileStatement | ForStatement | VariableDeclaration | ForInStatement | DebuggerStatement | FunctionDeclaration | FunctionExpression | VariableDeclarator | ThisExpression | ArrayExpression | ObjectExpression | Property | Literal | SequenceExpression | UnaryExpression | BinaryExpression | AssignmentExpression | MemberExpression | UpdateExpression | LogicalExpression | ConditionalExpression | NewExpression | CallExpression | RestElement | TypeAnnotation | TSTypeAnnotation | SpreadElementPattern | ArrowFunctionExpression | ForOfStatement | YieldExpression | GeneratorExpression | ComprehensionBlock | ComprehensionExpression | ObjectProperty | PropertyPattern | ObjectPattern | ArrayPattern | SpreadElement | AssignmentPattern | MethodDefinition | ClassPropertyDefinition | ClassProperty | ClassBody | ClassDeclaration | ClassExpression | Super | ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier | ImportDeclaration | ExportNamedDeclaration | ExportSpecifier | ExportDefaultDeclaration | ExportAllDeclaration | TaggedTemplateExpression | TemplateLiteral | TemplateElement | MetaProperty | AwaitExpression | SpreadProperty | SpreadPropertyPattern | ImportExpression | OptionalMemberExpression | OptionalCallExpression | JSXAttribute | JSXIdentifier | JSXNamespacedName | JSXExpressionContainer | JSXElement | JSXFragment | JSXMemberExpression | JSXSpreadAttribute | JSXEmptyExpression | JSXText | JSXSpreadChild | JSXOpeningElement | JSXClosingElement | JSXOpeningFragment | JSXClosingFragment | Decorator | PrivateName | ClassPrivateProperty | TypeParameterDeclaration | TSTypeParameterDeclaration | TypeParameterInstantiation | TSTypeParameterInstantiation | ClassImplements | TSExpressionWithTypeArguments | AnyTypeAnnotation | EmptyTypeAnnotation | MixedTypeAnnotation | VoidTypeAnnotation | SymbolTypeAnnotation | NumberTypeAnnotation | BigIntTypeAnnotation | NumberLiteralTypeAnnotation | NumericLiteralTypeAnnotation | BigIntLiteralTypeAnnotation | StringTypeAnnotation | StringLiteralTypeAnnotation | BooleanTypeAnnotation | BooleanLiteralTypeAnnotation | NullableTypeAnnotation | NullLiteralTypeAnnotation | NullTypeAnnotation | ThisTypeAnnotation | ExistsTypeAnnotation | ExistentialTypeParam | FunctionTypeAnnotation | FunctionTypeParam | ArrayTypeAnnotation | ObjectTypeAnnotation | ObjectTypeProperty | ObjectTypeSpreadProperty | ObjectTypeIndexer | ObjectTypeCallProperty | ObjectTypeInternalSlot | Variance | QualifiedTypeIdentifier | GenericTypeAnnotation | MemberTypeAnnotation | UnionTypeAnnotation | IntersectionTypeAnnotation | TypeofTypeAnnotation | TypeParameter | InterfaceTypeAnnotation | InterfaceExtends | InterfaceDeclaration | DeclareInterface | TypeAlias | DeclareTypeAlias | OpaqueType | DeclareOpaqueType | TypeCastExpression | TupleTypeAnnotation | DeclareVariable | DeclareFunction | DeclareClass | DeclareModule | DeclareModuleExports | DeclareExportDeclaration | ExportBatchSpecifier | DeclareExportAllDeclaration | InferredPredicate | DeclaredPredicate | EnumDeclaration | EnumBooleanBody | EnumNumberBody | EnumStringBody | EnumSymbolBody | EnumBooleanMember | EnumNumberMember | EnumStringMember | EnumDefaultedMember | ExportDeclaration | Block | Line | Noop | DoExpression | BindExpression | ParenthesizedExpression | ExportNamespaceSpecifier | ExportDefaultSpecifier | CommentBlock | CommentLine | Directive | DirectiveLiteral | InterpreterDirective | StringLiteral | NumericLiteral | BigIntLiteral | NullLiteral | BooleanLiteral | RegExpLiteral | ObjectMethod | ClassMethod | ClassPrivateMethod | RestProperty | ForAwaitStatement | Import | TSQualifiedName | TSTypeReference | TSAsExpression | TSNonNullExpression | TSAnyKeyword | TSBigIntKeyword | TSBooleanKeyword | TSNeverKeyword | TSNullKeyword | TSNumberKeyword | TSObjectKeyword | TSStringKeyword | TSSymbolKeyword | TSUndefinedKeyword | TSUnknownKeyword | TSVoidKeyword | TSThisType | TSArrayType | TSLiteralType | TSUnionType | TSIntersectionType | TSConditionalType | TSInferType | TSTypeParameter | TSParenthesizedType | TSFunctionType | TSConstructorType | TSDeclareFunction | TSDeclareMethod | TSMappedType | TSTupleType | TSNamedTupleMember | TSRestType | TSOptionalType | TSIndexedAccessType | TSTypeOperator | TSIndexSignature | TSPropertySignature | TSMethodSignature | TSTypePredicate | TSCallSignatureDeclaration | TSConstructSignatureDeclaration | TSEnumMember | TSTypeQuery | TSImportType | TSTypeLiteral | TSTypeAssertion | TSEnumDeclaration | TSTypeAliasDeclaration | TSModuleBlock | TSModuleDeclaration | TSImportEqualsDeclaration | TSExternalModuleReference | TSExportAssignment | TSNamespaceExportDeclaration | TSInterfaceBody | TSInterfaceDeclaration | TSParameterProperty;
1270
1342
  let Printable: Type<Printable>;
1271
1343
  let SourceLocation: Type<SourceLocation>;
1272
1344
  let Node: Type<Node>;
@@ -1332,41 +1404,53 @@ export declare namespace namedTypes {
1332
1404
  let PropertyPattern: Type<PropertyPattern>;
1333
1405
  let ObjectPattern: Type<ObjectPattern>;
1334
1406
  let ArrayPattern: Type<ArrayPattern>;
1335
- let MethodDefinition: Type<MethodDefinition>;
1336
1407
  let SpreadElement: Type<SpreadElement>;
1337
1408
  let AssignmentPattern: Type<AssignmentPattern>;
1409
+ let MethodDefinition: Type<MethodDefinition>;
1338
1410
  let ClassPropertyDefinition: Type<ClassPropertyDefinition>;
1339
1411
  let ClassProperty: Type<ClassProperty>;
1340
1412
  let ClassBody: Type<ClassBody>;
1341
1413
  let ClassDeclaration: Type<ClassDeclaration>;
1342
1414
  let ClassExpression: Type<ClassExpression>;
1415
+ let Super: Type<Super>;
1343
1416
  let Specifier: Type<Specifier>;
1344
1417
  let ModuleSpecifier: Type<ModuleSpecifier>;
1345
1418
  let ImportSpecifier: Type<ImportSpecifier>;
1346
- let ImportNamespaceSpecifier: Type<ImportNamespaceSpecifier>;
1347
1419
  let ImportDefaultSpecifier: Type<ImportDefaultSpecifier>;
1420
+ let ImportNamespaceSpecifier: Type<ImportNamespaceSpecifier>;
1348
1421
  let ImportDeclaration: Type<ImportDeclaration>;
1422
+ let ExportNamedDeclaration: Type<ExportNamedDeclaration>;
1423
+ let ExportSpecifier: Type<ExportSpecifier>;
1424
+ let ExportDefaultDeclaration: Type<ExportDefaultDeclaration>;
1425
+ let ExportAllDeclaration: Type<ExportAllDeclaration>;
1349
1426
  let TaggedTemplateExpression: Type<TaggedTemplateExpression>;
1350
1427
  let TemplateLiteral: Type<TemplateLiteral>;
1351
1428
  let TemplateElement: Type<TemplateElement>;
1429
+ let MetaProperty: Type<MetaProperty>;
1430
+ let AwaitExpression: Type<AwaitExpression>;
1352
1431
  let SpreadProperty: Type<SpreadProperty>;
1353
1432
  let SpreadPropertyPattern: Type<SpreadPropertyPattern>;
1354
- let AwaitExpression: Type<AwaitExpression>;
1433
+ let ImportExpression: Type<ImportExpression>;
1434
+ let OptionalMemberExpression: Type<OptionalMemberExpression>;
1435
+ let OptionalCallExpression: Type<OptionalCallExpression>;
1355
1436
  let JSXAttribute: Type<JSXAttribute>;
1356
1437
  let JSXIdentifier: Type<JSXIdentifier>;
1357
1438
  let JSXNamespacedName: Type<JSXNamespacedName>;
1358
1439
  let JSXExpressionContainer: Type<JSXExpressionContainer>;
1440
+ let JSXElement: Type<JSXElement>;
1441
+ let JSXFragment: Type<JSXFragment>;
1359
1442
  let JSXMemberExpression: Type<JSXMemberExpression>;
1360
1443
  let JSXSpreadAttribute: Type<JSXSpreadAttribute>;
1361
- let JSXElement: Type<JSXElement>;
1444
+ let JSXEmptyExpression: Type<JSXEmptyExpression>;
1445
+ let JSXText: Type<JSXText>;
1446
+ let JSXSpreadChild: Type<JSXSpreadChild>;
1362
1447
  let JSXOpeningElement: Type<JSXOpeningElement>;
1363
1448
  let JSXClosingElement: Type<JSXClosingElement>;
1364
- let JSXFragment: Type<JSXFragment>;
1365
- let JSXText: Type<JSXText>;
1366
1449
  let JSXOpeningFragment: Type<JSXOpeningFragment>;
1367
1450
  let JSXClosingFragment: Type<JSXClosingFragment>;
1368
- let JSXEmptyExpression: Type<JSXEmptyExpression>;
1369
- let JSXSpreadChild: Type<JSXSpreadChild>;
1451
+ let Decorator: Type<Decorator>;
1452
+ let PrivateName: Type<PrivateName>;
1453
+ let ClassPrivateProperty: Type<ClassPrivateProperty>;
1370
1454
  let TypeParameterDeclaration: Type<TypeParameterDeclaration>;
1371
1455
  let TSTypeParameterDeclaration: Type<TSTypeParameterDeclaration>;
1372
1456
  let TypeParameterInstantiation: Type<TypeParameterInstantiation>;
@@ -1381,9 +1465,12 @@ export declare namespace namedTypes {
1381
1465
  let EmptyTypeAnnotation: Type<EmptyTypeAnnotation>;
1382
1466
  let MixedTypeAnnotation: Type<MixedTypeAnnotation>;
1383
1467
  let VoidTypeAnnotation: Type<VoidTypeAnnotation>;
1468
+ let SymbolTypeAnnotation: Type<SymbolTypeAnnotation>;
1384
1469
  let NumberTypeAnnotation: Type<NumberTypeAnnotation>;
1470
+ let BigIntTypeAnnotation: Type<BigIntTypeAnnotation>;
1385
1471
  let NumberLiteralTypeAnnotation: Type<NumberLiteralTypeAnnotation>;
1386
1472
  let NumericLiteralTypeAnnotation: Type<NumericLiteralTypeAnnotation>;
1473
+ let BigIntLiteralTypeAnnotation: Type<BigIntLiteralTypeAnnotation>;
1387
1474
  let StringTypeAnnotation: Type<StringTypeAnnotation>;
1388
1475
  let StringLiteralTypeAnnotation: Type<StringLiteralTypeAnnotation>;
1389
1476
  let BooleanTypeAnnotation: Type<BooleanTypeAnnotation>;
@@ -1416,38 +1503,40 @@ export declare namespace namedTypes {
1416
1503
  let InterfaceDeclaration: Type<InterfaceDeclaration>;
1417
1504
  let DeclareInterface: Type<DeclareInterface>;
1418
1505
  let TypeAlias: Type<TypeAlias>;
1419
- let OpaqueType: Type<OpaqueType>;
1420
1506
  let DeclareTypeAlias: Type<DeclareTypeAlias>;
1507
+ let OpaqueType: Type<OpaqueType>;
1421
1508
  let DeclareOpaqueType: Type<DeclareOpaqueType>;
1422
1509
  let TypeCastExpression: Type<TypeCastExpression>;
1423
1510
  let TupleTypeAnnotation: Type<TupleTypeAnnotation>;
1424
1511
  let DeclareVariable: Type<DeclareVariable>;
1425
1512
  let DeclareFunction: Type<DeclareFunction>;
1513
+ let FlowPredicate: Type<FlowPredicate>;
1426
1514
  let DeclareClass: Type<DeclareClass>;
1427
1515
  let DeclareModule: Type<DeclareModule>;
1428
1516
  let DeclareModuleExports: Type<DeclareModuleExports>;
1429
1517
  let DeclareExportDeclaration: Type<DeclareExportDeclaration>;
1430
- let ExportSpecifier: Type<ExportSpecifier>;
1431
1518
  let ExportBatchSpecifier: Type<ExportBatchSpecifier>;
1432
1519
  let DeclareExportAllDeclaration: Type<DeclareExportAllDeclaration>;
1433
- let FlowPredicate: Type<FlowPredicate>;
1434
1520
  let InferredPredicate: Type<InferredPredicate>;
1435
1521
  let DeclaredPredicate: Type<DeclaredPredicate>;
1522
+ let EnumDeclaration: Type<EnumDeclaration>;
1523
+ let EnumBooleanBody: Type<EnumBooleanBody>;
1524
+ let EnumNumberBody: Type<EnumNumberBody>;
1525
+ let EnumStringBody: Type<EnumStringBody>;
1526
+ let EnumSymbolBody: Type<EnumSymbolBody>;
1527
+ let EnumBooleanMember: Type<EnumBooleanMember>;
1528
+ let EnumNumberMember: Type<EnumNumberMember>;
1529
+ let EnumStringMember: Type<EnumStringMember>;
1530
+ let EnumDefaultedMember: Type<EnumDefaultedMember>;
1436
1531
  let ExportDeclaration: Type<ExportDeclaration>;
1437
1532
  let Block: Type<Block>;
1438
1533
  let Line: Type<Line>;
1439
1534
  let Noop: Type<Noop>;
1440
1535
  let DoExpression: Type<DoExpression>;
1441
- let Super: Type<Super>;
1442
1536
  let BindExpression: Type<BindExpression>;
1443
- let Decorator: Type<Decorator>;
1444
- let MetaProperty: Type<MetaProperty>;
1445
1537
  let ParenthesizedExpression: Type<ParenthesizedExpression>;
1446
- let ExportDefaultDeclaration: Type<ExportDefaultDeclaration>;
1447
- let ExportNamedDeclaration: Type<ExportNamedDeclaration>;
1448
1538
  let ExportNamespaceSpecifier: Type<ExportNamespaceSpecifier>;
1449
1539
  let ExportDefaultSpecifier: Type<ExportDefaultSpecifier>;
1450
- let ExportAllDeclaration: Type<ExportAllDeclaration>;
1451
1540
  let CommentBlock: Type<CommentBlock>;
1452
1541
  let CommentLine: Type<CommentLine>;
1453
1542
  let Directive: Type<Directive>;
@@ -1460,10 +1549,8 @@ export declare namespace namedTypes {
1460
1549
  let BooleanLiteral: Type<BooleanLiteral>;
1461
1550
  let RegExpLiteral: Type<RegExpLiteral>;
1462
1551
  let ObjectMethod: Type<ObjectMethod>;
1463
- let ClassPrivateProperty: Type<ClassPrivateProperty>;
1464
1552
  let ClassMethod: Type<ClassMethod>;
1465
1553
  let ClassPrivateMethod: Type<ClassPrivateMethod>;
1466
- let PrivateName: Type<PrivateName>;
1467
1554
  let RestProperty: Type<RestProperty>;
1468
1555
  let ForAwaitStatement: Type<ForAwaitStatement>;
1469
1556
  let Import: Type<Import>;
@@ -1500,6 +1587,7 @@ export declare namespace namedTypes {
1500
1587
  let TSDeclareMethod: Type<TSDeclareMethod>;
1501
1588
  let TSMappedType: Type<TSMappedType>;
1502
1589
  let TSTupleType: Type<TSTupleType>;
1590
+ let TSNamedTupleMember: Type<TSNamedTupleMember>;
1503
1591
  let TSRestType: Type<TSRestType>;
1504
1592
  let TSOptionalType: Type<TSOptionalType>;
1505
1593
  let TSIndexedAccessType: Type<TSIndexedAccessType>;
@@ -1526,8 +1614,6 @@ export declare namespace namedTypes {
1526
1614
  let TSInterfaceBody: Type<TSInterfaceBody>;
1527
1615
  let TSInterfaceDeclaration: Type<TSInterfaceDeclaration>;
1528
1616
  let TSParameterProperty: Type<TSParameterProperty>;
1529
- let OptionalMemberExpression: Type<OptionalMemberExpression>;
1530
- let OptionalCallExpression: Type<OptionalCallExpression>;
1531
1617
  }
1532
1618
  export interface NamedTypes {
1533
1619
  Printable: Type<namedTypes.Printable>;
@@ -1595,41 +1681,53 @@ export interface NamedTypes {
1595
1681
  PropertyPattern: Type<namedTypes.PropertyPattern>;
1596
1682
  ObjectPattern: Type<namedTypes.ObjectPattern>;
1597
1683
  ArrayPattern: Type<namedTypes.ArrayPattern>;
1598
- MethodDefinition: Type<namedTypes.MethodDefinition>;
1599
1684
  SpreadElement: Type<namedTypes.SpreadElement>;
1600
1685
  AssignmentPattern: Type<namedTypes.AssignmentPattern>;
1686
+ MethodDefinition: Type<namedTypes.MethodDefinition>;
1601
1687
  ClassPropertyDefinition: Type<namedTypes.ClassPropertyDefinition>;
1602
1688
  ClassProperty: Type<namedTypes.ClassProperty>;
1603
1689
  ClassBody: Type<namedTypes.ClassBody>;
1604
1690
  ClassDeclaration: Type<namedTypes.ClassDeclaration>;
1605
1691
  ClassExpression: Type<namedTypes.ClassExpression>;
1692
+ Super: Type<namedTypes.Super>;
1606
1693
  Specifier: Type<namedTypes.Specifier>;
1607
1694
  ModuleSpecifier: Type<namedTypes.ModuleSpecifier>;
1608
1695
  ImportSpecifier: Type<namedTypes.ImportSpecifier>;
1609
- ImportNamespaceSpecifier: Type<namedTypes.ImportNamespaceSpecifier>;
1610
1696
  ImportDefaultSpecifier: Type<namedTypes.ImportDefaultSpecifier>;
1697
+ ImportNamespaceSpecifier: Type<namedTypes.ImportNamespaceSpecifier>;
1611
1698
  ImportDeclaration: Type<namedTypes.ImportDeclaration>;
1699
+ ExportNamedDeclaration: Type<namedTypes.ExportNamedDeclaration>;
1700
+ ExportSpecifier: Type<namedTypes.ExportSpecifier>;
1701
+ ExportDefaultDeclaration: Type<namedTypes.ExportDefaultDeclaration>;
1702
+ ExportAllDeclaration: Type<namedTypes.ExportAllDeclaration>;
1612
1703
  TaggedTemplateExpression: Type<namedTypes.TaggedTemplateExpression>;
1613
1704
  TemplateLiteral: Type<namedTypes.TemplateLiteral>;
1614
1705
  TemplateElement: Type<namedTypes.TemplateElement>;
1706
+ MetaProperty: Type<namedTypes.MetaProperty>;
1707
+ AwaitExpression: Type<namedTypes.AwaitExpression>;
1615
1708
  SpreadProperty: Type<namedTypes.SpreadProperty>;
1616
1709
  SpreadPropertyPattern: Type<namedTypes.SpreadPropertyPattern>;
1617
- AwaitExpression: Type<namedTypes.AwaitExpression>;
1710
+ ImportExpression: Type<namedTypes.ImportExpression>;
1711
+ OptionalMemberExpression: Type<namedTypes.OptionalMemberExpression>;
1712
+ OptionalCallExpression: Type<namedTypes.OptionalCallExpression>;
1618
1713
  JSXAttribute: Type<namedTypes.JSXAttribute>;
1619
1714
  JSXIdentifier: Type<namedTypes.JSXIdentifier>;
1620
1715
  JSXNamespacedName: Type<namedTypes.JSXNamespacedName>;
1621
1716
  JSXExpressionContainer: Type<namedTypes.JSXExpressionContainer>;
1717
+ JSXElement: Type<namedTypes.JSXElement>;
1718
+ JSXFragment: Type<namedTypes.JSXFragment>;
1622
1719
  JSXMemberExpression: Type<namedTypes.JSXMemberExpression>;
1623
1720
  JSXSpreadAttribute: Type<namedTypes.JSXSpreadAttribute>;
1624
- JSXElement: Type<namedTypes.JSXElement>;
1721
+ JSXEmptyExpression: Type<namedTypes.JSXEmptyExpression>;
1722
+ JSXText: Type<namedTypes.JSXText>;
1723
+ JSXSpreadChild: Type<namedTypes.JSXSpreadChild>;
1625
1724
  JSXOpeningElement: Type<namedTypes.JSXOpeningElement>;
1626
1725
  JSXClosingElement: Type<namedTypes.JSXClosingElement>;
1627
- JSXFragment: Type<namedTypes.JSXFragment>;
1628
- JSXText: Type<namedTypes.JSXText>;
1629
1726
  JSXOpeningFragment: Type<namedTypes.JSXOpeningFragment>;
1630
1727
  JSXClosingFragment: Type<namedTypes.JSXClosingFragment>;
1631
- JSXEmptyExpression: Type<namedTypes.JSXEmptyExpression>;
1632
- JSXSpreadChild: Type<namedTypes.JSXSpreadChild>;
1728
+ Decorator: Type<namedTypes.Decorator>;
1729
+ PrivateName: Type<namedTypes.PrivateName>;
1730
+ ClassPrivateProperty: Type<namedTypes.ClassPrivateProperty>;
1633
1731
  TypeParameterDeclaration: Type<namedTypes.TypeParameterDeclaration>;
1634
1732
  TSTypeParameterDeclaration: Type<namedTypes.TSTypeParameterDeclaration>;
1635
1733
  TypeParameterInstantiation: Type<namedTypes.TypeParameterInstantiation>;
@@ -1644,9 +1742,12 @@ export interface NamedTypes {
1644
1742
  EmptyTypeAnnotation: Type<namedTypes.EmptyTypeAnnotation>;
1645
1743
  MixedTypeAnnotation: Type<namedTypes.MixedTypeAnnotation>;
1646
1744
  VoidTypeAnnotation: Type<namedTypes.VoidTypeAnnotation>;
1745
+ SymbolTypeAnnotation: Type<namedTypes.SymbolTypeAnnotation>;
1647
1746
  NumberTypeAnnotation: Type<namedTypes.NumberTypeAnnotation>;
1747
+ BigIntTypeAnnotation: Type<namedTypes.BigIntTypeAnnotation>;
1648
1748
  NumberLiteralTypeAnnotation: Type<namedTypes.NumberLiteralTypeAnnotation>;
1649
1749
  NumericLiteralTypeAnnotation: Type<namedTypes.NumericLiteralTypeAnnotation>;
1750
+ BigIntLiteralTypeAnnotation: Type<namedTypes.BigIntLiteralTypeAnnotation>;
1650
1751
  StringTypeAnnotation: Type<namedTypes.StringTypeAnnotation>;
1651
1752
  StringLiteralTypeAnnotation: Type<namedTypes.StringLiteralTypeAnnotation>;
1652
1753
  BooleanTypeAnnotation: Type<namedTypes.BooleanTypeAnnotation>;
@@ -1679,38 +1780,40 @@ export interface NamedTypes {
1679
1780
  InterfaceDeclaration: Type<namedTypes.InterfaceDeclaration>;
1680
1781
  DeclareInterface: Type<namedTypes.DeclareInterface>;
1681
1782
  TypeAlias: Type<namedTypes.TypeAlias>;
1682
- OpaqueType: Type<namedTypes.OpaqueType>;
1683
1783
  DeclareTypeAlias: Type<namedTypes.DeclareTypeAlias>;
1784
+ OpaqueType: Type<namedTypes.OpaqueType>;
1684
1785
  DeclareOpaqueType: Type<namedTypes.DeclareOpaqueType>;
1685
1786
  TypeCastExpression: Type<namedTypes.TypeCastExpression>;
1686
1787
  TupleTypeAnnotation: Type<namedTypes.TupleTypeAnnotation>;
1687
1788
  DeclareVariable: Type<namedTypes.DeclareVariable>;
1688
1789
  DeclareFunction: Type<namedTypes.DeclareFunction>;
1790
+ FlowPredicate: Type<namedTypes.FlowPredicate>;
1689
1791
  DeclareClass: Type<namedTypes.DeclareClass>;
1690
1792
  DeclareModule: Type<namedTypes.DeclareModule>;
1691
1793
  DeclareModuleExports: Type<namedTypes.DeclareModuleExports>;
1692
1794
  DeclareExportDeclaration: Type<namedTypes.DeclareExportDeclaration>;
1693
- ExportSpecifier: Type<namedTypes.ExportSpecifier>;
1694
1795
  ExportBatchSpecifier: Type<namedTypes.ExportBatchSpecifier>;
1695
1796
  DeclareExportAllDeclaration: Type<namedTypes.DeclareExportAllDeclaration>;
1696
- FlowPredicate: Type<namedTypes.FlowPredicate>;
1697
1797
  InferredPredicate: Type<namedTypes.InferredPredicate>;
1698
1798
  DeclaredPredicate: Type<namedTypes.DeclaredPredicate>;
1799
+ EnumDeclaration: Type<namedTypes.EnumDeclaration>;
1800
+ EnumBooleanBody: Type<namedTypes.EnumBooleanBody>;
1801
+ EnumNumberBody: Type<namedTypes.EnumNumberBody>;
1802
+ EnumStringBody: Type<namedTypes.EnumStringBody>;
1803
+ EnumSymbolBody: Type<namedTypes.EnumSymbolBody>;
1804
+ EnumBooleanMember: Type<namedTypes.EnumBooleanMember>;
1805
+ EnumNumberMember: Type<namedTypes.EnumNumberMember>;
1806
+ EnumStringMember: Type<namedTypes.EnumStringMember>;
1807
+ EnumDefaultedMember: Type<namedTypes.EnumDefaultedMember>;
1699
1808
  ExportDeclaration: Type<namedTypes.ExportDeclaration>;
1700
1809
  Block: Type<namedTypes.Block>;
1701
1810
  Line: Type<namedTypes.Line>;
1702
1811
  Noop: Type<namedTypes.Noop>;
1703
1812
  DoExpression: Type<namedTypes.DoExpression>;
1704
- Super: Type<namedTypes.Super>;
1705
1813
  BindExpression: Type<namedTypes.BindExpression>;
1706
- Decorator: Type<namedTypes.Decorator>;
1707
- MetaProperty: Type<namedTypes.MetaProperty>;
1708
1814
  ParenthesizedExpression: Type<namedTypes.ParenthesizedExpression>;
1709
- ExportDefaultDeclaration: Type<namedTypes.ExportDefaultDeclaration>;
1710
- ExportNamedDeclaration: Type<namedTypes.ExportNamedDeclaration>;
1711
1815
  ExportNamespaceSpecifier: Type<namedTypes.ExportNamespaceSpecifier>;
1712
1816
  ExportDefaultSpecifier: Type<namedTypes.ExportDefaultSpecifier>;
1713
- ExportAllDeclaration: Type<namedTypes.ExportAllDeclaration>;
1714
1817
  CommentBlock: Type<namedTypes.CommentBlock>;
1715
1818
  CommentLine: Type<namedTypes.CommentLine>;
1716
1819
  Directive: Type<namedTypes.Directive>;
@@ -1723,10 +1826,8 @@ export interface NamedTypes {
1723
1826
  BooleanLiteral: Type<namedTypes.BooleanLiteral>;
1724
1827
  RegExpLiteral: Type<namedTypes.RegExpLiteral>;
1725
1828
  ObjectMethod: Type<namedTypes.ObjectMethod>;
1726
- ClassPrivateProperty: Type<namedTypes.ClassPrivateProperty>;
1727
1829
  ClassMethod: Type<namedTypes.ClassMethod>;
1728
1830
  ClassPrivateMethod: Type<namedTypes.ClassPrivateMethod>;
1729
- PrivateName: Type<namedTypes.PrivateName>;
1730
1831
  RestProperty: Type<namedTypes.RestProperty>;
1731
1832
  ForAwaitStatement: Type<namedTypes.ForAwaitStatement>;
1732
1833
  Import: Type<namedTypes.Import>;
@@ -1763,6 +1864,7 @@ export interface NamedTypes {
1763
1864
  TSDeclareMethod: Type<namedTypes.TSDeclareMethod>;
1764
1865
  TSMappedType: Type<namedTypes.TSMappedType>;
1765
1866
  TSTupleType: Type<namedTypes.TSTupleType>;
1867
+ TSNamedTupleMember: Type<namedTypes.TSNamedTupleMember>;
1766
1868
  TSRestType: Type<namedTypes.TSRestType>;
1767
1869
  TSOptionalType: Type<namedTypes.TSOptionalType>;
1768
1870
  TSIndexedAccessType: Type<namedTypes.TSIndexedAccessType>;
@@ -1789,6 +1891,4 @@ export interface NamedTypes {
1789
1891
  TSInterfaceBody: Type<namedTypes.TSInterfaceBody>;
1790
1892
  TSInterfaceDeclaration: Type<namedTypes.TSInterfaceDeclaration>;
1791
1893
  TSParameterProperty: Type<namedTypes.TSParameterProperty>;
1792
- OptionalMemberExpression: Type<namedTypes.OptionalMemberExpression>;
1793
- OptionalCallExpression: Type<namedTypes.OptionalCallExpression>;
1794
1894
  }