@systemfsoftware/stryker-js 11.0.0 → 12.1.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.
@@ -1,9 +1,8 @@
1
- import { Workflow } from "@systemfsoftware/effect-cell-types";
1
+ import { Handle, Workflow } from "@systemfsoftware/effect-cell-types";
2
2
  import * as Option$1 from "effect/Option";
3
3
  import "effect/Result";
4
4
  import * as S from "effect/Schema";
5
5
  import * as Effect$1 from "effect/Effect";
6
- import "effect/Pipeable";
7
6
  import * as Context from "effect/Context";
8
7
  import { Schema } from "effect";
9
8
  import * as Rpc from "effect/unstable/rpc/Rpc";
@@ -15,7 +14,7 @@ import { StandardSchemaV1 } from "effect/StandardSchema";
15
14
  declare interface AccessorProperty$1$1 extends Span$1$1 {
16
15
  type: AccessorPropertyType$1;
17
16
  decorators: Array<Decorator$1$1>;
18
- key: PropertyKey_2$1;
17
+ key: PropertyKey_2;
19
18
  typeAnnotation?: TSTypeAnnotation$1$1 | null;
20
19
  value: Expression$1$1 | null;
21
20
  computed: boolean;
@@ -99,7 +98,7 @@ declare interface AssignmentTargetPropertyIdentifier$1 extends Span$1$1 {
99
98
  declare interface AssignmentTargetPropertyProperty$1 extends Span$1$1 {
100
99
  type: "Property";
101
100
  kind: "init";
102
- key: PropertyKey_2$1;
101
+ key: PropertyKey_2;
103
102
  value: AssignmentTargetMaybeDefault$1;
104
103
  method: false;
105
104
  shorthand: false;
@@ -157,7 +156,7 @@ declare type BindingPattern$1$1 = BindingIdentifier$1$1 | ObjectPattern$1 | Arra
157
156
  declare interface BindingProperty$1$1 extends Span$1$1 {
158
157
  type: "Property";
159
158
  kind: "init";
160
- key: PropertyKey_2$1;
159
+ key: PropertyKey_2;
161
160
  value: BindingPattern$1$1;
162
161
  method: false;
163
162
  shorthand: boolean;
@@ -402,7 +401,7 @@ declare interface IfStatement$1$1 extends Span$1$1 {
402
401
  }
403
402
  declare interface Ignorer$1 {
404
403
  readonly name: string;
405
- shouldIgnore(node: Node_2$1, ancestors: readonly Node_2$1[]): string | undefined;
404
+ shouldIgnore(node: Node_2, ancestors: readonly Node_2[]): string | undefined;
406
405
  }
407
406
  declare interface ImportAttribute$1$1 extends Span$1$1 {
408
407
  type: "ImportAttribute";
@@ -587,7 +586,7 @@ declare interface MetaProperty$1$1 extends Span$1$1 {
587
586
  declare interface MethodDefinition$1$1 extends Span$1$1 {
588
587
  type: MethodDefinitionType$1;
589
588
  decorators: Array<Decorator$1$1>;
590
- key: PropertyKey_2$1;
589
+ key: PropertyKey_2;
591
590
  value: Function$1$1;
592
591
  kind: MethodDefinitionKind$1;
593
592
  computed: boolean;
@@ -610,7 +609,7 @@ declare interface NewExpression$1$1 extends Span$1$1 {
610
609
  parent?: Node$1$1;
611
610
  }
612
611
  declare type Node$1$1 = Program$1$1 | IdentifierName$1$1 | IdentifierReference$1$1 | BindingIdentifier$1$1 | LabelIdentifier$1$1 | ThisExpression$1$1 | ArrayExpression$1$1 | ObjectExpression$1$1 | ObjectProperty$1$1 | TemplateLiteral$1$1 | TaggedTemplateExpression$1$1 | TemplateElement$1$1 | ComputedMemberExpression$1 | StaticMemberExpression$1$1 | PrivateFieldExpression$1 | CallExpression$1$1 | NewExpression$1$1 | MetaProperty$1$1 | SpreadElement$1$1 | UpdateExpression$1$1 | UnaryExpression$1$1 | BinaryExpression$1$1 | PrivateInExpression$1$1 | LogicalExpression$1$1 | ConditionalExpression$1$1 | AssignmentExpression$1$1 | ArrayAssignmentTarget$1 | ObjectAssignmentTarget$1 | AssignmentTargetRest$1 | AssignmentTargetWithDefault$1 | AssignmentTargetPropertyIdentifier$1 | AssignmentTargetPropertyProperty$1 | SequenceExpression$1$1 | Super$1$1 | AwaitExpression$1 | ChainExpression$1$1 | ParenthesizedExpression$1 | Directive$1 | Hashbang$1 | BlockStatement$1$1 | VariableDeclaration$1$1 | VariableDeclarator$1$1 | EmptyStatement$1$1 | ExpressionStatement$1$1 | IfStatement$1$1 | DoWhileStatement$1$1 | WhileStatement$1$1 | ForStatement$1$1 | ForInStatement$1$1 | ForOfStatement$1$1 | ContinueStatement$1$1 | BreakStatement$1$1 | ReturnStatement$1$1 | WithStatement$1$1 | SwitchStatement$1$1 | SwitchCase$1$1 | LabeledStatement$1$1 | ThrowStatement$1$1 | TryStatement$1$1 | CatchClause$1$1 | DebuggerStatement$1 | AssignmentPattern$1$1 | ObjectPattern$1 | BindingProperty$1$1 | ArrayPattern$1$1 | BindingRestElement$1$1 | Function$1$1 | FunctionBody$1 | ArrowFunctionExpression$1$1 | YieldExpression$1$1 | Class$1$1 | ClassBody$1$1 | MethodDefinition$1$1 | PropertyDefinition$1$1 | PrivateIdentifier$1$1 | StaticBlock$1$1 | AccessorProperty$1$1 | ImportExpression$1$1 | ImportDeclaration$1$1 | ImportSpecifier$1 | ImportDefaultSpecifier$1 | ImportNamespaceSpecifier$1 | ImportAttribute$1$1 | ExportNamedDeclaration$1$1 | ExportDefaultDeclaration$1$1 | ExportAllDeclaration$1$1 | ExportSpecifier$1 | V8IntrinsicExpression$1 | BooleanLiteral$1$1 | NullLiteral$1$1 | NumericLiteral$1$1 | StringLiteral$1$1 | BigIntLiteral$1$1 | RegExpLiteral$1$1 | JSXElement$1$1 | JSXOpeningElement$1$1 | JSXClosingElement$1 | JSXFragment$1$1 | JSXOpeningFragment$1 | JSXClosingFragment$1 | JSXNamespacedName$1$1 | JSXMemberExpression$1$1 | JSXExpressionContainer$1$1 | JSXEmptyExpression$1 | JSXAttribute$1$1 | JSXSpreadAttribute$1$1 | JSXIdentifier$1$1 | JSXSpreadChild$1$1 | JSXText$1$1 | TSThisParameter$1 | TSEnumDeclaration$1$1 | TSEnumBody$1 | TSEnumMember$1 | TSTypeAnnotation$1$1 | TSLiteralType$1$1 | TSConditionalType$1$1 | TSUnionType$1$1 | TSIntersectionType$1$1 | TSParenthesizedType$1$1 | TSTypeOperator$1$1 | TSArrayType$1$1 | TSIndexedAccessType$1$1 | TSTupleType$1$1 | TSNamedTupleMember$1$1 | TSOptionalType$1$1 | TSRestType$1$1 | TSAnyKeyword$1 | TSStringKeyword$1 | TSBooleanKeyword$1 | TSNumberKeyword$1 | TSNeverKeyword$1 | TSIntrinsicKeyword$1 | TSUnknownKeyword$1 | TSNullKeyword$1 | TSUndefinedKeyword$1 | TSVoidKeyword$1 | TSSymbolKeyword$1 | TSThisType$1 | TSObjectKeyword$1 | TSBigIntKeyword$1 | TSTypeReference$1$1 | TSQualifiedName$1$1 | TSTypeParameterInstantiation$1$1 | TSTypeParameter$1 | TSTypeParameterDeclaration$1$1 | TSTypeAliasDeclaration$1$1 | TSClassImplements$1 | TSInterfaceDeclaration$1$1 | TSInterfaceBody$1$1 | TSPropertySignature$1$1 | TSIndexSignature$1$1 | TSCallSignatureDeclaration$1$1 | TSMethodSignature$1$1 | TSConstructSignatureDeclaration$1$1 | TSIndexSignatureName$1 | TSInterfaceHeritage$1 | TSTypePredicate$1$1 | TSModuleDeclaration$1$1 | TSGlobalDeclaration$1 | TSModuleBlock$1$1 | TSTypeLiteral$1 | TSInferType$1$1 | TSTypeQuery$1$1 | TSImportType$1$1 | TSImportTypeQualifiedName$1 | TSFunctionType$1$1 | TSConstructorType$1$1 | TSMappedType$1$1 | TSTemplateLiteralType$1$1 | TSAsExpression$1$1 | TSSatisfiesExpression$1$1 | TSTypeAssertion$1$1 | TSImportEqualsDeclaration$1$1 | TSExternalModuleReference$1 | TSNonNullExpression$1$1 | Decorator$1$1 | TSExportAssignment$1$1 | TSNamespaceExportDeclaration$1$1 | TSInstantiationExpression$1$1 | JSDocNullableType$1$1 | JSDocNonNullableType$1$1 | JSDocUnknownType$1 | ParamPattern$1$1;
613
- declare type Node_2$1 = Simplify$1<Built$1<Node$1$1>> | Node$1$1;
612
+ declare type Node_2 = Simplify$1<Built$1<Node$1$1>> | Node$1$1;
614
613
  declare interface NullLiteral$1$1 extends Span$1$1 {
615
614
  type: "Literal";
616
615
  value: null;
@@ -647,7 +646,7 @@ declare interface ObjectPattern$1 extends Span$1$1 {
647
646
  declare interface ObjectProperty$1$1 extends Span$1$1 {
648
647
  type: "Property";
649
648
  kind: PropertyKind$1;
650
- key: PropertyKey_2$1;
649
+ key: PropertyKey_2;
651
650
  value: Expression$1$1;
652
651
  method: boolean;
653
652
  shorthand: boolean;
@@ -693,7 +692,7 @@ declare type Program$2 = Simplify$1<Built$1<Program$1$1>>;
693
692
  declare interface PropertyDefinition$1$1 extends Span$1$1 {
694
693
  type: PropertyDefinitionType$1;
695
694
  decorators: Array<Decorator$1$1>;
696
- key: PropertyKey_2$1;
695
+ key: PropertyKey_2;
697
696
  typeAnnotation?: TSTypeAnnotation$1$1 | null;
698
697
  value: Expression$1$1 | null;
699
698
  computed: boolean;
@@ -707,7 +706,7 @@ declare interface PropertyDefinition$1$1 extends Span$1$1 {
707
706
  parent?: Node$1$1;
708
707
  }
709
708
  declare type PropertyDefinitionType$1 = "PropertyDefinition" | "TSAbstractPropertyDefinition";
710
- declare type PropertyKey_2$1 = IdentifierName$1$1 | PrivateIdentifier$1$1 | Expression$1$1;
709
+ declare type PropertyKey_2 = IdentifierName$1$1 | PrivateIdentifier$1$1 | Expression$1$1;
711
710
  declare type PropertyKind$1 = "init" | "get" | "set";
712
711
  declare interface RegExpLiteral$1$1 extends Span$1$1 {
713
712
  type: "Literal";
@@ -1028,7 +1027,7 @@ declare interface TSMappedType$1$1 extends Span$1$1 {
1028
1027
  declare type TSMappedTypeModifierOperator$1 = true | "+" | "-";
1029
1028
  declare interface TSMethodSignature$1$1 extends Span$1$1 {
1030
1029
  type: "TSMethodSignature";
1031
- key: PropertyKey_2$1;
1030
+ key: PropertyKey_2;
1032
1031
  computed: boolean;
1033
1032
  optional: boolean;
1034
1033
  kind: TSMethodSignatureKind$1;
@@ -1115,7 +1114,7 @@ declare interface TSPropertySignature$1$1 extends Span$1$1 {
1115
1114
  computed: boolean;
1116
1115
  optional: boolean;
1117
1116
  readonly: boolean;
1118
- key: PropertyKey_2$1;
1117
+ key: PropertyKey_2;
1119
1118
  typeAnnotation: TSTypeAnnotation$1$1 | null;
1120
1119
  accessibility: null;
1121
1120
  static: false;
@@ -1365,186 +1364,126 @@ declare interface ScriptRegion {
1365
1364
  //#region ../stryker-js-instrumenter/dist/index.d.mts
1366
1365
  //#endregion
1367
1366
  //#region ../ignorers/interface/dist/index.d.ts
1368
- declare interface AccessorProperty$1 extends Span$1 {
1369
- type: AccessorPropertyType;
1370
- decorators: Array<Decorator$1>;
1371
- key: PropertyKey_2;
1372
- typeAnnotation?: TSTypeAnnotation$1 | null;
1373
- value: Expression$1 | null;
1374
- computed: boolean;
1375
- static: boolean;
1376
- override?: boolean;
1377
- definite?: boolean;
1378
- accessibility?: TSAccessibility | null;
1379
- declare?: false;
1380
- optional?: false;
1381
- readonly?: false;
1382
- parent?: Node$1;
1367
+ // Auto-generated code, DO NOT EDIT DIRECTLY!
1368
+ // To edit this generated file you have to edit `tasks/ast_tools/src/generators/typescript.rs`.
1369
+ interface Program$1 extends Span$1 {
1370
+ type: "Program";
1371
+ body: Array<Directive | Statement$1>;
1372
+ sourceType: ModuleKind;
1373
+ hashbang: Hashbang | null;
1374
+ parent?: null;
1383
1375
  }
1384
- declare type AccessorPropertyType = "AccessorProperty" | "TSAbstractAccessorProperty";
1385
- declare type Argument$1 = SpreadElement$1 | Expression$1;
1386
- declare interface ArrayAssignmentTarget extends Span$1 {
1387
- type: "ArrayPattern";
1376
+ type Expression$1 = BooleanLiteral$1 | NullLiteral$1 | NumericLiteral$1 | BigIntLiteral$1 | RegExpLiteral$1 | StringLiteral$1 | TemplateLiteral$1 | IdentifierReference$1 | Super$1 | ArrayExpression$1 | ArrowFunctionExpression$1 | AssignmentExpression$1 | AwaitExpression | BinaryExpression$1 | CallExpression$1 | ChainExpression$1 | Class$1 | ConditionalExpression$1 | Function$1 | ImportExpression$1 | LogicalExpression$1 | NewExpression$1 | ObjectExpression$1 | ParenthesizedExpression | SequenceExpression$1 | TaggedTemplateExpression$1 | ThisExpression$1 | UnaryExpression$1 | UpdateExpression$1 | YieldExpression$1 | PrivateInExpression$1 | MetaProperty$1 | JSXElement$1 | JSXFragment$1 | TSAsExpression$1 | TSSatisfiesExpression$1 | TSTypeAssertion$1 | TSNonNullExpression$1 | TSInstantiationExpression$1 | V8IntrinsicExpression | MemberExpression$1;
1377
+ interface IdentifierName$1 extends Span$1 {
1378
+ type: "Identifier";
1388
1379
  decorators?: [];
1389
- elements: Array<AssignmentTargetMaybeDefault | AssignmentTargetRest | null>;
1380
+ name: string;
1390
1381
  optional?: false;
1391
1382
  typeAnnotation?: null;
1392
1383
  parent?: Node$1;
1393
1384
  }
1394
- declare interface ArrayExpression$1 extends Span$1 {
1395
- type: "ArrayExpression";
1396
- elements: Array<ArrayExpressionElement>;
1397
- parent?: Node$1;
1398
- }
1399
- declare type ArrayExpressionElement = SpreadElement$1 | null | Expression$1;
1400
- declare interface ArrayPattern$1 extends Span$1 {
1401
- type: "ArrayPattern";
1402
- decorators?: [];
1403
- elements: Array<BindingPattern$1 | BindingRestElement$1 | null>;
1404
- optional?: false;
1405
- typeAnnotation?: TSTypeAnnotation$1 | null;
1406
- parent?: Node$1;
1407
- }
1408
- declare interface ArrowFunctionExpression$1 extends Span$1 {
1409
- type: "ArrowFunctionExpression";
1410
- expression: boolean;
1411
- async: boolean;
1412
- typeParameters?: TSTypeParameterDeclaration$1 | null;
1413
- params: ParamPattern$1[];
1414
- returnType?: TSTypeAnnotation$1 | null;
1415
- body: FunctionBody | Expression$1;
1416
- id: null;
1417
- generator: false;
1418
- parent?: Node$1;
1419
- }
1420
- declare interface AssignmentExpression$1 extends Span$1 {
1421
- type: "AssignmentExpression";
1422
- operator: AssignmentOperator;
1423
- left: AssignmentTarget;
1424
- right: Expression$1;
1425
- parent?: Node$1;
1426
- }
1427
- declare type AssignmentOperator = "=" | "+=" | "-=" | "*=" | "/=" | "%=" | "**=" | "<<=" | ">>=" | ">>>=" | "|=" | "^=" | "&=" | "||=" | "&&=" | "??=";
1428
- declare interface AssignmentPattern$1 extends Span$1 {
1429
- type: "AssignmentPattern";
1385
+ interface IdentifierReference$1 extends Span$1 {
1386
+ type: "Identifier";
1430
1387
  decorators?: [];
1431
- left: BindingPattern$1;
1432
- right: Expression$1;
1388
+ name: string;
1433
1389
  optional?: false;
1434
1390
  typeAnnotation?: null;
1435
1391
  parent?: Node$1;
1436
1392
  }
1437
- declare type AssignmentTarget = SimpleAssignmentTarget$1 | AssignmentTargetPattern;
1438
- declare type AssignmentTargetMaybeDefault = AssignmentTargetWithDefault | AssignmentTarget;
1439
- declare type AssignmentTargetPattern = ArrayAssignmentTarget | ObjectAssignmentTarget;
1440
- declare type AssignmentTargetProperty = AssignmentTargetPropertyIdentifier | AssignmentTargetPropertyProperty;
1441
- declare interface AssignmentTargetPropertyIdentifier extends Span$1 {
1442
- type: "Property";
1443
- kind: "init";
1444
- key: IdentifierReference$1;
1445
- value: IdentifierReference$1 | AssignmentTargetWithDefault;
1446
- method: false;
1447
- shorthand: true;
1448
- computed: false;
1449
- optional?: false;
1450
- parent?: Node$1;
1451
- }
1452
- declare interface AssignmentTargetPropertyProperty extends Span$1 {
1453
- type: "Property";
1454
- kind: "init";
1455
- key: PropertyKey_2;
1456
- value: AssignmentTargetMaybeDefault;
1457
- method: false;
1458
- shorthand: false;
1459
- computed: boolean;
1460
- optional?: false;
1461
- parent?: Node$1;
1462
- }
1463
- declare interface AssignmentTargetRest extends Span$1 {
1464
- type: "RestElement";
1393
+ interface BindingIdentifier$1 extends Span$1 {
1394
+ type: "Identifier";
1465
1395
  decorators?: [];
1466
- argument: AssignmentTarget;
1396
+ name: string;
1467
1397
  optional?: false;
1468
- typeAnnotation?: null;
1469
- value?: null;
1398
+ typeAnnotation?: TSTypeAnnotation$1 | null;
1470
1399
  parent?: Node$1;
1471
1400
  }
1472
- declare interface AssignmentTargetWithDefault extends Span$1 {
1473
- type: "AssignmentPattern";
1401
+ interface LabelIdentifier$1 extends Span$1 {
1402
+ type: "Identifier";
1474
1403
  decorators?: [];
1475
- left: AssignmentTarget;
1476
- right: Expression$1;
1404
+ name: string;
1477
1405
  optional?: false;
1478
1406
  typeAnnotation?: null;
1479
1407
  parent?: Node$1;
1480
1408
  }
1481
- declare interface AwaitExpression extends Span$1 {
1482
- type: "AwaitExpression";
1483
- argument: Expression$1;
1484
- parent?: Node$1;
1485
- }
1486
- declare interface BigIntLiteral$1 extends Span$1 {
1487
- type: "Literal";
1488
- value: bigint;
1489
- raw: string | null;
1490
- bigint: string;
1409
+ interface ThisExpression$1 extends Span$1 {
1410
+ type: "ThisExpression";
1491
1411
  parent?: Node$1;
1492
1412
  }
1493
- declare interface BinaryExpression$1 extends Span$1 {
1494
- type: "BinaryExpression";
1495
- left: Expression$1;
1496
- operator: BinaryOperator;
1497
- right: Expression$1;
1413
+ interface ArrayExpression$1 extends Span$1 {
1414
+ type: "ArrayExpression";
1415
+ elements: Array<ArrayExpressionElement>;
1498
1416
  parent?: Node$1;
1499
1417
  }
1500
- declare type BinaryOperator = "==" | "!=" | "===" | "!==" | "<" | "<=" | ">" | ">=" | "+" | "-" | "*" | "/" | "%" | "**" | "<<" | ">>" | ">>>" | "|" | "^" | "&" | "in" | "instanceof";
1501
- declare interface BindingIdentifier$1 extends Span$1 {
1502
- type: "Identifier";
1503
- decorators?: [];
1504
- name: string;
1505
- optional?: false;
1506
- typeAnnotation?: TSTypeAnnotation$1 | null;
1418
+ type ArrayExpressionElement = SpreadElement$1 | null | Expression$1;
1419
+ interface ObjectExpression$1 extends Span$1 {
1420
+ type: "ObjectExpression";
1421
+ properties: Array<ObjectPropertyKind>;
1507
1422
  parent?: Node$1;
1508
1423
  }
1509
- declare type BindingPattern$1 = BindingIdentifier$1 | ObjectPattern | ArrayPattern$1 | AssignmentPattern$1;
1510
- declare interface BindingProperty$1 extends Span$1 {
1424
+ type ObjectPropertyKind = ObjectProperty$1 | SpreadElement$1;
1425
+ interface ObjectProperty$1 extends Span$1 {
1511
1426
  type: "Property";
1512
- kind: "init";
1513
- key: PropertyKey_2;
1514
- value: BindingPattern$1;
1515
- method: false;
1427
+ kind: PropertyKind;
1428
+ key: PropertyKey$1;
1429
+ value: Expression$1;
1430
+ method: boolean;
1516
1431
  shorthand: boolean;
1517
1432
  computed: boolean;
1518
1433
  optional?: false;
1519
1434
  parent?: Node$1;
1520
1435
  }
1521
- declare interface BindingRestElement$1 extends Span$1 {
1522
- type: "RestElement";
1523
- decorators?: [];
1524
- argument: BindingPattern$1;
1525
- optional?: false;
1526
- typeAnnotation?: TSTypeAnnotation$1 | null;
1527
- value?: null;
1436
+ type PropertyKey$1 = IdentifierName$1 | PrivateIdentifier$1 | Expression$1;
1437
+ type PropertyKind = "init" | "get" | "set";
1438
+ interface TemplateLiteral$1 extends Span$1 {
1439
+ type: "TemplateLiteral";
1440
+ quasis: Array<TemplateElement$1>;
1441
+ expressions: Array<Expression$1>;
1528
1442
  parent?: Node$1;
1529
1443
  }
1530
- declare interface BlockStatement$1 extends Span$1 {
1531
- type: "BlockStatement";
1532
- body: Array<Statement$1>;
1444
+ interface TaggedTemplateExpression$1 extends Span$1 {
1445
+ type: "TaggedTemplateExpression";
1446
+ tag: Expression$1;
1447
+ typeArguments?: TSTypeParameterInstantiation$1 | null;
1448
+ quasi: TemplateLiteral$1;
1533
1449
  parent?: Node$1;
1534
1450
  }
1535
- declare interface BooleanLiteral$1 extends Span$1 {
1536
- type: "Literal";
1537
- value: boolean;
1538
- raw: string | null;
1451
+ interface TemplateElement$1 extends Span$1 {
1452
+ type: "TemplateElement";
1453
+ value: TemplateElementValue;
1454
+ tail: boolean;
1539
1455
  parent?: Node$1;
1540
1456
  }
1541
- declare interface BreakStatement$1 extends Span$1 {
1542
- type: "BreakStatement";
1543
- label: LabelIdentifier$1 | null;
1457
+ interface TemplateElementValue {
1458
+ raw: string;
1459
+ cooked: string | null;
1460
+ }
1461
+ type MemberExpression$1 = ComputedMemberExpression | StaticMemberExpression$1 | PrivateFieldExpression;
1462
+ interface ComputedMemberExpression extends Span$1 {
1463
+ type: "MemberExpression";
1464
+ object: Expression$1;
1465
+ property: Expression$1;
1466
+ optional: boolean;
1467
+ computed: true;
1468
+ parent?: Node$1;
1469
+ }
1470
+ interface StaticMemberExpression$1 extends Span$1 {
1471
+ type: "MemberExpression";
1472
+ object: Expression$1;
1473
+ property: IdentifierName$1;
1474
+ optional: boolean;
1475
+ computed: false;
1476
+ parent?: Node$1;
1477
+ }
1478
+ interface PrivateFieldExpression extends Span$1 {
1479
+ type: "MemberExpression";
1480
+ object: Expression$1;
1481
+ property: PrivateIdentifier$1;
1482
+ optional: boolean;
1483
+ computed: false;
1544
1484
  parent?: Node$1;
1545
1485
  }
1546
- declare type Built<T> = T extends null | undefined ? T : T extends readonly unknown[] ? (number extends T['length'] ? Array<Built<T[number]>> : T) : T extends Span$1 ? { [K in keyof T as K extends keyof Span$1 ? never : K]: Child<T[K]>; } & Partial<Pick<T, keyof Span$1>> : T;
1547
- declare interface CallExpression$1 extends Span$1 {
1486
+ interface CallExpression$1 extends Span$1 {
1548
1487
  type: "CallExpression";
1549
1488
  callee: Expression$1;
1550
1489
  typeArguments?: TSTypeParameterInstantiation$1 | null;
@@ -1552,395 +1491,438 @@ declare interface CallExpression$1 extends Span$1 {
1552
1491
  optional: boolean;
1553
1492
  parent?: Node$1;
1554
1493
  }
1555
- declare interface CatchClause$1 extends Span$1 {
1556
- type: "CatchClause";
1557
- param: BindingPattern$1 | null;
1558
- body: BlockStatement$1;
1494
+ interface NewExpression$1 extends Span$1 {
1495
+ type: "NewExpression";
1496
+ callee: Expression$1;
1497
+ typeArguments?: TSTypeParameterInstantiation$1 | null;
1498
+ arguments: Array<Argument$1>;
1559
1499
  parent?: Node$1;
1560
1500
  }
1561
- declare type ChainElement = CallExpression$1 | TSNonNullExpression$1 | MemberExpression$1;
1562
- declare interface ChainExpression$1 extends Span$1 {
1563
- type: "ChainExpression";
1564
- expression: ChainElement;
1501
+ interface MetaProperty$1 extends Span$1 {
1502
+ type: "MetaProperty";
1503
+ meta: IdentifierName$1;
1504
+ property: IdentifierName$1;
1565
1505
  parent?: Node$1;
1566
1506
  }
1567
- declare type Child<T> = T extends null | undefined ? T : T extends readonly unknown[] ? (number extends T['length'] ? Array<Child<T[number]>> : T) : T extends Span$1 ? Built<T> | T : T;
1568
- declare interface Class$1 extends Span$1 {
1569
- type: ClassType;
1570
- decorators: Array<Decorator$1>;
1571
- id: BindingIdentifier$1 | null;
1572
- typeParameters?: TSTypeParameterDeclaration$1 | null;
1573
- superClass: Expression$1 | null;
1574
- superTypeArguments?: TSTypeParameterInstantiation$1 | null;
1575
- implements?: Array<TSClassImplements>;
1576
- body: ClassBody$1;
1577
- abstract?: boolean;
1578
- declare?: boolean;
1507
+ interface SpreadElement$1 extends Span$1 {
1508
+ type: "SpreadElement";
1509
+ argument: Expression$1;
1579
1510
  parent?: Node$1;
1580
1511
  }
1581
- declare interface ClassBody$1 extends Span$1 {
1582
- type: "ClassBody";
1583
- body: Array<ClassElement>;
1512
+ type Argument$1 = SpreadElement$1 | Expression$1;
1513
+ interface UpdateExpression$1 extends Span$1 {
1514
+ type: "UpdateExpression";
1515
+ operator: UpdateOperator;
1516
+ prefix: boolean;
1517
+ argument: SimpleAssignmentTarget$1;
1584
1518
  parent?: Node$1;
1585
1519
  }
1586
- declare type ClassElement = StaticBlock$1 | MethodDefinition$1 | PropertyDefinition$1 | AccessorProperty$1 | TSIndexSignature$1;
1587
- declare type ClassType = "ClassDeclaration" | "ClassExpression";
1588
- declare interface ComputedMemberExpression extends Span$1 {
1589
- type: "MemberExpression";
1590
- object: Expression$1;
1591
- property: Expression$1;
1592
- optional: boolean;
1593
- computed: true;
1520
+ interface UnaryExpression$1 extends Span$1 {
1521
+ type: "UnaryExpression";
1522
+ operator: UnaryOperator;
1523
+ argument: Expression$1;
1524
+ prefix: true;
1594
1525
  parent?: Node$1;
1595
1526
  }
1596
- declare interface ConditionalExpression$1 extends Span$1 {
1597
- type: "ConditionalExpression";
1598
- test: Expression$1;
1599
- consequent: Expression$1;
1600
- alternate: Expression$1;
1527
+ interface BinaryExpression$1 extends Span$1 {
1528
+ type: "BinaryExpression";
1529
+ left: Expression$1;
1530
+ operator: BinaryOperator;
1531
+ right: Expression$1;
1601
1532
  parent?: Node$1;
1602
1533
  }
1603
- declare interface ContinueStatement$1 extends Span$1 {
1604
- type: "ContinueStatement";
1605
- label: LabelIdentifier$1 | null;
1534
+ interface PrivateInExpression$1 extends Span$1 {
1535
+ type: "BinaryExpression";
1536
+ left: PrivateIdentifier$1;
1537
+ operator: "in";
1538
+ right: Expression$1;
1606
1539
  parent?: Node$1;
1607
1540
  }
1608
- declare interface DebuggerStatement extends Span$1 {
1609
- type: "DebuggerStatement";
1541
+ interface LogicalExpression$1 extends Span$1 {
1542
+ type: "LogicalExpression";
1543
+ left: Expression$1;
1544
+ operator: LogicalOperator;
1545
+ right: Expression$1;
1610
1546
  parent?: Node$1;
1611
1547
  }
1612
- declare type Declaration = VariableDeclaration$1 | Function$1 | Class$1 | TSTypeAliasDeclaration$1 | TSInterfaceDeclaration$1 | TSEnumDeclaration$1 | TSModuleDeclaration$1 | TSGlobalDeclaration | TSImportEqualsDeclaration$1;
1613
- declare interface Decorator$1 extends Span$1 {
1614
- type: "Decorator";
1615
- expression: Expression$1;
1548
+ interface ConditionalExpression$1 extends Span$1 {
1549
+ type: "ConditionalExpression";
1550
+ test: Expression$1;
1551
+ consequent: Expression$1;
1552
+ alternate: Expression$1;
1616
1553
  parent?: Node$1;
1617
1554
  }
1618
- declare interface Directive extends Span$1 {
1619
- type: "ExpressionStatement";
1620
- expression: StringLiteral$1;
1621
- directive: string;
1555
+ interface AssignmentExpression$1 extends Span$1 {
1556
+ type: "AssignmentExpression";
1557
+ operator: AssignmentOperator;
1558
+ left: AssignmentTarget;
1559
+ right: Expression$1;
1622
1560
  parent?: Node$1;
1623
1561
  }
1624
- declare interface DoWhileStatement$1 extends Span$1 {
1625
- type: "DoWhileStatement";
1626
- body: Statement$1;
1627
- test: Expression$1;
1562
+ type AssignmentTarget = SimpleAssignmentTarget$1 | AssignmentTargetPattern;
1563
+ type SimpleAssignmentTarget$1 = IdentifierReference$1 | TSAsExpression$1 | TSSatisfiesExpression$1 | TSNonNullExpression$1 | TSTypeAssertion$1 | MemberExpression$1;
1564
+ type AssignmentTargetPattern = ArrayAssignmentTarget | ObjectAssignmentTarget;
1565
+ interface ArrayAssignmentTarget extends Span$1 {
1566
+ type: "ArrayPattern";
1567
+ decorators?: [];
1568
+ elements: Array<AssignmentTargetMaybeDefault | AssignmentTargetRest | null>;
1569
+ optional?: false;
1570
+ typeAnnotation?: null;
1628
1571
  parent?: Node$1;
1629
1572
  }
1630
- declare interface EmptyStatement$1 extends Span$1 {
1631
- type: "EmptyStatement";
1573
+ interface ObjectAssignmentTarget extends Span$1 {
1574
+ type: "ObjectPattern";
1575
+ decorators?: [];
1576
+ properties: Array<AssignmentTargetProperty | AssignmentTargetRest>;
1577
+ optional?: false;
1578
+ typeAnnotation?: null;
1632
1579
  parent?: Node$1;
1633
1580
  }
1634
- declare interface ExportAllDeclaration$1 extends Span$1 {
1635
- type: "ExportAllDeclaration";
1636
- exported: ModuleExportName | null;
1637
- source: StringLiteral$1;
1638
- attributes: Array<ImportAttribute$1>;
1639
- exportKind?: ImportOrExportKind;
1581
+ interface AssignmentTargetRest extends Span$1 {
1582
+ type: "RestElement";
1583
+ decorators?: [];
1584
+ argument: AssignmentTarget;
1585
+ optional?: false;
1586
+ typeAnnotation?: null;
1587
+ value?: null;
1640
1588
  parent?: Node$1;
1641
1589
  }
1642
- declare interface ExportDefaultDeclaration$1 extends Span$1 {
1643
- type: "ExportDefaultDeclaration";
1644
- declaration: ExportDefaultDeclarationKind;
1645
- exportKind?: "value";
1590
+ type AssignmentTargetMaybeDefault = AssignmentTargetWithDefault | AssignmentTarget;
1591
+ interface AssignmentTargetWithDefault extends Span$1 {
1592
+ type: "AssignmentPattern";
1593
+ decorators?: [];
1594
+ left: AssignmentTarget;
1595
+ right: Expression$1;
1596
+ optional?: false;
1597
+ typeAnnotation?: null;
1646
1598
  parent?: Node$1;
1647
1599
  }
1648
- declare type ExportDefaultDeclarationKind = Function$1 | Class$1 | TSInterfaceDeclaration$1 | Expression$1;
1649
- declare interface ExportNamedDeclaration$1 extends Span$1 {
1650
- type: "ExportNamedDeclaration";
1651
- declaration: Declaration | null;
1652
- specifiers: Array<ExportSpecifier>;
1653
- source: StringLiteral$1 | null;
1654
- exportKind?: ImportOrExportKind;
1655
- attributes: Array<ImportAttribute$1>;
1600
+ type AssignmentTargetProperty = AssignmentTargetPropertyIdentifier | AssignmentTargetPropertyProperty;
1601
+ interface AssignmentTargetPropertyIdentifier extends Span$1 {
1602
+ type: "Property";
1603
+ kind: "init";
1604
+ key: IdentifierReference$1;
1605
+ value: IdentifierReference$1 | AssignmentTargetWithDefault;
1606
+ method: false;
1607
+ shorthand: true;
1608
+ computed: false;
1609
+ optional?: false;
1656
1610
  parent?: Node$1;
1657
1611
  }
1658
- declare interface ExportSpecifier extends Span$1 {
1659
- type: "ExportSpecifier";
1660
- local: ModuleExportName;
1661
- exported: ModuleExportName;
1662
- exportKind?: ImportOrExportKind;
1612
+ interface AssignmentTargetPropertyProperty extends Span$1 {
1613
+ type: "Property";
1614
+ kind: "init";
1615
+ key: PropertyKey$1;
1616
+ value: AssignmentTargetMaybeDefault;
1617
+ method: false;
1618
+ shorthand: false;
1619
+ computed: boolean;
1620
+ optional?: false;
1663
1621
  parent?: Node$1;
1664
1622
  }
1665
- declare type Expression$1 = BooleanLiteral$1 | NullLiteral$1 | NumericLiteral$1 | BigIntLiteral$1 | RegExpLiteral$1 | StringLiteral$1 | TemplateLiteral$1 | IdentifierReference$1 | Super$1 | ArrayExpression$1 | ArrowFunctionExpression$1 | AssignmentExpression$1 | AwaitExpression | BinaryExpression$1 | CallExpression$1 | ChainExpression$1 | Class$1 | ConditionalExpression$1 | Function$1 | ImportExpression$1 | LogicalExpression$1 | NewExpression$1 | ObjectExpression$1 | ParenthesizedExpression | SequenceExpression$1 | TaggedTemplateExpression$1 | ThisExpression$1 | UnaryExpression$1 | UpdateExpression$1 | YieldExpression$1 | PrivateInExpression$1 | MetaProperty$1 | JSXElement$1 | JSXFragment$1 | TSAsExpression$1 | TSSatisfiesExpression$1 | TSTypeAssertion$1 | TSNonNullExpression$1 | TSInstantiationExpression$1 | V8IntrinsicExpression | MemberExpression$1;
1666
- declare interface ExpressionStatement$1 extends Span$1 {
1667
- type: "ExpressionStatement";
1668
- expression: Expression$1;
1669
- directive?: string | null;
1623
+ interface SequenceExpression$1 extends Span$1 {
1624
+ type: "SequenceExpression";
1625
+ expressions: Array<Expression$1>;
1670
1626
  parent?: Node$1;
1671
1627
  }
1672
- declare interface ForInStatement$1 extends Span$1 {
1673
- type: "ForInStatement";
1674
- left: ForStatementLeft;
1675
- right: Expression$1;
1676
- body: Statement$1;
1628
+ interface Super$1 extends Span$1 {
1629
+ type: "Super";
1677
1630
  parent?: Node$1;
1678
1631
  }
1679
- declare type FormalParameter = {
1680
- decorators?: Array<Decorator$1>;
1681
- } & BindingPattern$1;
1682
- declare interface FormalParameterRest extends Span$1 {
1683
- type: "RestElement";
1684
- argument: BindingPattern$1;
1685
- decorators?: Array<Decorator$1>;
1686
- optional?: boolean;
1687
- typeAnnotation?: TSTypeAnnotation$1 | null;
1688
- value?: null;
1632
+ interface AwaitExpression extends Span$1 {
1633
+ type: "AwaitExpression";
1634
+ argument: Expression$1;
1689
1635
  parent?: Node$1;
1690
1636
  }
1691
- declare interface ForOfStatement$1 extends Span$1 {
1692
- type: "ForOfStatement";
1693
- await: boolean;
1694
- left: ForStatementLeft;
1695
- right: Expression$1;
1696
- body: Statement$1;
1637
+ interface ChainExpression$1 extends Span$1 {
1638
+ type: "ChainExpression";
1639
+ expression: ChainElement;
1697
1640
  parent?: Node$1;
1698
1641
  }
1699
- declare interface ForStatement$1 extends Span$1 {
1700
- type: "ForStatement";
1701
- init: ForStatementInit | null;
1702
- test: Expression$1 | null;
1703
- update: Expression$1 | null;
1704
- body: Statement$1;
1642
+ type ChainElement = CallExpression$1 | TSNonNullExpression$1 | MemberExpression$1;
1643
+ interface ParenthesizedExpression extends Span$1 {
1644
+ type: "ParenthesizedExpression";
1645
+ expression: Expression$1;
1705
1646
  parent?: Node$1;
1706
1647
  }
1707
- declare type ForStatementInit = VariableDeclaration$1 | Expression$1;
1708
- declare type ForStatementLeft = VariableDeclaration$1 | AssignmentTarget;
1709
- declare interface Function$1 extends Span$1 {
1710
- type: FunctionType;
1711
- id: BindingIdentifier$1 | null;
1712
- generator: boolean;
1713
- async: boolean;
1714
- declare?: boolean;
1715
- typeParameters?: TSTypeParameterDeclaration$1 | null;
1716
- params: ParamPattern$1[];
1717
- returnType?: TSTypeAnnotation$1 | null;
1718
- body: FunctionBody | null;
1719
- expression: false;
1648
+ type Statement$1 = BlockStatement$1 | BreakStatement$1 | ContinueStatement$1 | DebuggerStatement | DoWhileStatement$1 | EmptyStatement$1 | ExpressionStatement$1 | ForInStatement$1 | ForOfStatement$1 | ForStatement$1 | IfStatement$1 | LabeledStatement$1 | ReturnStatement$1 | SwitchStatement$1 | ThrowStatement$1 | TryStatement$1 | WhileStatement$1 | WithStatement$1 | Declaration | ModuleDeclaration;
1649
+ interface Directive extends Span$1 {
1650
+ type: "ExpressionStatement";
1651
+ expression: StringLiteral$1;
1652
+ directive: string;
1653
+ parent?: Node$1;
1654
+ }
1655
+ interface Hashbang extends Span$1 {
1656
+ type: "Hashbang";
1657
+ value: string;
1720
1658
  parent?: Node$1;
1721
1659
  }
1722
- declare interface FunctionBody extends Span$1 {
1660
+ interface BlockStatement$1 extends Span$1 {
1723
1661
  type: "BlockStatement";
1724
- body: Array<Directive | Statement$1>;
1662
+ body: Array<Statement$1>;
1725
1663
  parent?: Node$1;
1726
1664
  }
1727
- declare type FunctionType = "FunctionDeclaration" | "FunctionExpression" | "TSDeclareFunction" | "TSEmptyBodyFunctionExpression";
1728
- declare interface Hashbang extends Span$1 {
1729
- type: "Hashbang";
1730
- value: string;
1665
+ type Declaration = VariableDeclaration$1 | Function$1 | Class$1 | TSTypeAliasDeclaration$1 | TSInterfaceDeclaration$1 | TSEnumDeclaration$1 | TSModuleDeclaration$1 | TSGlobalDeclaration | TSImportEqualsDeclaration$1;
1666
+ interface VariableDeclaration$1 extends Span$1 {
1667
+ type: "VariableDeclaration";
1668
+ kind: VariableDeclarationKind;
1669
+ declarations: Array<VariableDeclarator$1>;
1670
+ declare?: boolean;
1731
1671
  parent?: Node$1;
1732
1672
  }
1733
- declare interface IdentifierName$1 extends Span$1 {
1734
- type: "Identifier";
1735
- decorators?: [];
1736
- name: string;
1737
- optional?: false;
1738
- typeAnnotation?: null;
1673
+ type VariableDeclarationKind = "var" | "let" | "const" | "using" | "await using";
1674
+ interface VariableDeclarator$1 extends Span$1 {
1675
+ type: "VariableDeclarator";
1676
+ id: BindingPattern$1;
1677
+ init: Expression$1 | null;
1678
+ definite?: boolean;
1739
1679
  parent?: Node$1;
1740
1680
  }
1741
- declare interface IdentifierReference$1 extends Span$1 {
1742
- type: "Identifier";
1743
- decorators?: [];
1744
- name: string;
1745
- optional?: false;
1746
- typeAnnotation?: null;
1681
+ interface EmptyStatement$1 extends Span$1 {
1682
+ type: "EmptyStatement";
1683
+ parent?: Node$1;
1684
+ }
1685
+ interface ExpressionStatement$1 extends Span$1 {
1686
+ type: "ExpressionStatement";
1687
+ expression: Expression$1;
1688
+ directive?: string | null;
1747
1689
  parent?: Node$1;
1748
1690
  }
1749
- declare interface IfStatement$1 extends Span$1 {
1691
+ interface IfStatement$1 extends Span$1 {
1750
1692
  type: "IfStatement";
1751
1693
  test: Expression$1;
1752
1694
  consequent: Statement$1;
1753
1695
  alternate: Statement$1 | null;
1754
1696
  parent?: Node$1;
1755
1697
  }
1756
- declare interface Ignorer {
1757
- readonly name: string;
1758
- shouldIgnore(node: Node_2, ancestors: readonly Node_2[]): string | undefined;
1759
- }
1760
- declare interface ImportAttribute$1 extends Span$1 {
1761
- type: "ImportAttribute";
1762
- key: ImportAttributeKey;
1763
- value: StringLiteral$1;
1698
+ interface DoWhileStatement$1 extends Span$1 {
1699
+ type: "DoWhileStatement";
1700
+ body: Statement$1;
1701
+ test: Expression$1;
1764
1702
  parent?: Node$1;
1765
1703
  }
1766
- declare type ImportAttributeKey = IdentifierName$1 | StringLiteral$1;
1767
- declare interface ImportDeclaration$1 extends Span$1 {
1768
- type: "ImportDeclaration";
1769
- specifiers: Array<ImportDeclarationSpecifier>;
1770
- source: StringLiteral$1;
1771
- phase: ImportPhase | null;
1772
- attributes: Array<ImportAttribute$1>;
1773
- importKind?: ImportOrExportKind;
1704
+ interface WhileStatement$1 extends Span$1 {
1705
+ type: "WhileStatement";
1706
+ test: Expression$1;
1707
+ body: Statement$1;
1774
1708
  parent?: Node$1;
1775
1709
  }
1776
- declare type ImportDeclarationSpecifier = ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier;
1777
- declare interface ImportDefaultSpecifier extends Span$1 {
1778
- type: "ImportDefaultSpecifier";
1779
- local: BindingIdentifier$1;
1710
+ interface ForStatement$1 extends Span$1 {
1711
+ type: "ForStatement";
1712
+ init: ForStatementInit | null;
1713
+ test: Expression$1 | null;
1714
+ update: Expression$1 | null;
1715
+ body: Statement$1;
1780
1716
  parent?: Node$1;
1781
1717
  }
1782
- declare interface ImportExpression$1 extends Span$1 {
1783
- type: "ImportExpression";
1784
- source: Expression$1;
1785
- options: Expression$1 | null;
1786
- phase: ImportPhase | null;
1718
+ type ForStatementInit = VariableDeclaration$1 | Expression$1;
1719
+ interface ForInStatement$1 extends Span$1 {
1720
+ type: "ForInStatement";
1721
+ left: ForStatementLeft;
1722
+ right: Expression$1;
1723
+ body: Statement$1;
1787
1724
  parent?: Node$1;
1788
1725
  }
1789
- declare interface ImportNamespaceSpecifier extends Span$1 {
1790
- type: "ImportNamespaceSpecifier";
1791
- local: BindingIdentifier$1;
1726
+ type ForStatementLeft = VariableDeclaration$1 | AssignmentTarget;
1727
+ interface ForOfStatement$1 extends Span$1 {
1728
+ type: "ForOfStatement";
1729
+ await: boolean;
1730
+ left: ForStatementLeft;
1731
+ right: Expression$1;
1732
+ body: Statement$1;
1792
1733
  parent?: Node$1;
1793
1734
  }
1794
- declare type ImportOrExportKind = "value" | "type";
1795
- declare type ImportPhase = "source" | "defer";
1796
- declare interface ImportSpecifier extends Span$1 {
1797
- type: "ImportSpecifier";
1798
- imported: ModuleExportName;
1799
- local: BindingIdentifier$1;
1800
- importKind?: ImportOrExportKind;
1735
+ interface ContinueStatement$1 extends Span$1 {
1736
+ type: "ContinueStatement";
1737
+ label: LabelIdentifier$1 | null;
1801
1738
  parent?: Node$1;
1802
1739
  }
1803
- declare interface JSDocNonNullableType$1 extends Span$1 {
1804
- type: "TSJSDocNonNullableType";
1805
- typeAnnotation: TSType$1;
1806
- postfix: boolean;
1740
+ interface BreakStatement$1 extends Span$1 {
1741
+ type: "BreakStatement";
1742
+ label: LabelIdentifier$1 | null;
1807
1743
  parent?: Node$1;
1808
1744
  }
1809
- declare interface JSDocNullableType$1 extends Span$1 {
1810
- type: "TSJSDocNullableType";
1811
- typeAnnotation: TSType$1;
1812
- postfix: boolean;
1745
+ interface ReturnStatement$1 extends Span$1 {
1746
+ type: "ReturnStatement";
1747
+ argument: Expression$1 | null;
1813
1748
  parent?: Node$1;
1814
1749
  }
1815
- declare interface JSDocUnknownType extends Span$1 {
1816
- type: "TSJSDocUnknownType";
1750
+ interface WithStatement$1 extends Span$1 {
1751
+ type: "WithStatement";
1752
+ object: Expression$1;
1753
+ body: Statement$1;
1817
1754
  parent?: Node$1;
1818
1755
  }
1819
- declare interface JSXAttribute$1 extends Span$1 {
1820
- type: "JSXAttribute";
1821
- name: JSXAttributeName;
1822
- value: JSXAttributeValue | null;
1756
+ interface SwitchStatement$1 extends Span$1 {
1757
+ type: "SwitchStatement";
1758
+ discriminant: Expression$1;
1759
+ cases: Array<SwitchCase$1>;
1823
1760
  parent?: Node$1;
1824
1761
  }
1825
- declare type JSXAttributeItem = JSXAttribute$1 | JSXSpreadAttribute$1;
1826
- declare type JSXAttributeName = JSXIdentifier$1 | JSXNamespacedName$1;
1827
- declare type JSXAttributeValue = StringLiteral$1 | JSXExpressionContainer$1 | JSXElement$1 | JSXFragment$1;
1828
- declare type JSXChild = JSXText$1 | JSXElement$1 | JSXFragment$1 | JSXExpressionContainer$1 | JSXSpreadChild$1;
1829
- declare interface JSXClosingElement extends Span$1 {
1830
- type: "JSXClosingElement";
1831
- name: JSXElementName;
1762
+ interface SwitchCase$1 extends Span$1 {
1763
+ type: "SwitchCase";
1764
+ test: Expression$1 | null;
1765
+ consequent: Array<Statement$1>;
1832
1766
  parent?: Node$1;
1833
1767
  }
1834
- declare interface JSXClosingFragment extends Span$1 {
1835
- type: "JSXClosingFragment";
1768
+ interface LabeledStatement$1 extends Span$1 {
1769
+ type: "LabeledStatement";
1770
+ label: LabelIdentifier$1;
1771
+ body: Statement$1;
1836
1772
  parent?: Node$1;
1837
1773
  }
1838
- declare interface JSXElement$1 extends Span$1 {
1839
- type: "JSXElement";
1840
- openingElement: JSXOpeningElement$1;
1841
- children: Array<JSXChild>;
1842
- closingElement: JSXClosingElement | null;
1774
+ interface ThrowStatement$1 extends Span$1 {
1775
+ type: "ThrowStatement";
1776
+ argument: Expression$1;
1843
1777
  parent?: Node$1;
1844
1778
  }
1845
- declare type JSXElementName = JSXIdentifier$1 | JSXNamespacedName$1 | JSXMemberExpression$1;
1846
- declare interface JSXEmptyExpression extends Span$1 {
1847
- type: "JSXEmptyExpression";
1779
+ interface TryStatement$1 extends Span$1 {
1780
+ type: "TryStatement";
1781
+ block: BlockStatement$1;
1782
+ handler: CatchClause$1 | null;
1783
+ finalizer: BlockStatement$1 | null;
1848
1784
  parent?: Node$1;
1849
1785
  }
1850
- declare type JSXExpression = JSXEmptyExpression | Expression$1;
1851
- declare interface JSXExpressionContainer$1 extends Span$1 {
1852
- type: "JSXExpressionContainer";
1853
- expression: JSXExpression;
1786
+ interface CatchClause$1 extends Span$1 {
1787
+ type: "CatchClause";
1788
+ param: BindingPattern$1 | null;
1789
+ body: BlockStatement$1;
1854
1790
  parent?: Node$1;
1855
1791
  }
1856
- declare interface JSXFragment$1 extends Span$1 {
1857
- type: "JSXFragment";
1858
- openingFragment: JSXOpeningFragment;
1859
- children: Array<JSXChild>;
1860
- closingFragment: JSXClosingFragment;
1792
+ interface DebuggerStatement extends Span$1 {
1793
+ type: "DebuggerStatement";
1861
1794
  parent?: Node$1;
1862
1795
  }
1863
- declare interface JSXIdentifier$1 extends Span$1 {
1864
- type: "JSXIdentifier";
1865
- name: string;
1796
+ type BindingPattern$1 = BindingIdentifier$1 | ObjectPattern | ArrayPattern$1 | AssignmentPattern$1;
1797
+ interface AssignmentPattern$1 extends Span$1 {
1798
+ type: "AssignmentPattern";
1799
+ decorators?: [];
1800
+ left: BindingPattern$1;
1801
+ right: Expression$1;
1802
+ optional?: false;
1803
+ typeAnnotation?: null;
1866
1804
  parent?: Node$1;
1867
1805
  }
1868
- declare interface JSXMemberExpression$1 extends Span$1 {
1869
- type: "JSXMemberExpression";
1870
- object: JSXMemberExpressionObject;
1871
- property: JSXIdentifier$1;
1806
+ interface ObjectPattern extends Span$1 {
1807
+ type: "ObjectPattern";
1808
+ decorators?: [];
1809
+ properties: Array<BindingProperty$1 | BindingRestElement$1>;
1810
+ optional?: false;
1811
+ typeAnnotation?: TSTypeAnnotation$1 | null;
1872
1812
  parent?: Node$1;
1873
1813
  }
1874
- declare type JSXMemberExpressionObject = JSXIdentifier$1 | JSXMemberExpression$1;
1875
- declare interface JSXNamespacedName$1 extends Span$1 {
1876
- type: "JSXNamespacedName";
1877
- namespace: JSXIdentifier$1;
1878
- name: JSXIdentifier$1;
1814
+ interface BindingProperty$1 extends Span$1 {
1815
+ type: "Property";
1816
+ kind: "init";
1817
+ key: PropertyKey$1;
1818
+ value: BindingPattern$1;
1819
+ method: false;
1820
+ shorthand: boolean;
1821
+ computed: boolean;
1822
+ optional?: false;
1879
1823
  parent?: Node$1;
1880
1824
  }
1881
- declare interface JSXOpeningElement$1 extends Span$1 {
1882
- type: "JSXOpeningElement";
1883
- name: JSXElementName;
1884
- typeArguments?: TSTypeParameterInstantiation$1 | null;
1885
- attributes: Array<JSXAttributeItem>;
1886
- selfClosing: boolean;
1825
+ interface ArrayPattern$1 extends Span$1 {
1826
+ type: "ArrayPattern";
1827
+ decorators?: [];
1828
+ elements: Array<BindingPattern$1 | BindingRestElement$1 | null>;
1829
+ optional?: false;
1830
+ typeAnnotation?: TSTypeAnnotation$1 | null;
1887
1831
  parent?: Node$1;
1888
1832
  }
1889
- declare interface JSXOpeningFragment extends Span$1 {
1890
- type: "JSXOpeningFragment";
1891
- attributes?: [];
1892
- selfClosing?: false;
1833
+ interface BindingRestElement$1 extends Span$1 {
1834
+ type: "RestElement";
1835
+ decorators?: [];
1836
+ argument: BindingPattern$1;
1837
+ optional?: false;
1838
+ typeAnnotation?: TSTypeAnnotation$1 | null;
1839
+ value?: null;
1893
1840
  parent?: Node$1;
1894
1841
  }
1895
- declare interface JSXSpreadAttribute$1 extends Span$1 {
1896
- type: "JSXSpreadAttribute";
1897
- argument: Expression$1;
1842
+ interface Function$1 extends Span$1 {
1843
+ type: FunctionType;
1844
+ id: BindingIdentifier$1 | null;
1845
+ generator: boolean;
1846
+ async: boolean;
1847
+ declare?: boolean;
1848
+ typeParameters?: TSTypeParameterDeclaration$1 | null;
1849
+ params: ParamPattern$1[];
1850
+ returnType?: TSTypeAnnotation$1 | null;
1851
+ body: FunctionBody | null;
1852
+ expression: false;
1898
1853
  parent?: Node$1;
1899
1854
  }
1900
- declare interface JSXSpreadChild$1 extends Span$1 {
1901
- type: "JSXSpreadChild";
1902
- expression: Expression$1;
1855
+ type ParamPattern$1 = FormalParameter | TSParameterProperty | FormalParameterRest;
1856
+ type FunctionType = "FunctionDeclaration" | "FunctionExpression" | "TSDeclareFunction" | "TSEmptyBodyFunctionExpression";
1857
+ interface FormalParameterRest extends Span$1 {
1858
+ type: "RestElement";
1859
+ argument: BindingPattern$1;
1860
+ decorators?: Array<Decorator$1>;
1861
+ optional?: boolean;
1862
+ typeAnnotation?: TSTypeAnnotation$1 | null;
1863
+ value?: null;
1903
1864
  parent?: Node$1;
1904
1865
  }
1905
- declare interface JSXText$1 extends Span$1 {
1906
- type: "JSXText";
1907
- value: string;
1908
- raw: string | null;
1866
+ type FormalParameter = {
1867
+ decorators?: Array<Decorator$1>;
1868
+ } & BindingPattern$1;
1869
+ interface TSParameterProperty extends Span$1 {
1870
+ type: "TSParameterProperty";
1871
+ accessibility: TSAccessibility | null;
1872
+ decorators: Array<Decorator$1>;
1873
+ override: boolean;
1874
+ parameter: FormalParameter;
1875
+ readonly: boolean;
1876
+ static: boolean;
1909
1877
  parent?: Node$1;
1910
1878
  }
1911
- declare interface LabeledStatement$1 extends Span$1 {
1912
- type: "LabeledStatement";
1913
- label: LabelIdentifier$1;
1914
- body: Statement$1;
1879
+ interface FunctionBody extends Span$1 {
1880
+ type: "BlockStatement";
1881
+ body: Array<Directive | Statement$1>;
1915
1882
  parent?: Node$1;
1916
1883
  }
1917
- declare interface LabelIdentifier$1 extends Span$1 {
1918
- type: "Identifier";
1919
- decorators?: [];
1920
- name: string;
1921
- optional?: false;
1922
- typeAnnotation?: null;
1884
+ interface ArrowFunctionExpression$1 extends Span$1 {
1885
+ type: "ArrowFunctionExpression";
1886
+ expression: boolean;
1887
+ async: boolean;
1888
+ typeParameters?: TSTypeParameterDeclaration$1 | null;
1889
+ params: ParamPattern$1[];
1890
+ returnType?: TSTypeAnnotation$1 | null;
1891
+ body: FunctionBody | Expression$1;
1892
+ id: null;
1893
+ generator: false;
1923
1894
  parent?: Node$1;
1924
1895
  }
1925
- declare interface LogicalExpression$1 extends Span$1 {
1926
- type: "LogicalExpression";
1927
- left: Expression$1;
1928
- operator: LogicalOperator;
1929
- right: Expression$1;
1896
+ interface YieldExpression$1 extends Span$1 {
1897
+ type: "YieldExpression";
1898
+ delegate: boolean;
1899
+ argument: Expression$1 | null;
1930
1900
  parent?: Node$1;
1931
1901
  }
1932
- declare type LogicalOperator = "||" | "&&" | "??";
1933
- declare type MemberExpression$1 = ComputedMemberExpression | StaticMemberExpression$1 | PrivateFieldExpression;
1934
- declare interface MetaProperty$1 extends Span$1 {
1935
- type: "MetaProperty";
1936
- meta: IdentifierName$1;
1937
- property: IdentifierName$1;
1902
+ interface Class$1 extends Span$1 {
1903
+ type: ClassType;
1904
+ decorators: Array<Decorator$1>;
1905
+ id: BindingIdentifier$1 | null;
1906
+ typeParameters?: TSTypeParameterDeclaration$1 | null;
1907
+ superClass: Expression$1 | null;
1908
+ superTypeArguments?: TSTypeParameterInstantiation$1 | null;
1909
+ implements?: Array<TSClassImplements>;
1910
+ body: ClassBody$1;
1911
+ abstract?: boolean;
1912
+ declare?: boolean;
1938
1913
  parent?: Node$1;
1939
1914
  }
1940
- declare interface MethodDefinition$1 extends Span$1 {
1915
+ type ClassType = "ClassDeclaration" | "ClassExpression";
1916
+ interface ClassBody$1 extends Span$1 {
1917
+ type: "ClassBody";
1918
+ body: Array<ClassElement>;
1919
+ parent?: Node$1;
1920
+ }
1921
+ type ClassElement = StaticBlock$1 | MethodDefinition$1 | PropertyDefinition$1 | AccessorProperty$1 | TSIndexSignature$1;
1922
+ interface MethodDefinition$1 extends Span$1 {
1941
1923
  type: MethodDefinitionType;
1942
1924
  decorators: Array<Decorator$1>;
1943
- key: PropertyKey_2;
1925
+ key: PropertyKey$1;
1944
1926
  value: Function$1;
1945
1927
  kind: MethodDefinitionKind;
1946
1928
  computed: boolean;
@@ -1950,291 +1932,275 @@ declare interface MethodDefinition$1 extends Span$1 {
1950
1932
  accessibility?: TSAccessibility | null;
1951
1933
  parent?: Node$1;
1952
1934
  }
1953
- declare type MethodDefinitionKind = "constructor" | "method" | "get" | "set";
1954
- declare type MethodDefinitionType = "MethodDefinition" | "TSAbstractMethodDefinition";
1955
- declare type ModuleDeclaration = ImportDeclaration$1 | ExportAllDeclaration$1 | ExportDefaultDeclaration$1 | ExportNamedDeclaration$1 | TSExportAssignment$1 | TSNamespaceExportDeclaration$1;
1956
- declare type ModuleExportName = IdentifierName$1 | IdentifierReference$1 | StringLiteral$1;
1957
- declare type ModuleKind = "script" | "module" | "commonjs";
1958
- declare interface NewExpression$1 extends Span$1 {
1959
- type: "NewExpression";
1960
- callee: Expression$1;
1961
- typeArguments?: TSTypeParameterInstantiation$1 | null;
1962
- arguments: Array<Argument$1>;
1935
+ type MethodDefinitionType = "MethodDefinition" | "TSAbstractMethodDefinition";
1936
+ interface PropertyDefinition$1 extends Span$1 {
1937
+ type: PropertyDefinitionType;
1938
+ decorators: Array<Decorator$1>;
1939
+ key: PropertyKey$1;
1940
+ typeAnnotation?: TSTypeAnnotation$1 | null;
1941
+ value: Expression$1 | null;
1942
+ computed: boolean;
1943
+ static: boolean;
1944
+ declare?: boolean;
1945
+ override?: boolean;
1946
+ optional?: boolean;
1947
+ definite?: boolean;
1948
+ readonly?: boolean;
1949
+ accessibility?: TSAccessibility | null;
1963
1950
  parent?: Node$1;
1964
1951
  }
1965
- declare type Node$1 = Program$1 | IdentifierName$1 | IdentifierReference$1 | BindingIdentifier$1 | LabelIdentifier$1 | ThisExpression$1 | ArrayExpression$1 | ObjectExpression$1 | ObjectProperty$1 | TemplateLiteral$1 | TaggedTemplateExpression$1 | TemplateElement$1 | ComputedMemberExpression | StaticMemberExpression$1 | PrivateFieldExpression | CallExpression$1 | NewExpression$1 | MetaProperty$1 | SpreadElement$1 | UpdateExpression$1 | UnaryExpression$1 | BinaryExpression$1 | PrivateInExpression$1 | LogicalExpression$1 | ConditionalExpression$1 | AssignmentExpression$1 | ArrayAssignmentTarget | ObjectAssignmentTarget | AssignmentTargetRest | AssignmentTargetWithDefault | AssignmentTargetPropertyIdentifier | AssignmentTargetPropertyProperty | SequenceExpression$1 | Super$1 | AwaitExpression | ChainExpression$1 | ParenthesizedExpression | Directive | Hashbang | BlockStatement$1 | VariableDeclaration$1 | VariableDeclarator$1 | EmptyStatement$1 | ExpressionStatement$1 | IfStatement$1 | DoWhileStatement$1 | WhileStatement$1 | ForStatement$1 | ForInStatement$1 | ForOfStatement$1 | ContinueStatement$1 | BreakStatement$1 | ReturnStatement$1 | WithStatement$1 | SwitchStatement$1 | SwitchCase$1 | LabeledStatement$1 | ThrowStatement$1 | TryStatement$1 | CatchClause$1 | DebuggerStatement | AssignmentPattern$1 | ObjectPattern | BindingProperty$1 | ArrayPattern$1 | BindingRestElement$1 | Function$1 | FunctionBody | ArrowFunctionExpression$1 | YieldExpression$1 | Class$1 | ClassBody$1 | MethodDefinition$1 | PropertyDefinition$1 | PrivateIdentifier$1 | StaticBlock$1 | AccessorProperty$1 | ImportExpression$1 | ImportDeclaration$1 | ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier | ImportAttribute$1 | ExportNamedDeclaration$1 | ExportDefaultDeclaration$1 | ExportAllDeclaration$1 | ExportSpecifier | V8IntrinsicExpression | BooleanLiteral$1 | NullLiteral$1 | NumericLiteral$1 | StringLiteral$1 | BigIntLiteral$1 | RegExpLiteral$1 | JSXElement$1 | JSXOpeningElement$1 | JSXClosingElement | JSXFragment$1 | JSXOpeningFragment | JSXClosingFragment | JSXNamespacedName$1 | JSXMemberExpression$1 | JSXExpressionContainer$1 | JSXEmptyExpression | JSXAttribute$1 | JSXSpreadAttribute$1 | JSXIdentifier$1 | JSXSpreadChild$1 | JSXText$1 | TSThisParameter | TSEnumDeclaration$1 | TSEnumBody | TSEnumMember | TSTypeAnnotation$1 | TSLiteralType$1 | TSConditionalType$1 | TSUnionType$1 | TSIntersectionType$1 | TSParenthesizedType$1 | TSTypeOperator$1 | TSArrayType$1 | TSIndexedAccessType$1 | TSTupleType$1 | TSNamedTupleMember$1 | TSOptionalType$1 | TSRestType$1 | TSAnyKeyword | TSStringKeyword | TSBooleanKeyword | TSNumberKeyword | TSNeverKeyword | TSIntrinsicKeyword | TSUnknownKeyword | TSNullKeyword | TSUndefinedKeyword | TSVoidKeyword | TSSymbolKeyword | TSThisType | TSObjectKeyword | TSBigIntKeyword | TSTypeReference$1 | TSQualifiedName$1 | TSTypeParameterInstantiation$1 | TSTypeParameter | TSTypeParameterDeclaration$1 | TSTypeAliasDeclaration$1 | TSClassImplements | TSInterfaceDeclaration$1 | TSInterfaceBody$1 | TSPropertySignature$1 | TSIndexSignature$1 | TSCallSignatureDeclaration$1 | TSMethodSignature$1 | TSConstructSignatureDeclaration$1 | TSIndexSignatureName | TSInterfaceHeritage | TSTypePredicate$1 | TSModuleDeclaration$1 | TSGlobalDeclaration | TSModuleBlock$1 | TSTypeLiteral | TSInferType$1 | TSTypeQuery$1 | TSImportType$1 | TSImportTypeQualifiedName | TSFunctionType$1 | TSConstructorType$1 | TSMappedType$1 | TSTemplateLiteralType$1 | TSAsExpression$1 | TSSatisfiesExpression$1 | TSTypeAssertion$1 | TSImportEqualsDeclaration$1 | TSExternalModuleReference | TSNonNullExpression$1 | Decorator$1 | TSExportAssignment$1 | TSNamespaceExportDeclaration$1 | TSInstantiationExpression$1 | JSDocNullableType$1 | JSDocNonNullableType$1 | JSDocUnknownType | ParamPattern$1;
1966
- declare type Node_2 = Simplify<Built<Node$1>> | Node$1;
1967
- declare interface NullLiteral$1 extends Span$1 {
1968
- type: "Literal";
1969
- value: null;
1970
- raw: "null" | null;
1952
+ type PropertyDefinitionType = "PropertyDefinition" | "TSAbstractPropertyDefinition";
1953
+ type MethodDefinitionKind = "constructor" | "method" | "get" | "set";
1954
+ interface PrivateIdentifier$1 extends Span$1 {
1955
+ type: "PrivateIdentifier";
1956
+ name: string;
1971
1957
  parent?: Node$1;
1972
1958
  }
1973
- declare interface NumericLiteral$1 extends Span$1 {
1974
- type: "Literal";
1975
- value: number;
1976
- raw: string | null;
1959
+ interface StaticBlock$1 extends Span$1 {
1960
+ type: "StaticBlock";
1961
+ body: Array<Statement$1>;
1977
1962
  parent?: Node$1;
1978
1963
  }
1979
- declare interface ObjectAssignmentTarget extends Span$1 {
1980
- type: "ObjectPattern";
1981
- decorators?: [];
1982
- properties: Array<AssignmentTargetProperty | AssignmentTargetRest>;
1964
+ type ModuleDeclaration = ImportDeclaration$1 | ExportAllDeclaration$1 | ExportDefaultDeclaration$1 | ExportNamedDeclaration$1 | TSExportAssignment$1 | TSNamespaceExportDeclaration$1;
1965
+ type AccessorPropertyType = "AccessorProperty" | "TSAbstractAccessorProperty";
1966
+ interface AccessorProperty$1 extends Span$1 {
1967
+ type: AccessorPropertyType;
1968
+ decorators: Array<Decorator$1>;
1969
+ key: PropertyKey$1;
1970
+ typeAnnotation?: TSTypeAnnotation$1 | null;
1971
+ value: Expression$1 | null;
1972
+ computed: boolean;
1973
+ static: boolean;
1974
+ override?: boolean;
1975
+ definite?: boolean;
1976
+ accessibility?: TSAccessibility | null;
1977
+ declare?: false;
1983
1978
  optional?: false;
1984
- typeAnnotation?: null;
1979
+ readonly?: false;
1985
1980
  parent?: Node$1;
1986
1981
  }
1987
- declare interface ObjectExpression$1 extends Span$1 {
1988
- type: "ObjectExpression";
1989
- properties: Array<ObjectPropertyKind>;
1982
+ interface ImportExpression$1 extends Span$1 {
1983
+ type: "ImportExpression";
1984
+ source: Expression$1;
1985
+ options: Expression$1 | null;
1986
+ phase: ImportPhase | null;
1990
1987
  parent?: Node$1;
1991
1988
  }
1992
- declare interface ObjectPattern extends Span$1 {
1993
- type: "ObjectPattern";
1994
- decorators?: [];
1995
- properties: Array<BindingProperty$1 | BindingRestElement$1>;
1996
- optional?: false;
1997
- typeAnnotation?: TSTypeAnnotation$1 | null;
1989
+ interface ImportDeclaration$1 extends Span$1 {
1990
+ type: "ImportDeclaration";
1991
+ specifiers: Array<ImportDeclarationSpecifier>;
1992
+ source: StringLiteral$1;
1993
+ phase: ImportPhase | null;
1994
+ attributes: Array<ImportAttribute$1>;
1995
+ importKind?: ImportOrExportKind;
1998
1996
  parent?: Node$1;
1999
1997
  }
2000
- declare interface ObjectProperty$1 extends Span$1 {
2001
- type: "Property";
2002
- kind: PropertyKind;
2003
- key: PropertyKey_2;
2004
- value: Expression$1;
2005
- method: boolean;
2006
- shorthand: boolean;
2007
- computed: boolean;
2008
- optional?: false;
1998
+ type ImportPhase = "source" | "defer";
1999
+ type ImportDeclarationSpecifier = ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier;
2000
+ interface ImportSpecifier extends Span$1 {
2001
+ type: "ImportSpecifier";
2002
+ imported: ModuleExportName;
2003
+ local: BindingIdentifier$1;
2004
+ importKind?: ImportOrExportKind;
2009
2005
  parent?: Node$1;
2010
2006
  }
2011
- declare type ObjectPropertyKind = ObjectProperty$1 | SpreadElement$1;
2012
- declare type ParamPattern$1 = FormalParameter | TSParameterProperty | FormalParameterRest;
2013
- declare interface ParenthesizedExpression extends Span$1 {
2014
- type: "ParenthesizedExpression";
2015
- expression: Expression$1;
2007
+ interface ImportDefaultSpecifier extends Span$1 {
2008
+ type: "ImportDefaultSpecifier";
2009
+ local: BindingIdentifier$1;
2016
2010
  parent?: Node$1;
2017
2011
  }
2018
- declare interface PrivateFieldExpression extends Span$1 {
2019
- type: "MemberExpression";
2020
- object: Expression$1;
2021
- property: PrivateIdentifier$1;
2022
- optional: boolean;
2023
- computed: false;
2012
+ interface ImportNamespaceSpecifier extends Span$1 {
2013
+ type: "ImportNamespaceSpecifier";
2014
+ local: BindingIdentifier$1;
2024
2015
  parent?: Node$1;
2025
2016
  }
2026
- declare interface PrivateIdentifier$1 extends Span$1 {
2027
- type: "PrivateIdentifier";
2028
- name: string;
2017
+ interface ImportAttribute$1 extends Span$1 {
2018
+ type: "ImportAttribute";
2019
+ key: ImportAttributeKey;
2020
+ value: StringLiteral$1;
2029
2021
  parent?: Node$1;
2030
2022
  }
2031
- declare interface PrivateInExpression$1 extends Span$1 {
2032
- type: "BinaryExpression";
2033
- left: PrivateIdentifier$1;
2034
- operator: "in";
2035
- right: Expression$1;
2023
+ type ImportAttributeKey = IdentifierName$1 | StringLiteral$1;
2024
+ interface ExportNamedDeclaration$1 extends Span$1 {
2025
+ type: "ExportNamedDeclaration";
2026
+ declaration: Declaration | null;
2027
+ specifiers: Array<ExportSpecifier>;
2028
+ source: StringLiteral$1 | null;
2029
+ exportKind?: ImportOrExportKind;
2030
+ attributes: Array<ImportAttribute$1>;
2036
2031
  parent?: Node$1;
2037
2032
  }
2038
- declare interface Program$1 extends Span$1 {
2039
- type: "Program";
2040
- body: Array<Directive | Statement$1>;
2041
- sourceType: ModuleKind;
2042
- hashbang: Hashbang | null;
2043
- parent?: null;
2044
- }
2045
- declare type Program = Simplify<Built<Program$1>>;
2046
- declare interface PropertyDefinition$1 extends Span$1 {
2047
- type: PropertyDefinitionType;
2048
- decorators: Array<Decorator$1>;
2049
- key: PropertyKey_2;
2050
- typeAnnotation?: TSTypeAnnotation$1 | null;
2051
- value: Expression$1 | null;
2052
- computed: boolean;
2053
- static: boolean;
2054
- declare?: boolean;
2055
- override?: boolean;
2056
- optional?: boolean;
2057
- definite?: boolean;
2058
- readonly?: boolean;
2059
- accessibility?: TSAccessibility | null;
2033
+ interface ExportDefaultDeclaration$1 extends Span$1 {
2034
+ type: "ExportDefaultDeclaration";
2035
+ declaration: ExportDefaultDeclarationKind;
2036
+ exportKind?: "value";
2060
2037
  parent?: Node$1;
2061
2038
  }
2062
- declare type PropertyDefinitionType = "PropertyDefinition" | "TSAbstractPropertyDefinition";
2063
- declare type PropertyKey_2 = IdentifierName$1 | PrivateIdentifier$1 | Expression$1;
2064
- declare type PropertyKind = "init" | "get" | "set";
2065
- declare interface RegExpLiteral$1 extends Span$1 {
2066
- type: "Literal";
2067
- value: RegExp | null;
2068
- raw: string | null;
2069
- regex: {
2070
- pattern: string;
2071
- flags: string;
2072
- };
2039
+ interface ExportAllDeclaration$1 extends Span$1 {
2040
+ type: "ExportAllDeclaration";
2041
+ exported: ModuleExportName | null;
2042
+ source: StringLiteral$1;
2043
+ attributes: Array<ImportAttribute$1>;
2044
+ exportKind?: ImportOrExportKind;
2073
2045
  parent?: Node$1;
2074
2046
  }
2075
- declare interface ReturnStatement$1 extends Span$1 {
2076
- type: "ReturnStatement";
2077
- argument: Expression$1 | null;
2047
+ interface ExportSpecifier extends Span$1 {
2048
+ type: "ExportSpecifier";
2049
+ local: ModuleExportName;
2050
+ exported: ModuleExportName;
2051
+ exportKind?: ImportOrExportKind;
2078
2052
  parent?: Node$1;
2079
2053
  }
2080
- declare interface SequenceExpression$1 extends Span$1 {
2081
- type: "SequenceExpression";
2082
- expressions: Array<Expression$1>;
2054
+ type ExportDefaultDeclarationKind = Function$1 | Class$1 | TSInterfaceDeclaration$1 | Expression$1;
2055
+ type ModuleExportName = IdentifierName$1 | IdentifierReference$1 | StringLiteral$1;
2056
+ interface V8IntrinsicExpression extends Span$1 {
2057
+ type: "V8IntrinsicExpression";
2058
+ name: IdentifierName$1;
2059
+ arguments: Array<Argument$1>;
2083
2060
  parent?: Node$1;
2084
2061
  }
2085
- declare type SimpleAssignmentTarget$1 = IdentifierReference$1 | TSAsExpression$1 | TSSatisfiesExpression$1 | TSNonNullExpression$1 | TSTypeAssertion$1 | MemberExpression$1;
2086
- declare type Simplify<T> = { [K in keyof T]: T[K]; } & {};
2087
- declare interface Span$1 {
2088
- start: number;
2089
- end: number;
2090
- range?: [number, number];
2091
- }
2092
- declare interface SpreadElement$1 extends Span$1 {
2093
- type: "SpreadElement";
2094
- argument: Expression$1;
2062
+ interface BooleanLiteral$1 extends Span$1 {
2063
+ type: "Literal";
2064
+ value: boolean;
2065
+ raw: string | null;
2095
2066
  parent?: Node$1;
2096
2067
  }
2097
- declare type Statement$1 = BlockStatement$1 | BreakStatement$1 | ContinueStatement$1 | DebuggerStatement | DoWhileStatement$1 | EmptyStatement$1 | ExpressionStatement$1 | ForInStatement$1 | ForOfStatement$1 | ForStatement$1 | IfStatement$1 | LabeledStatement$1 | ReturnStatement$1 | SwitchStatement$1 | ThrowStatement$1 | TryStatement$1 | WhileStatement$1 | WithStatement$1 | Declaration | ModuleDeclaration;
2098
- declare interface StaticBlock$1 extends Span$1 {
2099
- type: "StaticBlock";
2100
- body: Array<Statement$1>;
2068
+ interface NullLiteral$1 extends Span$1 {
2069
+ type: "Literal";
2070
+ value: null;
2071
+ raw: "null" | null;
2101
2072
  parent?: Node$1;
2102
2073
  }
2103
- declare interface StaticMemberExpression$1 extends Span$1 {
2104
- type: "MemberExpression";
2105
- object: Expression$1;
2106
- property: IdentifierName$1;
2107
- optional: boolean;
2108
- computed: false;
2074
+ interface NumericLiteral$1 extends Span$1 {
2075
+ type: "Literal";
2076
+ value: number;
2077
+ raw: string | null;
2109
2078
  parent?: Node$1;
2110
2079
  }
2111
- declare interface StringLiteral$1 extends Span$1 {
2080
+ interface StringLiteral$1 extends Span$1 {
2112
2081
  type: "Literal";
2113
2082
  value: string;
2114
2083
  raw: string | null;
2115
2084
  parent?: Node$1;
2116
2085
  }
2117
- declare interface Super$1 extends Span$1 {
2118
- type: "Super";
2119
- parent?: Node$1;
2120
- }
2121
- declare interface SwitchCase$1 extends Span$1 {
2122
- type: "SwitchCase";
2123
- test: Expression$1 | null;
2124
- consequent: Array<Statement$1>;
2125
- parent?: Node$1;
2126
- }
2127
- declare interface SwitchStatement$1 extends Span$1 {
2128
- type: "SwitchStatement";
2129
- discriminant: Expression$1;
2130
- cases: Array<SwitchCase$1>;
2086
+ interface BigIntLiteral$1 extends Span$1 {
2087
+ type: "Literal";
2088
+ value: bigint;
2089
+ raw: string | null;
2090
+ bigint: string;
2131
2091
  parent?: Node$1;
2132
2092
  }
2133
- declare interface TaggedTemplateExpression$1 extends Span$1 {
2134
- type: "TaggedTemplateExpression";
2135
- tag: Expression$1;
2136
- typeArguments?: TSTypeParameterInstantiation$1 | null;
2137
- quasi: TemplateLiteral$1;
2093
+ interface RegExpLiteral$1 extends Span$1 {
2094
+ type: "Literal";
2095
+ value: RegExp | null;
2096
+ raw: string | null;
2097
+ regex: {
2098
+ pattern: string;
2099
+ flags: string;
2100
+ };
2138
2101
  parent?: Node$1;
2139
2102
  }
2140
- declare interface TemplateElement$1 extends Span$1 {
2141
- type: "TemplateElement";
2142
- value: TemplateElementValue;
2143
- tail: boolean;
2103
+ interface JSXElement$1 extends Span$1 {
2104
+ type: "JSXElement";
2105
+ openingElement: JSXOpeningElement$1;
2106
+ children: Array<JSXChild>;
2107
+ closingElement: JSXClosingElement | null;
2144
2108
  parent?: Node$1;
2145
2109
  }
2146
- declare interface TemplateElementValue {
2147
- raw: string;
2148
- cooked: string | null;
2149
- }
2150
- declare interface TemplateLiteral$1 extends Span$1 {
2151
- type: "TemplateLiteral";
2152
- quasis: Array<TemplateElement$1>;
2153
- expressions: Array<Expression$1>;
2110
+ interface JSXOpeningElement$1 extends Span$1 {
2111
+ type: "JSXOpeningElement";
2112
+ name: JSXElementName;
2113
+ typeArguments?: TSTypeParameterInstantiation$1 | null;
2114
+ attributes: Array<JSXAttributeItem>;
2115
+ selfClosing: boolean;
2154
2116
  parent?: Node$1;
2155
2117
  }
2156
- declare interface ThisExpression$1 extends Span$1 {
2157
- type: "ThisExpression";
2118
+ interface JSXClosingElement extends Span$1 {
2119
+ type: "JSXClosingElement";
2120
+ name: JSXElementName;
2158
2121
  parent?: Node$1;
2159
2122
  }
2160
- declare interface ThrowStatement$1 extends Span$1 {
2161
- type: "ThrowStatement";
2162
- argument: Expression$1;
2123
+ interface JSXFragment$1 extends Span$1 {
2124
+ type: "JSXFragment";
2125
+ openingFragment: JSXOpeningFragment;
2126
+ children: Array<JSXChild>;
2127
+ closingFragment: JSXClosingFragment;
2163
2128
  parent?: Node$1;
2164
2129
  }
2165
- declare interface TryStatement$1 extends Span$1 {
2166
- type: "TryStatement";
2167
- block: BlockStatement$1;
2168
- handler: CatchClause$1 | null;
2169
- finalizer: BlockStatement$1 | null;
2130
+ interface JSXOpeningFragment extends Span$1 {
2131
+ type: "JSXOpeningFragment";
2132
+ attributes?: [];
2133
+ selfClosing?: false;
2170
2134
  parent?: Node$1;
2171
2135
  }
2172
- declare type TSAccessibility = "private" | "protected" | "public";
2173
- declare interface TSAnyKeyword extends Span$1 {
2174
- type: "TSAnyKeyword";
2136
+ interface JSXClosingFragment extends Span$1 {
2137
+ type: "JSXClosingFragment";
2175
2138
  parent?: Node$1;
2176
2139
  }
2177
- declare interface TSArrayType$1 extends Span$1 {
2178
- type: "TSArrayType";
2179
- elementType: TSType$1;
2140
+ type JSXElementName = JSXIdentifier$1 | JSXNamespacedName$1 | JSXMemberExpression$1;
2141
+ interface JSXNamespacedName$1 extends Span$1 {
2142
+ type: "JSXNamespacedName";
2143
+ namespace: JSXIdentifier$1;
2144
+ name: JSXIdentifier$1;
2180
2145
  parent?: Node$1;
2181
2146
  }
2182
- declare interface TSAsExpression$1 extends Span$1 {
2183
- type: "TSAsExpression";
2184
- expression: Expression$1;
2185
- typeAnnotation: TSType$1;
2147
+ interface JSXMemberExpression$1 extends Span$1 {
2148
+ type: "JSXMemberExpression";
2149
+ object: JSXMemberExpressionObject;
2150
+ property: JSXIdentifier$1;
2186
2151
  parent?: Node$1;
2187
2152
  }
2188
- declare interface TSBigIntKeyword extends Span$1 {
2189
- type: "TSBigIntKeyword";
2153
+ type JSXMemberExpressionObject = JSXIdentifier$1 | JSXMemberExpression$1;
2154
+ interface JSXExpressionContainer$1 extends Span$1 {
2155
+ type: "JSXExpressionContainer";
2156
+ expression: JSXExpression;
2190
2157
  parent?: Node$1;
2191
2158
  }
2192
- declare interface TSBooleanKeyword extends Span$1 {
2193
- type: "TSBooleanKeyword";
2159
+ type JSXExpression = JSXEmptyExpression | Expression$1;
2160
+ interface JSXEmptyExpression extends Span$1 {
2161
+ type: "JSXEmptyExpression";
2194
2162
  parent?: Node$1;
2195
2163
  }
2196
- declare interface TSCallSignatureDeclaration$1 extends Span$1 {
2197
- type: "TSCallSignatureDeclaration";
2198
- typeParameters: TSTypeParameterDeclaration$1 | null;
2199
- params: ParamPattern$1[];
2200
- returnType: TSTypeAnnotation$1 | null;
2164
+ type JSXAttributeItem = JSXAttribute$1 | JSXSpreadAttribute$1;
2165
+ interface JSXAttribute$1 extends Span$1 {
2166
+ type: "JSXAttribute";
2167
+ name: JSXAttributeName;
2168
+ value: JSXAttributeValue | null;
2201
2169
  parent?: Node$1;
2202
2170
  }
2203
- declare interface TSClassImplements extends Span$1 {
2204
- type: "TSClassImplements";
2205
- expression: IdentifierReference$1 | ThisExpression$1 | MemberExpression$1;
2206
- typeArguments: TSTypeParameterInstantiation$1 | null;
2171
+ interface JSXSpreadAttribute$1 extends Span$1 {
2172
+ type: "JSXSpreadAttribute";
2173
+ argument: Expression$1;
2207
2174
  parent?: Node$1;
2208
2175
  }
2209
- declare interface TSConditionalType$1 extends Span$1 {
2210
- type: "TSConditionalType";
2211
- checkType: TSType$1;
2212
- extendsType: TSType$1;
2213
- trueType: TSType$1;
2214
- falseType: TSType$1;
2176
+ type JSXAttributeName = JSXIdentifier$1 | JSXNamespacedName$1;
2177
+ type JSXAttributeValue = StringLiteral$1 | JSXExpressionContainer$1 | JSXElement$1 | JSXFragment$1;
2178
+ interface JSXIdentifier$1 extends Span$1 {
2179
+ type: "JSXIdentifier";
2180
+ name: string;
2215
2181
  parent?: Node$1;
2216
2182
  }
2217
- declare interface TSConstructorType$1 extends Span$1 {
2218
- type: "TSConstructorType";
2219
- abstract: boolean;
2220
- typeParameters: TSTypeParameterDeclaration$1 | null;
2221
- params: ParamPattern$1[];
2222
- returnType: TSTypeAnnotation$1;
2183
+ type JSXChild = JSXText$1 | JSXElement$1 | JSXFragment$1 | JSXExpressionContainer$1 | JSXSpreadChild$1;
2184
+ interface JSXSpreadChild$1 extends Span$1 {
2185
+ type: "JSXSpreadChild";
2186
+ expression: Expression$1;
2223
2187
  parent?: Node$1;
2224
2188
  }
2225
- declare interface TSConstructSignatureDeclaration$1 extends Span$1 {
2226
- type: "TSConstructSignatureDeclaration";
2227
- typeParameters: TSTypeParameterDeclaration$1 | null;
2228
- params: ParamPattern$1[];
2229
- returnType: TSTypeAnnotation$1 | null;
2189
+ interface JSXText$1 extends Span$1 {
2190
+ type: "JSXText";
2191
+ value: string;
2192
+ raw: string | null;
2230
2193
  parent?: Node$1;
2231
2194
  }
2232
- declare interface TSEnumBody extends Span$1 {
2233
- type: "TSEnumBody";
2234
- members: Array<TSEnumMember>;
2195
+ interface TSThisParameter extends Span$1 {
2196
+ type: "Identifier";
2197
+ decorators: [];
2198
+ name: "this";
2199
+ optional: false;
2200
+ typeAnnotation: TSTypeAnnotation$1 | null;
2235
2201
  parent?: Node$1;
2236
2202
  }
2237
- declare interface TSEnumDeclaration$1 extends Span$1 {
2203
+ interface TSEnumDeclaration$1 extends Span$1 {
2238
2204
  type: "TSEnumDeclaration";
2239
2205
  id: BindingIdentifier$1;
2240
2206
  body: TSEnumBody;
@@ -2242,433 +2208,472 @@ declare interface TSEnumDeclaration$1 extends Span$1 {
2242
2208
  declare: boolean;
2243
2209
  parent?: Node$1;
2244
2210
  }
2245
- declare interface TSEnumMember extends Span$1 {
2211
+ interface TSEnumBody extends Span$1 {
2212
+ type: "TSEnumBody";
2213
+ members: Array<TSEnumMember>;
2214
+ parent?: Node$1;
2215
+ }
2216
+ interface TSEnumMember extends Span$1 {
2246
2217
  type: "TSEnumMember";
2247
2218
  id: TSEnumMemberName;
2248
2219
  initializer: Expression$1 | null;
2249
2220
  computed: boolean;
2250
2221
  parent?: Node$1;
2251
2222
  }
2252
- declare type TSEnumMemberName = IdentifierName$1 | StringLiteral$1 | TemplateLiteral$1;
2253
- declare interface TSExportAssignment$1 extends Span$1 {
2254
- type: "TSExportAssignment";
2255
- expression: Expression$1;
2223
+ type TSEnumMemberName = IdentifierName$1 | StringLiteral$1 | TemplateLiteral$1;
2224
+ interface TSTypeAnnotation$1 extends Span$1 {
2225
+ type: "TSTypeAnnotation";
2226
+ typeAnnotation: TSType$1;
2256
2227
  parent?: Node$1;
2257
2228
  }
2258
- declare interface TSExternalModuleReference extends Span$1 {
2259
- type: "TSExternalModuleReference";
2260
- expression: StringLiteral$1;
2229
+ interface TSLiteralType$1 extends Span$1 {
2230
+ type: "TSLiteralType";
2231
+ literal: TSLiteral;
2261
2232
  parent?: Node$1;
2262
2233
  }
2263
- declare interface TSFunctionType$1 extends Span$1 {
2264
- type: "TSFunctionType";
2265
- typeParameters: TSTypeParameterDeclaration$1 | null;
2266
- params: ParamPattern$1[];
2267
- returnType: TSTypeAnnotation$1;
2234
+ type TSLiteral = BooleanLiteral$1 | NumericLiteral$1 | BigIntLiteral$1 | StringLiteral$1 | TemplateLiteral$1 | UnaryExpression$1;
2235
+ type TSType$1 = TSAnyKeyword | TSBigIntKeyword | TSBooleanKeyword | TSIntrinsicKeyword | TSNeverKeyword | TSNullKeyword | TSNumberKeyword | TSObjectKeyword | TSStringKeyword | TSSymbolKeyword | TSUndefinedKeyword | TSUnknownKeyword | TSVoidKeyword | TSArrayType$1 | TSConditionalType$1 | TSConstructorType$1 | TSFunctionType$1 | TSImportType$1 | TSIndexedAccessType$1 | TSInferType$1 | TSIntersectionType$1 | TSLiteralType$1 | TSMappedType$1 | TSNamedTupleMember$1 | TSTemplateLiteralType$1 | TSThisType | TSTupleType$1 | TSTypeLiteral | TSTypeOperator$1 | TSTypePredicate$1 | TSTypeQuery$1 | TSTypeReference$1 | TSUnionType$1 | TSParenthesizedType$1 | JSDocNullableType$1 | JSDocNonNullableType$1 | JSDocUnknownType;
2236
+ interface TSConditionalType$1 extends Span$1 {
2237
+ type: "TSConditionalType";
2238
+ checkType: TSType$1;
2239
+ extendsType: TSType$1;
2240
+ trueType: TSType$1;
2241
+ falseType: TSType$1;
2268
2242
  parent?: Node$1;
2269
2243
  }
2270
- declare interface TSGlobalDeclaration extends Span$1 {
2271
- type: "TSModuleDeclaration";
2272
- id: IdentifierName$1;
2273
- body: TSModuleBlock$1;
2274
- kind: "global";
2275
- declare: boolean;
2276
- global: true;
2244
+ interface TSUnionType$1 extends Span$1 {
2245
+ type: "TSUnionType";
2246
+ types: Array<TSType$1>;
2277
2247
  parent?: Node$1;
2278
2248
  }
2279
- declare interface TSImportEqualsDeclaration$1 extends Span$1 {
2280
- type: "TSImportEqualsDeclaration";
2281
- id: BindingIdentifier$1;
2282
- moduleReference: TSModuleReference;
2283
- importKind: ImportOrExportKind;
2249
+ interface TSIntersectionType$1 extends Span$1 {
2250
+ type: "TSIntersectionType";
2251
+ types: Array<TSType$1>;
2284
2252
  parent?: Node$1;
2285
2253
  }
2286
- declare interface TSImportType$1 extends Span$1 {
2287
- type: "TSImportType";
2288
- source: StringLiteral$1;
2289
- options: ObjectExpression$1 | null;
2290
- qualifier: TSImportTypeQualifier | null;
2291
- typeArguments: TSTypeParameterInstantiation$1 | null;
2254
+ interface TSParenthesizedType$1 extends Span$1 {
2255
+ type: "TSParenthesizedType";
2256
+ typeAnnotation: TSType$1;
2292
2257
  parent?: Node$1;
2293
2258
  }
2294
- declare interface TSImportTypeQualifiedName extends Span$1 {
2295
- type: "TSQualifiedName";
2296
- left: TSImportTypeQualifier;
2297
- right: IdentifierName$1;
2259
+ interface TSTypeOperator$1 extends Span$1 {
2260
+ type: "TSTypeOperator";
2261
+ operator: TSTypeOperatorOperator;
2262
+ typeAnnotation: TSType$1;
2263
+ parent?: Node$1;
2264
+ }
2265
+ type TSTypeOperatorOperator = "keyof" | "unique" | "readonly";
2266
+ interface TSArrayType$1 extends Span$1 {
2267
+ type: "TSArrayType";
2268
+ elementType: TSType$1;
2298
2269
  parent?: Node$1;
2299
2270
  }
2300
- declare type TSImportTypeQualifier = IdentifierName$1 | TSImportTypeQualifiedName;
2301
- declare interface TSIndexedAccessType$1 extends Span$1 {
2271
+ interface TSIndexedAccessType$1 extends Span$1 {
2302
2272
  type: "TSIndexedAccessType";
2303
2273
  objectType: TSType$1;
2304
2274
  indexType: TSType$1;
2305
2275
  parent?: Node$1;
2306
2276
  }
2307
- declare interface TSIndexSignature$1 extends Span$1 {
2308
- type: "TSIndexSignature";
2309
- parameters: Array<TSIndexSignatureName>;
2310
- typeAnnotation: TSTypeAnnotation$1;
2311
- readonly: boolean;
2312
- static: boolean;
2313
- accessibility: null;
2277
+ interface TSTupleType$1 extends Span$1 {
2278
+ type: "TSTupleType";
2279
+ elementTypes: Array<TSTupleElement>;
2314
2280
  parent?: Node$1;
2315
2281
  }
2316
- declare interface TSIndexSignatureName extends Span$1 {
2317
- type: "Identifier";
2318
- decorators: [];
2319
- name: string;
2320
- optional: false;
2321
- typeAnnotation: TSTypeAnnotation$1;
2282
+ interface TSNamedTupleMember$1 extends Span$1 {
2283
+ type: "TSNamedTupleMember";
2284
+ label: IdentifierName$1;
2285
+ elementType: TSTupleElement;
2286
+ optional: boolean;
2322
2287
  parent?: Node$1;
2323
2288
  }
2324
- declare interface TSInferType$1 extends Span$1 {
2325
- type: "TSInferType";
2326
- typeParameter: TSTypeParameter;
2289
+ interface TSOptionalType$1 extends Span$1 {
2290
+ type: "TSOptionalType";
2291
+ typeAnnotation: TSType$1;
2327
2292
  parent?: Node$1;
2328
2293
  }
2329
- declare interface TSInstantiationExpression$1 extends Span$1 {
2330
- type: "TSInstantiationExpression";
2331
- expression: Expression$1;
2332
- typeArguments: TSTypeParameterInstantiation$1;
2294
+ interface TSRestType$1 extends Span$1 {
2295
+ type: "TSRestType";
2296
+ typeAnnotation: TSType$1;
2333
2297
  parent?: Node$1;
2334
2298
  }
2335
- declare interface TSInterfaceBody$1 extends Span$1 {
2336
- type: "TSInterfaceBody";
2337
- body: Array<TSSignature>;
2299
+ type TSTupleElement = TSOptionalType$1 | TSRestType$1 | TSType$1;
2300
+ interface TSAnyKeyword extends Span$1 {
2301
+ type: "TSAnyKeyword";
2338
2302
  parent?: Node$1;
2339
2303
  }
2340
- declare interface TSInterfaceDeclaration$1 extends Span$1 {
2341
- type: "TSInterfaceDeclaration";
2342
- id: BindingIdentifier$1;
2343
- typeParameters: TSTypeParameterDeclaration$1 | null;
2344
- extends: Array<TSInterfaceHeritage>;
2345
- body: TSInterfaceBody$1;
2346
- declare: boolean;
2304
+ interface TSStringKeyword extends Span$1 {
2305
+ type: "TSStringKeyword";
2347
2306
  parent?: Node$1;
2348
2307
  }
2349
- declare interface TSInterfaceHeritage extends Span$1 {
2350
- type: "TSInterfaceHeritage";
2351
- expression: Expression$1;
2352
- typeArguments: TSTypeParameterInstantiation$1 | null;
2308
+ interface TSBooleanKeyword extends Span$1 {
2309
+ type: "TSBooleanKeyword";
2353
2310
  parent?: Node$1;
2354
2311
  }
2355
- declare interface TSIntersectionType$1 extends Span$1 {
2356
- type: "TSIntersectionType";
2357
- types: Array<TSType$1>;
2312
+ interface TSNumberKeyword extends Span$1 {
2313
+ type: "TSNumberKeyword";
2314
+ parent?: Node$1;
2315
+ }
2316
+ interface TSNeverKeyword extends Span$1 {
2317
+ type: "TSNeverKeyword";
2358
2318
  parent?: Node$1;
2359
2319
  }
2360
- declare interface TSIntrinsicKeyword extends Span$1 {
2320
+ interface TSIntrinsicKeyword extends Span$1 {
2361
2321
  type: "TSIntrinsicKeyword";
2362
2322
  parent?: Node$1;
2363
2323
  }
2364
- declare type TSLiteral = BooleanLiteral$1 | NumericLiteral$1 | BigIntLiteral$1 | StringLiteral$1 | TemplateLiteral$1 | UnaryExpression$1;
2365
- declare interface TSLiteralType$1 extends Span$1 {
2366
- type: "TSLiteralType";
2367
- literal: TSLiteral;
2324
+ interface TSUnknownKeyword extends Span$1 {
2325
+ type: "TSUnknownKeyword";
2368
2326
  parent?: Node$1;
2369
2327
  }
2370
- declare interface TSMappedType$1 extends Span$1 {
2371
- type: "TSMappedType";
2372
- key: BindingIdentifier$1;
2373
- constraint: TSType$1;
2374
- nameType: TSType$1 | null;
2375
- typeAnnotation: TSType$1 | null;
2376
- optional: TSMappedTypeModifierOperator | false;
2377
- readonly: TSMappedTypeModifierOperator | null;
2328
+ interface TSNullKeyword extends Span$1 {
2329
+ type: "TSNullKeyword";
2378
2330
  parent?: Node$1;
2379
2331
  }
2380
- declare type TSMappedTypeModifierOperator = true | "+" | "-";
2381
- declare interface TSMethodSignature$1 extends Span$1 {
2382
- type: "TSMethodSignature";
2383
- key: PropertyKey_2;
2384
- computed: boolean;
2385
- optional: boolean;
2386
- kind: TSMethodSignatureKind;
2387
- typeParameters: TSTypeParameterDeclaration$1 | null;
2388
- params: ParamPattern$1[];
2389
- returnType: TSTypeAnnotation$1 | null;
2390
- accessibility: null;
2391
- readonly: false;
2392
- static: false;
2332
+ interface TSUndefinedKeyword extends Span$1 {
2333
+ type: "TSUndefinedKeyword";
2393
2334
  parent?: Node$1;
2394
2335
  }
2395
- declare type TSMethodSignatureKind = "method" | "get" | "set";
2396
- declare interface TSModuleBlock$1 extends Span$1 {
2397
- type: "TSModuleBlock";
2398
- body: Array<Directive | Statement$1>;
2336
+ interface TSVoidKeyword extends Span$1 {
2337
+ type: "TSVoidKeyword";
2399
2338
  parent?: Node$1;
2400
2339
  }
2401
- declare interface TSModuleDeclaration$1 extends Span$1 {
2402
- type: "TSModuleDeclaration";
2403
- id: BindingIdentifier$1 | StringLiteral$1 | TSQualifiedName$1;
2404
- body: TSModuleBlock$1 | null;
2405
- kind: TSModuleDeclarationKind;
2406
- declare: boolean;
2407
- global: false;
2340
+ interface TSSymbolKeyword extends Span$1 {
2341
+ type: "TSSymbolKeyword";
2408
2342
  parent?: Node$1;
2409
2343
  }
2410
- declare type TSModuleDeclarationKind = "module" | "namespace";
2411
- declare type TSModuleReference = TSExternalModuleReference | IdentifierReference$1 | TSQualifiedName$1;
2412
- declare interface TSNamedTupleMember$1 extends Span$1 {
2413
- type: "TSNamedTupleMember";
2414
- label: IdentifierName$1;
2415
- elementType: TSTupleElement;
2416
- optional: boolean;
2344
+ interface TSThisType extends Span$1 {
2345
+ type: "TSThisType";
2417
2346
  parent?: Node$1;
2418
2347
  }
2419
- declare interface TSNamespaceExportDeclaration$1 extends Span$1 {
2420
- type: "TSNamespaceExportDeclaration";
2421
- id: IdentifierName$1;
2348
+ interface TSObjectKeyword extends Span$1 {
2349
+ type: "TSObjectKeyword";
2422
2350
  parent?: Node$1;
2423
2351
  }
2424
- declare interface TSNeverKeyword extends Span$1 {
2425
- type: "TSNeverKeyword";
2352
+ interface TSBigIntKeyword extends Span$1 {
2353
+ type: "TSBigIntKeyword";
2426
2354
  parent?: Node$1;
2427
2355
  }
2428
- declare interface TSNonNullExpression$1 extends Span$1 {
2429
- type: "TSNonNullExpression";
2430
- expression: Expression$1;
2356
+ interface TSTypeReference$1 extends Span$1 {
2357
+ type: "TSTypeReference";
2358
+ typeName: TSTypeName;
2359
+ typeArguments: TSTypeParameterInstantiation$1 | null;
2360
+ parent?: Node$1;
2361
+ }
2362
+ type TSTypeName = IdentifierReference$1 | TSQualifiedName$1 | ThisExpression$1;
2363
+ interface TSQualifiedName$1 extends Span$1 {
2364
+ type: "TSQualifiedName";
2365
+ left: TSTypeName;
2366
+ right: IdentifierName$1;
2431
2367
  parent?: Node$1;
2432
2368
  }
2433
- declare interface TSNullKeyword extends Span$1 {
2434
- type: "TSNullKeyword";
2369
+ interface TSTypeParameterInstantiation$1 extends Span$1 {
2370
+ type: "TSTypeParameterInstantiation";
2371
+ params: Array<TSType$1>;
2435
2372
  parent?: Node$1;
2436
2373
  }
2437
- declare interface TSNumberKeyword extends Span$1 {
2438
- type: "TSNumberKeyword";
2374
+ interface TSTypeParameter extends Span$1 {
2375
+ type: "TSTypeParameter";
2376
+ name: BindingIdentifier$1;
2377
+ constraint: TSType$1 | null;
2378
+ default: TSType$1 | null;
2379
+ in: boolean;
2380
+ out: boolean;
2381
+ const: boolean;
2439
2382
  parent?: Node$1;
2440
2383
  }
2441
- declare interface TSObjectKeyword extends Span$1 {
2442
- type: "TSObjectKeyword";
2384
+ interface TSTypeParameterDeclaration$1 extends Span$1 {
2385
+ type: "TSTypeParameterDeclaration";
2386
+ params: Array<TSTypeParameter>;
2443
2387
  parent?: Node$1;
2444
2388
  }
2445
- declare interface TSOptionalType$1 extends Span$1 {
2446
- type: "TSOptionalType";
2389
+ interface TSTypeAliasDeclaration$1 extends Span$1 {
2390
+ type: "TSTypeAliasDeclaration";
2391
+ id: BindingIdentifier$1;
2392
+ typeParameters: TSTypeParameterDeclaration$1 | null;
2447
2393
  typeAnnotation: TSType$1;
2394
+ declare: boolean;
2448
2395
  parent?: Node$1;
2449
2396
  }
2450
- declare interface TSParameterProperty extends Span$1 {
2451
- type: "TSParameterProperty";
2452
- accessibility: TSAccessibility | null;
2453
- decorators: Array<Decorator$1>;
2454
- override: boolean;
2455
- parameter: FormalParameter;
2456
- readonly: boolean;
2457
- static: boolean;
2397
+ type TSAccessibility = "private" | "protected" | "public";
2398
+ interface TSClassImplements extends Span$1 {
2399
+ type: "TSClassImplements";
2400
+ expression: IdentifierReference$1 | ThisExpression$1 | MemberExpression$1;
2401
+ typeArguments: TSTypeParameterInstantiation$1 | null;
2458
2402
  parent?: Node$1;
2459
2403
  }
2460
- declare interface TSParenthesizedType$1 extends Span$1 {
2461
- type: "TSParenthesizedType";
2462
- typeAnnotation: TSType$1;
2404
+ interface TSInterfaceDeclaration$1 extends Span$1 {
2405
+ type: "TSInterfaceDeclaration";
2406
+ id: BindingIdentifier$1;
2407
+ typeParameters: TSTypeParameterDeclaration$1 | null;
2408
+ extends: Array<TSInterfaceHeritage>;
2409
+ body: TSInterfaceBody$1;
2410
+ declare: boolean;
2411
+ parent?: Node$1;
2412
+ }
2413
+ interface TSInterfaceBody$1 extends Span$1 {
2414
+ type: "TSInterfaceBody";
2415
+ body: Array<TSSignature>;
2463
2416
  parent?: Node$1;
2464
2417
  }
2465
- declare interface TSPropertySignature$1 extends Span$1 {
2418
+ interface TSPropertySignature$1 extends Span$1 {
2466
2419
  type: "TSPropertySignature";
2467
2420
  computed: boolean;
2468
2421
  optional: boolean;
2469
2422
  readonly: boolean;
2470
- key: PropertyKey_2;
2423
+ key: PropertyKey$1;
2471
2424
  typeAnnotation: TSTypeAnnotation$1 | null;
2472
2425
  accessibility: null;
2473
2426
  static: false;
2474
2427
  parent?: Node$1;
2475
2428
  }
2476
- declare interface TSQualifiedName$1 extends Span$1 {
2477
- type: "TSQualifiedName";
2478
- left: TSTypeName;
2479
- right: IdentifierName$1;
2480
- parent?: Node$1;
2481
- }
2482
- declare interface TSRestType$1 extends Span$1 {
2483
- type: "TSRestType";
2484
- typeAnnotation: TSType$1;
2485
- parent?: Node$1;
2486
- }
2487
- declare interface TSSatisfiesExpression$1 extends Span$1 {
2488
- type: "TSSatisfiesExpression";
2489
- expression: Expression$1;
2490
- typeAnnotation: TSType$1;
2429
+ type TSSignature = TSIndexSignature$1 | TSPropertySignature$1 | TSCallSignatureDeclaration$1 | TSConstructSignatureDeclaration$1 | TSMethodSignature$1;
2430
+ interface TSIndexSignature$1 extends Span$1 {
2431
+ type: "TSIndexSignature";
2432
+ parameters: Array<TSIndexSignatureName>;
2433
+ typeAnnotation: TSTypeAnnotation$1;
2434
+ readonly: boolean;
2435
+ static: boolean;
2436
+ accessibility: null;
2491
2437
  parent?: Node$1;
2492
2438
  }
2493
- declare type TSSignature = TSIndexSignature$1 | TSPropertySignature$1 | TSCallSignatureDeclaration$1 | TSConstructSignatureDeclaration$1 | TSMethodSignature$1;
2494
- declare interface TSStringKeyword extends Span$1 {
2495
- type: "TSStringKeyword";
2439
+ interface TSCallSignatureDeclaration$1 extends Span$1 {
2440
+ type: "TSCallSignatureDeclaration";
2441
+ typeParameters: TSTypeParameterDeclaration$1 | null;
2442
+ params: ParamPattern$1[];
2443
+ returnType: TSTypeAnnotation$1 | null;
2496
2444
  parent?: Node$1;
2497
2445
  }
2498
- declare interface TSSymbolKeyword extends Span$1 {
2499
- type: "TSSymbolKeyword";
2446
+ type TSMethodSignatureKind = "method" | "get" | "set";
2447
+ interface TSMethodSignature$1 extends Span$1 {
2448
+ type: "TSMethodSignature";
2449
+ key: PropertyKey$1;
2450
+ computed: boolean;
2451
+ optional: boolean;
2452
+ kind: TSMethodSignatureKind;
2453
+ typeParameters: TSTypeParameterDeclaration$1 | null;
2454
+ params: ParamPattern$1[];
2455
+ returnType: TSTypeAnnotation$1 | null;
2456
+ accessibility: null;
2457
+ readonly: false;
2458
+ static: false;
2500
2459
  parent?: Node$1;
2501
2460
  }
2502
- declare interface TSTemplateLiteralType$1 extends Span$1 {
2503
- type: "TSTemplateLiteralType";
2504
- quasis: Array<TemplateElement$1>;
2505
- types: Array<TSType$1>;
2461
+ interface TSConstructSignatureDeclaration$1 extends Span$1 {
2462
+ type: "TSConstructSignatureDeclaration";
2463
+ typeParameters: TSTypeParameterDeclaration$1 | null;
2464
+ params: ParamPattern$1[];
2465
+ returnType: TSTypeAnnotation$1 | null;
2506
2466
  parent?: Node$1;
2507
2467
  }
2508
- declare interface TSThisParameter extends Span$1 {
2468
+ interface TSIndexSignatureName extends Span$1 {
2509
2469
  type: "Identifier";
2510
2470
  decorators: [];
2511
- name: "this";
2471
+ name: string;
2512
2472
  optional: false;
2513
- typeAnnotation: TSTypeAnnotation$1 | null;
2473
+ typeAnnotation: TSTypeAnnotation$1;
2514
2474
  parent?: Node$1;
2515
2475
  }
2516
- declare interface TSThisType extends Span$1 {
2517
- type: "TSThisType";
2476
+ interface TSInterfaceHeritage extends Span$1 {
2477
+ type: "TSInterfaceHeritage";
2478
+ expression: Expression$1;
2479
+ typeArguments: TSTypeParameterInstantiation$1 | null;
2518
2480
  parent?: Node$1;
2519
2481
  }
2520
- declare type TSTupleElement = TSOptionalType$1 | TSRestType$1 | TSType$1;
2521
- declare interface TSTupleType$1 extends Span$1 {
2522
- type: "TSTupleType";
2523
- elementTypes: Array<TSTupleElement>;
2482
+ interface TSTypePredicate$1 extends Span$1 {
2483
+ type: "TSTypePredicate";
2484
+ parameterName: TSTypePredicateName;
2485
+ asserts: boolean;
2486
+ typeAnnotation: TSTypeAnnotation$1 | null;
2524
2487
  parent?: Node$1;
2525
2488
  }
2526
- declare type TSType$1 = TSAnyKeyword | TSBigIntKeyword | TSBooleanKeyword | TSIntrinsicKeyword | TSNeverKeyword | TSNullKeyword | TSNumberKeyword | TSObjectKeyword | TSStringKeyword | TSSymbolKeyword | TSUndefinedKeyword | TSUnknownKeyword | TSVoidKeyword | TSArrayType$1 | TSConditionalType$1 | TSConstructorType$1 | TSFunctionType$1 | TSImportType$1 | TSIndexedAccessType$1 | TSInferType$1 | TSIntersectionType$1 | TSLiteralType$1 | TSMappedType$1 | TSNamedTupleMember$1 | TSTemplateLiteralType$1 | TSThisType | TSTupleType$1 | TSTypeLiteral | TSTypeOperator$1 | TSTypePredicate$1 | TSTypeQuery$1 | TSTypeReference$1 | TSUnionType$1 | TSParenthesizedType$1 | JSDocNullableType$1 | JSDocNonNullableType$1 | JSDocUnknownType;
2527
- declare interface TSTypeAliasDeclaration$1 extends Span$1 {
2528
- type: "TSTypeAliasDeclaration";
2529
- id: BindingIdentifier$1;
2530
- typeParameters: TSTypeParameterDeclaration$1 | null;
2531
- typeAnnotation: TSType$1;
2489
+ type TSTypePredicateName = IdentifierName$1 | TSThisType;
2490
+ type TSModuleDeclarationKind = "module" | "namespace";
2491
+ interface TSModuleDeclaration$1 extends Span$1 {
2492
+ type: "TSModuleDeclaration";
2493
+ id: BindingIdentifier$1 | StringLiteral$1 | TSQualifiedName$1;
2494
+ body: TSModuleBlock$1 | null;
2495
+ kind: TSModuleDeclarationKind;
2532
2496
  declare: boolean;
2497
+ global: false;
2533
2498
  parent?: Node$1;
2534
2499
  }
2535
- declare interface TSTypeAnnotation$1 extends Span$1 {
2536
- type: "TSTypeAnnotation";
2537
- typeAnnotation: TSType$1;
2500
+ interface TSGlobalDeclaration extends Span$1 {
2501
+ type: "TSModuleDeclaration";
2502
+ id: IdentifierName$1;
2503
+ body: TSModuleBlock$1;
2504
+ kind: "global";
2505
+ declare: boolean;
2506
+ global: true;
2538
2507
  parent?: Node$1;
2539
2508
  }
2540
- declare interface TSTypeAssertion$1 extends Span$1 {
2541
- type: "TSTypeAssertion";
2542
- typeAnnotation: TSType$1;
2543
- expression: Expression$1;
2509
+ interface TSModuleBlock$1 extends Span$1 {
2510
+ type: "TSModuleBlock";
2511
+ body: Array<Directive | Statement$1>;
2544
2512
  parent?: Node$1;
2545
2513
  }
2546
- declare interface TSTypeLiteral extends Span$1 {
2514
+ interface TSTypeLiteral extends Span$1 {
2547
2515
  type: "TSTypeLiteral";
2548
2516
  members: Array<TSSignature>;
2549
2517
  parent?: Node$1;
2550
2518
  }
2551
- declare type TSTypeName = IdentifierReference$1 | TSQualifiedName$1 | ThisExpression$1;
2552
- declare interface TSTypeOperator$1 extends Span$1 {
2553
- type: "TSTypeOperator";
2554
- operator: TSTypeOperatorOperator;
2555
- typeAnnotation: TSType$1;
2519
+ interface TSInferType$1 extends Span$1 {
2520
+ type: "TSInferType";
2521
+ typeParameter: TSTypeParameter;
2556
2522
  parent?: Node$1;
2557
2523
  }
2558
- declare type TSTypeOperatorOperator = "keyof" | "unique" | "readonly";
2559
- declare interface TSTypeParameter extends Span$1 {
2560
- type: "TSTypeParameter";
2561
- name: BindingIdentifier$1;
2562
- constraint: TSType$1 | null;
2563
- default: TSType$1 | null;
2564
- in: boolean;
2565
- out: boolean;
2566
- const: boolean;
2524
+ interface TSTypeQuery$1 extends Span$1 {
2525
+ type: "TSTypeQuery";
2526
+ exprName: TSTypeQueryExprName;
2527
+ typeArguments: TSTypeParameterInstantiation$1 | null;
2567
2528
  parent?: Node$1;
2568
2529
  }
2569
- declare interface TSTypeParameterDeclaration$1 extends Span$1 {
2570
- type: "TSTypeParameterDeclaration";
2571
- params: Array<TSTypeParameter>;
2530
+ type TSTypeQueryExprName = TSImportType$1 | TSTypeName;
2531
+ interface TSImportType$1 extends Span$1 {
2532
+ type: "TSImportType";
2533
+ source: StringLiteral$1;
2534
+ options: ObjectExpression$1 | null;
2535
+ qualifier: TSImportTypeQualifier | null;
2536
+ typeArguments: TSTypeParameterInstantiation$1 | null;
2572
2537
  parent?: Node$1;
2573
2538
  }
2574
- declare interface TSTypeParameterInstantiation$1 extends Span$1 {
2575
- type: "TSTypeParameterInstantiation";
2576
- params: Array<TSType$1>;
2539
+ type TSImportTypeQualifier = IdentifierName$1 | TSImportTypeQualifiedName;
2540
+ interface TSImportTypeQualifiedName extends Span$1 {
2541
+ type: "TSQualifiedName";
2542
+ left: TSImportTypeQualifier;
2543
+ right: IdentifierName$1;
2577
2544
  parent?: Node$1;
2578
2545
  }
2579
- declare interface TSTypePredicate$1 extends Span$1 {
2580
- type: "TSTypePredicate";
2581
- parameterName: TSTypePredicateName;
2582
- asserts: boolean;
2583
- typeAnnotation: TSTypeAnnotation$1 | null;
2546
+ interface TSFunctionType$1 extends Span$1 {
2547
+ type: "TSFunctionType";
2548
+ typeParameters: TSTypeParameterDeclaration$1 | null;
2549
+ params: ParamPattern$1[];
2550
+ returnType: TSTypeAnnotation$1;
2584
2551
  parent?: Node$1;
2585
2552
  }
2586
- declare type TSTypePredicateName = IdentifierName$1 | TSThisType;
2587
- declare interface TSTypeQuery$1 extends Span$1 {
2588
- type: "TSTypeQuery";
2589
- exprName: TSTypeQueryExprName;
2590
- typeArguments: TSTypeParameterInstantiation$1 | null;
2553
+ interface TSConstructorType$1 extends Span$1 {
2554
+ type: "TSConstructorType";
2555
+ abstract: boolean;
2556
+ typeParameters: TSTypeParameterDeclaration$1 | null;
2557
+ params: ParamPattern$1[];
2558
+ returnType: TSTypeAnnotation$1;
2591
2559
  parent?: Node$1;
2592
2560
  }
2593
- declare type TSTypeQueryExprName = TSImportType$1 | TSTypeName;
2594
- declare interface TSTypeReference$1 extends Span$1 {
2595
- type: "TSTypeReference";
2596
- typeName: TSTypeName;
2597
- typeArguments: TSTypeParameterInstantiation$1 | null;
2561
+ interface TSMappedType$1 extends Span$1 {
2562
+ type: "TSMappedType";
2563
+ key: BindingIdentifier$1;
2564
+ constraint: TSType$1;
2565
+ nameType: TSType$1 | null;
2566
+ typeAnnotation: TSType$1 | null;
2567
+ optional: TSMappedTypeModifierOperator | false;
2568
+ readonly: TSMappedTypeModifierOperator | null;
2598
2569
  parent?: Node$1;
2599
2570
  }
2600
- declare interface TSUndefinedKeyword extends Span$1 {
2601
- type: "TSUndefinedKeyword";
2571
+ type TSMappedTypeModifierOperator = true | "+" | "-";
2572
+ interface TSTemplateLiteralType$1 extends Span$1 {
2573
+ type: "TSTemplateLiteralType";
2574
+ quasis: Array<TemplateElement$1>;
2575
+ types: Array<TSType$1>;
2602
2576
  parent?: Node$1;
2603
2577
  }
2604
- declare interface TSUnionType$1 extends Span$1 {
2605
- type: "TSUnionType";
2606
- types: Array<TSType$1>;
2578
+ interface TSAsExpression$1 extends Span$1 {
2579
+ type: "TSAsExpression";
2580
+ expression: Expression$1;
2581
+ typeAnnotation: TSType$1;
2607
2582
  parent?: Node$1;
2608
2583
  }
2609
- declare interface TSUnknownKeyword extends Span$1 {
2610
- type: "TSUnknownKeyword";
2584
+ interface TSSatisfiesExpression$1 extends Span$1 {
2585
+ type: "TSSatisfiesExpression";
2586
+ expression: Expression$1;
2587
+ typeAnnotation: TSType$1;
2611
2588
  parent?: Node$1;
2612
2589
  }
2613
- declare interface TSVoidKeyword extends Span$1 {
2614
- type: "TSVoidKeyword";
2590
+ interface TSTypeAssertion$1 extends Span$1 {
2591
+ type: "TSTypeAssertion";
2592
+ typeAnnotation: TSType$1;
2593
+ expression: Expression$1;
2615
2594
  parent?: Node$1;
2616
2595
  }
2617
- declare interface UnaryExpression$1 extends Span$1 {
2618
- type: "UnaryExpression";
2619
- operator: UnaryOperator;
2620
- argument: Expression$1;
2621
- prefix: true;
2596
+ interface TSImportEqualsDeclaration$1 extends Span$1 {
2597
+ type: "TSImportEqualsDeclaration";
2598
+ id: BindingIdentifier$1;
2599
+ moduleReference: TSModuleReference;
2600
+ importKind: ImportOrExportKind;
2622
2601
  parent?: Node$1;
2623
2602
  }
2624
- declare type UnaryOperator = "+" | "-" | "!" | "~" | "typeof" | "void" | "delete";
2625
- declare interface UpdateExpression$1 extends Span$1 {
2626
- type: "UpdateExpression";
2627
- operator: UpdateOperator;
2628
- prefix: boolean;
2629
- argument: SimpleAssignmentTarget$1;
2603
+ type TSModuleReference = TSExternalModuleReference | IdentifierReference$1 | TSQualifiedName$1;
2604
+ interface TSExternalModuleReference extends Span$1 {
2605
+ type: "TSExternalModuleReference";
2606
+ expression: StringLiteral$1;
2630
2607
  parent?: Node$1;
2631
2608
  }
2632
- declare type UpdateOperator = "++" | "--";
2633
- declare interface V8IntrinsicExpression extends Span$1 {
2634
- type: "V8IntrinsicExpression";
2635
- name: IdentifierName$1;
2636
- arguments: Array<Argument$1>;
2609
+ interface TSNonNullExpression$1 extends Span$1 {
2610
+ type: "TSNonNullExpression";
2611
+ expression: Expression$1;
2637
2612
  parent?: Node$1;
2638
2613
  }
2639
- declare interface VariableDeclaration$1 extends Span$1 {
2640
- type: "VariableDeclaration";
2641
- kind: VariableDeclarationKind;
2642
- declarations: Array<VariableDeclarator$1>;
2643
- declare?: boolean;
2614
+ interface Decorator$1 extends Span$1 {
2615
+ type: "Decorator";
2616
+ expression: Expression$1;
2644
2617
  parent?: Node$1;
2645
2618
  }
2646
- declare type VariableDeclarationKind = "var" | "let" | "const" | "using" | "await using";
2647
- declare interface VariableDeclarator$1 extends Span$1 {
2648
- type: "VariableDeclarator";
2649
- id: BindingPattern$1;
2650
- init: Expression$1 | null;
2651
- definite?: boolean;
2619
+ interface TSExportAssignment$1 extends Span$1 {
2620
+ type: "TSExportAssignment";
2621
+ expression: Expression$1;
2652
2622
  parent?: Node$1;
2653
2623
  }
2654
- declare interface WhileStatement$1 extends Span$1 {
2655
- type: "WhileStatement";
2656
- test: Expression$1;
2657
- body: Statement$1;
2624
+ interface TSNamespaceExportDeclaration$1 extends Span$1 {
2625
+ type: "TSNamespaceExportDeclaration";
2626
+ id: IdentifierName$1;
2658
2627
  parent?: Node$1;
2659
2628
  }
2660
- declare interface WithStatement$1 extends Span$1 {
2661
- type: "WithStatement";
2662
- object: Expression$1;
2663
- body: Statement$1;
2629
+ interface TSInstantiationExpression$1 extends Span$1 {
2630
+ type: "TSInstantiationExpression";
2631
+ expression: Expression$1;
2632
+ typeArguments: TSTypeParameterInstantiation$1;
2664
2633
  parent?: Node$1;
2665
2634
  }
2666
- declare interface YieldExpression$1 extends Span$1 {
2667
- type: "YieldExpression";
2668
- delegate: boolean;
2669
- argument: Expression$1 | null;
2635
+ type ImportOrExportKind = "value" | "type";
2636
+ interface JSDocNullableType$1 extends Span$1 {
2637
+ type: "TSJSDocNullableType";
2638
+ typeAnnotation: TSType$1;
2639
+ postfix: boolean;
2640
+ parent?: Node$1;
2641
+ }
2642
+ interface JSDocNonNullableType$1 extends Span$1 {
2643
+ type: "TSJSDocNonNullableType";
2644
+ typeAnnotation: TSType$1;
2645
+ postfix: boolean;
2646
+ parent?: Node$1;
2647
+ }
2648
+ interface JSDocUnknownType extends Span$1 {
2649
+ type: "TSJSDocUnknownType";
2670
2650
  parent?: Node$1;
2671
2651
  }
2652
+ type ModuleKind = "script" | "module" | "commonjs";
2653
+ interface Span$1 {
2654
+ start: number;
2655
+ end: number;
2656
+ range?: [number, number];
2657
+ }
2658
+ type AssignmentOperator = "=" | "+=" | "-=" | "*=" | "/=" | "%=" | "**=" | "<<=" | ">>=" | ">>>=" | "|=" | "^=" | "&=" | "||=" | "&&=" | "??=";
2659
+ type BinaryOperator = "==" | "!=" | "===" | "!==" | "<" | "<=" | ">" | ">=" | "+" | "-" | "*" | "/" | "%" | "**" | "<<" | ">>" | ">>>" | "|" | "^" | "&" | "in" | "instanceof";
2660
+ type LogicalOperator = "||" | "&&" | "??";
2661
+ type UnaryOperator = "+" | "-" | "!" | "~" | "typeof" | "void" | "delete";
2662
+ type UpdateOperator = "++" | "--";
2663
+ type Node$1 = Program$1 | IdentifierName$1 | IdentifierReference$1 | BindingIdentifier$1 | LabelIdentifier$1 | ThisExpression$1 | ArrayExpression$1 | ObjectExpression$1 | ObjectProperty$1 | TemplateLiteral$1 | TaggedTemplateExpression$1 | TemplateElement$1 | ComputedMemberExpression | StaticMemberExpression$1 | PrivateFieldExpression | CallExpression$1 | NewExpression$1 | MetaProperty$1 | SpreadElement$1 | UpdateExpression$1 | UnaryExpression$1 | BinaryExpression$1 | PrivateInExpression$1 | LogicalExpression$1 | ConditionalExpression$1 | AssignmentExpression$1 | ArrayAssignmentTarget | ObjectAssignmentTarget | AssignmentTargetRest | AssignmentTargetWithDefault | AssignmentTargetPropertyIdentifier | AssignmentTargetPropertyProperty | SequenceExpression$1 | Super$1 | AwaitExpression | ChainExpression$1 | ParenthesizedExpression | Directive | Hashbang | BlockStatement$1 | VariableDeclaration$1 | VariableDeclarator$1 | EmptyStatement$1 | ExpressionStatement$1 | IfStatement$1 | DoWhileStatement$1 | WhileStatement$1 | ForStatement$1 | ForInStatement$1 | ForOfStatement$1 | ContinueStatement$1 | BreakStatement$1 | ReturnStatement$1 | WithStatement$1 | SwitchStatement$1 | SwitchCase$1 | LabeledStatement$1 | ThrowStatement$1 | TryStatement$1 | CatchClause$1 | DebuggerStatement | AssignmentPattern$1 | ObjectPattern | BindingProperty$1 | ArrayPattern$1 | BindingRestElement$1 | Function$1 | FunctionBody | ArrowFunctionExpression$1 | YieldExpression$1 | Class$1 | ClassBody$1 | MethodDefinition$1 | PropertyDefinition$1 | PrivateIdentifier$1 | StaticBlock$1 | AccessorProperty$1 | ImportExpression$1 | ImportDeclaration$1 | ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier | ImportAttribute$1 | ExportNamedDeclaration$1 | ExportDefaultDeclaration$1 | ExportAllDeclaration$1 | ExportSpecifier | V8IntrinsicExpression | BooleanLiteral$1 | NullLiteral$1 | NumericLiteral$1 | StringLiteral$1 | BigIntLiteral$1 | RegExpLiteral$1 | JSXElement$1 | JSXOpeningElement$1 | JSXClosingElement | JSXFragment$1 | JSXOpeningFragment | JSXClosingFragment | JSXNamespacedName$1 | JSXMemberExpression$1 | JSXExpressionContainer$1 | JSXEmptyExpression | JSXAttribute$1 | JSXSpreadAttribute$1 | JSXIdentifier$1 | JSXSpreadChild$1 | JSXText$1 | TSThisParameter | TSEnumDeclaration$1 | TSEnumBody | TSEnumMember | TSTypeAnnotation$1 | TSLiteralType$1 | TSConditionalType$1 | TSUnionType$1 | TSIntersectionType$1 | TSParenthesizedType$1 | TSTypeOperator$1 | TSArrayType$1 | TSIndexedAccessType$1 | TSTupleType$1 | TSNamedTupleMember$1 | TSOptionalType$1 | TSRestType$1 | TSAnyKeyword | TSStringKeyword | TSBooleanKeyword | TSNumberKeyword | TSNeverKeyword | TSIntrinsicKeyword | TSUnknownKeyword | TSNullKeyword | TSUndefinedKeyword | TSVoidKeyword | TSSymbolKeyword | TSThisType | TSObjectKeyword | TSBigIntKeyword | TSTypeReference$1 | TSQualifiedName$1 | TSTypeParameterInstantiation$1 | TSTypeParameter | TSTypeParameterDeclaration$1 | TSTypeAliasDeclaration$1 | TSClassImplements | TSInterfaceDeclaration$1 | TSInterfaceBody$1 | TSPropertySignature$1 | TSIndexSignature$1 | TSCallSignatureDeclaration$1 | TSMethodSignature$1 | TSConstructSignatureDeclaration$1 | TSIndexSignatureName | TSInterfaceHeritage | TSTypePredicate$1 | TSModuleDeclaration$1 | TSGlobalDeclaration | TSModuleBlock$1 | TSTypeLiteral | TSInferType$1 | TSTypeQuery$1 | TSImportType$1 | TSImportTypeQualifiedName | TSFunctionType$1 | TSConstructorType$1 | TSMappedType$1 | TSTemplateLiteralType$1 | TSAsExpression$1 | TSSatisfiesExpression$1 | TSTypeAssertion$1 | TSImportEqualsDeclaration$1 | TSExternalModuleReference | TSNonNullExpression$1 | Decorator$1 | TSExportAssignment$1 | TSNamespaceExportDeclaration$1 | TSInstantiationExpression$1 | JSDocNullableType$1 | JSDocNonNullableType$1 | JSDocUnknownType | ParamPattern$1;
2664
+ //#endregion
2665
+ //#region src/node.d.ts
2666
+ type Simplify<T> = { [K in keyof T]: T[K]; } & {};
2667
+ type Built<T> = T extends null | undefined ? T : T extends readonly unknown[] ? (number extends T['length'] ? Array<Built<T[number]>> : T) : T extends Span$1 ? { [K in keyof T as K extends keyof Span$1 ? never : K]: Child<T[K]>; } & Partial<Pick<T, keyof Span$1>> : T;
2668
+ type Child<T> = T extends null | undefined ? T : T extends readonly unknown[] ? (number extends T['length'] ? Array<Child<T[number]>> : T) : T extends Span$1 ? Built<T> | T : T;
2669
+ type Program = Simplify<Built<Program$1>>;
2670
+ type Node = Simplify<Built<Node$1>> | Node$1;
2671
+ //#endregion
2672
+ //#region src/ignorer.d.ts
2673
+ interface Ignorer {
2674
+ readonly name: string;
2675
+ shouldIgnore(node: Node, ancestors: readonly Node[]): string | undefined;
2676
+ }
2672
2677
  //#endregion
2673
2678
  //#region src/Location.schema.d.ts
2674
2679
  /**
@@ -2974,7 +2979,7 @@ interface ParserContext {
2974
2979
  parse: (code: string, fileName: string, scriptFormat: ScriptFormat) => Effect$1.Effect<ScriptAst, ParseFailed>;
2975
2980
  }
2976
2981
  //#endregion
2977
- //#region src/Printer.handle.d.ts
2982
+ //#region src/Printer.d.ts
2978
2983
  type Printer<T extends Ast = Ast> = (file: T, context: PrinterContext) => string;
2979
2984
  interface PrinterContext {
2980
2985
  print: Printer<Ast>;
@@ -2984,12 +2989,12 @@ interface PrinterContext {
2984
2989
  interface Mutable {
2985
2990
  mutatorName: string;
2986
2991
  ignoreReason?: string | undefined;
2987
- replacement: Node_2;
2992
+ replacement: Node;
2988
2993
  }
2989
2994
  interface Mutant extends Mutable {
2990
2995
  readonly id: string;
2991
2996
  readonly fileName: string;
2992
- readonly original: Node_2;
2997
+ readonly original: Node;
2993
2998
  readonly location: Location;
2994
2999
  readonly replacementCode: string;
2995
3000
  }
@@ -3050,7 +3055,7 @@ interface FormatRegistry {
3050
3055
  readonly entryForExtension: (extension: string) => Option$1.Option<FormatEntry>;
3051
3056
  }
3052
3057
  //#endregion
3053
- //#region src/Format.handle.d.ts
3058
+ //#region src/Format.d.ts
3054
3059
  declare const extensionOf: (fileName: string) => string;
3055
3060
  declare const registerEntries: {
3056
3061
  (registry: FormatRegistry, additions: readonly FormatEntry[]): FormatRegistry;
@@ -3058,7 +3063,7 @@ declare const registerEntries: {
3058
3063
  };
3059
3064
  declare const coreFormatRegistry: FormatRegistry;
3060
3065
  //#endregion
3061
- //#region src/FrameworkEntry.handle.d.ts
3066
+ //#region src/FrameworkEntry.d.ts
3062
3067
  declare const frameworkEntryOf: {
3063
3068
  (moduleName: string, framework: Framework): EmbeddedFormatEntry;
3064
3069
  (framework: Framework): (moduleName: string) => EmbeddedFormatEntry;
@@ -3557,6 +3562,13 @@ declare const UntestedStatus: S.Union<readonly [S.Literal<"Ignored">, S.Literal<
3557
3562
  declare const NonNegativeInt: S.Int;
3558
3563
  declare const NonNegativeFinite: S.Finite;
3559
3564
  declare const Percentage: S.Finite;
3565
+ declare const MutationScore: S.TaggedUnion<{
3566
+ readonly Scored: S.TaggedStruct<"Scored", {
3567
+ readonly percentage: S.Finite;
3568
+ }>;
3569
+ readonly Unscored: S.TaggedStruct<"Unscored", {}>;
3570
+ }>;
3571
+ type MutationScore = typeof MutationScore.Type;
3560
3572
  declare const Metrics_base: S.Class<Metrics, S.Struct<{
3561
3573
  readonly pending: S.Int;
3562
3574
  readonly killed: S.Int;
@@ -3574,8 +3586,8 @@ declare class Metrics extends Metrics_base {
3574
3586
  get totalValid(): number;
3575
3587
  get totalInvalid(): number;
3576
3588
  get totalMutants(): number;
3577
- get mutationScore(): number;
3578
- get mutationScoreBasedOnCoveredCode(): number;
3589
+ get mutationScore(): MutationScore;
3590
+ get mutationScoreBasedOnCoveredCode(): MutationScore;
3579
3591
  static fromMutants(mutants: readonly {
3580
3592
  readonly status: string;
3581
3593
  }[]): Metrics;
@@ -4055,7 +4067,7 @@ declare namespace mod_d_exports$3 {
4055
4067
  export { BoundaryError, BoundaryErrorSchema, BoundaryPayloadRejected, BoundaryUnrecognizedSignal, CheckerCheckResult, CheckerGroupResult, CheckerRequest, CheckerRpcs, ExitClass, ExitCodeFromClass, ReporterAck, ReporterDrained, ReporterEventBatch, ReporterInitOptions, ReporterRpcs, TestRunnerDryRunRequest, TestRunnerMutantRunRequest, TestRunnerRpcs, WorkerEntryUrl, WorkerPluginKind, WorkerPluginSpawn, WorkerPluginSpawnSchema };
4056
4068
  }
4057
4069
  declare namespace mod_d_exports$4 {
4058
- export { BrandingInformation, BrandingInformationSchema, Dependencies, DependenciesSchema, DetectedStatus, FileResult, FileResultDictionary, FileResultDictionarySchema, FileResultSchema, FrameworkInformation, FrameworkInformationSchema, InvalidStatus, Metrics, MetricsResult, MetricsResultEncoded, MetricsResultSchema, MetricsSchema, MutantResult, MutantResultSchema, MutationTestResult, MutationTestResultSchema, NonNegativeFinite, NonNegativeInt, Percentage, TestDefinition, TestDefinitionSchema, TestFile, TestFileDefinitionDictionary, TestFileDefinitionDictionarySchema, TestFileSchema, Thresholds, ThresholdsSchema, UndetectedStatus, UntestedStatus };
4070
+ export { BrandingInformation, BrandingInformationSchema, Dependencies, DependenciesSchema, DetectedStatus, FileResult, FileResultDictionary, FileResultDictionarySchema, FileResultSchema, FrameworkInformation, FrameworkInformationSchema, InvalidStatus, Metrics, MetricsResult, MetricsResultEncoded, MetricsResultSchema, MetricsSchema, MutantResult, MutantResultSchema, MutationScore, MutationTestResult, MutationTestResultSchema, NonNegativeFinite, NonNegativeInt, Percentage, TestDefinition, TestDefinitionSchema, TestFile, TestFileDefinitionDictionary, TestFileDefinitionDictionarySchema, TestFileSchema, Thresholds, ThresholdsSchema, UndetectedStatus, UntestedStatus };
4059
4071
  }
4060
4072
  declare namespace mod_d_exports$5 {
4061
4073
  export { DryRunCompleted, MutantTested, MutationTestReportReady, MutationTestingPlanReady, ReporterEvent, ReporterEventKind, ReporterEventSchema, ReporterEventUnion, ReporterFactory, ReporterFailed, ReporterInit, ReporterPlanDescriptor, ReporterPlanDescriptorSchema, ReporterPlanKind, RunTiming, RunTimingSchema };
@@ -4084,4 +4096,4 @@ declare namespace mod_d_exports$6 {
4084
4096
  export { BaseTestResult, CompleteDryRunResult, CoverageAnalysis, CoverageAnalysisSchema, DryRunOptions, DryRunOptionsSchema, DryRunResult, DryRunResultSchema, DryRunStatus, ErrorDryRunResult, ErrorMutantRunResult, FailedTestResult, HitLimitReason, HitLimitReasonPrefix, HitLimitReasonText, KilledMutantRunResult, MutantCoverageSchema, MutantRunResult, MutantRunResultSchema, MutantRunStatus, SkippedTestResult, SuccessTestResult, SurvivedMutantRunResult, TestResult, TestResultSchema, TestRunner, TestRunnerCapabilities, TestRunnerCapabilitiesSchema, TestRunnerFailed, TestRunnerService, TestStatus, TimeoutDryRunResult, TimeoutMutantRunResult, WallClockTimeoutReason };
4085
4097
  }
4086
4098
  //#endregion
4087
- export { mod_d_exports$5 as a, mod_d_exports$2$1 as c, Ignorer$1 as d, Node_2$1 as f, mod_d_exports$4 as i, mod_d_exports$3$1 as l, mod_d_exports$2 as n, mod_d_exports$6 as o, mod_d_exports$3 as r, mod_d_exports$1 as s, mod_d_exports as t, Framework as u };
4099
+ export { mod_d_exports$5 as a, mod_d_exports$2$1 as c, Ignorer$1 as d, Node_2 as f, mod_d_exports$4 as i, mod_d_exports$3$1 as l, mod_d_exports$2 as n, mod_d_exports$6 as o, mod_d_exports$3 as r, mod_d_exports$1 as s, mod_d_exports as t, Framework as u };