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