hermes-transform 0.5.0 → 0.6.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.
Files changed (74) hide show
  1. package/LICENSE +1 -1
  2. package/dist/detachedNode.js +25 -49
  3. package/dist/detachedNode.js.flow +3 -3
  4. package/dist/generated/TransformCloneSignatures.js.flow +1761 -9
  5. package/dist/generated/TransformReplaceSignatures.js.flow +936 -774
  6. package/dist/generated/node-types.js +1117 -1132
  7. package/dist/generated/node-types.js.flow +26 -1
  8. package/dist/generated/special-case-node-types.js +106 -85
  9. package/dist/generated/special-case-node-types.js.flow +28 -2
  10. package/dist/getVisitorKeys.js +4 -6
  11. package/dist/getVisitorKeys.js.flow +1 -1
  12. package/dist/index.js +13 -18
  13. package/dist/index.js.flow +7 -2
  14. package/dist/transform/Errors.js +8 -116
  15. package/dist/transform/Errors.js.flow +1 -1
  16. package/dist/transform/MutationContext.js +54 -67
  17. package/dist/transform/MutationContext.js.flow +1 -1
  18. package/dist/transform/TransformContext.js +106 -54
  19. package/dist/transform/TransformContext.js.flow +255 -121
  20. package/dist/transform/comments/comments.js +25 -25
  21. package/dist/transform/comments/comments.js.flow +1 -1
  22. package/dist/transform/comments/prettier/common/util.js +46 -47
  23. package/dist/transform/comments/prettier/common/util.js.flow +1 -1
  24. package/dist/transform/comments/prettier/language-js/comments.js +199 -216
  25. package/dist/transform/comments/prettier/language-js/comments.js.flow +1 -1
  26. package/dist/transform/comments/prettier/language-js/loc.js +10 -9
  27. package/dist/transform/comments/prettier/language-js/loc.js.flow +1 -1
  28. package/dist/transform/comments/prettier/language-js/printer-estree.js +7 -6
  29. package/dist/transform/comments/prettier/language-js/printer-estree.js.flow +1 -1
  30. package/dist/transform/comments/prettier/language-js/utils.js +18 -30
  31. package/dist/transform/comments/prettier/language-js/utils.js.flow +1 -1
  32. package/dist/transform/comments/prettier/main/comments.js +225 -298
  33. package/dist/transform/comments/prettier/main/comments.js.flow +1 -1
  34. package/dist/transform/comments/prettier/utils/get-last.js +2 -4
  35. package/dist/transform/comments/prettier/utils/get-last.js.flow +1 -1
  36. package/dist/transform/getTransformedAST.js +85 -101
  37. package/dist/transform/getTransformedAST.js.flow +7 -2
  38. package/dist/transform/mutations/AddLeadingComments.js +15 -22
  39. package/dist/transform/mutations/AddLeadingComments.js.flow +1 -1
  40. package/dist/transform/mutations/AddTrailingComments.js +15 -22
  41. package/dist/transform/mutations/AddTrailingComments.js.flow +1 -1
  42. package/dist/transform/mutations/CloneCommentsTo.js +16 -23
  43. package/dist/transform/mutations/CloneCommentsTo.js.flow +1 -1
  44. package/dist/transform/mutations/InsertStatement.js +27 -30
  45. package/dist/transform/mutations/InsertStatement.js.flow +1 -1
  46. package/dist/transform/mutations/RemoveComment.js +25 -43
  47. package/dist/transform/mutations/RemoveComment.js.flow +1 -1
  48. package/dist/transform/mutations/RemoveNode.js +185 -0
  49. package/dist/transform/mutations/RemoveNode.js.flow +279 -0
  50. package/dist/transform/mutations/RemoveStatement.js +7 -9
  51. package/dist/transform/mutations/RemoveStatement.js.flow +1 -1
  52. package/dist/transform/mutations/ReplaceNode.js +36 -44
  53. package/dist/transform/mutations/ReplaceNode.js.flow +1 -1
  54. package/dist/transform/mutations/ReplaceStatementWithMany.js +11 -13
  55. package/dist/transform/mutations/ReplaceStatementWithMany.js.flow +1 -1
  56. package/dist/transform/mutations/utils/arrayUtils.js +2 -14
  57. package/dist/transform/mutations/utils/arrayUtils.js.flow +1 -1
  58. package/dist/transform/mutations/utils/getStatementParent.js +23 -28
  59. package/dist/transform/mutations/utils/getStatementParent.js.flow +2 -2
  60. package/dist/transform/mutations/utils/isValidModuleDeclarationParent.js +7 -24
  61. package/dist/transform/mutations/utils/isValidModuleDeclarationParent.js.flow +1 -1
  62. package/dist/transform/transform.js +20 -24
  63. package/dist/transform/transform.js.flow +12 -8
  64. package/dist/traverse/NodeEventGenerator.js +91 -165
  65. package/dist/traverse/NodeEventGenerator.js.flow +1 -1
  66. package/dist/traverse/SafeEmitter.js +20 -38
  67. package/dist/traverse/SafeEmitter.js.flow +1 -1
  68. package/dist/traverse/SimpleTraverser.js +67 -98
  69. package/dist/traverse/SimpleTraverser.js.flow +4 -1
  70. package/dist/traverse/esquery.js +6 -6
  71. package/dist/traverse/esquery.js.flow +1 -1
  72. package/dist/traverse/traverse.js +39 -51
  73. package/dist/traverse/traverse.js.flow +1 -1
  74. package/package.json +4 -3
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) Facebook, Inc. and its affiliates.
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
3
  *
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
@@ -8,10 +8,13 @@
8
8
  * @format
9
9
  */
10
10
 
11
+ // lint directives to let us do some basic validation of generated files
12
+ /* eslint no-undef: 'error', no-unused-vars: ['error', {vars: "local"}], no-redeclare: 'error' */
13
+ /* global $NonMaybeType, $Partial, $ReadOnly, $ReadOnlyArray */
14
+
11
15
  'use strict';
12
16
 
13
17
  import type {
14
- ESNode,
15
18
  AnyTypeAnnotation,
16
19
  ArrayExpression,
17
20
  ArrayPattern,
@@ -20,6 +23,7 @@ import type {
20
23
  AssignmentExpression,
21
24
  AssignmentPattern,
22
25
  AwaitExpression,
26
+ BigIntLiteralTypeAnnotation,
23
27
  BinaryExpression,
24
28
  BlockStatement,
25
29
  BooleanLiteralTypeAnnotation,
@@ -169,775 +173,933 @@ import type {
169
173
  } from 'hermes-estree';
170
174
  import type {DetachedNode} from '../detachedNode';
171
175
 
172
- export type TransformReplaceSignatures = {
173
- (
174
- target: AnyTypeAnnotation,
175
- nodeToReplaceWith: DetachedNode<AnyTypeAnnotation>,
176
- options?: $ReadOnly<{keepComments?: boolean}>,
177
- ): void,
178
- (
179
- target: ArrayExpression,
180
- nodeToReplaceWith: DetachedNode<ArrayExpression>,
181
- options?: $ReadOnly<{keepComments?: boolean}>,
182
- ): void,
183
- (
184
- target: ArrayPattern,
185
- nodeToReplaceWith: DetachedNode<ArrayPattern>,
186
- options?: $ReadOnly<{keepComments?: boolean}>,
187
- ): void,
188
- (
189
- target: ArrayTypeAnnotation,
190
- nodeToReplaceWith: DetachedNode<ArrayTypeAnnotation>,
191
- options?: $ReadOnly<{keepComments?: boolean}>,
192
- ): void,
193
- (
194
- target: ArrowFunctionExpression,
195
- nodeToReplaceWith: DetachedNode<ArrowFunctionExpression>,
196
- options?: $ReadOnly<{keepComments?: boolean}>,
197
- ): void,
198
- (
199
- target: AssignmentExpression,
200
- nodeToReplaceWith: DetachedNode<AssignmentExpression>,
201
- options?: $ReadOnly<{keepComments?: boolean}>,
202
- ): void,
203
- (
204
- target: AssignmentPattern,
205
- nodeToReplaceWith: DetachedNode<AssignmentPattern>,
206
- options?: $ReadOnly<{keepComments?: boolean}>,
207
- ): void,
208
- (
209
- target: AwaitExpression,
210
- nodeToReplaceWith: DetachedNode<AwaitExpression>,
211
- options?: $ReadOnly<{keepComments?: boolean}>,
212
- ): void,
213
- (
214
- target: BinaryExpression,
215
- nodeToReplaceWith: DetachedNode<BinaryExpression>,
216
- options?: $ReadOnly<{keepComments?: boolean}>,
217
- ): void,
218
- (
219
- target: BlockStatement,
220
- nodeToReplaceWith: DetachedNode<BlockStatement>,
221
- options?: $ReadOnly<{keepComments?: boolean}>,
222
- ): void,
223
- (
224
- target: BooleanLiteralTypeAnnotation,
225
- nodeToReplaceWith: DetachedNode<BooleanLiteralTypeAnnotation>,
226
- options?: $ReadOnly<{keepComments?: boolean}>,
227
- ): void,
228
- (
229
- target: BooleanTypeAnnotation,
230
- nodeToReplaceWith: DetachedNode<BooleanTypeAnnotation>,
231
- options?: $ReadOnly<{keepComments?: boolean}>,
232
- ): void,
233
- (
234
- target: BreakStatement,
235
- nodeToReplaceWith: DetachedNode<BreakStatement>,
236
- options?: $ReadOnly<{keepComments?: boolean}>,
237
- ): void,
238
- (
239
- target: CallExpression,
240
- nodeToReplaceWith: DetachedNode<CallExpression>,
241
- options?: $ReadOnly<{keepComments?: boolean}>,
242
- ): void,
243
- (
244
- target: CatchClause,
245
- nodeToReplaceWith: DetachedNode<CatchClause>,
246
- options?: $ReadOnly<{keepComments?: boolean}>,
247
- ): void,
248
- (
249
- target: ClassBody,
250
- nodeToReplaceWith: DetachedNode<ClassBody>,
251
- options?: $ReadOnly<{keepComments?: boolean}>,
252
- ): void,
253
- (
254
- target: ClassDeclaration,
255
- nodeToReplaceWith: DetachedNode<ClassDeclaration>,
256
- options?: $ReadOnly<{keepComments?: boolean}>,
257
- ): void,
258
- (
259
- target: ClassExpression,
260
- nodeToReplaceWith: DetachedNode<ClassExpression>,
261
- options?: $ReadOnly<{keepComments?: boolean}>,
262
- ): void,
263
- (
264
- target: ClassImplements,
265
- nodeToReplaceWith: DetachedNode<ClassImplements>,
266
- options?: $ReadOnly<{keepComments?: boolean}>,
267
- ): void,
268
- (
269
- target: ClassPrivateProperty,
270
- nodeToReplaceWith: DetachedNode<ClassPrivateProperty>,
271
- options?: $ReadOnly<{keepComments?: boolean}>,
272
- ): void,
273
- (
274
- target: ClassProperty,
275
- nodeToReplaceWith: DetachedNode<ClassProperty>,
276
- options?: $ReadOnly<{keepComments?: boolean}>,
277
- ): void,
278
- (
279
- target: ConditionalExpression,
280
- nodeToReplaceWith: DetachedNode<ConditionalExpression>,
281
- options?: $ReadOnly<{keepComments?: boolean}>,
282
- ): void,
283
- (
284
- target: ContinueStatement,
285
- nodeToReplaceWith: DetachedNode<ContinueStatement>,
286
- options?: $ReadOnly<{keepComments?: boolean}>,
287
- ): void,
288
- (
289
- target: DebuggerStatement,
290
- nodeToReplaceWith: DetachedNode<DebuggerStatement>,
291
- options?: $ReadOnly<{keepComments?: boolean}>,
292
- ): void,
293
- (
294
- target: DeclareClass,
295
- nodeToReplaceWith: DetachedNode<DeclareClass>,
296
- options?: $ReadOnly<{keepComments?: boolean}>,
297
- ): void,
298
- (
299
- target: DeclaredPredicate,
300
- nodeToReplaceWith: DetachedNode<DeclaredPredicate>,
301
- options?: $ReadOnly<{keepComments?: boolean}>,
302
- ): void,
303
- (
304
- target: DeclareExportAllDeclaration,
305
- nodeToReplaceWith: DetachedNode<DeclareExportAllDeclaration>,
306
- options?: $ReadOnly<{keepComments?: boolean}>,
307
- ): void,
308
- (
309
- target: DeclareExportDeclaration,
310
- nodeToReplaceWith: DetachedNode<DeclareExportDeclaration>,
311
- options?: $ReadOnly<{keepComments?: boolean}>,
312
- ): void,
313
- (
314
- target: DeclareFunction,
315
- nodeToReplaceWith: DetachedNode<DeclareFunction>,
316
- options?: $ReadOnly<{keepComments?: boolean}>,
317
- ): void,
318
- (
319
- target: DeclareInterface,
320
- nodeToReplaceWith: DetachedNode<DeclareInterface>,
321
- options?: $ReadOnly<{keepComments?: boolean}>,
322
- ): void,
323
- (
324
- target: DeclareModule,
325
- nodeToReplaceWith: DetachedNode<DeclareModule>,
326
- options?: $ReadOnly<{keepComments?: boolean}>,
327
- ): void,
328
- (
329
- target: DeclareModuleExports,
330
- nodeToReplaceWith: DetachedNode<DeclareModuleExports>,
331
- options?: $ReadOnly<{keepComments?: boolean}>,
332
- ): void,
333
- (
334
- target: DeclareOpaqueType,
335
- nodeToReplaceWith: DetachedNode<DeclareOpaqueType>,
336
- options?: $ReadOnly<{keepComments?: boolean}>,
337
- ): void,
338
- (
339
- target: DeclareTypeAlias,
340
- nodeToReplaceWith: DetachedNode<DeclareTypeAlias>,
341
- options?: $ReadOnly<{keepComments?: boolean}>,
342
- ): void,
343
- (
344
- target: DeclareVariable,
345
- nodeToReplaceWith: DetachedNode<DeclareVariable>,
346
- options?: $ReadOnly<{keepComments?: boolean}>,
347
- ): void,
348
- (
349
- target: DoWhileStatement,
350
- nodeToReplaceWith: DetachedNode<DoWhileStatement>,
351
- options?: $ReadOnly<{keepComments?: boolean}>,
352
- ): void,
353
- (
354
- target: EmptyStatement,
355
- nodeToReplaceWith: DetachedNode<EmptyStatement>,
356
- options?: $ReadOnly<{keepComments?: boolean}>,
357
- ): void,
358
- (
359
- target: EmptyTypeAnnotation,
360
- nodeToReplaceWith: DetachedNode<EmptyTypeAnnotation>,
361
- options?: $ReadOnly<{keepComments?: boolean}>,
362
- ): void,
363
- (
364
- target: EnumBooleanBody,
365
- nodeToReplaceWith: DetachedNode<EnumBooleanBody>,
366
- options?: $ReadOnly<{keepComments?: boolean}>,
367
- ): void,
368
- (
369
- target: EnumBooleanMember,
370
- nodeToReplaceWith: DetachedNode<EnumBooleanMember>,
371
- options?: $ReadOnly<{keepComments?: boolean}>,
372
- ): void,
373
- (
374
- target: EnumDeclaration,
375
- nodeToReplaceWith: DetachedNode<EnumDeclaration>,
376
- options?: $ReadOnly<{keepComments?: boolean}>,
377
- ): void,
378
- (
379
- target: EnumDefaultedMember,
380
- nodeToReplaceWith: DetachedNode<EnumDefaultedMember>,
381
- options?: $ReadOnly<{keepComments?: boolean}>,
382
- ): void,
383
- (
384
- target: EnumNumberBody,
385
- nodeToReplaceWith: DetachedNode<EnumNumberBody>,
386
- options?: $ReadOnly<{keepComments?: boolean}>,
387
- ): void,
388
- (
389
- target: EnumNumberMember,
390
- nodeToReplaceWith: DetachedNode<EnumNumberMember>,
391
- options?: $ReadOnly<{keepComments?: boolean}>,
392
- ): void,
393
- (
394
- target: EnumStringBody,
395
- nodeToReplaceWith: DetachedNode<EnumStringBody>,
396
- options?: $ReadOnly<{keepComments?: boolean}>,
397
- ): void,
398
- (
399
- target: EnumStringMember,
400
- nodeToReplaceWith: DetachedNode<EnumStringMember>,
401
- options?: $ReadOnly<{keepComments?: boolean}>,
402
- ): void,
403
- (
404
- target: EnumSymbolBody,
405
- nodeToReplaceWith: DetachedNode<EnumSymbolBody>,
406
- options?: $ReadOnly<{keepComments?: boolean}>,
407
- ): void,
408
- (
409
- target: ExistsTypeAnnotation,
410
- nodeToReplaceWith: DetachedNode<ExistsTypeAnnotation>,
411
- options?: $ReadOnly<{keepComments?: boolean}>,
412
- ): void,
413
- (
414
- target: ExportAllDeclaration,
415
- nodeToReplaceWith: DetachedNode<ExportAllDeclaration>,
416
- options?: $ReadOnly<{keepComments?: boolean}>,
417
- ): void,
418
- (
419
- target: ExportDefaultDeclaration,
420
- nodeToReplaceWith: DetachedNode<ExportDefaultDeclaration>,
421
- options?: $ReadOnly<{keepComments?: boolean}>,
422
- ): void,
423
- (
424
- target: ExportNamedDeclaration,
425
- nodeToReplaceWith: DetachedNode<ExportNamedDeclaration>,
426
- options?: $ReadOnly<{keepComments?: boolean}>,
427
- ): void,
428
- (
429
- target: ExportNamespaceSpecifier,
430
- nodeToReplaceWith: DetachedNode<ExportNamespaceSpecifier>,
431
- options?: $ReadOnly<{keepComments?: boolean}>,
432
- ): void,
433
- (
434
- target: ExportSpecifier,
435
- nodeToReplaceWith: DetachedNode<ExportSpecifier>,
436
- options?: $ReadOnly<{keepComments?: boolean}>,
437
- ): void,
438
- (
439
- target: ExpressionStatement,
440
- nodeToReplaceWith: DetachedNode<ExpressionStatement>,
441
- options?: $ReadOnly<{keepComments?: boolean}>,
442
- ): void,
443
- (
444
- target: ForInStatement,
445
- nodeToReplaceWith: DetachedNode<ForInStatement>,
446
- options?: $ReadOnly<{keepComments?: boolean}>,
447
- ): void,
448
- (
449
- target: ForOfStatement,
450
- nodeToReplaceWith: DetachedNode<ForOfStatement>,
451
- options?: $ReadOnly<{keepComments?: boolean}>,
452
- ): void,
453
- (
454
- target: ForStatement,
455
- nodeToReplaceWith: DetachedNode<ForStatement>,
456
- options?: $ReadOnly<{keepComments?: boolean}>,
457
- ): void,
458
- (
459
- target: FunctionDeclaration,
460
- nodeToReplaceWith: DetachedNode<FunctionDeclaration>,
461
- options?: $ReadOnly<{keepComments?: boolean}>,
462
- ): void,
463
- (
464
- target: FunctionExpression,
465
- nodeToReplaceWith: DetachedNode<FunctionExpression>,
466
- options?: $ReadOnly<{keepComments?: boolean}>,
467
- ): void,
468
- (
469
- target: FunctionTypeAnnotation,
470
- nodeToReplaceWith: DetachedNode<FunctionTypeAnnotation>,
471
- options?: $ReadOnly<{keepComments?: boolean}>,
472
- ): void,
473
- (
474
- target: FunctionTypeParam,
475
- nodeToReplaceWith: DetachedNode<FunctionTypeParam>,
476
- options?: $ReadOnly<{keepComments?: boolean}>,
477
- ): void,
478
- (
479
- target: GenericTypeAnnotation,
480
- nodeToReplaceWith: DetachedNode<GenericTypeAnnotation>,
481
- options?: $ReadOnly<{keepComments?: boolean}>,
482
- ): void,
483
- (
484
- target: Identifier,
485
- nodeToReplaceWith: DetachedNode<Identifier>,
486
- options?: $ReadOnly<{keepComments?: boolean}>,
487
- ): void,
488
- (
489
- target: IfStatement,
490
- nodeToReplaceWith: DetachedNode<IfStatement>,
491
- options?: $ReadOnly<{keepComments?: boolean}>,
492
- ): void,
493
- (
494
- target: ImportAttribute,
495
- nodeToReplaceWith: DetachedNode<ImportAttribute>,
496
- options?: $ReadOnly<{keepComments?: boolean}>,
497
- ): void,
498
- (
499
- target: ImportDeclaration,
500
- nodeToReplaceWith: DetachedNode<ImportDeclaration>,
501
- options?: $ReadOnly<{keepComments?: boolean}>,
502
- ): void,
503
- (
504
- target: ImportDefaultSpecifier,
505
- nodeToReplaceWith: DetachedNode<ImportDefaultSpecifier>,
506
- options?: $ReadOnly<{keepComments?: boolean}>,
507
- ): void,
508
- (
509
- target: ImportExpression,
510
- nodeToReplaceWith: DetachedNode<ImportExpression>,
511
- options?: $ReadOnly<{keepComments?: boolean}>,
512
- ): void,
513
- (
514
- target: ImportNamespaceSpecifier,
515
- nodeToReplaceWith: DetachedNode<ImportNamespaceSpecifier>,
516
- options?: $ReadOnly<{keepComments?: boolean}>,
517
- ): void,
518
- (
519
- target: ImportSpecifier,
520
- nodeToReplaceWith: DetachedNode<ImportSpecifier>,
521
- options?: $ReadOnly<{keepComments?: boolean}>,
522
- ): void,
523
- (
524
- target: IndexedAccessType,
525
- nodeToReplaceWith: DetachedNode<IndexedAccessType>,
526
- options?: $ReadOnly<{keepComments?: boolean}>,
527
- ): void,
528
- (
529
- target: InferredPredicate,
530
- nodeToReplaceWith: DetachedNode<InferredPredicate>,
531
- options?: $ReadOnly<{keepComments?: boolean}>,
532
- ): void,
533
- (
534
- target: InterfaceDeclaration,
535
- nodeToReplaceWith: DetachedNode<InterfaceDeclaration>,
536
- options?: $ReadOnly<{keepComments?: boolean}>,
537
- ): void,
538
- (
539
- target: InterfaceExtends,
540
- nodeToReplaceWith: DetachedNode<InterfaceExtends>,
541
- options?: $ReadOnly<{keepComments?: boolean}>,
542
- ): void,
543
- (
544
- target: InterfaceTypeAnnotation,
545
- nodeToReplaceWith: DetachedNode<InterfaceTypeAnnotation>,
546
- options?: $ReadOnly<{keepComments?: boolean}>,
547
- ): void,
548
- (
549
- target: IntersectionTypeAnnotation,
550
- nodeToReplaceWith: DetachedNode<IntersectionTypeAnnotation>,
551
- options?: $ReadOnly<{keepComments?: boolean}>,
552
- ): void,
553
- (
554
- target: JSXAttribute,
555
- nodeToReplaceWith: DetachedNode<JSXAttribute>,
556
- options?: $ReadOnly<{keepComments?: boolean}>,
557
- ): void,
558
- (
559
- target: JSXClosingElement,
560
- nodeToReplaceWith: DetachedNode<JSXClosingElement>,
561
- options?: $ReadOnly<{keepComments?: boolean}>,
562
- ): void,
563
- (
564
- target: JSXClosingFragment,
565
- nodeToReplaceWith: DetachedNode<JSXClosingFragment>,
566
- options?: $ReadOnly<{keepComments?: boolean}>,
567
- ): void,
568
- (
569
- target: JSXElement,
570
- nodeToReplaceWith: DetachedNode<JSXElement>,
571
- options?: $ReadOnly<{keepComments?: boolean}>,
572
- ): void,
573
- (
574
- target: JSXEmptyExpression,
575
- nodeToReplaceWith: DetachedNode<JSXEmptyExpression>,
576
- options?: $ReadOnly<{keepComments?: boolean}>,
577
- ): void,
578
- (
579
- target: JSXExpressionContainer,
580
- nodeToReplaceWith: DetachedNode<JSXExpressionContainer>,
581
- options?: $ReadOnly<{keepComments?: boolean}>,
582
- ): void,
583
- (
584
- target: JSXFragment,
585
- nodeToReplaceWith: DetachedNode<JSXFragment>,
586
- options?: $ReadOnly<{keepComments?: boolean}>,
587
- ): void,
588
- (
589
- target: JSXIdentifier,
590
- nodeToReplaceWith: DetachedNode<JSXIdentifier>,
591
- options?: $ReadOnly<{keepComments?: boolean}>,
592
- ): void,
593
- (
594
- target: JSXMemberExpression,
595
- nodeToReplaceWith: DetachedNode<JSXMemberExpression>,
596
- options?: $ReadOnly<{keepComments?: boolean}>,
597
- ): void,
598
- (
599
- target: JSXNamespacedName,
600
- nodeToReplaceWith: DetachedNode<JSXNamespacedName>,
601
- options?: $ReadOnly<{keepComments?: boolean}>,
602
- ): void,
603
- (
604
- target: JSXOpeningElement,
605
- nodeToReplaceWith: DetachedNode<JSXOpeningElement>,
606
- options?: $ReadOnly<{keepComments?: boolean}>,
607
- ): void,
608
- (
609
- target: JSXOpeningFragment,
610
- nodeToReplaceWith: DetachedNode<JSXOpeningFragment>,
611
- options?: $ReadOnly<{keepComments?: boolean}>,
612
- ): void,
613
- (
614
- target: JSXSpreadAttribute,
615
- nodeToReplaceWith: DetachedNode<JSXSpreadAttribute>,
616
- options?: $ReadOnly<{keepComments?: boolean}>,
617
- ): void,
618
- (
619
- target: JSXSpreadChild,
620
- nodeToReplaceWith: DetachedNode<JSXSpreadChild>,
621
- options?: $ReadOnly<{keepComments?: boolean}>,
622
- ): void,
623
- (
624
- target: JSXText,
625
- nodeToReplaceWith: DetachedNode<JSXText>,
626
- options?: $ReadOnly<{keepComments?: boolean}>,
627
- ): void,
628
- (
629
- target: LabeledStatement,
630
- nodeToReplaceWith: DetachedNode<LabeledStatement>,
631
- options?: $ReadOnly<{keepComments?: boolean}>,
632
- ): void,
633
- (
634
- target: LogicalExpression,
635
- nodeToReplaceWith: DetachedNode<LogicalExpression>,
636
- options?: $ReadOnly<{keepComments?: boolean}>,
637
- ): void,
638
- (
639
- target: MemberExpression,
640
- nodeToReplaceWith: DetachedNode<MemberExpression>,
641
- options?: $ReadOnly<{keepComments?: boolean}>,
642
- ): void,
643
- (
644
- target: MetaProperty,
645
- nodeToReplaceWith: DetachedNode<MetaProperty>,
646
- options?: $ReadOnly<{keepComments?: boolean}>,
647
- ): void,
648
- (
649
- target: MethodDefinition,
650
- nodeToReplaceWith: DetachedNode<MethodDefinition>,
651
- options?: $ReadOnly<{keepComments?: boolean}>,
652
- ): void,
653
- (
654
- target: MixedTypeAnnotation,
655
- nodeToReplaceWith: DetachedNode<MixedTypeAnnotation>,
656
- options?: $ReadOnly<{keepComments?: boolean}>,
657
- ): void,
658
- (
659
- target: NewExpression,
660
- nodeToReplaceWith: DetachedNode<NewExpression>,
661
- options?: $ReadOnly<{keepComments?: boolean}>,
662
- ): void,
663
- (
664
- target: NullableTypeAnnotation,
665
- nodeToReplaceWith: DetachedNode<NullableTypeAnnotation>,
666
- options?: $ReadOnly<{keepComments?: boolean}>,
667
- ): void,
668
- (
669
- target: NullLiteralTypeAnnotation,
670
- nodeToReplaceWith: DetachedNode<NullLiteralTypeAnnotation>,
671
- options?: $ReadOnly<{keepComments?: boolean}>,
672
- ): void,
673
- (
674
- target: NumberLiteralTypeAnnotation,
675
- nodeToReplaceWith: DetachedNode<NumberLiteralTypeAnnotation>,
676
- options?: $ReadOnly<{keepComments?: boolean}>,
677
- ): void,
678
- (
679
- target: NumberTypeAnnotation,
680
- nodeToReplaceWith: DetachedNode<NumberTypeAnnotation>,
681
- options?: $ReadOnly<{keepComments?: boolean}>,
682
- ): void,
683
- (
684
- target: ObjectExpression,
685
- nodeToReplaceWith: DetachedNode<ObjectExpression>,
686
- options?: $ReadOnly<{keepComments?: boolean}>,
687
- ): void,
688
- (
689
- target: ObjectPattern,
690
- nodeToReplaceWith: DetachedNode<ObjectPattern>,
691
- options?: $ReadOnly<{keepComments?: boolean}>,
692
- ): void,
693
- (
694
- target: ObjectTypeAnnotation,
695
- nodeToReplaceWith: DetachedNode<ObjectTypeAnnotation>,
696
- options?: $ReadOnly<{keepComments?: boolean}>,
697
- ): void,
698
- (
699
- target: ObjectTypeCallProperty,
700
- nodeToReplaceWith: DetachedNode<ObjectTypeCallProperty>,
701
- options?: $ReadOnly<{keepComments?: boolean}>,
702
- ): void,
703
- (
704
- target: ObjectTypeIndexer,
705
- nodeToReplaceWith: DetachedNode<ObjectTypeIndexer>,
706
- options?: $ReadOnly<{keepComments?: boolean}>,
707
- ): void,
708
- (
709
- target: ObjectTypeInternalSlot,
710
- nodeToReplaceWith: DetachedNode<ObjectTypeInternalSlot>,
711
- options?: $ReadOnly<{keepComments?: boolean}>,
712
- ): void,
713
- (
714
- target: ObjectTypeProperty,
715
- nodeToReplaceWith: DetachedNode<ObjectTypeProperty>,
716
- options?: $ReadOnly<{keepComments?: boolean}>,
717
- ): void,
718
- (
719
- target: ObjectTypeSpreadProperty,
720
- nodeToReplaceWith: DetachedNode<ObjectTypeSpreadProperty>,
721
- options?: $ReadOnly<{keepComments?: boolean}>,
722
- ): void,
723
- (
724
- target: OpaqueType,
725
- nodeToReplaceWith: DetachedNode<OpaqueType>,
726
- options?: $ReadOnly<{keepComments?: boolean}>,
727
- ): void,
728
- (
729
- target: OptionalCallExpression,
730
- nodeToReplaceWith: DetachedNode<OptionalCallExpression>,
731
- options?: $ReadOnly<{keepComments?: boolean}>,
732
- ): void,
733
- (
734
- target: OptionalIndexedAccessType,
735
- nodeToReplaceWith: DetachedNode<OptionalIndexedAccessType>,
736
- options?: $ReadOnly<{keepComments?: boolean}>,
737
- ): void,
738
- (
739
- target: OptionalMemberExpression,
740
- nodeToReplaceWith: DetachedNode<OptionalMemberExpression>,
741
- options?: $ReadOnly<{keepComments?: boolean}>,
742
- ): void,
743
- (
744
- target: PrivateName,
745
- nodeToReplaceWith: DetachedNode<PrivateName>,
746
- options?: $ReadOnly<{keepComments?: boolean}>,
747
- ): void,
748
- (
749
- target: Program,
750
- nodeToReplaceWith: DetachedNode<Program>,
751
- options?: $ReadOnly<{keepComments?: boolean}>,
752
- ): void,
753
- (
754
- target: Property,
755
- nodeToReplaceWith: DetachedNode<Property>,
756
- options?: $ReadOnly<{keepComments?: boolean}>,
757
- ): void,
758
- (
759
- target: QualifiedTypeIdentifier,
760
- nodeToReplaceWith: DetachedNode<QualifiedTypeIdentifier>,
761
- options?: $ReadOnly<{keepComments?: boolean}>,
762
- ): void,
763
- (
764
- target: RestElement,
765
- nodeToReplaceWith: DetachedNode<RestElement>,
766
- options?: $ReadOnly<{keepComments?: boolean}>,
767
- ): void,
768
- (
769
- target: ReturnStatement,
770
- nodeToReplaceWith: DetachedNode<ReturnStatement>,
771
- options?: $ReadOnly<{keepComments?: boolean}>,
772
- ): void,
773
- (
774
- target: SequenceExpression,
775
- nodeToReplaceWith: DetachedNode<SequenceExpression>,
776
- options?: $ReadOnly<{keepComments?: boolean}>,
777
- ): void,
778
- (
779
- target: SpreadElement,
780
- nodeToReplaceWith: DetachedNode<SpreadElement>,
781
- options?: $ReadOnly<{keepComments?: boolean}>,
782
- ): void,
783
- (
784
- target: StringLiteralTypeAnnotation,
785
- nodeToReplaceWith: DetachedNode<StringLiteralTypeAnnotation>,
786
- options?: $ReadOnly<{keepComments?: boolean}>,
787
- ): void,
788
- (
789
- target: StringTypeAnnotation,
790
- nodeToReplaceWith: DetachedNode<StringTypeAnnotation>,
791
- options?: $ReadOnly<{keepComments?: boolean}>,
792
- ): void,
793
- (
794
- target: Super,
795
- nodeToReplaceWith: DetachedNode<Super>,
796
- options?: $ReadOnly<{keepComments?: boolean}>,
797
- ): void,
798
- (
799
- target: SwitchCase,
800
- nodeToReplaceWith: DetachedNode<SwitchCase>,
801
- options?: $ReadOnly<{keepComments?: boolean}>,
802
- ): void,
803
- (
804
- target: SwitchStatement,
805
- nodeToReplaceWith: DetachedNode<SwitchStatement>,
806
- options?: $ReadOnly<{keepComments?: boolean}>,
807
- ): void,
808
- (
809
- target: SymbolTypeAnnotation,
810
- nodeToReplaceWith: DetachedNode<SymbolTypeAnnotation>,
811
- options?: $ReadOnly<{keepComments?: boolean}>,
812
- ): void,
813
- (
814
- target: TaggedTemplateExpression,
815
- nodeToReplaceWith: DetachedNode<TaggedTemplateExpression>,
816
- options?: $ReadOnly<{keepComments?: boolean}>,
817
- ): void,
818
- (
819
- target: TemplateElement,
820
- nodeToReplaceWith: DetachedNode<TemplateElement>,
821
- options?: $ReadOnly<{keepComments?: boolean}>,
822
- ): void,
823
- (
824
- target: TemplateLiteral,
825
- nodeToReplaceWith: DetachedNode<TemplateLiteral>,
826
- options?: $ReadOnly<{keepComments?: boolean}>,
827
- ): void,
828
- (
829
- target: ThisExpression,
830
- nodeToReplaceWith: DetachedNode<ThisExpression>,
831
- options?: $ReadOnly<{keepComments?: boolean}>,
832
- ): void,
833
- (
834
- target: ThisTypeAnnotation,
835
- nodeToReplaceWith: DetachedNode<ThisTypeAnnotation>,
836
- options?: $ReadOnly<{keepComments?: boolean}>,
837
- ): void,
838
- (
839
- target: ThrowStatement,
840
- nodeToReplaceWith: DetachedNode<ThrowStatement>,
841
- options?: $ReadOnly<{keepComments?: boolean}>,
842
- ): void,
843
- (
844
- target: TryStatement,
845
- nodeToReplaceWith: DetachedNode<TryStatement>,
846
- options?: $ReadOnly<{keepComments?: boolean}>,
847
- ): void,
848
- (
849
- target: TupleTypeAnnotation,
850
- nodeToReplaceWith: DetachedNode<TupleTypeAnnotation>,
851
- options?: $ReadOnly<{keepComments?: boolean}>,
852
- ): void,
853
- (
854
- target: TypeAlias,
855
- nodeToReplaceWith: DetachedNode<TypeAlias>,
856
- options?: $ReadOnly<{keepComments?: boolean}>,
857
- ): void,
858
- (
859
- target: TypeAnnotation,
860
- nodeToReplaceWith: DetachedNode<TypeAnnotation>,
861
- options?: $ReadOnly<{keepComments?: boolean}>,
862
- ): void,
863
- (
864
- target: TypeCastExpression,
865
- nodeToReplaceWith: DetachedNode<TypeCastExpression>,
866
- options?: $ReadOnly<{keepComments?: boolean}>,
867
- ): void,
868
- (
869
- target: TypeofTypeAnnotation,
870
- nodeToReplaceWith: DetachedNode<TypeofTypeAnnotation>,
871
- options?: $ReadOnly<{keepComments?: boolean}>,
872
- ): void,
873
- (
874
- target: TypeParameter,
875
- nodeToReplaceWith: DetachedNode<TypeParameter>,
876
- options?: $ReadOnly<{keepComments?: boolean}>,
877
- ): void,
878
- (
879
- target: TypeParameterDeclaration,
880
- nodeToReplaceWith: DetachedNode<TypeParameterDeclaration>,
881
- options?: $ReadOnly<{keepComments?: boolean}>,
882
- ): void,
883
- (
884
- target: TypeParameterInstantiation,
885
- nodeToReplaceWith: DetachedNode<TypeParameterInstantiation>,
886
- options?: $ReadOnly<{keepComments?: boolean}>,
887
- ): void,
888
- (
889
- target: UnaryExpression,
890
- nodeToReplaceWith: DetachedNode<UnaryExpression>,
891
- options?: $ReadOnly<{keepComments?: boolean}>,
892
- ): void,
893
- (
894
- target: UnionTypeAnnotation,
895
- nodeToReplaceWith: DetachedNode<UnionTypeAnnotation>,
896
- options?: $ReadOnly<{keepComments?: boolean}>,
897
- ): void,
898
- (
899
- target: UpdateExpression,
900
- nodeToReplaceWith: DetachedNode<UpdateExpression>,
901
- options?: $ReadOnly<{keepComments?: boolean}>,
902
- ): void,
903
- (
904
- target: VariableDeclaration,
905
- nodeToReplaceWith: DetachedNode<VariableDeclaration>,
906
- options?: $ReadOnly<{keepComments?: boolean}>,
907
- ): void,
908
- (
909
- target: VariableDeclarator,
910
- nodeToReplaceWith: DetachedNode<VariableDeclarator>,
911
- options?: $ReadOnly<{keepComments?: boolean}>,
912
- ): void,
913
- (
914
- target: Variance,
915
- nodeToReplaceWith: DetachedNode<Variance>,
916
- options?: $ReadOnly<{keepComments?: boolean}>,
917
- ): void,
918
- (
919
- target: VoidTypeAnnotation,
920
- nodeToReplaceWith: DetachedNode<VoidTypeAnnotation>,
921
- options?: $ReadOnly<{keepComments?: boolean}>,
922
- ): void,
923
- (
924
- target: WhileStatement,
925
- nodeToReplaceWith: DetachedNode<WhileStatement>,
926
- options?: $ReadOnly<{keepComments?: boolean}>,
927
- ): void,
928
- (
929
- target: WithStatement,
930
- nodeToReplaceWith: DetachedNode<WithStatement>,
931
- options?: $ReadOnly<{keepComments?: boolean}>,
932
- ): void,
933
- (
934
- target: YieldExpression,
935
- nodeToReplaceWith: DetachedNode<YieldExpression>,
936
- options?: $ReadOnly<{keepComments?: boolean}>,
937
- ): void,
938
- (
939
- target: Literal,
940
- nodeToReplaceWith: DetachedNode<Literal>,
941
- options?: $ReadOnly<{keepComments?: boolean}>,
942
- ): void,
943
- };
176
+ type AnyTypeAnnotationReplaceSignature = (
177
+ target: AnyTypeAnnotation,
178
+ nodeToReplaceWith: DetachedNode<AnyTypeAnnotation>,
179
+ options?: $ReadOnly<{keepComments?: boolean}>,
180
+ ) => void;
181
+ type ArrayExpressionReplaceSignature = (
182
+ target: ArrayExpression,
183
+ nodeToReplaceWith: DetachedNode<ArrayExpression>,
184
+ options?: $ReadOnly<{keepComments?: boolean}>,
185
+ ) => void;
186
+ type ArrayPatternReplaceSignature = (
187
+ target: ArrayPattern,
188
+ nodeToReplaceWith: DetachedNode<ArrayPattern>,
189
+ options?: $ReadOnly<{keepComments?: boolean}>,
190
+ ) => void;
191
+ type ArrayTypeAnnotationReplaceSignature = (
192
+ target: ArrayTypeAnnotation,
193
+ nodeToReplaceWith: DetachedNode<ArrayTypeAnnotation>,
194
+ options?: $ReadOnly<{keepComments?: boolean}>,
195
+ ) => void;
196
+ type ArrowFunctionExpressionReplaceSignature = (
197
+ target: ArrowFunctionExpression,
198
+ nodeToReplaceWith: DetachedNode<ArrowFunctionExpression>,
199
+ options?: $ReadOnly<{keepComments?: boolean}>,
200
+ ) => void;
201
+ type AssignmentExpressionReplaceSignature = (
202
+ target: AssignmentExpression,
203
+ nodeToReplaceWith: DetachedNode<AssignmentExpression>,
204
+ options?: $ReadOnly<{keepComments?: boolean}>,
205
+ ) => void;
206
+ type AssignmentPatternReplaceSignature = (
207
+ target: AssignmentPattern,
208
+ nodeToReplaceWith: DetachedNode<AssignmentPattern>,
209
+ options?: $ReadOnly<{keepComments?: boolean}>,
210
+ ) => void;
211
+ type AwaitExpressionReplaceSignature = (
212
+ target: AwaitExpression,
213
+ nodeToReplaceWith: DetachedNode<AwaitExpression>,
214
+ options?: $ReadOnly<{keepComments?: boolean}>,
215
+ ) => void;
216
+ type BigIntLiteralTypeAnnotationReplaceSignature = (
217
+ target: BigIntLiteralTypeAnnotation,
218
+ nodeToReplaceWith: DetachedNode<BigIntLiteralTypeAnnotation>,
219
+ options?: $ReadOnly<{keepComments?: boolean}>,
220
+ ) => void;
221
+ type BinaryExpressionReplaceSignature = (
222
+ target: BinaryExpression,
223
+ nodeToReplaceWith: DetachedNode<BinaryExpression>,
224
+ options?: $ReadOnly<{keepComments?: boolean}>,
225
+ ) => void;
226
+ type BlockStatementReplaceSignature = (
227
+ target: BlockStatement,
228
+ nodeToReplaceWith: DetachedNode<BlockStatement>,
229
+ options?: $ReadOnly<{keepComments?: boolean}>,
230
+ ) => void;
231
+ type BooleanLiteralTypeAnnotationReplaceSignature = (
232
+ target: BooleanLiteralTypeAnnotation,
233
+ nodeToReplaceWith: DetachedNode<BooleanLiteralTypeAnnotation>,
234
+ options?: $ReadOnly<{keepComments?: boolean}>,
235
+ ) => void;
236
+ type BooleanTypeAnnotationReplaceSignature = (
237
+ target: BooleanTypeAnnotation,
238
+ nodeToReplaceWith: DetachedNode<BooleanTypeAnnotation>,
239
+ options?: $ReadOnly<{keepComments?: boolean}>,
240
+ ) => void;
241
+ type BreakStatementReplaceSignature = (
242
+ target: BreakStatement,
243
+ nodeToReplaceWith: DetachedNode<BreakStatement>,
244
+ options?: $ReadOnly<{keepComments?: boolean}>,
245
+ ) => void;
246
+ type CallExpressionReplaceSignature = (
247
+ target: CallExpression,
248
+ nodeToReplaceWith: DetachedNode<CallExpression>,
249
+ options?: $ReadOnly<{keepComments?: boolean}>,
250
+ ) => void;
251
+ type CatchClauseReplaceSignature = (
252
+ target: CatchClause,
253
+ nodeToReplaceWith: DetachedNode<CatchClause>,
254
+ options?: $ReadOnly<{keepComments?: boolean}>,
255
+ ) => void;
256
+ type ClassBodyReplaceSignature = (
257
+ target: ClassBody,
258
+ nodeToReplaceWith: DetachedNode<ClassBody>,
259
+ options?: $ReadOnly<{keepComments?: boolean}>,
260
+ ) => void;
261
+ type ClassDeclarationReplaceSignature = (
262
+ target: ClassDeclaration,
263
+ nodeToReplaceWith: DetachedNode<ClassDeclaration>,
264
+ options?: $ReadOnly<{keepComments?: boolean}>,
265
+ ) => void;
266
+ type ClassExpressionReplaceSignature = (
267
+ target: ClassExpression,
268
+ nodeToReplaceWith: DetachedNode<ClassExpression>,
269
+ options?: $ReadOnly<{keepComments?: boolean}>,
270
+ ) => void;
271
+ type ClassImplementsReplaceSignature = (
272
+ target: ClassImplements,
273
+ nodeToReplaceWith: DetachedNode<ClassImplements>,
274
+ options?: $ReadOnly<{keepComments?: boolean}>,
275
+ ) => void;
276
+ type ClassPrivatePropertyReplaceSignature = (
277
+ target: ClassPrivateProperty,
278
+ nodeToReplaceWith: DetachedNode<ClassPrivateProperty>,
279
+ options?: $ReadOnly<{keepComments?: boolean}>,
280
+ ) => void;
281
+ type ClassPropertyReplaceSignature = (
282
+ target: ClassProperty,
283
+ nodeToReplaceWith: DetachedNode<ClassProperty>,
284
+ options?: $ReadOnly<{keepComments?: boolean}>,
285
+ ) => void;
286
+ type ConditionalExpressionReplaceSignature = (
287
+ target: ConditionalExpression,
288
+ nodeToReplaceWith: DetachedNode<ConditionalExpression>,
289
+ options?: $ReadOnly<{keepComments?: boolean}>,
290
+ ) => void;
291
+ type ContinueStatementReplaceSignature = (
292
+ target: ContinueStatement,
293
+ nodeToReplaceWith: DetachedNode<ContinueStatement>,
294
+ options?: $ReadOnly<{keepComments?: boolean}>,
295
+ ) => void;
296
+ type DebuggerStatementReplaceSignature = (
297
+ target: DebuggerStatement,
298
+ nodeToReplaceWith: DetachedNode<DebuggerStatement>,
299
+ options?: $ReadOnly<{keepComments?: boolean}>,
300
+ ) => void;
301
+ type DeclareClassReplaceSignature = (
302
+ target: DeclareClass,
303
+ nodeToReplaceWith: DetachedNode<DeclareClass>,
304
+ options?: $ReadOnly<{keepComments?: boolean}>,
305
+ ) => void;
306
+ type DeclaredPredicateReplaceSignature = (
307
+ target: DeclaredPredicate,
308
+ nodeToReplaceWith: DetachedNode<DeclaredPredicate>,
309
+ options?: $ReadOnly<{keepComments?: boolean}>,
310
+ ) => void;
311
+ type DeclareExportAllDeclarationReplaceSignature = (
312
+ target: DeclareExportAllDeclaration,
313
+ nodeToReplaceWith: DetachedNode<DeclareExportAllDeclaration>,
314
+ options?: $ReadOnly<{keepComments?: boolean}>,
315
+ ) => void;
316
+ type DeclareExportDeclarationReplaceSignature = (
317
+ target: DeclareExportDeclaration,
318
+ nodeToReplaceWith: DetachedNode<DeclareExportDeclaration>,
319
+ options?: $ReadOnly<{keepComments?: boolean}>,
320
+ ) => void;
321
+ type DeclareFunctionReplaceSignature = (
322
+ target: DeclareFunction,
323
+ nodeToReplaceWith: DetachedNode<DeclareFunction>,
324
+ options?: $ReadOnly<{keepComments?: boolean}>,
325
+ ) => void;
326
+ type DeclareInterfaceReplaceSignature = (
327
+ target: DeclareInterface,
328
+ nodeToReplaceWith: DetachedNode<DeclareInterface>,
329
+ options?: $ReadOnly<{keepComments?: boolean}>,
330
+ ) => void;
331
+ type DeclareModuleReplaceSignature = (
332
+ target: DeclareModule,
333
+ nodeToReplaceWith: DetachedNode<DeclareModule>,
334
+ options?: $ReadOnly<{keepComments?: boolean}>,
335
+ ) => void;
336
+ type DeclareModuleExportsReplaceSignature = (
337
+ target: DeclareModuleExports,
338
+ nodeToReplaceWith: DetachedNode<DeclareModuleExports>,
339
+ options?: $ReadOnly<{keepComments?: boolean}>,
340
+ ) => void;
341
+ type DeclareOpaqueTypeReplaceSignature = (
342
+ target: DeclareOpaqueType,
343
+ nodeToReplaceWith: DetachedNode<DeclareOpaqueType>,
344
+ options?: $ReadOnly<{keepComments?: boolean}>,
345
+ ) => void;
346
+ type DeclareTypeAliasReplaceSignature = (
347
+ target: DeclareTypeAlias,
348
+ nodeToReplaceWith: DetachedNode<DeclareTypeAlias>,
349
+ options?: $ReadOnly<{keepComments?: boolean}>,
350
+ ) => void;
351
+ type DeclareVariableReplaceSignature = (
352
+ target: DeclareVariable,
353
+ nodeToReplaceWith: DetachedNode<DeclareVariable>,
354
+ options?: $ReadOnly<{keepComments?: boolean}>,
355
+ ) => void;
356
+ type DoWhileStatementReplaceSignature = (
357
+ target: DoWhileStatement,
358
+ nodeToReplaceWith: DetachedNode<DoWhileStatement>,
359
+ options?: $ReadOnly<{keepComments?: boolean}>,
360
+ ) => void;
361
+ type EmptyStatementReplaceSignature = (
362
+ target: EmptyStatement,
363
+ nodeToReplaceWith: DetachedNode<EmptyStatement>,
364
+ options?: $ReadOnly<{keepComments?: boolean}>,
365
+ ) => void;
366
+ type EmptyTypeAnnotationReplaceSignature = (
367
+ target: EmptyTypeAnnotation,
368
+ nodeToReplaceWith: DetachedNode<EmptyTypeAnnotation>,
369
+ options?: $ReadOnly<{keepComments?: boolean}>,
370
+ ) => void;
371
+ type EnumBooleanBodyReplaceSignature = (
372
+ target: EnumBooleanBody,
373
+ nodeToReplaceWith: DetachedNode<EnumBooleanBody>,
374
+ options?: $ReadOnly<{keepComments?: boolean}>,
375
+ ) => void;
376
+ type EnumBooleanMemberReplaceSignature = (
377
+ target: EnumBooleanMember,
378
+ nodeToReplaceWith: DetachedNode<EnumBooleanMember>,
379
+ options?: $ReadOnly<{keepComments?: boolean}>,
380
+ ) => void;
381
+ type EnumDeclarationReplaceSignature = (
382
+ target: EnumDeclaration,
383
+ nodeToReplaceWith: DetachedNode<EnumDeclaration>,
384
+ options?: $ReadOnly<{keepComments?: boolean}>,
385
+ ) => void;
386
+ type EnumDefaultedMemberReplaceSignature = (
387
+ target: EnumDefaultedMember,
388
+ nodeToReplaceWith: DetachedNode<EnumDefaultedMember>,
389
+ options?: $ReadOnly<{keepComments?: boolean}>,
390
+ ) => void;
391
+ type EnumNumberBodyReplaceSignature = (
392
+ target: EnumNumberBody,
393
+ nodeToReplaceWith: DetachedNode<EnumNumberBody>,
394
+ options?: $ReadOnly<{keepComments?: boolean}>,
395
+ ) => void;
396
+ type EnumNumberMemberReplaceSignature = (
397
+ target: EnumNumberMember,
398
+ nodeToReplaceWith: DetachedNode<EnumNumberMember>,
399
+ options?: $ReadOnly<{keepComments?: boolean}>,
400
+ ) => void;
401
+ type EnumStringBodyReplaceSignature = (
402
+ target: EnumStringBody,
403
+ nodeToReplaceWith: DetachedNode<EnumStringBody>,
404
+ options?: $ReadOnly<{keepComments?: boolean}>,
405
+ ) => void;
406
+ type EnumStringMemberReplaceSignature = (
407
+ target: EnumStringMember,
408
+ nodeToReplaceWith: DetachedNode<EnumStringMember>,
409
+ options?: $ReadOnly<{keepComments?: boolean}>,
410
+ ) => void;
411
+ type EnumSymbolBodyReplaceSignature = (
412
+ target: EnumSymbolBody,
413
+ nodeToReplaceWith: DetachedNode<EnumSymbolBody>,
414
+ options?: $ReadOnly<{keepComments?: boolean}>,
415
+ ) => void;
416
+ type ExistsTypeAnnotationReplaceSignature = (
417
+ target: ExistsTypeAnnotation,
418
+ nodeToReplaceWith: DetachedNode<ExistsTypeAnnotation>,
419
+ options?: $ReadOnly<{keepComments?: boolean}>,
420
+ ) => void;
421
+ type ExportAllDeclarationReplaceSignature = (
422
+ target: ExportAllDeclaration,
423
+ nodeToReplaceWith: DetachedNode<ExportAllDeclaration>,
424
+ options?: $ReadOnly<{keepComments?: boolean}>,
425
+ ) => void;
426
+ type ExportDefaultDeclarationReplaceSignature = (
427
+ target: ExportDefaultDeclaration,
428
+ nodeToReplaceWith: DetachedNode<ExportDefaultDeclaration>,
429
+ options?: $ReadOnly<{keepComments?: boolean}>,
430
+ ) => void;
431
+ type ExportNamedDeclarationReplaceSignature = (
432
+ target: ExportNamedDeclaration,
433
+ nodeToReplaceWith: DetachedNode<ExportNamedDeclaration>,
434
+ options?: $ReadOnly<{keepComments?: boolean}>,
435
+ ) => void;
436
+ type ExportNamespaceSpecifierReplaceSignature = (
437
+ target: ExportNamespaceSpecifier,
438
+ nodeToReplaceWith: DetachedNode<ExportNamespaceSpecifier>,
439
+ options?: $ReadOnly<{keepComments?: boolean}>,
440
+ ) => void;
441
+ type ExportSpecifierReplaceSignature = (
442
+ target: ExportSpecifier,
443
+ nodeToReplaceWith: DetachedNode<ExportSpecifier>,
444
+ options?: $ReadOnly<{keepComments?: boolean}>,
445
+ ) => void;
446
+ type ExpressionStatementReplaceSignature = (
447
+ target: ExpressionStatement,
448
+ nodeToReplaceWith: DetachedNode<ExpressionStatement>,
449
+ options?: $ReadOnly<{keepComments?: boolean}>,
450
+ ) => void;
451
+ type ForInStatementReplaceSignature = (
452
+ target: ForInStatement,
453
+ nodeToReplaceWith: DetachedNode<ForInStatement>,
454
+ options?: $ReadOnly<{keepComments?: boolean}>,
455
+ ) => void;
456
+ type ForOfStatementReplaceSignature = (
457
+ target: ForOfStatement,
458
+ nodeToReplaceWith: DetachedNode<ForOfStatement>,
459
+ options?: $ReadOnly<{keepComments?: boolean}>,
460
+ ) => void;
461
+ type ForStatementReplaceSignature = (
462
+ target: ForStatement,
463
+ nodeToReplaceWith: DetachedNode<ForStatement>,
464
+ options?: $ReadOnly<{keepComments?: boolean}>,
465
+ ) => void;
466
+ type FunctionDeclarationReplaceSignature = (
467
+ target: FunctionDeclaration,
468
+ nodeToReplaceWith: DetachedNode<FunctionDeclaration>,
469
+ options?: $ReadOnly<{keepComments?: boolean}>,
470
+ ) => void;
471
+ type FunctionExpressionReplaceSignature = (
472
+ target: FunctionExpression,
473
+ nodeToReplaceWith: DetachedNode<FunctionExpression>,
474
+ options?: $ReadOnly<{keepComments?: boolean}>,
475
+ ) => void;
476
+ type FunctionTypeAnnotationReplaceSignature = (
477
+ target: FunctionTypeAnnotation,
478
+ nodeToReplaceWith: DetachedNode<FunctionTypeAnnotation>,
479
+ options?: $ReadOnly<{keepComments?: boolean}>,
480
+ ) => void;
481
+ type FunctionTypeParamReplaceSignature = (
482
+ target: FunctionTypeParam,
483
+ nodeToReplaceWith: DetachedNode<FunctionTypeParam>,
484
+ options?: $ReadOnly<{keepComments?: boolean}>,
485
+ ) => void;
486
+ type GenericTypeAnnotationReplaceSignature = (
487
+ target: GenericTypeAnnotation,
488
+ nodeToReplaceWith: DetachedNode<GenericTypeAnnotation>,
489
+ options?: $ReadOnly<{keepComments?: boolean}>,
490
+ ) => void;
491
+ type IdentifierReplaceSignature = (
492
+ target: Identifier,
493
+ nodeToReplaceWith: DetachedNode<Identifier>,
494
+ options?: $ReadOnly<{keepComments?: boolean}>,
495
+ ) => void;
496
+ type IfStatementReplaceSignature = (
497
+ target: IfStatement,
498
+ nodeToReplaceWith: DetachedNode<IfStatement>,
499
+ options?: $ReadOnly<{keepComments?: boolean}>,
500
+ ) => void;
501
+ type ImportAttributeReplaceSignature = (
502
+ target: ImportAttribute,
503
+ nodeToReplaceWith: DetachedNode<ImportAttribute>,
504
+ options?: $ReadOnly<{keepComments?: boolean}>,
505
+ ) => void;
506
+ type ImportDeclarationReplaceSignature = (
507
+ target: ImportDeclaration,
508
+ nodeToReplaceWith: DetachedNode<ImportDeclaration>,
509
+ options?: $ReadOnly<{keepComments?: boolean}>,
510
+ ) => void;
511
+ type ImportDefaultSpecifierReplaceSignature = (
512
+ target: ImportDefaultSpecifier,
513
+ nodeToReplaceWith: DetachedNode<ImportDefaultSpecifier>,
514
+ options?: $ReadOnly<{keepComments?: boolean}>,
515
+ ) => void;
516
+ type ImportExpressionReplaceSignature = (
517
+ target: ImportExpression,
518
+ nodeToReplaceWith: DetachedNode<ImportExpression>,
519
+ options?: $ReadOnly<{keepComments?: boolean}>,
520
+ ) => void;
521
+ type ImportNamespaceSpecifierReplaceSignature = (
522
+ target: ImportNamespaceSpecifier,
523
+ nodeToReplaceWith: DetachedNode<ImportNamespaceSpecifier>,
524
+ options?: $ReadOnly<{keepComments?: boolean}>,
525
+ ) => void;
526
+ type ImportSpecifierReplaceSignature = (
527
+ target: ImportSpecifier,
528
+ nodeToReplaceWith: DetachedNode<ImportSpecifier>,
529
+ options?: $ReadOnly<{keepComments?: boolean}>,
530
+ ) => void;
531
+ type IndexedAccessTypeReplaceSignature = (
532
+ target: IndexedAccessType,
533
+ nodeToReplaceWith: DetachedNode<IndexedAccessType>,
534
+ options?: $ReadOnly<{keepComments?: boolean}>,
535
+ ) => void;
536
+ type InferredPredicateReplaceSignature = (
537
+ target: InferredPredicate,
538
+ nodeToReplaceWith: DetachedNode<InferredPredicate>,
539
+ options?: $ReadOnly<{keepComments?: boolean}>,
540
+ ) => void;
541
+ type InterfaceDeclarationReplaceSignature = (
542
+ target: InterfaceDeclaration,
543
+ nodeToReplaceWith: DetachedNode<InterfaceDeclaration>,
544
+ options?: $ReadOnly<{keepComments?: boolean}>,
545
+ ) => void;
546
+ type InterfaceExtendsReplaceSignature = (
547
+ target: InterfaceExtends,
548
+ nodeToReplaceWith: DetachedNode<InterfaceExtends>,
549
+ options?: $ReadOnly<{keepComments?: boolean}>,
550
+ ) => void;
551
+ type InterfaceTypeAnnotationReplaceSignature = (
552
+ target: InterfaceTypeAnnotation,
553
+ nodeToReplaceWith: DetachedNode<InterfaceTypeAnnotation>,
554
+ options?: $ReadOnly<{keepComments?: boolean}>,
555
+ ) => void;
556
+ type IntersectionTypeAnnotationReplaceSignature = (
557
+ target: IntersectionTypeAnnotation,
558
+ nodeToReplaceWith: DetachedNode<IntersectionTypeAnnotation>,
559
+ options?: $ReadOnly<{keepComments?: boolean}>,
560
+ ) => void;
561
+ type JSXAttributeReplaceSignature = (
562
+ target: JSXAttribute,
563
+ nodeToReplaceWith: DetachedNode<JSXAttribute>,
564
+ options?: $ReadOnly<{keepComments?: boolean}>,
565
+ ) => void;
566
+ type JSXClosingElementReplaceSignature = (
567
+ target: JSXClosingElement,
568
+ nodeToReplaceWith: DetachedNode<JSXClosingElement>,
569
+ options?: $ReadOnly<{keepComments?: boolean}>,
570
+ ) => void;
571
+ type JSXClosingFragmentReplaceSignature = (
572
+ target: JSXClosingFragment,
573
+ nodeToReplaceWith: DetachedNode<JSXClosingFragment>,
574
+ options?: $ReadOnly<{keepComments?: boolean}>,
575
+ ) => void;
576
+ type JSXElementReplaceSignature = (
577
+ target: JSXElement,
578
+ nodeToReplaceWith: DetachedNode<JSXElement>,
579
+ options?: $ReadOnly<{keepComments?: boolean}>,
580
+ ) => void;
581
+ type JSXEmptyExpressionReplaceSignature = (
582
+ target: JSXEmptyExpression,
583
+ nodeToReplaceWith: DetachedNode<JSXEmptyExpression>,
584
+ options?: $ReadOnly<{keepComments?: boolean}>,
585
+ ) => void;
586
+ type JSXExpressionContainerReplaceSignature = (
587
+ target: JSXExpressionContainer,
588
+ nodeToReplaceWith: DetachedNode<JSXExpressionContainer>,
589
+ options?: $ReadOnly<{keepComments?: boolean}>,
590
+ ) => void;
591
+ type JSXFragmentReplaceSignature = (
592
+ target: JSXFragment,
593
+ nodeToReplaceWith: DetachedNode<JSXFragment>,
594
+ options?: $ReadOnly<{keepComments?: boolean}>,
595
+ ) => void;
596
+ type JSXIdentifierReplaceSignature = (
597
+ target: JSXIdentifier,
598
+ nodeToReplaceWith: DetachedNode<JSXIdentifier>,
599
+ options?: $ReadOnly<{keepComments?: boolean}>,
600
+ ) => void;
601
+ type JSXMemberExpressionReplaceSignature = (
602
+ target: JSXMemberExpression,
603
+ nodeToReplaceWith: DetachedNode<JSXMemberExpression>,
604
+ options?: $ReadOnly<{keepComments?: boolean}>,
605
+ ) => void;
606
+ type JSXNamespacedNameReplaceSignature = (
607
+ target: JSXNamespacedName,
608
+ nodeToReplaceWith: DetachedNode<JSXNamespacedName>,
609
+ options?: $ReadOnly<{keepComments?: boolean}>,
610
+ ) => void;
611
+ type JSXOpeningElementReplaceSignature = (
612
+ target: JSXOpeningElement,
613
+ nodeToReplaceWith: DetachedNode<JSXOpeningElement>,
614
+ options?: $ReadOnly<{keepComments?: boolean}>,
615
+ ) => void;
616
+ type JSXOpeningFragmentReplaceSignature = (
617
+ target: JSXOpeningFragment,
618
+ nodeToReplaceWith: DetachedNode<JSXOpeningFragment>,
619
+ options?: $ReadOnly<{keepComments?: boolean}>,
620
+ ) => void;
621
+ type JSXSpreadAttributeReplaceSignature = (
622
+ target: JSXSpreadAttribute,
623
+ nodeToReplaceWith: DetachedNode<JSXSpreadAttribute>,
624
+ options?: $ReadOnly<{keepComments?: boolean}>,
625
+ ) => void;
626
+ type JSXSpreadChildReplaceSignature = (
627
+ target: JSXSpreadChild,
628
+ nodeToReplaceWith: DetachedNode<JSXSpreadChild>,
629
+ options?: $ReadOnly<{keepComments?: boolean}>,
630
+ ) => void;
631
+ type JSXTextReplaceSignature = (
632
+ target: JSXText,
633
+ nodeToReplaceWith: DetachedNode<JSXText>,
634
+ options?: $ReadOnly<{keepComments?: boolean}>,
635
+ ) => void;
636
+ type LabeledStatementReplaceSignature = (
637
+ target: LabeledStatement,
638
+ nodeToReplaceWith: DetachedNode<LabeledStatement>,
639
+ options?: $ReadOnly<{keepComments?: boolean}>,
640
+ ) => void;
641
+ type LogicalExpressionReplaceSignature = (
642
+ target: LogicalExpression,
643
+ nodeToReplaceWith: DetachedNode<LogicalExpression>,
644
+ options?: $ReadOnly<{keepComments?: boolean}>,
645
+ ) => void;
646
+ type MemberExpressionReplaceSignature = (
647
+ target: MemberExpression,
648
+ nodeToReplaceWith: DetachedNode<MemberExpression>,
649
+ options?: $ReadOnly<{keepComments?: boolean}>,
650
+ ) => void;
651
+ type MetaPropertyReplaceSignature = (
652
+ target: MetaProperty,
653
+ nodeToReplaceWith: DetachedNode<MetaProperty>,
654
+ options?: $ReadOnly<{keepComments?: boolean}>,
655
+ ) => void;
656
+ type MethodDefinitionReplaceSignature = (
657
+ target: MethodDefinition,
658
+ nodeToReplaceWith: DetachedNode<MethodDefinition>,
659
+ options?: $ReadOnly<{keepComments?: boolean}>,
660
+ ) => void;
661
+ type MixedTypeAnnotationReplaceSignature = (
662
+ target: MixedTypeAnnotation,
663
+ nodeToReplaceWith: DetachedNode<MixedTypeAnnotation>,
664
+ options?: $ReadOnly<{keepComments?: boolean}>,
665
+ ) => void;
666
+ type NewExpressionReplaceSignature = (
667
+ target: NewExpression,
668
+ nodeToReplaceWith: DetachedNode<NewExpression>,
669
+ options?: $ReadOnly<{keepComments?: boolean}>,
670
+ ) => void;
671
+ type NullableTypeAnnotationReplaceSignature = (
672
+ target: NullableTypeAnnotation,
673
+ nodeToReplaceWith: DetachedNode<NullableTypeAnnotation>,
674
+ options?: $ReadOnly<{keepComments?: boolean}>,
675
+ ) => void;
676
+ type NullLiteralTypeAnnotationReplaceSignature = (
677
+ target: NullLiteralTypeAnnotation,
678
+ nodeToReplaceWith: DetachedNode<NullLiteralTypeAnnotation>,
679
+ options?: $ReadOnly<{keepComments?: boolean}>,
680
+ ) => void;
681
+ type NumberLiteralTypeAnnotationReplaceSignature = (
682
+ target: NumberLiteralTypeAnnotation,
683
+ nodeToReplaceWith: DetachedNode<NumberLiteralTypeAnnotation>,
684
+ options?: $ReadOnly<{keepComments?: boolean}>,
685
+ ) => void;
686
+ type NumberTypeAnnotationReplaceSignature = (
687
+ target: NumberTypeAnnotation,
688
+ nodeToReplaceWith: DetachedNode<NumberTypeAnnotation>,
689
+ options?: $ReadOnly<{keepComments?: boolean}>,
690
+ ) => void;
691
+ type ObjectExpressionReplaceSignature = (
692
+ target: ObjectExpression,
693
+ nodeToReplaceWith: DetachedNode<ObjectExpression>,
694
+ options?: $ReadOnly<{keepComments?: boolean}>,
695
+ ) => void;
696
+ type ObjectPatternReplaceSignature = (
697
+ target: ObjectPattern,
698
+ nodeToReplaceWith: DetachedNode<ObjectPattern>,
699
+ options?: $ReadOnly<{keepComments?: boolean}>,
700
+ ) => void;
701
+ type ObjectTypeAnnotationReplaceSignature = (
702
+ target: ObjectTypeAnnotation,
703
+ nodeToReplaceWith: DetachedNode<ObjectTypeAnnotation>,
704
+ options?: $ReadOnly<{keepComments?: boolean}>,
705
+ ) => void;
706
+ type ObjectTypeCallPropertyReplaceSignature = (
707
+ target: ObjectTypeCallProperty,
708
+ nodeToReplaceWith: DetachedNode<ObjectTypeCallProperty>,
709
+ options?: $ReadOnly<{keepComments?: boolean}>,
710
+ ) => void;
711
+ type ObjectTypeIndexerReplaceSignature = (
712
+ target: ObjectTypeIndexer,
713
+ nodeToReplaceWith: DetachedNode<ObjectTypeIndexer>,
714
+ options?: $ReadOnly<{keepComments?: boolean}>,
715
+ ) => void;
716
+ type ObjectTypeInternalSlotReplaceSignature = (
717
+ target: ObjectTypeInternalSlot,
718
+ nodeToReplaceWith: DetachedNode<ObjectTypeInternalSlot>,
719
+ options?: $ReadOnly<{keepComments?: boolean}>,
720
+ ) => void;
721
+ type ObjectTypePropertyReplaceSignature = (
722
+ target: ObjectTypeProperty,
723
+ nodeToReplaceWith: DetachedNode<ObjectTypeProperty>,
724
+ options?: $ReadOnly<{keepComments?: boolean}>,
725
+ ) => void;
726
+ type ObjectTypeSpreadPropertyReplaceSignature = (
727
+ target: ObjectTypeSpreadProperty,
728
+ nodeToReplaceWith: DetachedNode<ObjectTypeSpreadProperty>,
729
+ options?: $ReadOnly<{keepComments?: boolean}>,
730
+ ) => void;
731
+ type OpaqueTypeReplaceSignature = (
732
+ target: OpaqueType,
733
+ nodeToReplaceWith: DetachedNode<OpaqueType>,
734
+ options?: $ReadOnly<{keepComments?: boolean}>,
735
+ ) => void;
736
+ type OptionalCallExpressionReplaceSignature = (
737
+ target: OptionalCallExpression,
738
+ nodeToReplaceWith: DetachedNode<OptionalCallExpression>,
739
+ options?: $ReadOnly<{keepComments?: boolean}>,
740
+ ) => void;
741
+ type OptionalIndexedAccessTypeReplaceSignature = (
742
+ target: OptionalIndexedAccessType,
743
+ nodeToReplaceWith: DetachedNode<OptionalIndexedAccessType>,
744
+ options?: $ReadOnly<{keepComments?: boolean}>,
745
+ ) => void;
746
+ type OptionalMemberExpressionReplaceSignature = (
747
+ target: OptionalMemberExpression,
748
+ nodeToReplaceWith: DetachedNode<OptionalMemberExpression>,
749
+ options?: $ReadOnly<{keepComments?: boolean}>,
750
+ ) => void;
751
+ type PrivateNameReplaceSignature = (
752
+ target: PrivateName,
753
+ nodeToReplaceWith: DetachedNode<PrivateName>,
754
+ options?: $ReadOnly<{keepComments?: boolean}>,
755
+ ) => void;
756
+ type ProgramReplaceSignature = (
757
+ target: Program,
758
+ nodeToReplaceWith: DetachedNode<Program>,
759
+ options?: $ReadOnly<{keepComments?: boolean}>,
760
+ ) => void;
761
+ type PropertyReplaceSignature = (
762
+ target: Property,
763
+ nodeToReplaceWith: DetachedNode<Property>,
764
+ options?: $ReadOnly<{keepComments?: boolean}>,
765
+ ) => void;
766
+ type QualifiedTypeIdentifierReplaceSignature = (
767
+ target: QualifiedTypeIdentifier,
768
+ nodeToReplaceWith: DetachedNode<QualifiedTypeIdentifier>,
769
+ options?: $ReadOnly<{keepComments?: boolean}>,
770
+ ) => void;
771
+ type RestElementReplaceSignature = (
772
+ target: RestElement,
773
+ nodeToReplaceWith: DetachedNode<RestElement>,
774
+ options?: $ReadOnly<{keepComments?: boolean}>,
775
+ ) => void;
776
+ type ReturnStatementReplaceSignature = (
777
+ target: ReturnStatement,
778
+ nodeToReplaceWith: DetachedNode<ReturnStatement>,
779
+ options?: $ReadOnly<{keepComments?: boolean}>,
780
+ ) => void;
781
+ type SequenceExpressionReplaceSignature = (
782
+ target: SequenceExpression,
783
+ nodeToReplaceWith: DetachedNode<SequenceExpression>,
784
+ options?: $ReadOnly<{keepComments?: boolean}>,
785
+ ) => void;
786
+ type SpreadElementReplaceSignature = (
787
+ target: SpreadElement,
788
+ nodeToReplaceWith: DetachedNode<SpreadElement>,
789
+ options?: $ReadOnly<{keepComments?: boolean}>,
790
+ ) => void;
791
+ type StringLiteralTypeAnnotationReplaceSignature = (
792
+ target: StringLiteralTypeAnnotation,
793
+ nodeToReplaceWith: DetachedNode<StringLiteralTypeAnnotation>,
794
+ options?: $ReadOnly<{keepComments?: boolean}>,
795
+ ) => void;
796
+ type StringTypeAnnotationReplaceSignature = (
797
+ target: StringTypeAnnotation,
798
+ nodeToReplaceWith: DetachedNode<StringTypeAnnotation>,
799
+ options?: $ReadOnly<{keepComments?: boolean}>,
800
+ ) => void;
801
+ type SuperReplaceSignature = (
802
+ target: Super,
803
+ nodeToReplaceWith: DetachedNode<Super>,
804
+ options?: $ReadOnly<{keepComments?: boolean}>,
805
+ ) => void;
806
+ type SwitchCaseReplaceSignature = (
807
+ target: SwitchCase,
808
+ nodeToReplaceWith: DetachedNode<SwitchCase>,
809
+ options?: $ReadOnly<{keepComments?: boolean}>,
810
+ ) => void;
811
+ type SwitchStatementReplaceSignature = (
812
+ target: SwitchStatement,
813
+ nodeToReplaceWith: DetachedNode<SwitchStatement>,
814
+ options?: $ReadOnly<{keepComments?: boolean}>,
815
+ ) => void;
816
+ type SymbolTypeAnnotationReplaceSignature = (
817
+ target: SymbolTypeAnnotation,
818
+ nodeToReplaceWith: DetachedNode<SymbolTypeAnnotation>,
819
+ options?: $ReadOnly<{keepComments?: boolean}>,
820
+ ) => void;
821
+ type TaggedTemplateExpressionReplaceSignature = (
822
+ target: TaggedTemplateExpression,
823
+ nodeToReplaceWith: DetachedNode<TaggedTemplateExpression>,
824
+ options?: $ReadOnly<{keepComments?: boolean}>,
825
+ ) => void;
826
+ type TemplateElementReplaceSignature = (
827
+ target: TemplateElement,
828
+ nodeToReplaceWith: DetachedNode<TemplateElement>,
829
+ options?: $ReadOnly<{keepComments?: boolean}>,
830
+ ) => void;
831
+ type TemplateLiteralReplaceSignature = (
832
+ target: TemplateLiteral,
833
+ nodeToReplaceWith: DetachedNode<TemplateLiteral>,
834
+ options?: $ReadOnly<{keepComments?: boolean}>,
835
+ ) => void;
836
+ type ThisExpressionReplaceSignature = (
837
+ target: ThisExpression,
838
+ nodeToReplaceWith: DetachedNode<ThisExpression>,
839
+ options?: $ReadOnly<{keepComments?: boolean}>,
840
+ ) => void;
841
+ type ThisTypeAnnotationReplaceSignature = (
842
+ target: ThisTypeAnnotation,
843
+ nodeToReplaceWith: DetachedNode<ThisTypeAnnotation>,
844
+ options?: $ReadOnly<{keepComments?: boolean}>,
845
+ ) => void;
846
+ type ThrowStatementReplaceSignature = (
847
+ target: ThrowStatement,
848
+ nodeToReplaceWith: DetachedNode<ThrowStatement>,
849
+ options?: $ReadOnly<{keepComments?: boolean}>,
850
+ ) => void;
851
+ type TryStatementReplaceSignature = (
852
+ target: TryStatement,
853
+ nodeToReplaceWith: DetachedNode<TryStatement>,
854
+ options?: $ReadOnly<{keepComments?: boolean}>,
855
+ ) => void;
856
+ type TupleTypeAnnotationReplaceSignature = (
857
+ target: TupleTypeAnnotation,
858
+ nodeToReplaceWith: DetachedNode<TupleTypeAnnotation>,
859
+ options?: $ReadOnly<{keepComments?: boolean}>,
860
+ ) => void;
861
+ type TypeAliasReplaceSignature = (
862
+ target: TypeAlias,
863
+ nodeToReplaceWith: DetachedNode<TypeAlias>,
864
+ options?: $ReadOnly<{keepComments?: boolean}>,
865
+ ) => void;
866
+ type TypeAnnotationReplaceSignature = (
867
+ target: TypeAnnotation,
868
+ nodeToReplaceWith: DetachedNode<TypeAnnotation>,
869
+ options?: $ReadOnly<{keepComments?: boolean}>,
870
+ ) => void;
871
+ type TypeCastExpressionReplaceSignature = (
872
+ target: TypeCastExpression,
873
+ nodeToReplaceWith: DetachedNode<TypeCastExpression>,
874
+ options?: $ReadOnly<{keepComments?: boolean}>,
875
+ ) => void;
876
+ type TypeofTypeAnnotationReplaceSignature = (
877
+ target: TypeofTypeAnnotation,
878
+ nodeToReplaceWith: DetachedNode<TypeofTypeAnnotation>,
879
+ options?: $ReadOnly<{keepComments?: boolean}>,
880
+ ) => void;
881
+ type TypeParameterReplaceSignature = (
882
+ target: TypeParameter,
883
+ nodeToReplaceWith: DetachedNode<TypeParameter>,
884
+ options?: $ReadOnly<{keepComments?: boolean}>,
885
+ ) => void;
886
+ type TypeParameterDeclarationReplaceSignature = (
887
+ target: TypeParameterDeclaration,
888
+ nodeToReplaceWith: DetachedNode<TypeParameterDeclaration>,
889
+ options?: $ReadOnly<{keepComments?: boolean}>,
890
+ ) => void;
891
+ type TypeParameterInstantiationReplaceSignature = (
892
+ target: TypeParameterInstantiation,
893
+ nodeToReplaceWith: DetachedNode<TypeParameterInstantiation>,
894
+ options?: $ReadOnly<{keepComments?: boolean}>,
895
+ ) => void;
896
+ type UnaryExpressionReplaceSignature = (
897
+ target: UnaryExpression,
898
+ nodeToReplaceWith: DetachedNode<UnaryExpression>,
899
+ options?: $ReadOnly<{keepComments?: boolean}>,
900
+ ) => void;
901
+ type UnionTypeAnnotationReplaceSignature = (
902
+ target: UnionTypeAnnotation,
903
+ nodeToReplaceWith: DetachedNode<UnionTypeAnnotation>,
904
+ options?: $ReadOnly<{keepComments?: boolean}>,
905
+ ) => void;
906
+ type UpdateExpressionReplaceSignature = (
907
+ target: UpdateExpression,
908
+ nodeToReplaceWith: DetachedNode<UpdateExpression>,
909
+ options?: $ReadOnly<{keepComments?: boolean}>,
910
+ ) => void;
911
+ type VariableDeclarationReplaceSignature = (
912
+ target: VariableDeclaration,
913
+ nodeToReplaceWith: DetachedNode<VariableDeclaration>,
914
+ options?: $ReadOnly<{keepComments?: boolean}>,
915
+ ) => void;
916
+ type VariableDeclaratorReplaceSignature = (
917
+ target: VariableDeclarator,
918
+ nodeToReplaceWith: DetachedNode<VariableDeclarator>,
919
+ options?: $ReadOnly<{keepComments?: boolean}>,
920
+ ) => void;
921
+ type VarianceReplaceSignature = (
922
+ target: Variance,
923
+ nodeToReplaceWith: DetachedNode<Variance>,
924
+ options?: $ReadOnly<{keepComments?: boolean}>,
925
+ ) => void;
926
+ type VoidTypeAnnotationReplaceSignature = (
927
+ target: VoidTypeAnnotation,
928
+ nodeToReplaceWith: DetachedNode<VoidTypeAnnotation>,
929
+ options?: $ReadOnly<{keepComments?: boolean}>,
930
+ ) => void;
931
+ type WhileStatementReplaceSignature = (
932
+ target: WhileStatement,
933
+ nodeToReplaceWith: DetachedNode<WhileStatement>,
934
+ options?: $ReadOnly<{keepComments?: boolean}>,
935
+ ) => void;
936
+ type WithStatementReplaceSignature = (
937
+ target: WithStatement,
938
+ nodeToReplaceWith: DetachedNode<WithStatement>,
939
+ options?: $ReadOnly<{keepComments?: boolean}>,
940
+ ) => void;
941
+ type YieldExpressionReplaceSignature = (
942
+ target: YieldExpression,
943
+ nodeToReplaceWith: DetachedNode<YieldExpression>,
944
+ options?: $ReadOnly<{keepComments?: boolean}>,
945
+ ) => void;
946
+ type LiteralReplaceSignature = (
947
+ target: Literal,
948
+ nodeToReplaceWith: DetachedNode<Literal>,
949
+ options?: $ReadOnly<{keepComments?: boolean}>,
950
+ ) => void;
951
+ export type TransformReplaceSignatures = AnyTypeAnnotationReplaceSignature &
952
+ ArrayExpressionReplaceSignature &
953
+ ArrayPatternReplaceSignature &
954
+ ArrayTypeAnnotationReplaceSignature &
955
+ ArrowFunctionExpressionReplaceSignature &
956
+ AssignmentExpressionReplaceSignature &
957
+ AssignmentPatternReplaceSignature &
958
+ AwaitExpressionReplaceSignature &
959
+ BigIntLiteralTypeAnnotationReplaceSignature &
960
+ BinaryExpressionReplaceSignature &
961
+ BlockStatementReplaceSignature &
962
+ BooleanLiteralTypeAnnotationReplaceSignature &
963
+ BooleanTypeAnnotationReplaceSignature &
964
+ BreakStatementReplaceSignature &
965
+ CallExpressionReplaceSignature &
966
+ CatchClauseReplaceSignature &
967
+ ClassBodyReplaceSignature &
968
+ ClassDeclarationReplaceSignature &
969
+ ClassExpressionReplaceSignature &
970
+ ClassImplementsReplaceSignature &
971
+ ClassPrivatePropertyReplaceSignature &
972
+ ClassPropertyReplaceSignature &
973
+ ConditionalExpressionReplaceSignature &
974
+ ContinueStatementReplaceSignature &
975
+ DebuggerStatementReplaceSignature &
976
+ DeclareClassReplaceSignature &
977
+ DeclaredPredicateReplaceSignature &
978
+ DeclareExportAllDeclarationReplaceSignature &
979
+ DeclareExportDeclarationReplaceSignature &
980
+ DeclareFunctionReplaceSignature &
981
+ DeclareInterfaceReplaceSignature &
982
+ DeclareModuleReplaceSignature &
983
+ DeclareModuleExportsReplaceSignature &
984
+ DeclareOpaqueTypeReplaceSignature &
985
+ DeclareTypeAliasReplaceSignature &
986
+ DeclareVariableReplaceSignature &
987
+ DoWhileStatementReplaceSignature &
988
+ EmptyStatementReplaceSignature &
989
+ EmptyTypeAnnotationReplaceSignature &
990
+ EnumBooleanBodyReplaceSignature &
991
+ EnumBooleanMemberReplaceSignature &
992
+ EnumDeclarationReplaceSignature &
993
+ EnumDefaultedMemberReplaceSignature &
994
+ EnumNumberBodyReplaceSignature &
995
+ EnumNumberMemberReplaceSignature &
996
+ EnumStringBodyReplaceSignature &
997
+ EnumStringMemberReplaceSignature &
998
+ EnumSymbolBodyReplaceSignature &
999
+ ExistsTypeAnnotationReplaceSignature &
1000
+ ExportAllDeclarationReplaceSignature &
1001
+ ExportDefaultDeclarationReplaceSignature &
1002
+ ExportNamedDeclarationReplaceSignature &
1003
+ ExportNamespaceSpecifierReplaceSignature &
1004
+ ExportSpecifierReplaceSignature &
1005
+ ExpressionStatementReplaceSignature &
1006
+ ForInStatementReplaceSignature &
1007
+ ForOfStatementReplaceSignature &
1008
+ ForStatementReplaceSignature &
1009
+ FunctionDeclarationReplaceSignature &
1010
+ FunctionExpressionReplaceSignature &
1011
+ FunctionTypeAnnotationReplaceSignature &
1012
+ FunctionTypeParamReplaceSignature &
1013
+ GenericTypeAnnotationReplaceSignature &
1014
+ IdentifierReplaceSignature &
1015
+ IfStatementReplaceSignature &
1016
+ ImportAttributeReplaceSignature &
1017
+ ImportDeclarationReplaceSignature &
1018
+ ImportDefaultSpecifierReplaceSignature &
1019
+ ImportExpressionReplaceSignature &
1020
+ ImportNamespaceSpecifierReplaceSignature &
1021
+ ImportSpecifierReplaceSignature &
1022
+ IndexedAccessTypeReplaceSignature &
1023
+ InferredPredicateReplaceSignature &
1024
+ InterfaceDeclarationReplaceSignature &
1025
+ InterfaceExtendsReplaceSignature &
1026
+ InterfaceTypeAnnotationReplaceSignature &
1027
+ IntersectionTypeAnnotationReplaceSignature &
1028
+ JSXAttributeReplaceSignature &
1029
+ JSXClosingElementReplaceSignature &
1030
+ JSXClosingFragmentReplaceSignature &
1031
+ JSXElementReplaceSignature &
1032
+ JSXEmptyExpressionReplaceSignature &
1033
+ JSXExpressionContainerReplaceSignature &
1034
+ JSXFragmentReplaceSignature &
1035
+ JSXIdentifierReplaceSignature &
1036
+ JSXMemberExpressionReplaceSignature &
1037
+ JSXNamespacedNameReplaceSignature &
1038
+ JSXOpeningElementReplaceSignature &
1039
+ JSXOpeningFragmentReplaceSignature &
1040
+ JSXSpreadAttributeReplaceSignature &
1041
+ JSXSpreadChildReplaceSignature &
1042
+ JSXTextReplaceSignature &
1043
+ LabeledStatementReplaceSignature &
1044
+ LogicalExpressionReplaceSignature &
1045
+ MemberExpressionReplaceSignature &
1046
+ MetaPropertyReplaceSignature &
1047
+ MethodDefinitionReplaceSignature &
1048
+ MixedTypeAnnotationReplaceSignature &
1049
+ NewExpressionReplaceSignature &
1050
+ NullableTypeAnnotationReplaceSignature &
1051
+ NullLiteralTypeAnnotationReplaceSignature &
1052
+ NumberLiteralTypeAnnotationReplaceSignature &
1053
+ NumberTypeAnnotationReplaceSignature &
1054
+ ObjectExpressionReplaceSignature &
1055
+ ObjectPatternReplaceSignature &
1056
+ ObjectTypeAnnotationReplaceSignature &
1057
+ ObjectTypeCallPropertyReplaceSignature &
1058
+ ObjectTypeIndexerReplaceSignature &
1059
+ ObjectTypeInternalSlotReplaceSignature &
1060
+ ObjectTypePropertyReplaceSignature &
1061
+ ObjectTypeSpreadPropertyReplaceSignature &
1062
+ OpaqueTypeReplaceSignature &
1063
+ OptionalCallExpressionReplaceSignature &
1064
+ OptionalIndexedAccessTypeReplaceSignature &
1065
+ OptionalMemberExpressionReplaceSignature &
1066
+ PrivateNameReplaceSignature &
1067
+ ProgramReplaceSignature &
1068
+ PropertyReplaceSignature &
1069
+ QualifiedTypeIdentifierReplaceSignature &
1070
+ RestElementReplaceSignature &
1071
+ ReturnStatementReplaceSignature &
1072
+ SequenceExpressionReplaceSignature &
1073
+ SpreadElementReplaceSignature &
1074
+ StringLiteralTypeAnnotationReplaceSignature &
1075
+ StringTypeAnnotationReplaceSignature &
1076
+ SuperReplaceSignature &
1077
+ SwitchCaseReplaceSignature &
1078
+ SwitchStatementReplaceSignature &
1079
+ SymbolTypeAnnotationReplaceSignature &
1080
+ TaggedTemplateExpressionReplaceSignature &
1081
+ TemplateElementReplaceSignature &
1082
+ TemplateLiteralReplaceSignature &
1083
+ ThisExpressionReplaceSignature &
1084
+ ThisTypeAnnotationReplaceSignature &
1085
+ ThrowStatementReplaceSignature &
1086
+ TryStatementReplaceSignature &
1087
+ TupleTypeAnnotationReplaceSignature &
1088
+ TypeAliasReplaceSignature &
1089
+ TypeAnnotationReplaceSignature &
1090
+ TypeCastExpressionReplaceSignature &
1091
+ TypeofTypeAnnotationReplaceSignature &
1092
+ TypeParameterReplaceSignature &
1093
+ TypeParameterDeclarationReplaceSignature &
1094
+ TypeParameterInstantiationReplaceSignature &
1095
+ UnaryExpressionReplaceSignature &
1096
+ UnionTypeAnnotationReplaceSignature &
1097
+ UpdateExpressionReplaceSignature &
1098
+ VariableDeclarationReplaceSignature &
1099
+ VariableDeclaratorReplaceSignature &
1100
+ VarianceReplaceSignature &
1101
+ VoidTypeAnnotationReplaceSignature &
1102
+ WhileStatementReplaceSignature &
1103
+ WithStatementReplaceSignature &
1104
+ YieldExpressionReplaceSignature &
1105
+ LiteralReplaceSignature;