immosquare-cleaner 0.1.40 → 0.1.41

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/lib/immosquare-cleaner/version.rb +1 -1
  3. data/node_modules/@eslint/config-array/README.md +9 -3
  4. data/node_modules/@eslint/config-array/dist/cjs/index.cjs +1 -0
  5. data/node_modules/@eslint/config-array/dist/esm/index.js +1 -0
  6. data/node_modules/@eslint/config-array/package.json +2 -2
  7. data/node_modules/@eslint/eslintrc/node_modules/espree/LICENSE +25 -0
  8. data/node_modules/@eslint/eslintrc/node_modules/espree/README.md +244 -0
  9. data/node_modules/@eslint/eslintrc/node_modules/espree/dist/espree.cjs +883 -0
  10. data/node_modules/@eslint/eslintrc/node_modules/espree/espree.js +177 -0
  11. data/node_modules/@eslint/eslintrc/node_modules/espree/lib/espree.js +349 -0
  12. data/node_modules/@eslint/eslintrc/node_modules/espree/lib/features.js +27 -0
  13. data/node_modules/@eslint/eslintrc/node_modules/espree/lib/options.js +123 -0
  14. data/node_modules/@eslint/eslintrc/node_modules/espree/lib/token-translator.js +263 -0
  15. data/node_modules/@eslint/eslintrc/node_modules/espree/lib/version.js +3 -0
  16. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/CHANGELOG.md +880 -0
  17. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/LICENSE +21 -0
  18. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/README.md +283 -0
  19. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/bin/acorn +4 -0
  20. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/dist/acorn.d.mts +857 -0
  21. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/dist/acorn.d.ts +857 -0
  22. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/dist/acorn.js +6002 -0
  23. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/dist/acorn.mjs +5973 -0
  24. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/dist/bin.js +90 -0
  25. data/node_modules/@eslint/eslintrc/node_modules/espree/node_modules/acorn/package.json +50 -0
  26. data/node_modules/@eslint/eslintrc/node_modules/espree/package.json +86 -0
  27. data/node_modules/@eslint/js/package.json +1 -1
  28. data/node_modules/@eslint-community/regexpp/index.d.ts +19 -5
  29. data/node_modules/@eslint-community/regexpp/index.js +138 -17
  30. data/node_modules/@eslint-community/regexpp/index.js.map +1 -1
  31. data/node_modules/@eslint-community/regexpp/index.mjs +138 -17
  32. data/node_modules/@eslint-community/regexpp/index.mjs.map +1 -1
  33. data/node_modules/@eslint-community/regexpp/package.json +1 -3
  34. data/node_modules/acorn/CHANGELOG.md +24 -0
  35. data/node_modules/acorn/README.md +5 -6
  36. data/node_modules/acorn/dist/acorn.d.mts +8 -9
  37. data/node_modules/acorn/dist/acorn.d.ts +8 -9
  38. data/node_modules/acorn/dist/acorn.js +92 -29
  39. data/node_modules/acorn/dist/acorn.mjs +92 -29
  40. data/node_modules/acorn/package.json +3 -3
  41. data/node_modules/eslint/README.md +7 -8
  42. data/node_modules/eslint/conf/ecma-version.js +1 -1
  43. data/node_modules/eslint/conf/globals.js +6 -1
  44. data/node_modules/eslint/lib/cli.js +23 -2
  45. data/node_modules/eslint/lib/eslint/eslint-helpers.js +5 -0
  46. data/node_modules/eslint/lib/eslint/eslint.js +16 -2
  47. data/node_modules/eslint/lib/eslint/legacy-eslint.js +14 -0
  48. data/node_modules/eslint/lib/languages/js/index.js +10 -5
  49. data/node_modules/eslint/lib/languages/js/source-code/source-code.js +16 -6
  50. data/node_modules/eslint/lib/linter/apply-disable-directives.js +6 -3
  51. data/node_modules/eslint/lib/linter/config-comment-parser.js +3 -16
  52. data/node_modules/eslint/lib/linter/linter.js +194 -149
  53. data/node_modules/eslint/lib/linter/node-event-generator.js +2 -4
  54. data/node_modules/eslint/lib/linter/vfile.js +7 -0
  55. data/node_modules/eslint/lib/options.js +13 -1
  56. data/node_modules/eslint/lib/rules/no-restricted-imports.js +12 -5
  57. data/node_modules/eslint/lib/rules/no-unused-vars.js +34 -32
  58. data/node_modules/eslint/lib/rules/no-useless-backreference.js +81 -31
  59. data/node_modules/eslint/lib/rules/utils/regular-expressions.js +1 -1
  60. data/node_modules/eslint/lib/shared/flags.js +26 -0
  61. data/node_modules/eslint/lib/shared/logging.js +10 -1
  62. data/node_modules/eslint/lib/shared/types.js +1 -1
  63. data/node_modules/eslint/package.json +9 -13
  64. data/node_modules/eslint-scope/dist/eslint-scope.cjs +2 -2
  65. data/node_modules/eslint-scope/lib/referencer.js +1 -1
  66. data/node_modules/eslint-scope/lib/version.js +1 -1
  67. data/node_modules/eslint-scope/package.json +2 -2
  68. data/node_modules/espree/README.md +5 -5
  69. data/node_modules/espree/dist/espree.cjs +62 -6
  70. data/node_modules/espree/espree.js +1 -4
  71. data/node_modules/espree/lib/options.js +3 -2
  72. data/node_modules/espree/lib/token-translator.js +1 -1
  73. data/node_modules/espree/lib/version.js +1 -1
  74. data/node_modules/espree/package.json +7 -7
  75. data/node_modules/js-tokens/CHANGELOG.md +17 -0
  76. data/node_modules/js-tokens/LICENSE +1 -1
  77. data/node_modules/js-tokens/README.md +25 -7
  78. data/node_modules/js-tokens/index.js +3 -3
  79. data/node_modules/js-tokens/package.json +5 -5
  80. data/node_modules/jscodeshift/CHANGELOG.md +5 -0
  81. data/node_modules/jscodeshift/bin/jscodeshift.js +1 -1
  82. data/node_modules/jscodeshift/package.json +1 -2
  83. data/node_modules/jscodeshift/website/index.htm +9 -0
  84. data/node_modules/prettier/LICENSE +35 -34
  85. data/node_modules/prettier/doc.js +2 -2
  86. data/node_modules/prettier/doc.mjs +2 -2
  87. data/node_modules/prettier/index.cjs +8 -8
  88. data/node_modules/prettier/index.d.ts +1 -2
  89. data/node_modules/prettier/index.mjs +636 -704
  90. data/node_modules/prettier/internal/cli.mjs +4 -4
  91. data/node_modules/prettier/package.json +1 -1
  92. data/node_modules/prettier/plugins/acorn.js +14 -12
  93. data/node_modules/prettier/plugins/acorn.mjs +14 -12
  94. data/node_modules/prettier/plugins/angular.js +1 -1
  95. data/node_modules/prettier/plugins/angular.mjs +1 -1
  96. data/node_modules/prettier/plugins/babel.js +10 -11
  97. data/node_modules/prettier/plugins/babel.mjs +10 -11
  98. data/node_modules/prettier/plugins/estree.js +27 -27
  99. data/node_modules/prettier/plugins/estree.mjs +27 -27
  100. data/node_modules/prettier/plugins/flow.js +15 -16
  101. data/node_modules/prettier/plugins/flow.mjs +15 -16
  102. data/node_modules/prettier/plugins/glimmer.js +5 -5
  103. data/node_modules/prettier/plugins/glimmer.mjs +5 -5
  104. data/node_modules/prettier/plugins/graphql.js +8 -8
  105. data/node_modules/prettier/plugins/graphql.mjs +8 -8
  106. data/node_modules/prettier/plugins/html.js +17 -17
  107. data/node_modules/prettier/plugins/html.mjs +17 -17
  108. data/node_modules/prettier/plugins/markdown.js +44 -44
  109. data/node_modules/prettier/plugins/markdown.mjs +44 -44
  110. data/node_modules/prettier/plugins/meriyah.js +4 -5
  111. data/node_modules/prettier/plugins/meriyah.mjs +4 -5
  112. data/node_modules/prettier/plugins/postcss.js +26 -26
  113. data/node_modules/prettier/plugins/postcss.mjs +26 -26
  114. data/node_modules/prettier/plugins/typescript.js +15 -20
  115. data/node_modules/prettier/plugins/typescript.mjs +15 -20
  116. data/node_modules/prettier/plugins/yaml.js +6 -6
  117. data/node_modules/prettier/plugins/yaml.mjs +6 -6
  118. data/node_modules/prettier/standalone.js +31 -30
  119. data/node_modules/prettier/standalone.mjs +28 -27
  120. data/package.json +4 -4
  121. metadata +24 -2
@@ -0,0 +1,857 @@
1
+ export interface Node {
2
+ start: number
3
+ end: number
4
+ type: string
5
+ range?: [number, number]
6
+ loc?: SourceLocation | null
7
+ }
8
+
9
+ export interface SourceLocation {
10
+ source?: string | null
11
+ start: Position
12
+ end: Position
13
+ }
14
+
15
+ export interface Position {
16
+ /** 1-based */
17
+ line: number
18
+ /** 0-based */
19
+ column: number
20
+ }
21
+
22
+ export interface Identifier extends Node {
23
+ type: "Identifier"
24
+ name: string
25
+ }
26
+
27
+ export interface Literal extends Node {
28
+ type: "Literal"
29
+ value?: string | boolean | null | number | RegExp | bigint
30
+ raw?: string
31
+ regex?: {
32
+ pattern: string
33
+ flags: string
34
+ }
35
+ bigint?: string
36
+ }
37
+
38
+ export interface Program extends Node {
39
+ type: "Program"
40
+ body: Array<Statement | ModuleDeclaration>
41
+ sourceType: "script" | "module"
42
+ }
43
+
44
+ export interface Function extends Node {
45
+ id?: Identifier | null
46
+ params: Array<Pattern>
47
+ body: BlockStatement | Expression
48
+ generator: boolean
49
+ expression: boolean
50
+ async: boolean
51
+ }
52
+
53
+ export interface ExpressionStatement extends Node {
54
+ type: "ExpressionStatement"
55
+ expression: Expression | Literal
56
+ directive?: string
57
+ }
58
+
59
+ export interface BlockStatement extends Node {
60
+ type: "BlockStatement"
61
+ body: Array<Statement>
62
+ }
63
+
64
+ export interface EmptyStatement extends Node {
65
+ type: "EmptyStatement"
66
+ }
67
+
68
+ export interface DebuggerStatement extends Node {
69
+ type: "DebuggerStatement"
70
+ }
71
+
72
+ export interface WithStatement extends Node {
73
+ type: "WithStatement"
74
+ object: Expression
75
+ body: Statement
76
+ }
77
+
78
+ export interface ReturnStatement extends Node {
79
+ type: "ReturnStatement"
80
+ argument?: Expression | null
81
+ }
82
+
83
+ export interface LabeledStatement extends Node {
84
+ type: "LabeledStatement"
85
+ label: Identifier
86
+ body: Statement
87
+ }
88
+
89
+ export interface BreakStatement extends Node {
90
+ type: "BreakStatement"
91
+ label?: Identifier | null
92
+ }
93
+
94
+ export interface ContinueStatement extends Node {
95
+ type: "ContinueStatement"
96
+ label?: Identifier | null
97
+ }
98
+
99
+ export interface IfStatement extends Node {
100
+ type: "IfStatement"
101
+ test: Expression
102
+ consequent: Statement
103
+ alternate?: Statement | null
104
+ }
105
+
106
+ export interface SwitchStatement extends Node {
107
+ type: "SwitchStatement"
108
+ discriminant: Expression
109
+ cases: Array<SwitchCase>
110
+ }
111
+
112
+ export interface SwitchCase extends Node {
113
+ type: "SwitchCase"
114
+ test?: Expression | null
115
+ consequent: Array<Statement>
116
+ }
117
+
118
+ export interface ThrowStatement extends Node {
119
+ type: "ThrowStatement"
120
+ argument: Expression
121
+ }
122
+
123
+ export interface TryStatement extends Node {
124
+ type: "TryStatement"
125
+ block: BlockStatement
126
+ handler?: CatchClause | null
127
+ finalizer?: BlockStatement | null
128
+ }
129
+
130
+ export interface CatchClause extends Node {
131
+ type: "CatchClause"
132
+ param?: Pattern | null
133
+ body: BlockStatement
134
+ }
135
+
136
+ export interface WhileStatement extends Node {
137
+ type: "WhileStatement"
138
+ test: Expression
139
+ body: Statement
140
+ }
141
+
142
+ export interface DoWhileStatement extends Node {
143
+ type: "DoWhileStatement"
144
+ body: Statement
145
+ test: Expression
146
+ }
147
+
148
+ export interface ForStatement extends Node {
149
+ type: "ForStatement"
150
+ init?: VariableDeclaration | Expression | null
151
+ test?: Expression | null
152
+ update?: Expression | null
153
+ body: Statement
154
+ }
155
+
156
+ export interface ForInStatement extends Node {
157
+ type: "ForInStatement"
158
+ left: VariableDeclaration | Pattern
159
+ right: Expression
160
+ body: Statement
161
+ }
162
+
163
+ export interface FunctionDeclaration extends Function {
164
+ type: "FunctionDeclaration"
165
+ id: Identifier
166
+ body: BlockStatement
167
+ }
168
+
169
+ export interface VariableDeclaration extends Node {
170
+ type: "VariableDeclaration"
171
+ declarations: Array<VariableDeclarator>
172
+ kind: "var" | "let" | "const"
173
+ }
174
+
175
+ export interface VariableDeclarator extends Node {
176
+ type: "VariableDeclarator"
177
+ id: Pattern
178
+ init?: Expression | null
179
+ }
180
+
181
+ export interface ThisExpression extends Node {
182
+ type: "ThisExpression"
183
+ }
184
+
185
+ export interface ArrayExpression extends Node {
186
+ type: "ArrayExpression"
187
+ elements: Array<Expression | SpreadElement | null>
188
+ }
189
+
190
+ export interface ObjectExpression extends Node {
191
+ type: "ObjectExpression"
192
+ properties: Array<Property | SpreadElement>
193
+ }
194
+
195
+ export interface Property extends Node {
196
+ type: "Property"
197
+ key: Expression
198
+ value: Expression
199
+ kind: "init" | "get" | "set"
200
+ method: boolean
201
+ shorthand: boolean
202
+ computed: boolean
203
+ }
204
+
205
+ export interface FunctionExpression extends Function {
206
+ type: "FunctionExpression"
207
+ body: BlockStatement
208
+ }
209
+
210
+ export interface UnaryExpression extends Node {
211
+ type: "UnaryExpression"
212
+ operator: UnaryOperator
213
+ prefix: boolean
214
+ argument: Expression
215
+ }
216
+
217
+ export type UnaryOperator = "-" | "+" | "!" | "~" | "typeof" | "void" | "delete"
218
+
219
+ export interface UpdateExpression extends Node {
220
+ type: "UpdateExpression"
221
+ operator: UpdateOperator
222
+ argument: Expression
223
+ prefix: boolean
224
+ }
225
+
226
+ export type UpdateOperator = "++" | "--"
227
+
228
+ export interface BinaryExpression extends Node {
229
+ type: "BinaryExpression"
230
+ operator: BinaryOperator
231
+ left: Expression | PrivateIdentifier
232
+ right: Expression
233
+ }
234
+
235
+ export type BinaryOperator = "==" | "!=" | "===" | "!==" | "<" | "<=" | ">" | ">=" | "<<" | ">>" | ">>>" | "+" | "-" | "*" | "/" | "%" | "|" | "^" | "&" | "in" | "instanceof" | "**"
236
+
237
+ export interface AssignmentExpression extends Node {
238
+ type: "AssignmentExpression"
239
+ operator: AssignmentOperator
240
+ left: Pattern
241
+ right: Expression
242
+ }
243
+
244
+ export type AssignmentOperator = "=" | "+=" | "-=" | "*=" | "/=" | "%=" | "<<=" | ">>=" | ">>>=" | "|=" | "^=" | "&=" | "**=" | "||=" | "&&=" | "??="
245
+
246
+ export interface LogicalExpression extends Node {
247
+ type: "LogicalExpression"
248
+ operator: LogicalOperator
249
+ left: Expression
250
+ right: Expression
251
+ }
252
+
253
+ export type LogicalOperator = "||" | "&&" | "??"
254
+
255
+ export interface MemberExpression extends Node {
256
+ type: "MemberExpression"
257
+ object: Expression | Super
258
+ property: Expression | PrivateIdentifier
259
+ computed: boolean
260
+ optional: boolean
261
+ }
262
+
263
+ export interface ConditionalExpression extends Node {
264
+ type: "ConditionalExpression"
265
+ test: Expression
266
+ alternate: Expression
267
+ consequent: Expression
268
+ }
269
+
270
+ export interface CallExpression extends Node {
271
+ type: "CallExpression"
272
+ callee: Expression | Super
273
+ arguments: Array<Expression | SpreadElement>
274
+ optional: boolean
275
+ }
276
+
277
+ export interface NewExpression extends Node {
278
+ type: "NewExpression"
279
+ callee: Expression
280
+ arguments: Array<Expression | SpreadElement>
281
+ }
282
+
283
+ export interface SequenceExpression extends Node {
284
+ type: "SequenceExpression"
285
+ expressions: Array<Expression>
286
+ }
287
+
288
+ export interface ForOfStatement extends Node {
289
+ type: "ForOfStatement"
290
+ left: VariableDeclaration | Pattern
291
+ right: Expression
292
+ body: Statement
293
+ await: boolean
294
+ }
295
+
296
+ export interface Super extends Node {
297
+ type: "Super"
298
+ }
299
+
300
+ export interface SpreadElement extends Node {
301
+ type: "SpreadElement"
302
+ argument: Expression
303
+ }
304
+
305
+ export interface ArrowFunctionExpression extends Function {
306
+ type: "ArrowFunctionExpression"
307
+ }
308
+
309
+ export interface YieldExpression extends Node {
310
+ type: "YieldExpression"
311
+ argument?: Expression | null
312
+ delegate: boolean
313
+ }
314
+
315
+ export interface TemplateLiteral extends Node {
316
+ type: "TemplateLiteral"
317
+ quasis: Array<TemplateElement>
318
+ expressions: Array<Expression>
319
+ }
320
+
321
+ export interface TaggedTemplateExpression extends Node {
322
+ type: "TaggedTemplateExpression"
323
+ tag: Expression
324
+ quasi: TemplateLiteral
325
+ }
326
+
327
+ export interface TemplateElement extends Node {
328
+ type: "TemplateElement"
329
+ tail: boolean
330
+ value: {
331
+ cooked?: string | null
332
+ raw: string
333
+ }
334
+ }
335
+
336
+ export interface AssignmentProperty extends Node {
337
+ type: "Property"
338
+ key: Expression
339
+ value: Pattern
340
+ kind: "init"
341
+ method: false
342
+ shorthand: boolean
343
+ computed: boolean
344
+ }
345
+
346
+ export interface ObjectPattern extends Node {
347
+ type: "ObjectPattern"
348
+ properties: Array<AssignmentProperty | RestElement>
349
+ }
350
+
351
+ export interface ArrayPattern extends Node {
352
+ type: "ArrayPattern"
353
+ elements: Array<Pattern | null>
354
+ }
355
+
356
+ export interface RestElement extends Node {
357
+ type: "RestElement"
358
+ argument: Pattern
359
+ }
360
+
361
+ export interface AssignmentPattern extends Node {
362
+ type: "AssignmentPattern"
363
+ left: Pattern
364
+ right: Expression
365
+ }
366
+
367
+ export interface Class extends Node {
368
+ id?: Identifier | null
369
+ superClass?: Expression | null
370
+ body: ClassBody
371
+ }
372
+
373
+ export interface ClassBody extends Node {
374
+ type: "ClassBody"
375
+ body: Array<MethodDefinition | PropertyDefinition | StaticBlock>
376
+ }
377
+
378
+ export interface MethodDefinition extends Node {
379
+ type: "MethodDefinition"
380
+ key: Expression | PrivateIdentifier
381
+ value: FunctionExpression
382
+ kind: "constructor" | "method" | "get" | "set"
383
+ computed: boolean
384
+ static: boolean
385
+ }
386
+
387
+ export interface ClassDeclaration extends Class {
388
+ type: "ClassDeclaration"
389
+ id: Identifier
390
+ }
391
+
392
+ export interface ClassExpression extends Class {
393
+ type: "ClassExpression"
394
+ }
395
+
396
+ export interface MetaProperty extends Node {
397
+ type: "MetaProperty"
398
+ meta: Identifier
399
+ property: Identifier
400
+ }
401
+
402
+ export interface ImportDeclaration extends Node {
403
+ type: "ImportDeclaration"
404
+ specifiers: Array<ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier>
405
+ source: Literal
406
+ }
407
+
408
+ export interface ImportSpecifier extends Node {
409
+ type: "ImportSpecifier"
410
+ imported: Identifier | Literal
411
+ local: Identifier
412
+ }
413
+
414
+ export interface ImportDefaultSpecifier extends Node {
415
+ type: "ImportDefaultSpecifier"
416
+ local: Identifier
417
+ }
418
+
419
+ export interface ImportNamespaceSpecifier extends Node {
420
+ type: "ImportNamespaceSpecifier"
421
+ local: Identifier
422
+ }
423
+
424
+ export interface ExportNamedDeclaration extends Node {
425
+ type: "ExportNamedDeclaration"
426
+ declaration?: Declaration | null
427
+ specifiers: Array<ExportSpecifier>
428
+ source?: Literal | null
429
+ }
430
+
431
+ export interface ExportSpecifier extends Node {
432
+ type: "ExportSpecifier"
433
+ exported: Identifier | Literal
434
+ local: Identifier | Literal
435
+ }
436
+
437
+ export interface AnonymousFunctionDeclaration extends Function {
438
+ type: "FunctionDeclaration"
439
+ id: null
440
+ body: BlockStatement
441
+ }
442
+
443
+ export interface AnonymousClassDeclaration extends Class {
444
+ type: "ClassDeclaration"
445
+ id: null
446
+ }
447
+
448
+ export interface ExportDefaultDeclaration extends Node {
449
+ type: "ExportDefaultDeclaration"
450
+ declaration: AnonymousFunctionDeclaration | FunctionDeclaration | AnonymousClassDeclaration | ClassDeclaration | Expression
451
+ }
452
+
453
+ export interface ExportAllDeclaration extends Node {
454
+ type: "ExportAllDeclaration"
455
+ source: Literal
456
+ exported?: Identifier | Literal | null
457
+ }
458
+
459
+ export interface AwaitExpression extends Node {
460
+ type: "AwaitExpression"
461
+ argument: Expression
462
+ }
463
+
464
+ export interface ChainExpression extends Node {
465
+ type: "ChainExpression"
466
+ expression: MemberExpression | CallExpression
467
+ }
468
+
469
+ export interface ImportExpression extends Node {
470
+ type: "ImportExpression"
471
+ source: Expression
472
+ }
473
+
474
+ export interface ParenthesizedExpression extends Node {
475
+ type: "ParenthesizedExpression"
476
+ expression: Expression
477
+ }
478
+
479
+ export interface PropertyDefinition extends Node {
480
+ type: "PropertyDefinition"
481
+ key: Expression | PrivateIdentifier
482
+ value?: Expression | null
483
+ computed: boolean
484
+ static: boolean
485
+ }
486
+
487
+ export interface PrivateIdentifier extends Node {
488
+ type: "PrivateIdentifier"
489
+ name: string
490
+ }
491
+
492
+ export interface StaticBlock extends Node {
493
+ type: "StaticBlock"
494
+ body: Array<Statement>
495
+ }
496
+
497
+ export type Statement =
498
+ | ExpressionStatement
499
+ | BlockStatement
500
+ | EmptyStatement
501
+ | DebuggerStatement
502
+ | WithStatement
503
+ | ReturnStatement
504
+ | LabeledStatement
505
+ | BreakStatement
506
+ | ContinueStatement
507
+ | IfStatement
508
+ | SwitchStatement
509
+ | ThrowStatement
510
+ | TryStatement
511
+ | WhileStatement
512
+ | DoWhileStatement
513
+ | ForStatement
514
+ | ForInStatement
515
+ | ForOfStatement
516
+ | Declaration
517
+
518
+ export type Declaration =
519
+ | FunctionDeclaration
520
+ | VariableDeclaration
521
+ | ClassDeclaration
522
+
523
+ export type Expression =
524
+ | Identifier
525
+ | Literal
526
+ | ThisExpression
527
+ | ArrayExpression
528
+ | ObjectExpression
529
+ | FunctionExpression
530
+ | UnaryExpression
531
+ | UpdateExpression
532
+ | BinaryExpression
533
+ | AssignmentExpression
534
+ | LogicalExpression
535
+ | MemberExpression
536
+ | ConditionalExpression
537
+ | CallExpression
538
+ | NewExpression
539
+ | SequenceExpression
540
+ | ArrowFunctionExpression
541
+ | YieldExpression
542
+ | TemplateLiteral
543
+ | TaggedTemplateExpression
544
+ | ClassExpression
545
+ | MetaProperty
546
+ | AwaitExpression
547
+ | ChainExpression
548
+ | ImportExpression
549
+ | ParenthesizedExpression
550
+
551
+ export type Pattern =
552
+ | Identifier
553
+ | MemberExpression
554
+ | ObjectPattern
555
+ | ArrayPattern
556
+ | RestElement
557
+ | AssignmentPattern
558
+
559
+ export type ModuleDeclaration =
560
+ | ImportDeclaration
561
+ | ExportNamedDeclaration
562
+ | ExportDefaultDeclaration
563
+ | ExportAllDeclaration
564
+
565
+ export type AnyNode = Statement | Expression | Declaration | ModuleDeclaration | Literal | Program | SwitchCase | CatchClause | Property | Super | SpreadElement | TemplateElement | AssignmentProperty | ObjectPattern | ArrayPattern | RestElement | AssignmentPattern | ClassBody | MethodDefinition | MetaProperty | ImportSpecifier | ImportDefaultSpecifier | ImportNamespaceSpecifier | ExportSpecifier | AnonymousFunctionDeclaration | AnonymousClassDeclaration | PropertyDefinition | PrivateIdentifier | StaticBlock
566
+
567
+ export function parse(input: string, options: Options): Program
568
+
569
+ export function parseExpressionAt(input: string, pos: number, options: Options): Expression
570
+
571
+ export function tokenizer(input: string, options: Options): {
572
+ getToken(): Token
573
+ [Symbol.iterator](): Iterator<Token>
574
+ }
575
+
576
+ export type ecmaVersion = 3 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 2015 | 2016 | 2017 | 2018 | 2019 | 2020 | 2021 | 2022 | 2023 | 2024 | "latest"
577
+
578
+ export interface Options {
579
+ /**
580
+ * `ecmaVersion` indicates the ECMAScript version to parse. Must be
581
+ * either 3, 5, 6 (or 2015), 7 (2016), 8 (2017), 9 (2018), 10
582
+ * (2019), 11 (2020), 12 (2021), 13 (2022), 14 (2023), or `"latest"`
583
+ * (the latest version the library supports). This influences
584
+ * support for strict mode, the set of reserved words, and support
585
+ * for new syntax features.
586
+ */
587
+ ecmaVersion: ecmaVersion
588
+
589
+ /**
590
+ * `sourceType` indicates the mode the code should be parsed in.
591
+ * Can be either `"script"` or `"module"`. This influences global
592
+ * strict mode and parsing of `import` and `export` declarations.
593
+ */
594
+ sourceType?: "script" | "module"
595
+
596
+ /**
597
+ * a callback that will be called when a semicolon is automatically inserted.
598
+ * @param lastTokEnd the position of the comma as an offset
599
+ * @param lastTokEndLoc location if {@link locations} is enabled
600
+ */
601
+ onInsertedSemicolon?: (lastTokEnd: number, lastTokEndLoc?: Position) => void
602
+
603
+ /**
604
+ * similar to `onInsertedSemicolon`, but for trailing commas
605
+ * @param lastTokEnd the position of the comma as an offset
606
+ * @param lastTokEndLoc location if `locations` is enabled
607
+ */
608
+ onTrailingComma?: (lastTokEnd: number, lastTokEndLoc?: Position) => void
609
+
610
+ /**
611
+ * By default, reserved words are only enforced if ecmaVersion >= 5.
612
+ * Set `allowReserved` to a boolean value to explicitly turn this on
613
+ * an off. When this option has the value "never", reserved words
614
+ * and keywords can also not be used as property names.
615
+ */
616
+ allowReserved?: boolean | "never"
617
+
618
+ /**
619
+ * When enabled, a return at the top level is not considered an error.
620
+ */
621
+ allowReturnOutsideFunction?: boolean
622
+
623
+ /**
624
+ * When enabled, import/export statements are not constrained to
625
+ * appearing at the top of the program, and an import.meta expression
626
+ * in a script isn't considered an error.
627
+ */
628
+ allowImportExportEverywhere?: boolean
629
+
630
+ /**
631
+ * By default, `await` identifiers are allowed to appear at the top-level scope only if {@link ecmaVersion} >= 2022.
632
+ * When enabled, await identifiers are allowed to appear at the top-level scope,
633
+ * but they are still not allowed in non-async functions.
634
+ */
635
+ allowAwaitOutsideFunction?: boolean
636
+
637
+ /**
638
+ * When enabled, super identifiers are not constrained to
639
+ * appearing in methods and do not raise an error when they appear elsewhere.
640
+ */
641
+ allowSuperOutsideMethod?: boolean
642
+
643
+ /**
644
+ * When enabled, hashbang directive in the beginning of file is
645
+ * allowed and treated as a line comment. Enabled by default when
646
+ * {@link ecmaVersion} >= 2023.
647
+ */
648
+ allowHashBang?: boolean
649
+
650
+ /**
651
+ * By default, the parser will verify that private properties are
652
+ * only used in places where they are valid and have been declared.
653
+ * Set this to false to turn such checks off.
654
+ */
655
+ checkPrivateFields?: boolean
656
+
657
+ /**
658
+ * When `locations` is on, `loc` properties holding objects with
659
+ * `start` and `end` properties as {@link Position} objects will be attached to the
660
+ * nodes.
661
+ */
662
+ locations?: boolean
663
+
664
+ /**
665
+ * a callback that will cause Acorn to call that export function with object in the same
666
+ * format as tokens returned from `tokenizer().getToken()`. Note
667
+ * that you are not allowed to call the parser from the
668
+ * callback—that will corrupt its internal state.
669
+ */
670
+ onToken?: ((token: Token) => void) | Token[]
671
+
672
+
673
+ /**
674
+ * This takes a export function or an array.
675
+ *
676
+ * When a export function is passed, Acorn will call that export function with `(block, text, start,
677
+ * end)` parameters whenever a comment is skipped. `block` is a
678
+ * boolean indicating whether this is a block (`/* *\/`) comment,
679
+ * `text` is the content of the comment, and `start` and `end` are
680
+ * character offsets that denote the start and end of the comment.
681
+ * When the {@link locations} option is on, two more parameters are
682
+ * passed, the full locations of {@link Position} export type of the start and
683
+ * end of the comments.
684
+ *
685
+ * When a array is passed, each found comment of {@link Comment} export type is pushed to the array.
686
+ *
687
+ * Note that you are not allowed to call the
688
+ * parser from the callback—that will corrupt its internal state.
689
+ */
690
+ onComment?: ((
691
+ isBlock: boolean, text: string, start: number, end: number, startLoc?: Position,
692
+ endLoc?: Position
693
+ ) => void) | Comment[]
694
+
695
+ /**
696
+ * Nodes have their start and end characters offsets recorded in
697
+ * `start` and `end` properties (directly on the node, rather than
698
+ * the `loc` object, which holds line/column data. To also add a
699
+ * [semi-standardized][range] `range` property holding a `[start,
700
+ * end]` array with the same numbers, set the `ranges` option to
701
+ * `true`.
702
+ */
703
+ ranges?: boolean
704
+
705
+ /**
706
+ * It is possible to parse multiple files into a single AST by
707
+ * passing the tree produced by parsing the first file as
708
+ * `program` option in subsequent parses. This will add the
709
+ * toplevel forms of the parsed file to the `Program` (top) node
710
+ * of an existing parse tree.
711
+ */
712
+ program?: Node
713
+
714
+ /**
715
+ * When {@link locations} is on, you can pass this to record the source
716
+ * file in every node's `loc` object.
717
+ */
718
+ sourceFile?: string
719
+
720
+ /**
721
+ * This value, if given, is stored in every node, whether {@link locations} is on or off.
722
+ */
723
+ directSourceFile?: string
724
+
725
+ /**
726
+ * When enabled, parenthesized expressions are represented by
727
+ * (non-standard) ParenthesizedExpression nodes
728
+ */
729
+ preserveParens?: boolean
730
+ }
731
+
732
+ export class Parser {
733
+ options: Options
734
+ input: string
735
+
736
+ private constructor(options: Options, input: string, startPos?: number)
737
+ parse(): Program
738
+
739
+ static parse(input: string, options: Options): Program
740
+ static parseExpressionAt(input: string, pos: number, options: Options): Expression
741
+ static tokenizer(input: string, options: Options): {
742
+ getToken(): Token
743
+ [Symbol.iterator](): Iterator<Token>
744
+ }
745
+ static extend(...plugins: ((BaseParser: typeof Parser) => typeof Parser)[]): typeof Parser
746
+ }
747
+
748
+ export const defaultOptions: Options
749
+
750
+ export function getLineInfo(input: string, offset: number): Position
751
+
752
+ export class TokenType {
753
+ label: string
754
+ keyword: string | undefined
755
+ }
756
+
757
+ export const tokTypes: {
758
+ num: TokenType
759
+ regexp: TokenType
760
+ string: TokenType
761
+ name: TokenType
762
+ privateId: TokenType
763
+ eof: TokenType
764
+
765
+ bracketL: TokenType
766
+ bracketR: TokenType
767
+ braceL: TokenType
768
+ braceR: TokenType
769
+ parenL: TokenType
770
+ parenR: TokenType
771
+ comma: TokenType
772
+ semi: TokenType
773
+ colon: TokenType
774
+ dot: TokenType
775
+ question: TokenType
776
+ questionDot: TokenType
777
+ arrow: TokenType
778
+ template: TokenType
779
+ invalidTemplate: TokenType
780
+ ellipsis: TokenType
781
+ backQuote: TokenType
782
+ dollarBraceL: TokenType
783
+
784
+ eq: TokenType
785
+ assign: TokenType
786
+ incDec: TokenType
787
+ prefix: TokenType
788
+ logicalOR: TokenType
789
+ logicalAND: TokenType
790
+ bitwiseOR: TokenType
791
+ bitwiseXOR: TokenType
792
+ bitwiseAND: TokenType
793
+ equality: TokenType
794
+ relational: TokenType
795
+ bitShift: TokenType
796
+ plusMin: TokenType
797
+ modulo: TokenType
798
+ star: TokenType
799
+ slash: TokenType
800
+ starstar: TokenType
801
+ coalesce: TokenType
802
+
803
+ _break: TokenType
804
+ _case: TokenType
805
+ _catch: TokenType
806
+ _continue: TokenType
807
+ _debugger: TokenType
808
+ _default: TokenType
809
+ _do: TokenType
810
+ _else: TokenType
811
+ _finally: TokenType
812
+ _for: TokenType
813
+ _function: TokenType
814
+ _if: TokenType
815
+ _return: TokenType
816
+ _switch: TokenType
817
+ _throw: TokenType
818
+ _try: TokenType
819
+ _var: TokenType
820
+ _const: TokenType
821
+ _while: TokenType
822
+ _with: TokenType
823
+ _new: TokenType
824
+ _this: TokenType
825
+ _super: TokenType
826
+ _class: TokenType
827
+ _extends: TokenType
828
+ _export: TokenType
829
+ _import: TokenType
830
+ _null: TokenType
831
+ _true: TokenType
832
+ _false: TokenType
833
+ _in: TokenType
834
+ _instanceof: TokenType
835
+ _typeof: TokenType
836
+ _void: TokenType
837
+ _delete: TokenType
838
+ }
839
+
840
+ export interface Comment {
841
+ type: "Line" | "Block"
842
+ value: string
843
+ start: number
844
+ end: number
845
+ loc?: SourceLocation
846
+ range?: [number, number]
847
+ }
848
+
849
+ export class Token {
850
+ type: TokenType
851
+ start: number
852
+ end: number
853
+ loc?: SourceLocation
854
+ range?: [number, number]
855
+ }
856
+
857
+ export const version: string