@tslite/parser 1.10.0 → 1.12.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 (47) hide show
  1. package/LICENSE +55 -0
  2. package/NOTICE +14 -0
  3. package/dist/_namespaces/ts.d.ts +18 -0
  4. package/dist/_namespaces/ts.js +21 -0
  5. package/dist/_namespaces/ts.performance.d.ts +1 -0
  6. package/dist/_namespaces/ts.performance.js +2 -0
  7. package/dist/core.d.ts +450 -0
  8. package/dist/core.js +1394 -0
  9. package/dist/corePublic.d.ts +62 -0
  10. package/dist/corePublic.js +31 -0
  11. package/dist/debug.d.ts +74 -0
  12. package/dist/debug.js +326 -0
  13. package/dist/diagnosticInformationMap.generated.d.ts +1435 -0
  14. package/dist/diagnosticInformationMap.generated.js +1441 -0
  15. package/dist/factory.d.ts +78 -0
  16. package/dist/factory.js +622 -0
  17. package/dist/factoryPublic.d.ts +314 -0
  18. package/dist/factoryPublic.js +1796 -0
  19. package/dist/index.d.ts +1 -249
  20. package/dist/index.js +4 -6
  21. package/dist/parser.d.ts +59 -0
  22. package/dist/parser.js +5075 -0
  23. package/dist/path.d.ts +312 -0
  24. package/dist/path.js +475 -0
  25. package/dist/perfLogger.d.ts +4 -0
  26. package/dist/perfLogger.js +38 -0
  27. package/dist/performance.d.ts +20 -0
  28. package/dist/performance.js +49 -0
  29. package/dist/performanceTimestamp.d.ts +2 -0
  30. package/dist/performanceTimestamp.js +2 -0
  31. package/dist/scanner.d.ts +80 -0
  32. package/dist/scanner.js +1984 -0
  33. package/dist/shims/mapShim.d.ts +23 -0
  34. package/dist/shims/mapShim.js +156 -0
  35. package/dist/types.d.ts +2626 -0
  36. package/dist/types.js +1074 -0
  37. package/dist/utilities.d.ts +473 -0
  38. package/dist/utilities.js +2632 -0
  39. package/dist/utilitiesPublic.d.ts +274 -0
  40. package/dist/utilitiesPublic.js +1049 -0
  41. package/dist/visitor.d.ts +15 -0
  42. package/dist/visitor.js +64 -0
  43. package/dist/visitorPublic.d.ts +82 -0
  44. package/dist/visitorPublic.js +352 -0
  45. package/package.json +14 -42
  46. package/dist/index.cjs +0 -6
  47. package/dist/index.d.cts +0 -249
package/dist/types.js ADDED
@@ -0,0 +1,1074 @@
1
+ // token > SyntaxKind.Identifier => token is a keyword
2
+ // Also, If you add a new SyntaxKind be sure to keep the `Markers` section at the bottom in sync
3
+ export var SyntaxKind;
4
+ (function (SyntaxKind) {
5
+ SyntaxKind[SyntaxKind["Unknown"] = 0] = "Unknown";
6
+ SyntaxKind[SyntaxKind["EndOfFileToken"] = 1] = "EndOfFileToken";
7
+ SyntaxKind[SyntaxKind["SingleLineCommentTrivia"] = 2] = "SingleLineCommentTrivia";
8
+ SyntaxKind[SyntaxKind["MultiLineCommentTrivia"] = 3] = "MultiLineCommentTrivia";
9
+ SyntaxKind[SyntaxKind["NewLineTrivia"] = 4] = "NewLineTrivia";
10
+ SyntaxKind[SyntaxKind["WhitespaceTrivia"] = 5] = "WhitespaceTrivia";
11
+ // We detect and preserve #! on the first line
12
+ SyntaxKind[SyntaxKind["ShebangTrivia"] = 6] = "ShebangTrivia";
13
+ // We detect and provide better error recovery when we encounter a git merge marker. This
14
+ // allows us to edit files with git-conflict markers in them in a much more pleasant manner.
15
+ SyntaxKind[SyntaxKind["ConflictMarkerTrivia"] = 7] = "ConflictMarkerTrivia";
16
+ // Literals
17
+ SyntaxKind[SyntaxKind["NumericLiteral"] = 8] = "NumericLiteral";
18
+ SyntaxKind[SyntaxKind["BigIntLiteral"] = 9] = "BigIntLiteral";
19
+ SyntaxKind[SyntaxKind["StringLiteral"] = 10] = "StringLiteral";
20
+ SyntaxKind[SyntaxKind["JsxText"] = 11] = "JsxText";
21
+ SyntaxKind[SyntaxKind["JsxTextAllWhiteSpaces"] = 12] = "JsxTextAllWhiteSpaces";
22
+ SyntaxKind[SyntaxKind["RegularExpressionLiteral"] = 13] = "RegularExpressionLiteral";
23
+ SyntaxKind[SyntaxKind["NoSubstitutionTemplateLiteral"] = 14] = "NoSubstitutionTemplateLiteral";
24
+ // Pseudo-literals
25
+ SyntaxKind[SyntaxKind["TemplateHead"] = 15] = "TemplateHead";
26
+ SyntaxKind[SyntaxKind["TemplateMiddle"] = 16] = "TemplateMiddle";
27
+ SyntaxKind[SyntaxKind["TemplateTail"] = 17] = "TemplateTail";
28
+ // Punctuation
29
+ SyntaxKind[SyntaxKind["OpenBraceToken"] = 18] = "OpenBraceToken";
30
+ SyntaxKind[SyntaxKind["CloseBraceToken"] = 19] = "CloseBraceToken";
31
+ SyntaxKind[SyntaxKind["OpenParenToken"] = 20] = "OpenParenToken";
32
+ SyntaxKind[SyntaxKind["CloseParenToken"] = 21] = "CloseParenToken";
33
+ SyntaxKind[SyntaxKind["OpenBracketToken"] = 22] = "OpenBracketToken";
34
+ SyntaxKind[SyntaxKind["CloseBracketToken"] = 23] = "CloseBracketToken";
35
+ SyntaxKind[SyntaxKind["DotToken"] = 24] = "DotToken";
36
+ SyntaxKind[SyntaxKind["DotDotDotToken"] = 25] = "DotDotDotToken";
37
+ SyntaxKind[SyntaxKind["SemicolonToken"] = 26] = "SemicolonToken";
38
+ SyntaxKind[SyntaxKind["CommaToken"] = 27] = "CommaToken";
39
+ SyntaxKind[SyntaxKind["QuestionDotToken"] = 28] = "QuestionDotToken";
40
+ SyntaxKind[SyntaxKind["LessThanToken"] = 29] = "LessThanToken";
41
+ SyntaxKind[SyntaxKind["LessThanSlashToken"] = 30] = "LessThanSlashToken";
42
+ SyntaxKind[SyntaxKind["GreaterThanToken"] = 31] = "GreaterThanToken";
43
+ SyntaxKind[SyntaxKind["LessThanEqualsToken"] = 32] = "LessThanEqualsToken";
44
+ SyntaxKind[SyntaxKind["GreaterThanEqualsToken"] = 33] = "GreaterThanEqualsToken";
45
+ SyntaxKind[SyntaxKind["EqualsEqualsToken"] = 34] = "EqualsEqualsToken";
46
+ SyntaxKind[SyntaxKind["ExclamationEqualsToken"] = 35] = "ExclamationEqualsToken";
47
+ SyntaxKind[SyntaxKind["EqualsEqualsEqualsToken"] = 36] = "EqualsEqualsEqualsToken";
48
+ SyntaxKind[SyntaxKind["ExclamationEqualsEqualsToken"] = 37] = "ExclamationEqualsEqualsToken";
49
+ SyntaxKind[SyntaxKind["EqualsGreaterThanToken"] = 38] = "EqualsGreaterThanToken";
50
+ SyntaxKind[SyntaxKind["PlusToken"] = 39] = "PlusToken";
51
+ SyntaxKind[SyntaxKind["MinusToken"] = 40] = "MinusToken";
52
+ SyntaxKind[SyntaxKind["AsteriskToken"] = 41] = "AsteriskToken";
53
+ SyntaxKind[SyntaxKind["AsteriskAsteriskToken"] = 42] = "AsteriskAsteriskToken";
54
+ SyntaxKind[SyntaxKind["SlashToken"] = 43] = "SlashToken";
55
+ SyntaxKind[SyntaxKind["PercentToken"] = 44] = "PercentToken";
56
+ SyntaxKind[SyntaxKind["PlusPlusToken"] = 45] = "PlusPlusToken";
57
+ SyntaxKind[SyntaxKind["MinusMinusToken"] = 46] = "MinusMinusToken";
58
+ SyntaxKind[SyntaxKind["LessThanLessThanToken"] = 47] = "LessThanLessThanToken";
59
+ SyntaxKind[SyntaxKind["GreaterThanGreaterThanToken"] = 48] = "GreaterThanGreaterThanToken";
60
+ SyntaxKind[SyntaxKind["GreaterThanGreaterThanGreaterThanToken"] = 49] = "GreaterThanGreaterThanGreaterThanToken";
61
+ SyntaxKind[SyntaxKind["AmpersandToken"] = 50] = "AmpersandToken";
62
+ SyntaxKind[SyntaxKind["BarToken"] = 51] = "BarToken";
63
+ SyntaxKind[SyntaxKind["CaretToken"] = 52] = "CaretToken";
64
+ SyntaxKind[SyntaxKind["ExclamationToken"] = 53] = "ExclamationToken";
65
+ SyntaxKind[SyntaxKind["TildeToken"] = 54] = "TildeToken";
66
+ SyntaxKind[SyntaxKind["AmpersandAmpersandToken"] = 55] = "AmpersandAmpersandToken";
67
+ SyntaxKind[SyntaxKind["BarBarToken"] = 56] = "BarBarToken";
68
+ SyntaxKind[SyntaxKind["QuestionToken"] = 57] = "QuestionToken";
69
+ SyntaxKind[SyntaxKind["ColonToken"] = 58] = "ColonToken";
70
+ SyntaxKind[SyntaxKind["AtToken"] = 59] = "AtToken";
71
+ SyntaxKind[SyntaxKind["QuestionQuestionToken"] = 60] = "QuestionQuestionToken";
72
+ /** Nenhum scanner o produz (só o do JSDoc o produzia): a crase começa um template. Fica para não renumerar. */
73
+ SyntaxKind[SyntaxKind["BacktickToken"] = 61] = "BacktickToken";
74
+ // Assignments
75
+ SyntaxKind[SyntaxKind["EqualsToken"] = 62] = "EqualsToken";
76
+ SyntaxKind[SyntaxKind["PlusEqualsToken"] = 63] = "PlusEqualsToken";
77
+ SyntaxKind[SyntaxKind["MinusEqualsToken"] = 64] = "MinusEqualsToken";
78
+ SyntaxKind[SyntaxKind["AsteriskEqualsToken"] = 65] = "AsteriskEqualsToken";
79
+ SyntaxKind[SyntaxKind["AsteriskAsteriskEqualsToken"] = 66] = "AsteriskAsteriskEqualsToken";
80
+ SyntaxKind[SyntaxKind["SlashEqualsToken"] = 67] = "SlashEqualsToken";
81
+ SyntaxKind[SyntaxKind["PercentEqualsToken"] = 68] = "PercentEqualsToken";
82
+ SyntaxKind[SyntaxKind["LessThanLessThanEqualsToken"] = 69] = "LessThanLessThanEqualsToken";
83
+ SyntaxKind[SyntaxKind["GreaterThanGreaterThanEqualsToken"] = 70] = "GreaterThanGreaterThanEqualsToken";
84
+ SyntaxKind[SyntaxKind["GreaterThanGreaterThanGreaterThanEqualsToken"] = 71] = "GreaterThanGreaterThanGreaterThanEqualsToken";
85
+ SyntaxKind[SyntaxKind["AmpersandEqualsToken"] = 72] = "AmpersandEqualsToken";
86
+ SyntaxKind[SyntaxKind["BarEqualsToken"] = 73] = "BarEqualsToken";
87
+ SyntaxKind[SyntaxKind["CaretEqualsToken"] = 74] = "CaretEqualsToken";
88
+ // Identifiers and PrivateIdentifiers
89
+ SyntaxKind[SyntaxKind["Identifier"] = 75] = "Identifier";
90
+ SyntaxKind[SyntaxKind["PrivateIdentifier"] = 76] = "PrivateIdentifier";
91
+ // Reserved words
92
+ SyntaxKind[SyntaxKind["BreakKeyword"] = 77] = "BreakKeyword";
93
+ SyntaxKind[SyntaxKind["CaseKeyword"] = 78] = "CaseKeyword";
94
+ SyntaxKind[SyntaxKind["CatchKeyword"] = 79] = "CatchKeyword";
95
+ SyntaxKind[SyntaxKind["ClassKeyword"] = 80] = "ClassKeyword";
96
+ SyntaxKind[SyntaxKind["ConstKeyword"] = 81] = "ConstKeyword";
97
+ SyntaxKind[SyntaxKind["ContinueKeyword"] = 82] = "ContinueKeyword";
98
+ SyntaxKind[SyntaxKind["DebuggerKeyword"] = 83] = "DebuggerKeyword";
99
+ SyntaxKind[SyntaxKind["DefaultKeyword"] = 84] = "DefaultKeyword";
100
+ SyntaxKind[SyntaxKind["DeleteKeyword"] = 85] = "DeleteKeyword";
101
+ SyntaxKind[SyntaxKind["DoKeyword"] = 86] = "DoKeyword";
102
+ SyntaxKind[SyntaxKind["ElseKeyword"] = 87] = "ElseKeyword";
103
+ SyntaxKind[SyntaxKind["EnumKeyword"] = 88] = "EnumKeyword";
104
+ SyntaxKind[SyntaxKind["ExportKeyword"] = 89] = "ExportKeyword";
105
+ SyntaxKind[SyntaxKind["ExtendsKeyword"] = 90] = "ExtendsKeyword";
106
+ SyntaxKind[SyntaxKind["FalseKeyword"] = 91] = "FalseKeyword";
107
+ SyntaxKind[SyntaxKind["FinallyKeyword"] = 92] = "FinallyKeyword";
108
+ SyntaxKind[SyntaxKind["ForKeyword"] = 93] = "ForKeyword";
109
+ SyntaxKind[SyntaxKind["FunctionKeyword"] = 94] = "FunctionKeyword";
110
+ SyntaxKind[SyntaxKind["IfKeyword"] = 95] = "IfKeyword";
111
+ SyntaxKind[SyntaxKind["ImportKeyword"] = 96] = "ImportKeyword";
112
+ SyntaxKind[SyntaxKind["InKeyword"] = 97] = "InKeyword";
113
+ SyntaxKind[SyntaxKind["InstanceOfKeyword"] = 98] = "InstanceOfKeyword";
114
+ SyntaxKind[SyntaxKind["NewKeyword"] = 99] = "NewKeyword";
115
+ SyntaxKind[SyntaxKind["NullKeyword"] = 100] = "NullKeyword";
116
+ SyntaxKind[SyntaxKind["ReturnKeyword"] = 101] = "ReturnKeyword";
117
+ SyntaxKind[SyntaxKind["SuperKeyword"] = 102] = "SuperKeyword";
118
+ SyntaxKind[SyntaxKind["SwitchKeyword"] = 103] = "SwitchKeyword";
119
+ SyntaxKind[SyntaxKind["ThisKeyword"] = 104] = "ThisKeyword";
120
+ SyntaxKind[SyntaxKind["ThrowKeyword"] = 105] = "ThrowKeyword";
121
+ SyntaxKind[SyntaxKind["TrueKeyword"] = 106] = "TrueKeyword";
122
+ SyntaxKind[SyntaxKind["TryKeyword"] = 107] = "TryKeyword";
123
+ SyntaxKind[SyntaxKind["TypeOfKeyword"] = 108] = "TypeOfKeyword";
124
+ SyntaxKind[SyntaxKind["VarKeyword"] = 109] = "VarKeyword";
125
+ SyntaxKind[SyntaxKind["VoidKeyword"] = 110] = "VoidKeyword";
126
+ SyntaxKind[SyntaxKind["WhileKeyword"] = 111] = "WhileKeyword";
127
+ SyntaxKind[SyntaxKind["WithKeyword"] = 112] = "WithKeyword";
128
+ // Strict mode reserved words
129
+ SyntaxKind[SyntaxKind["ImplementsKeyword"] = 113] = "ImplementsKeyword";
130
+ SyntaxKind[SyntaxKind["InterfaceKeyword"] = 114] = "InterfaceKeyword";
131
+ SyntaxKind[SyntaxKind["LetKeyword"] = 115] = "LetKeyword";
132
+ SyntaxKind[SyntaxKind["PackageKeyword"] = 116] = "PackageKeyword";
133
+ SyntaxKind[SyntaxKind["PrivateKeyword"] = 117] = "PrivateKeyword";
134
+ SyntaxKind[SyntaxKind["ProtectedKeyword"] = 118] = "ProtectedKeyword";
135
+ SyntaxKind[SyntaxKind["PublicKeyword"] = 119] = "PublicKeyword";
136
+ SyntaxKind[SyntaxKind["StaticKeyword"] = 120] = "StaticKeyword";
137
+ SyntaxKind[SyntaxKind["YieldKeyword"] = 121] = "YieldKeyword";
138
+ // Contextual keywords
139
+ SyntaxKind[SyntaxKind["AbstractKeyword"] = 122] = "AbstractKeyword";
140
+ SyntaxKind[SyntaxKind["AsKeyword"] = 123] = "AsKeyword";
141
+ SyntaxKind[SyntaxKind["AssertsKeyword"] = 124] = "AssertsKeyword";
142
+ SyntaxKind[SyntaxKind["AnyKeyword"] = 125] = "AnyKeyword";
143
+ SyntaxKind[SyntaxKind["AsyncKeyword"] = 126] = "AsyncKeyword";
144
+ SyntaxKind[SyntaxKind["AwaitKeyword"] = 127] = "AwaitKeyword";
145
+ SyntaxKind[SyntaxKind["BooleanKeyword"] = 128] = "BooleanKeyword";
146
+ SyntaxKind[SyntaxKind["ConstructorKeyword"] = 129] = "ConstructorKeyword";
147
+ SyntaxKind[SyntaxKind["DeclareKeyword"] = 130] = "DeclareKeyword";
148
+ SyntaxKind[SyntaxKind["GetKeyword"] = 131] = "GetKeyword";
149
+ SyntaxKind[SyntaxKind["InferKeyword"] = 132] = "InferKeyword";
150
+ SyntaxKind[SyntaxKind["IsKeyword"] = 133] = "IsKeyword";
151
+ SyntaxKind[SyntaxKind["KeyOfKeyword"] = 134] = "KeyOfKeyword";
152
+ SyntaxKind[SyntaxKind["ModuleKeyword"] = 135] = "ModuleKeyword";
153
+ SyntaxKind[SyntaxKind["NamespaceKeyword"] = 136] = "NamespaceKeyword";
154
+ SyntaxKind[SyntaxKind["NeverKeyword"] = 137] = "NeverKeyword";
155
+ SyntaxKind[SyntaxKind["ReadonlyKeyword"] = 138] = "ReadonlyKeyword";
156
+ SyntaxKind[SyntaxKind["RequireKeyword"] = 139] = "RequireKeyword";
157
+ SyntaxKind[SyntaxKind["NumberKeyword"] = 140] = "NumberKeyword";
158
+ SyntaxKind[SyntaxKind["ObjectKeyword"] = 141] = "ObjectKeyword";
159
+ SyntaxKind[SyntaxKind["SetKeyword"] = 142] = "SetKeyword";
160
+ SyntaxKind[SyntaxKind["StringKeyword"] = 143] = "StringKeyword";
161
+ SyntaxKind[SyntaxKind["SymbolKeyword"] = 144] = "SymbolKeyword";
162
+ SyntaxKind[SyntaxKind["TypeKeyword"] = 145] = "TypeKeyword";
163
+ SyntaxKind[SyntaxKind["UndefinedKeyword"] = 146] = "UndefinedKeyword";
164
+ SyntaxKind[SyntaxKind["UniqueKeyword"] = 147] = "UniqueKeyword";
165
+ SyntaxKind[SyntaxKind["UnknownKeyword"] = 148] = "UnknownKeyword";
166
+ SyntaxKind[SyntaxKind["FromKeyword"] = 149] = "FromKeyword";
167
+ SyntaxKind[SyntaxKind["GlobalKeyword"] = 150] = "GlobalKeyword";
168
+ SyntaxKind[SyntaxKind["BigIntKeyword"] = 151] = "BigIntKeyword";
169
+ SyntaxKind[SyntaxKind["OfKeyword"] = 152] = "OfKeyword";
170
+ // Parse tree nodes
171
+ // Names
172
+ SyntaxKind[SyntaxKind["QualifiedName"] = 153] = "QualifiedName";
173
+ SyntaxKind[SyntaxKind["ComputedPropertyName"] = 154] = "ComputedPropertyName";
174
+ // Signature elements
175
+ SyntaxKind[SyntaxKind["TypeParameter"] = 155] = "TypeParameter";
176
+ SyntaxKind[SyntaxKind["Parameter"] = 156] = "Parameter";
177
+ SyntaxKind[SyntaxKind["Decorator"] = 157] = "Decorator";
178
+ // TypeMember
179
+ SyntaxKind[SyntaxKind["PropertySignature"] = 158] = "PropertySignature";
180
+ SyntaxKind[SyntaxKind["PropertyDeclaration"] = 159] = "PropertyDeclaration";
181
+ SyntaxKind[SyntaxKind["MethodSignature"] = 160] = "MethodSignature";
182
+ SyntaxKind[SyntaxKind["MethodDeclaration"] = 161] = "MethodDeclaration";
183
+ SyntaxKind[SyntaxKind["Constructor"] = 162] = "Constructor";
184
+ SyntaxKind[SyntaxKind["GetAccessor"] = 163] = "GetAccessor";
185
+ SyntaxKind[SyntaxKind["SetAccessor"] = 164] = "SetAccessor";
186
+ SyntaxKind[SyntaxKind["CallSignature"] = 165] = "CallSignature";
187
+ SyntaxKind[SyntaxKind["ConstructSignature"] = 166] = "ConstructSignature";
188
+ SyntaxKind[SyntaxKind["IndexSignature"] = 167] = "IndexSignature";
189
+ // Type
190
+ SyntaxKind[SyntaxKind["TypePredicate"] = 168] = "TypePredicate";
191
+ SyntaxKind[SyntaxKind["TypeReference"] = 169] = "TypeReference";
192
+ SyntaxKind[SyntaxKind["FunctionType"] = 170] = "FunctionType";
193
+ SyntaxKind[SyntaxKind["ConstructorType"] = 171] = "ConstructorType";
194
+ SyntaxKind[SyntaxKind["TypeQuery"] = 172] = "TypeQuery";
195
+ SyntaxKind[SyntaxKind["TypeLiteral"] = 173] = "TypeLiteral";
196
+ SyntaxKind[SyntaxKind["ArrayType"] = 174] = "ArrayType";
197
+ SyntaxKind[SyntaxKind["TupleType"] = 175] = "TupleType";
198
+ SyntaxKind[SyntaxKind["OptionalType"] = 176] = "OptionalType";
199
+ SyntaxKind[SyntaxKind["RestType"] = 177] = "RestType";
200
+ SyntaxKind[SyntaxKind["UnionType"] = 178] = "UnionType";
201
+ SyntaxKind[SyntaxKind["IntersectionType"] = 179] = "IntersectionType";
202
+ SyntaxKind[SyntaxKind["ConditionalType"] = 180] = "ConditionalType";
203
+ SyntaxKind[SyntaxKind["InferType"] = 181] = "InferType";
204
+ SyntaxKind[SyntaxKind["ParenthesizedType"] = 182] = "ParenthesizedType";
205
+ SyntaxKind[SyntaxKind["ThisType"] = 183] = "ThisType";
206
+ SyntaxKind[SyntaxKind["TypeOperator"] = 184] = "TypeOperator";
207
+ SyntaxKind[SyntaxKind["IndexedAccessType"] = 185] = "IndexedAccessType";
208
+ SyntaxKind[SyntaxKind["MappedType"] = 186] = "MappedType";
209
+ SyntaxKind[SyntaxKind["LiteralType"] = 187] = "LiteralType";
210
+ SyntaxKind[SyntaxKind["ImportType"] = 188] = "ImportType";
211
+ // Binding patterns
212
+ SyntaxKind[SyntaxKind["ObjectBindingPattern"] = 189] = "ObjectBindingPattern";
213
+ SyntaxKind[SyntaxKind["ArrayBindingPattern"] = 190] = "ArrayBindingPattern";
214
+ SyntaxKind[SyntaxKind["BindingElement"] = 191] = "BindingElement";
215
+ // Expression
216
+ SyntaxKind[SyntaxKind["ArrayLiteralExpression"] = 192] = "ArrayLiteralExpression";
217
+ SyntaxKind[SyntaxKind["ObjectLiteralExpression"] = 193] = "ObjectLiteralExpression";
218
+ SyntaxKind[SyntaxKind["PropertyAccessExpression"] = 194] = "PropertyAccessExpression";
219
+ SyntaxKind[SyntaxKind["ElementAccessExpression"] = 195] = "ElementAccessExpression";
220
+ SyntaxKind[SyntaxKind["CallExpression"] = 196] = "CallExpression";
221
+ SyntaxKind[SyntaxKind["NewExpression"] = 197] = "NewExpression";
222
+ SyntaxKind[SyntaxKind["TaggedTemplateExpression"] = 198] = "TaggedTemplateExpression";
223
+ SyntaxKind[SyntaxKind["TypeAssertionExpression"] = 199] = "TypeAssertionExpression";
224
+ SyntaxKind[SyntaxKind["ParenthesizedExpression"] = 200] = "ParenthesizedExpression";
225
+ SyntaxKind[SyntaxKind["FunctionExpression"] = 201] = "FunctionExpression";
226
+ SyntaxKind[SyntaxKind["ArrowFunction"] = 202] = "ArrowFunction";
227
+ SyntaxKind[SyntaxKind["DeleteExpression"] = 203] = "DeleteExpression";
228
+ SyntaxKind[SyntaxKind["TypeOfExpression"] = 204] = "TypeOfExpression";
229
+ SyntaxKind[SyntaxKind["VoidExpression"] = 205] = "VoidExpression";
230
+ SyntaxKind[SyntaxKind["AwaitExpression"] = 206] = "AwaitExpression";
231
+ SyntaxKind[SyntaxKind["PrefixUnaryExpression"] = 207] = "PrefixUnaryExpression";
232
+ SyntaxKind[SyntaxKind["PostfixUnaryExpression"] = 208] = "PostfixUnaryExpression";
233
+ SyntaxKind[SyntaxKind["BinaryExpression"] = 209] = "BinaryExpression";
234
+ SyntaxKind[SyntaxKind["ConditionalExpression"] = 210] = "ConditionalExpression";
235
+ SyntaxKind[SyntaxKind["TemplateExpression"] = 211] = "TemplateExpression";
236
+ SyntaxKind[SyntaxKind["YieldExpression"] = 212] = "YieldExpression";
237
+ SyntaxKind[SyntaxKind["SpreadElement"] = 213] = "SpreadElement";
238
+ SyntaxKind[SyntaxKind["ClassExpression"] = 214] = "ClassExpression";
239
+ SyntaxKind[SyntaxKind["OmittedExpression"] = 215] = "OmittedExpression";
240
+ SyntaxKind[SyntaxKind["ExpressionWithTypeArguments"] = 216] = "ExpressionWithTypeArguments";
241
+ SyntaxKind[SyntaxKind["AsExpression"] = 217] = "AsExpression";
242
+ SyntaxKind[SyntaxKind["NonNullExpression"] = 218] = "NonNullExpression";
243
+ SyntaxKind[SyntaxKind["MetaProperty"] = 219] = "MetaProperty";
244
+ SyntaxKind[SyntaxKind["SyntheticExpression"] = 220] = "SyntheticExpression";
245
+ // Misc
246
+ SyntaxKind[SyntaxKind["TemplateSpan"] = 221] = "TemplateSpan";
247
+ SyntaxKind[SyntaxKind["SemicolonClassElement"] = 222] = "SemicolonClassElement";
248
+ // Element
249
+ SyntaxKind[SyntaxKind["Block"] = 223] = "Block";
250
+ SyntaxKind[SyntaxKind["EmptyStatement"] = 224] = "EmptyStatement";
251
+ SyntaxKind[SyntaxKind["VariableStatement"] = 225] = "VariableStatement";
252
+ SyntaxKind[SyntaxKind["ExpressionStatement"] = 226] = "ExpressionStatement";
253
+ SyntaxKind[SyntaxKind["IfStatement"] = 227] = "IfStatement";
254
+ SyntaxKind[SyntaxKind["DoStatement"] = 228] = "DoStatement";
255
+ SyntaxKind[SyntaxKind["WhileStatement"] = 229] = "WhileStatement";
256
+ SyntaxKind[SyntaxKind["ForStatement"] = 230] = "ForStatement";
257
+ SyntaxKind[SyntaxKind["ForInStatement"] = 231] = "ForInStatement";
258
+ SyntaxKind[SyntaxKind["ForOfStatement"] = 232] = "ForOfStatement";
259
+ SyntaxKind[SyntaxKind["ContinueStatement"] = 233] = "ContinueStatement";
260
+ SyntaxKind[SyntaxKind["BreakStatement"] = 234] = "BreakStatement";
261
+ SyntaxKind[SyntaxKind["ReturnStatement"] = 235] = "ReturnStatement";
262
+ SyntaxKind[SyntaxKind["WithStatement"] = 236] = "WithStatement";
263
+ SyntaxKind[SyntaxKind["SwitchStatement"] = 237] = "SwitchStatement";
264
+ SyntaxKind[SyntaxKind["LabeledStatement"] = 238] = "LabeledStatement";
265
+ SyntaxKind[SyntaxKind["ThrowStatement"] = 239] = "ThrowStatement";
266
+ SyntaxKind[SyntaxKind["TryStatement"] = 240] = "TryStatement";
267
+ SyntaxKind[SyntaxKind["DebuggerStatement"] = 241] = "DebuggerStatement";
268
+ SyntaxKind[SyntaxKind["VariableDeclaration"] = 242] = "VariableDeclaration";
269
+ SyntaxKind[SyntaxKind["VariableDeclarationList"] = 243] = "VariableDeclarationList";
270
+ SyntaxKind[SyntaxKind["FunctionDeclaration"] = 244] = "FunctionDeclaration";
271
+ SyntaxKind[SyntaxKind["ClassDeclaration"] = 245] = "ClassDeclaration";
272
+ SyntaxKind[SyntaxKind["InterfaceDeclaration"] = 246] = "InterfaceDeclaration";
273
+ SyntaxKind[SyntaxKind["TypeAliasDeclaration"] = 247] = "TypeAliasDeclaration";
274
+ SyntaxKind[SyntaxKind["EnumDeclaration"] = 248] = "EnumDeclaration";
275
+ SyntaxKind[SyntaxKind["ModuleDeclaration"] = 249] = "ModuleDeclaration";
276
+ SyntaxKind[SyntaxKind["ModuleBlock"] = 250] = "ModuleBlock";
277
+ SyntaxKind[SyntaxKind["CaseBlock"] = 251] = "CaseBlock";
278
+ SyntaxKind[SyntaxKind["NamespaceExportDeclaration"] = 252] = "NamespaceExportDeclaration";
279
+ SyntaxKind[SyntaxKind["ImportEqualsDeclaration"] = 253] = "ImportEqualsDeclaration";
280
+ SyntaxKind[SyntaxKind["ImportDeclaration"] = 254] = "ImportDeclaration";
281
+ SyntaxKind[SyntaxKind["ImportClause"] = 255] = "ImportClause";
282
+ SyntaxKind[SyntaxKind["NamespaceImport"] = 256] = "NamespaceImport";
283
+ SyntaxKind[SyntaxKind["NamedImports"] = 257] = "NamedImports";
284
+ SyntaxKind[SyntaxKind["ImportSpecifier"] = 258] = "ImportSpecifier";
285
+ SyntaxKind[SyntaxKind["ExportAssignment"] = 259] = "ExportAssignment";
286
+ SyntaxKind[SyntaxKind["ExportDeclaration"] = 260] = "ExportDeclaration";
287
+ SyntaxKind[SyntaxKind["NamedExports"] = 261] = "NamedExports";
288
+ SyntaxKind[SyntaxKind["NamespaceExport"] = 262] = "NamespaceExport";
289
+ SyntaxKind[SyntaxKind["ExportSpecifier"] = 263] = "ExportSpecifier";
290
+ SyntaxKind[SyntaxKind["MissingDeclaration"] = 264] = "MissingDeclaration";
291
+ // Module references
292
+ SyntaxKind[SyntaxKind["ExternalModuleReference"] = 265] = "ExternalModuleReference";
293
+ // JSX
294
+ SyntaxKind[SyntaxKind["JsxElement"] = 266] = "JsxElement";
295
+ SyntaxKind[SyntaxKind["JsxSelfClosingElement"] = 267] = "JsxSelfClosingElement";
296
+ SyntaxKind[SyntaxKind["JsxOpeningElement"] = 268] = "JsxOpeningElement";
297
+ SyntaxKind[SyntaxKind["JsxClosingElement"] = 269] = "JsxClosingElement";
298
+ SyntaxKind[SyntaxKind["JsxFragment"] = 270] = "JsxFragment";
299
+ SyntaxKind[SyntaxKind["JsxOpeningFragment"] = 271] = "JsxOpeningFragment";
300
+ SyntaxKind[SyntaxKind["JsxClosingFragment"] = 272] = "JsxClosingFragment";
301
+ SyntaxKind[SyntaxKind["JsxAttribute"] = 273] = "JsxAttribute";
302
+ SyntaxKind[SyntaxKind["JsxAttributes"] = 274] = "JsxAttributes";
303
+ SyntaxKind[SyntaxKind["JsxSpreadAttribute"] = 275] = "JsxSpreadAttribute";
304
+ SyntaxKind[SyntaxKind["JsxExpression"] = 276] = "JsxExpression";
305
+ // Clauses
306
+ SyntaxKind[SyntaxKind["CaseClause"] = 277] = "CaseClause";
307
+ SyntaxKind[SyntaxKind["DefaultClause"] = 278] = "DefaultClause";
308
+ SyntaxKind[SyntaxKind["HeritageClause"] = 279] = "HeritageClause";
309
+ SyntaxKind[SyntaxKind["CatchClause"] = 280] = "CatchClause";
310
+ // Property assignments
311
+ SyntaxKind[SyntaxKind["PropertyAssignment"] = 281] = "PropertyAssignment";
312
+ SyntaxKind[SyntaxKind["ShorthandPropertyAssignment"] = 282] = "ShorthandPropertyAssignment";
313
+ SyntaxKind[SyntaxKind["SpreadAssignment"] = 283] = "SpreadAssignment";
314
+ // Enum
315
+ SyntaxKind[SyntaxKind["EnumMember"] = 284] = "EnumMember";
316
+ // Unparsed
317
+ SyntaxKind[SyntaxKind["UnparsedPrologue"] = 285] = "UnparsedPrologue";
318
+ SyntaxKind[SyntaxKind["UnparsedPrepend"] = 286] = "UnparsedPrepend";
319
+ SyntaxKind[SyntaxKind["UnparsedText"] = 287] = "UnparsedText";
320
+ SyntaxKind[SyntaxKind["UnparsedInternalText"] = 288] = "UnparsedInternalText";
321
+ SyntaxKind[SyntaxKind["UnparsedSyntheticReference"] = 289] = "UnparsedSyntheticReference";
322
+ // Top-level nodes
323
+ SyntaxKind[SyntaxKind["SourceFile"] = 290] = "SourceFile";
324
+ SyntaxKind[SyntaxKind["Bundle"] = 291] = "Bundle";
325
+ SyntaxKind[SyntaxKind["UnparsedSource"] = 292] = "UnparsedSource";
326
+ SyntaxKind[SyntaxKind["InputFiles"] = 293] = "InputFiles";
327
+ // JSDoc nodes
328
+ SyntaxKind[SyntaxKind["JSDocTypeExpression"] = 294] = "JSDocTypeExpression";
329
+ // The * type
330
+ SyntaxKind[SyntaxKind["JSDocAllType"] = 295] = "JSDocAllType";
331
+ // The ? type
332
+ SyntaxKind[SyntaxKind["JSDocUnknownType"] = 296] = "JSDocUnknownType";
333
+ SyntaxKind[SyntaxKind["JSDocNullableType"] = 297] = "JSDocNullableType";
334
+ SyntaxKind[SyntaxKind["JSDocNonNullableType"] = 298] = "JSDocNonNullableType";
335
+ SyntaxKind[SyntaxKind["JSDocOptionalType"] = 299] = "JSDocOptionalType";
336
+ SyntaxKind[SyntaxKind["JSDocFunctionType"] = 300] = "JSDocFunctionType";
337
+ SyntaxKind[SyntaxKind["JSDocVariadicType"] = 301] = "JSDocVariadicType";
338
+ // https://jsdoc.app/about-namepaths.html
339
+ SyntaxKind[SyntaxKind["JSDocNamepathType"] = 302] = "JSDocNamepathType";
340
+ SyntaxKind[SyntaxKind["JSDocComment"] = 303] = "JSDocComment";
341
+ SyntaxKind[SyntaxKind["JSDocTypeLiteral"] = 304] = "JSDocTypeLiteral";
342
+ SyntaxKind[SyntaxKind["JSDocSignature"] = 305] = "JSDocSignature";
343
+ SyntaxKind[SyntaxKind["JSDocTag"] = 306] = "JSDocTag";
344
+ SyntaxKind[SyntaxKind["JSDocAugmentsTag"] = 307] = "JSDocAugmentsTag";
345
+ SyntaxKind[SyntaxKind["JSDocImplementsTag"] = 308] = "JSDocImplementsTag";
346
+ SyntaxKind[SyntaxKind["JSDocAuthorTag"] = 309] = "JSDocAuthorTag";
347
+ SyntaxKind[SyntaxKind["JSDocClassTag"] = 310] = "JSDocClassTag";
348
+ SyntaxKind[SyntaxKind["JSDocPublicTag"] = 311] = "JSDocPublicTag";
349
+ SyntaxKind[SyntaxKind["JSDocPrivateTag"] = 312] = "JSDocPrivateTag";
350
+ SyntaxKind[SyntaxKind["JSDocProtectedTag"] = 313] = "JSDocProtectedTag";
351
+ SyntaxKind[SyntaxKind["JSDocReadonlyTag"] = 314] = "JSDocReadonlyTag";
352
+ SyntaxKind[SyntaxKind["JSDocCallbackTag"] = 315] = "JSDocCallbackTag";
353
+ SyntaxKind[SyntaxKind["JSDocEnumTag"] = 316] = "JSDocEnumTag";
354
+ SyntaxKind[SyntaxKind["JSDocParameterTag"] = 317] = "JSDocParameterTag";
355
+ SyntaxKind[SyntaxKind["JSDocReturnTag"] = 318] = "JSDocReturnTag";
356
+ SyntaxKind[SyntaxKind["JSDocThisTag"] = 319] = "JSDocThisTag";
357
+ SyntaxKind[SyntaxKind["JSDocTypeTag"] = 320] = "JSDocTypeTag";
358
+ SyntaxKind[SyntaxKind["JSDocTemplateTag"] = 321] = "JSDocTemplateTag";
359
+ SyntaxKind[SyntaxKind["JSDocTypedefTag"] = 322] = "JSDocTypedefTag";
360
+ SyntaxKind[SyntaxKind["JSDocPropertyTag"] = 323] = "JSDocPropertyTag";
361
+ // Synthesized list
362
+ SyntaxKind[SyntaxKind["SyntaxList"] = 324] = "SyntaxList";
363
+ // Transformation nodes
364
+ SyntaxKind[SyntaxKind["NotEmittedStatement"] = 325] = "NotEmittedStatement";
365
+ SyntaxKind[SyntaxKind["PartiallyEmittedExpression"] = 326] = "PartiallyEmittedExpression";
366
+ SyntaxKind[SyntaxKind["CommaListExpression"] = 327] = "CommaListExpression";
367
+ SyntaxKind[SyntaxKind["MergeDeclarationMarker"] = 328] = "MergeDeclarationMarker";
368
+ SyntaxKind[SyntaxKind["EndOfDeclarationMarker"] = 329] = "EndOfDeclarationMarker";
369
+ SyntaxKind[SyntaxKind["SyntheticReferenceExpression"] = 330] = "SyntheticReferenceExpression";
370
+ // Enum value count
371
+ SyntaxKind[SyntaxKind["Count"] = 331] = "Count";
372
+ // Markers
373
+ SyntaxKind[SyntaxKind["FirstAssignment"] = 62] = "FirstAssignment";
374
+ SyntaxKind[SyntaxKind["LastAssignment"] = 74] = "LastAssignment";
375
+ SyntaxKind[SyntaxKind["FirstCompoundAssignment"] = 63] = "FirstCompoundAssignment";
376
+ SyntaxKind[SyntaxKind["LastCompoundAssignment"] = 74] = "LastCompoundAssignment";
377
+ SyntaxKind[SyntaxKind["FirstReservedWord"] = 77] = "FirstReservedWord";
378
+ SyntaxKind[SyntaxKind["LastReservedWord"] = 112] = "LastReservedWord";
379
+ SyntaxKind[SyntaxKind["FirstKeyword"] = 77] = "FirstKeyword";
380
+ SyntaxKind[SyntaxKind["LastKeyword"] = 152] = "LastKeyword";
381
+ SyntaxKind[SyntaxKind["FirstFutureReservedWord"] = 113] = "FirstFutureReservedWord";
382
+ SyntaxKind[SyntaxKind["LastFutureReservedWord"] = 121] = "LastFutureReservedWord";
383
+ SyntaxKind[SyntaxKind["FirstTypeNode"] = 168] = "FirstTypeNode";
384
+ SyntaxKind[SyntaxKind["LastTypeNode"] = 188] = "LastTypeNode";
385
+ SyntaxKind[SyntaxKind["FirstPunctuation"] = 18] = "FirstPunctuation";
386
+ SyntaxKind[SyntaxKind["LastPunctuation"] = 74] = "LastPunctuation";
387
+ SyntaxKind[SyntaxKind["FirstToken"] = 0] = "FirstToken";
388
+ SyntaxKind[SyntaxKind["LastToken"] = 152] = "LastToken";
389
+ SyntaxKind[SyntaxKind["FirstTriviaToken"] = 2] = "FirstTriviaToken";
390
+ SyntaxKind[SyntaxKind["LastTriviaToken"] = 7] = "LastTriviaToken";
391
+ SyntaxKind[SyntaxKind["FirstLiteralToken"] = 8] = "FirstLiteralToken";
392
+ SyntaxKind[SyntaxKind["LastLiteralToken"] = 14] = "LastLiteralToken";
393
+ SyntaxKind[SyntaxKind["FirstTemplateToken"] = 14] = "FirstTemplateToken";
394
+ SyntaxKind[SyntaxKind["LastTemplateToken"] = 17] = "LastTemplateToken";
395
+ SyntaxKind[SyntaxKind["FirstBinaryOperator"] = 29] = "FirstBinaryOperator";
396
+ SyntaxKind[SyntaxKind["LastBinaryOperator"] = 74] = "LastBinaryOperator";
397
+ SyntaxKind[SyntaxKind["FirstStatement"] = 225] = "FirstStatement";
398
+ SyntaxKind[SyntaxKind["LastStatement"] = 241] = "LastStatement";
399
+ SyntaxKind[SyntaxKind["FirstNode"] = 153] = "FirstNode";
400
+ SyntaxKind[SyntaxKind["FirstJSDocNode"] = 294] = "FirstJSDocNode";
401
+ SyntaxKind[SyntaxKind["LastJSDocNode"] = 323] = "LastJSDocNode";
402
+ SyntaxKind[SyntaxKind["FirstJSDocTagNode"] = 306] = "FirstJSDocTagNode";
403
+ SyntaxKind[SyntaxKind["LastJSDocTagNode"] = 323] = "LastJSDocTagNode";
404
+ SyntaxKind[SyntaxKind["FirstContextualKeyword"] = 122] = "FirstContextualKeyword";
405
+ SyntaxKind[SyntaxKind["LastContextualKeyword"] = 152] = "LastContextualKeyword";
406
+ })(SyntaxKind || (SyntaxKind = {}));
407
+ export var NodeFlags;
408
+ (function (NodeFlags) {
409
+ NodeFlags[NodeFlags["None"] = 0] = "None";
410
+ NodeFlags[NodeFlags["Let"] = 1] = "Let";
411
+ NodeFlags[NodeFlags["Const"] = 2] = "Const";
412
+ NodeFlags[NodeFlags["NestedNamespace"] = 4] = "NestedNamespace";
413
+ NodeFlags[NodeFlags["Synthesized"] = 8] = "Synthesized";
414
+ NodeFlags[NodeFlags["Namespace"] = 16] = "Namespace";
415
+ NodeFlags[NodeFlags["OptionalChain"] = 32] = "OptionalChain";
416
+ NodeFlags[NodeFlags["ExportContext"] = 64] = "ExportContext";
417
+ NodeFlags[NodeFlags["HasImplicitReturn"] = 256] = "HasImplicitReturn";
418
+ NodeFlags[NodeFlags["HasExplicitReturn"] = 512] = "HasExplicitReturn";
419
+ NodeFlags[NodeFlags["GlobalAugmentation"] = 1024] = "GlobalAugmentation";
420
+ NodeFlags[NodeFlags["HasAsyncFunctions"] = 2048] = "HasAsyncFunctions";
421
+ NodeFlags[NodeFlags["DisallowInContext"] = 4096] = "DisallowInContext";
422
+ NodeFlags[NodeFlags["AwaitContext"] = 32768] = "AwaitContext";
423
+ NodeFlags[NodeFlags["ThisNodeHasError"] = 65536] = "ThisNodeHasError";
424
+ NodeFlags[NodeFlags["JavaScriptFile"] = 131072] = "JavaScriptFile";
425
+ NodeFlags[NodeFlags["ThisNodeOrAnySubNodesHasError"] = 262144] = "ThisNodeOrAnySubNodesHasError";
426
+ NodeFlags[NodeFlags["HasAggregatedChildData"] = 524288] = "HasAggregatedChildData";
427
+ // These flags will be set when the parser encounters a dynamic import expression or 'import.meta' to avoid
428
+ // walking the tree if the flags are not set. However, these flags are just a approximation
429
+ // (hence why it's named "PossiblyContainsDynamicImport") because once set, the flags never get cleared.
430
+ // During editing, if a dynamic import is removed, incremental parsing will *NOT* clear this flag.
431
+ // This means that the tree will always be traversed during module resolution, or when looking for external module indicators.
432
+ // However, the removal operation should not occur often and in the case of the
433
+ // removal, it is likely that users will add the import anyway.
434
+ // The advantage of this approach is its simplicity. For the case of batch compilation,
435
+ // we guarantee that users won't have to pay the price of walking the tree if a dynamic import isn't used.
436
+ NodeFlags[NodeFlags["PossiblyContainsDynamicImport"] = 1048576] = "PossiblyContainsDynamicImport";
437
+ NodeFlags[NodeFlags["PossiblyContainsImportMeta"] = 2097152] = "PossiblyContainsImportMeta";
438
+ NodeFlags[NodeFlags["Ambient"] = 8388608] = "Ambient";
439
+ NodeFlags[NodeFlags["JsonFile"] = 33554432] = "JsonFile";
440
+ NodeFlags[NodeFlags["TypeCached"] = 67108864] = "TypeCached";
441
+ NodeFlags[NodeFlags["BlockScoped"] = 3] = "BlockScoped";
442
+ NodeFlags[NodeFlags["ReachabilityCheckFlags"] = 768] = "ReachabilityCheckFlags";
443
+ NodeFlags[NodeFlags["ReachabilityAndEmitFlags"] = 2816] = "ReachabilityAndEmitFlags";
444
+ // Parsing context flags
445
+ NodeFlags[NodeFlags["ContextFlags"] = 8556544] = "ContextFlags";
446
+ // Exclude these flags when parsing a Type
447
+ NodeFlags[NodeFlags["TypeExcludesFlags"] = 32768] = "TypeExcludesFlags";
448
+ // Represents all flags that are potentially set once and
449
+ // never cleared on SourceFiles which get re-used in between incremental parses.
450
+ // See the comment above on `PossiblyContainsDynamicImport` and `PossiblyContainsImportMeta`.
451
+ NodeFlags[NodeFlags["PermanentlySetIncrementalFlags"] = 3145728] = "PermanentlySetIncrementalFlags";
452
+ })(NodeFlags || (NodeFlags = {}));
453
+ export var ModifierFlags;
454
+ (function (ModifierFlags) {
455
+ ModifierFlags[ModifierFlags["None"] = 0] = "None";
456
+ ModifierFlags[ModifierFlags["Export"] = 1] = "Export";
457
+ ModifierFlags[ModifierFlags["Ambient"] = 2] = "Ambient";
458
+ ModifierFlags[ModifierFlags["Readonly"] = 64] = "Readonly";
459
+ ModifierFlags[ModifierFlags["Async"] = 256] = "Async";
460
+ ModifierFlags[ModifierFlags["HasComputedFlags"] = 536870912] = "HasComputedFlags";
461
+ ModifierFlags[ModifierFlags["TypeScriptModifier"] = 66] = "TypeScriptModifier";
462
+ ModifierFlags[ModifierFlags["All"] = 323] = "All";
463
+ })(ModifierFlags || (ModifierFlags = {}));
464
+ export var GeneratedIdentifierFlags;
465
+ (function (GeneratedIdentifierFlags) {
466
+ // Kinds
467
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["None"] = 0] = "None";
468
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["Auto"] = 1] = "Auto";
469
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["Loop"] = 2] = "Loop";
470
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["Unique"] = 3] = "Unique";
471
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["Node"] = 4] = "Node";
472
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["KindMask"] = 7] = "KindMask";
473
+ // Flags
474
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["ReservedInNestedScopes"] = 8] = "ReservedInNestedScopes";
475
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["Optimistic"] = 16] = "Optimistic";
476
+ GeneratedIdentifierFlags[GeneratedIdentifierFlags["FileLevel"] = 32] = "FileLevel";
477
+ })(GeneratedIdentifierFlags || (GeneratedIdentifierFlags = {}));
478
+ export var TokenFlags;
479
+ (function (TokenFlags) {
480
+ TokenFlags[TokenFlags["None"] = 0] = "None";
481
+ TokenFlags[TokenFlags["PrecedingLineBreak"] = 1] = "PrecedingLineBreak";
482
+ TokenFlags[TokenFlags["Unterminated"] = 4] = "Unterminated";
483
+ TokenFlags[TokenFlags["ExtendedUnicodeEscape"] = 8] = "ExtendedUnicodeEscape";
484
+ TokenFlags[TokenFlags["Scientific"] = 16] = "Scientific";
485
+ TokenFlags[TokenFlags["Octal"] = 32] = "Octal";
486
+ TokenFlags[TokenFlags["HexSpecifier"] = 64] = "HexSpecifier";
487
+ TokenFlags[TokenFlags["BinarySpecifier"] = 128] = "BinarySpecifier";
488
+ TokenFlags[TokenFlags["OctalSpecifier"] = 256] = "OctalSpecifier";
489
+ TokenFlags[TokenFlags["ContainsSeparator"] = 512] = "ContainsSeparator";
490
+ TokenFlags[TokenFlags["UnicodeEscape"] = 1024] = "UnicodeEscape";
491
+ TokenFlags[TokenFlags["BinaryOrOctalSpecifier"] = 384] = "BinaryOrOctalSpecifier";
492
+ TokenFlags[TokenFlags["NumericLiteralFlags"] = 1008] = "NumericLiteralFlags";
493
+ })(TokenFlags || (TokenFlags = {}));
494
+ // NOTE: Ensure this is up-to-date with src/debug/debug.ts
495
+ export var FlowFlags;
496
+ (function (FlowFlags) {
497
+ FlowFlags[FlowFlags["Unreachable"] = 1] = "Unreachable";
498
+ FlowFlags[FlowFlags["Start"] = 2] = "Start";
499
+ FlowFlags[FlowFlags["BranchLabel"] = 4] = "BranchLabel";
500
+ FlowFlags[FlowFlags["LoopLabel"] = 8] = "LoopLabel";
501
+ FlowFlags[FlowFlags["Assignment"] = 16] = "Assignment";
502
+ FlowFlags[FlowFlags["TrueCondition"] = 32] = "TrueCondition";
503
+ FlowFlags[FlowFlags["FalseCondition"] = 64] = "FalseCondition";
504
+ FlowFlags[FlowFlags["SwitchClause"] = 128] = "SwitchClause";
505
+ FlowFlags[FlowFlags["ArrayMutation"] = 256] = "ArrayMutation";
506
+ FlowFlags[FlowFlags["Call"] = 512] = "Call";
507
+ FlowFlags[FlowFlags["ReduceLabel"] = 1024] = "ReduceLabel";
508
+ FlowFlags[FlowFlags["Referenced"] = 2048] = "Referenced";
509
+ FlowFlags[FlowFlags["Shared"] = 4096] = "Shared";
510
+ FlowFlags[FlowFlags["Label"] = 12] = "Label";
511
+ FlowFlags[FlowFlags["Condition"] = 96] = "Condition";
512
+ })(FlowFlags || (FlowFlags = {}));
513
+ export var CommentDirectiveType;
514
+ (function (CommentDirectiveType) {
515
+ CommentDirectiveType[CommentDirectiveType["ExpectError"] = 0] = "ExpectError";
516
+ CommentDirectiveType[CommentDirectiveType["Ignore"] = 1] = "Ignore";
517
+ })(CommentDirectiveType || (CommentDirectiveType = {}));
518
+ /** Return code used by getEmitOutput function to indicate status of the function */
519
+ export var ExitStatus;
520
+ (function (ExitStatus) {
521
+ // Compiler ran successfully. Either this was a simple do-nothing compilation (for example,
522
+ // when -version or -help was provided, or this was a normal compilation, no diagnostics
523
+ // were produced, and all outputs were generated successfully.
524
+ ExitStatus[ExitStatus["Success"] = 0] = "Success";
525
+ // Diagnostics were produced and because of them no code was generated.
526
+ ExitStatus[ExitStatus["DiagnosticsPresent_OutputsSkipped"] = 1] = "DiagnosticsPresent_OutputsSkipped";
527
+ // Diagnostics were produced and outputs were generated in spite of them.
528
+ ExitStatus[ExitStatus["DiagnosticsPresent_OutputsGenerated"] = 2] = "DiagnosticsPresent_OutputsGenerated";
529
+ // When build skipped because passed in project is invalid
530
+ ExitStatus[ExitStatus["InvalidProject_OutputsSkipped"] = 3] = "InvalidProject_OutputsSkipped";
531
+ // When build is skipped because project references form cycle
532
+ ExitStatus[ExitStatus["ProjectReferenceCycle_OutputsSkipped"] = 4] = "ProjectReferenceCycle_OutputsSkipped";
533
+ /** @deprecated Use ProjectReferenceCycle_OutputsSkipped instead. */
534
+ ExitStatus[ExitStatus["ProjectReferenceCycle_OutputsSkupped"] = 4] = "ProjectReferenceCycle_OutputsSkupped";
535
+ })(ExitStatus || (ExitStatus = {}));
536
+ export var SyntheticSymbolKind;
537
+ (function (SyntheticSymbolKind) {
538
+ SyntheticSymbolKind[SyntheticSymbolKind["UnionOrIntersection"] = 0] = "UnionOrIntersection";
539
+ SyntheticSymbolKind[SyntheticSymbolKind["Spread"] = 1] = "Spread";
540
+ })(SyntheticSymbolKind || (SyntheticSymbolKind = {}));
541
+ export var SymbolFlags;
542
+ (function (SymbolFlags) {
543
+ SymbolFlags[SymbolFlags["None"] = 0] = "None";
544
+ SymbolFlags[SymbolFlags["FunctionScopedVariable"] = 1] = "FunctionScopedVariable";
545
+ SymbolFlags[SymbolFlags["BlockScopedVariable"] = 2] = "BlockScopedVariable";
546
+ SymbolFlags[SymbolFlags["Property"] = 4] = "Property";
547
+ SymbolFlags[SymbolFlags["Function"] = 16] = "Function";
548
+ SymbolFlags[SymbolFlags["Interface"] = 64] = "Interface";
549
+ SymbolFlags[SymbolFlags["ValueModule"] = 512] = "ValueModule";
550
+ SymbolFlags[SymbolFlags["NamespaceModule"] = 1024] = "NamespaceModule";
551
+ SymbolFlags[SymbolFlags["TypeLiteral"] = 2048] = "TypeLiteral";
552
+ SymbolFlags[SymbolFlags["ObjectLiteral"] = 4096] = "ObjectLiteral";
553
+ SymbolFlags[SymbolFlags["Method"] = 8192] = "Method";
554
+ SymbolFlags[SymbolFlags["Signature"] = 131072] = "Signature";
555
+ SymbolFlags[SymbolFlags["TypeParameter"] = 262144] = "TypeParameter";
556
+ SymbolFlags[SymbolFlags["TypeAlias"] = 524288] = "TypeAlias";
557
+ SymbolFlags[SymbolFlags["ExportValue"] = 1048576] = "ExportValue";
558
+ SymbolFlags[SymbolFlags["Alias"] = 2097152] = "Alias";
559
+ SymbolFlags[SymbolFlags["ExportStar"] = 8388608] = "ExportStar";
560
+ SymbolFlags[SymbolFlags["Optional"] = 16777216] = "Optional";
561
+ SymbolFlags[SymbolFlags["Transient"] = 33554432] = "Transient";
562
+ SymbolFlags[SymbolFlags["Assignment"] = 67108864] = "Assignment";
563
+ SymbolFlags[SymbolFlags["ModuleExports"] = 134217728] = "ModuleExports";
564
+ SymbolFlags[SymbolFlags["All"] = 62799447] = "All";
565
+ SymbolFlags[SymbolFlags["Variable"] = 3] = "Variable";
566
+ SymbolFlags[SymbolFlags["Value"] = 12823] = "Value";
567
+ SymbolFlags[SymbolFlags["Type"] = 788544] = "Type";
568
+ SymbolFlags[SymbolFlags["Namespace"] = 1536] = "Namespace";
569
+ SymbolFlags[SymbolFlags["Module"] = 1536] = "Module";
570
+ // Block-scoped declarations are not allowed to be re-declared
571
+ // they can not merge with anything in the value space
572
+ SymbolFlags[SymbolFlags["BlockScopedVariableExcludes"] = 12823] = "BlockScopedVariableExcludes";
573
+ SymbolFlags[SymbolFlags["ParameterExcludes"] = 12823] = "ParameterExcludes";
574
+ SymbolFlags[SymbolFlags["PropertyExcludes"] = 0] = "PropertyExcludes";
575
+ SymbolFlags[SymbolFlags["FunctionExcludes"] = 12295] = "FunctionExcludes";
576
+ SymbolFlags[SymbolFlags["ValueModuleExcludes"] = 12295] = "ValueModuleExcludes";
577
+ SymbolFlags[SymbolFlags["NamespaceModuleExcludes"] = 0] = "NamespaceModuleExcludes";
578
+ SymbolFlags[SymbolFlags["TypeParameterExcludes"] = 526400] = "TypeParameterExcludes";
579
+ SymbolFlags[SymbolFlags["TypeAliasExcludes"] = 788544] = "TypeAliasExcludes";
580
+ SymbolFlags[SymbolFlags["AliasExcludes"] = 2097152] = "AliasExcludes";
581
+ SymbolFlags[SymbolFlags["ModuleMember"] = 2623059] = "ModuleMember";
582
+ SymbolFlags[SymbolFlags["ExportHasLocal"] = 528] = "ExportHasLocal";
583
+ SymbolFlags[SymbolFlags["BlockScoped"] = 2] = "BlockScoped";
584
+ SymbolFlags[SymbolFlags["ClassMember"] = 8196] = "ClassMember";
585
+ // The set of things we consider semantically classifiable. Used to speed up the LS during
586
+ // classification.
587
+ SymbolFlags[SymbolFlags["Classifiable"] = 2885184] = "Classifiable";
588
+ SymbolFlags[SymbolFlags["LateBindingContainer"] = 6224] = "LateBindingContainer";
589
+ })(SymbolFlags || (SymbolFlags = {}));
590
+ export var InternalSymbolName;
591
+ (function (InternalSymbolName) {
592
+ InternalSymbolName["Call"] = "__call";
593
+ InternalSymbolName["Index"] = "__index";
594
+ InternalSymbolName["ExportStar"] = "__export";
595
+ InternalSymbolName["Global"] = "__global";
596
+ InternalSymbolName["Missing"] = "__missing";
597
+ InternalSymbolName["Type"] = "__type";
598
+ InternalSymbolName["Object"] = "__object";
599
+ InternalSymbolName["JSXAttributes"] = "__jsxAttributes";
600
+ InternalSymbolName["Function"] = "__function";
601
+ InternalSymbolName["Computed"] = "__computed";
602
+ InternalSymbolName["Resolving"] = "__resolving__";
603
+ InternalSymbolName["Default"] = "default";
604
+ })(InternalSymbolName || (InternalSymbolName = {}));
605
+ export var AssignmentDeclarationKind;
606
+ (function (AssignmentDeclarationKind) {
607
+ AssignmentDeclarationKind[AssignmentDeclarationKind["None"] = 0] = "None";
608
+ /// exports.name = expr
609
+ AssignmentDeclarationKind[AssignmentDeclarationKind["ExportsProperty"] = 1] = "ExportsProperty";
610
+ /// module.exports = expr
611
+ AssignmentDeclarationKind[AssignmentDeclarationKind["ModuleExports"] = 2] = "ModuleExports";
612
+ /// className.prototype.name = expr
613
+ AssignmentDeclarationKind[AssignmentDeclarationKind["PrototypeProperty"] = 3] = "PrototypeProperty";
614
+ // F.name = expr
615
+ AssignmentDeclarationKind[AssignmentDeclarationKind["Property"] = 4] = "Property";
616
+ // F.prototype = { ... }
617
+ AssignmentDeclarationKind[AssignmentDeclarationKind["Prototype"] = 5] = "Prototype";
618
+ // Object.defineProperty(x, 'name', { value: any, writable?: boolean (false by default) });
619
+ // Object.defineProperty(x, 'name', { get: Function, set: Function });
620
+ // Object.defineProperty(x, 'name', { get: Function });
621
+ // Object.defineProperty(x, 'name', { set: Function });
622
+ AssignmentDeclarationKind[AssignmentDeclarationKind["ObjectDefinePropertyValue"] = 6] = "ObjectDefinePropertyValue";
623
+ // Object.defineProperty(exports || module.exports, 'name', ...);
624
+ AssignmentDeclarationKind[AssignmentDeclarationKind["ObjectDefinePropertyExports"] = 7] = "ObjectDefinePropertyExports";
625
+ // Object.defineProperty(Foo.prototype, 'name', ...);
626
+ AssignmentDeclarationKind[AssignmentDeclarationKind["ObjectDefinePrototypeProperty"] = 8] = "ObjectDefinePrototypeProperty";
627
+ })(AssignmentDeclarationKind || (AssignmentDeclarationKind = {}));
628
+ export var DiagnosticCategory;
629
+ (function (DiagnosticCategory) {
630
+ DiagnosticCategory[DiagnosticCategory["Warning"] = 0] = "Warning";
631
+ DiagnosticCategory[DiagnosticCategory["Error"] = 1] = "Error";
632
+ DiagnosticCategory[DiagnosticCategory["Suggestion"] = 2] = "Suggestion";
633
+ DiagnosticCategory[DiagnosticCategory["Message"] = 3] = "Message";
634
+ })(DiagnosticCategory || (DiagnosticCategory = {}));
635
+ export var ModuleResolutionKind;
636
+ (function (ModuleResolutionKind) {
637
+ ModuleResolutionKind[ModuleResolutionKind["Classic"] = 1] = "Classic";
638
+ ModuleResolutionKind[ModuleResolutionKind["NodeJs"] = 2] = "NodeJs";
639
+ })(ModuleResolutionKind || (ModuleResolutionKind = {}));
640
+ export var ModuleKind;
641
+ (function (ModuleKind) {
642
+ ModuleKind[ModuleKind["None"] = 0] = "None";
643
+ ModuleKind[ModuleKind["CommonJS"] = 1] = "CommonJS";
644
+ ModuleKind[ModuleKind["AMD"] = 2] = "AMD";
645
+ ModuleKind[ModuleKind["UMD"] = 3] = "UMD";
646
+ ModuleKind[ModuleKind["System"] = 4] = "System";
647
+ // NOTE: ES module kinds should be contiguous to more easily check whether a module kind is *any* ES module kind.
648
+ // Non-ES module kinds should not come between ES2015 (the earliest ES module kind) and ESNext (the last ES
649
+ // module kind).
650
+ ModuleKind[ModuleKind["ES2015"] = 5] = "ES2015";
651
+ ModuleKind[ModuleKind["ES2020"] = 6] = "ES2020";
652
+ ModuleKind[ModuleKind["ESNext"] = 99] = "ESNext";
653
+ })(ModuleKind || (ModuleKind = {}));
654
+ export var JsxEmit;
655
+ (function (JsxEmit) {
656
+ JsxEmit[JsxEmit["None"] = 0] = "None";
657
+ JsxEmit[JsxEmit["Preserve"] = 1] = "Preserve";
658
+ JsxEmit[JsxEmit["React"] = 2] = "React";
659
+ JsxEmit[JsxEmit["ReactNative"] = 3] = "ReactNative";
660
+ })(JsxEmit || (JsxEmit = {}));
661
+ export var ImportsNotUsedAsValues;
662
+ (function (ImportsNotUsedAsValues) {
663
+ ImportsNotUsedAsValues[ImportsNotUsedAsValues["Remove"] = 0] = "Remove";
664
+ ImportsNotUsedAsValues[ImportsNotUsedAsValues["Preserve"] = 1] = "Preserve";
665
+ ImportsNotUsedAsValues[ImportsNotUsedAsValues["Error"] = 2] = "Error";
666
+ })(ImportsNotUsedAsValues || (ImportsNotUsedAsValues = {}));
667
+ export var NewLineKind;
668
+ (function (NewLineKind) {
669
+ NewLineKind[NewLineKind["CarriageReturnLineFeed"] = 0] = "CarriageReturnLineFeed";
670
+ NewLineKind[NewLineKind["LineFeed"] = 1] = "LineFeed";
671
+ })(NewLineKind || (NewLineKind = {}));
672
+ export var ScriptKind;
673
+ (function (ScriptKind) {
674
+ ScriptKind[ScriptKind["Unknown"] = 0] = "Unknown";
675
+ ScriptKind[ScriptKind["JS"] = 1] = "JS";
676
+ ScriptKind[ScriptKind["JSX"] = 2] = "JSX";
677
+ ScriptKind[ScriptKind["TS"] = 3] = "TS";
678
+ ScriptKind[ScriptKind["TSX"] = 4] = "TSX";
679
+ ScriptKind[ScriptKind["External"] = 5] = "External";
680
+ ScriptKind[ScriptKind["JSON"] = 6] = "JSON";
681
+ /**
682
+ * Used on extensions that doesn't define the ScriptKind but the content defines it.
683
+ * Deferred extensions are going to be included in all project contexts.
684
+ */
685
+ ScriptKind[ScriptKind["Deferred"] = 7] = "Deferred";
686
+ })(ScriptKind || (ScriptKind = {}));
687
+ export var ScriptTarget;
688
+ (function (ScriptTarget) {
689
+ ScriptTarget[ScriptTarget["ES3"] = 0] = "ES3";
690
+ ScriptTarget[ScriptTarget["ES5"] = 1] = "ES5";
691
+ ScriptTarget[ScriptTarget["ES2015"] = 2] = "ES2015";
692
+ ScriptTarget[ScriptTarget["ES2016"] = 3] = "ES2016";
693
+ ScriptTarget[ScriptTarget["ES2017"] = 4] = "ES2017";
694
+ ScriptTarget[ScriptTarget["ES2018"] = 5] = "ES2018";
695
+ ScriptTarget[ScriptTarget["ES2019"] = 6] = "ES2019";
696
+ ScriptTarget[ScriptTarget["ES2020"] = 7] = "ES2020";
697
+ ScriptTarget[ScriptTarget["ESNext"] = 99] = "ESNext";
698
+ ScriptTarget[ScriptTarget["JSON"] = 100] = "JSON";
699
+ ScriptTarget[ScriptTarget["Latest"] = 99] = "Latest";
700
+ })(ScriptTarget || (ScriptTarget = {}));
701
+ export var LanguageVariant;
702
+ (function (LanguageVariant) {
703
+ LanguageVariant[LanguageVariant["Standard"] = 0] = "Standard";
704
+ LanguageVariant[LanguageVariant["JSX"] = 1] = "JSX";
705
+ })(LanguageVariant || (LanguageVariant = {}));
706
+ export var CharacterCodes;
707
+ (function (CharacterCodes) {
708
+ CharacterCodes[CharacterCodes["nullCharacter"] = 0] = "nullCharacter";
709
+ CharacterCodes[CharacterCodes["maxAsciiCharacter"] = 127] = "maxAsciiCharacter";
710
+ CharacterCodes[CharacterCodes["lineFeed"] = 10] = "lineFeed";
711
+ CharacterCodes[CharacterCodes["carriageReturn"] = 13] = "carriageReturn";
712
+ CharacterCodes[CharacterCodes["lineSeparator"] = 8232] = "lineSeparator";
713
+ CharacterCodes[CharacterCodes["paragraphSeparator"] = 8233] = "paragraphSeparator";
714
+ CharacterCodes[CharacterCodes["nextLine"] = 133] = "nextLine";
715
+ // Unicode 3.0 space characters
716
+ CharacterCodes[CharacterCodes["space"] = 32] = "space";
717
+ CharacterCodes[CharacterCodes["nonBreakingSpace"] = 160] = "nonBreakingSpace";
718
+ CharacterCodes[CharacterCodes["enQuad"] = 8192] = "enQuad";
719
+ CharacterCodes[CharacterCodes["emQuad"] = 8193] = "emQuad";
720
+ CharacterCodes[CharacterCodes["enSpace"] = 8194] = "enSpace";
721
+ CharacterCodes[CharacterCodes["emSpace"] = 8195] = "emSpace";
722
+ CharacterCodes[CharacterCodes["threePerEmSpace"] = 8196] = "threePerEmSpace";
723
+ CharacterCodes[CharacterCodes["fourPerEmSpace"] = 8197] = "fourPerEmSpace";
724
+ CharacterCodes[CharacterCodes["sixPerEmSpace"] = 8198] = "sixPerEmSpace";
725
+ CharacterCodes[CharacterCodes["figureSpace"] = 8199] = "figureSpace";
726
+ CharacterCodes[CharacterCodes["punctuationSpace"] = 8200] = "punctuationSpace";
727
+ CharacterCodes[CharacterCodes["thinSpace"] = 8201] = "thinSpace";
728
+ CharacterCodes[CharacterCodes["hairSpace"] = 8202] = "hairSpace";
729
+ CharacterCodes[CharacterCodes["zeroWidthSpace"] = 8203] = "zeroWidthSpace";
730
+ CharacterCodes[CharacterCodes["narrowNoBreakSpace"] = 8239] = "narrowNoBreakSpace";
731
+ CharacterCodes[CharacterCodes["ideographicSpace"] = 12288] = "ideographicSpace";
732
+ CharacterCodes[CharacterCodes["mathematicalSpace"] = 8287] = "mathematicalSpace";
733
+ CharacterCodes[CharacterCodes["ogham"] = 5760] = "ogham";
734
+ CharacterCodes[CharacterCodes["_"] = 95] = "_";
735
+ CharacterCodes[CharacterCodes["$"] = 36] = "$";
736
+ CharacterCodes[CharacterCodes["_0"] = 48] = "_0";
737
+ CharacterCodes[CharacterCodes["_1"] = 49] = "_1";
738
+ CharacterCodes[CharacterCodes["_2"] = 50] = "_2";
739
+ CharacterCodes[CharacterCodes["_3"] = 51] = "_3";
740
+ CharacterCodes[CharacterCodes["_4"] = 52] = "_4";
741
+ CharacterCodes[CharacterCodes["_5"] = 53] = "_5";
742
+ CharacterCodes[CharacterCodes["_6"] = 54] = "_6";
743
+ CharacterCodes[CharacterCodes["_7"] = 55] = "_7";
744
+ CharacterCodes[CharacterCodes["_8"] = 56] = "_8";
745
+ CharacterCodes[CharacterCodes["_9"] = 57] = "_9";
746
+ CharacterCodes[CharacterCodes["a"] = 97] = "a";
747
+ CharacterCodes[CharacterCodes["b"] = 98] = "b";
748
+ CharacterCodes[CharacterCodes["c"] = 99] = "c";
749
+ CharacterCodes[CharacterCodes["d"] = 100] = "d";
750
+ CharacterCodes[CharacterCodes["e"] = 101] = "e";
751
+ CharacterCodes[CharacterCodes["f"] = 102] = "f";
752
+ CharacterCodes[CharacterCodes["g"] = 103] = "g";
753
+ CharacterCodes[CharacterCodes["h"] = 104] = "h";
754
+ CharacterCodes[CharacterCodes["i"] = 105] = "i";
755
+ CharacterCodes[CharacterCodes["j"] = 106] = "j";
756
+ CharacterCodes[CharacterCodes["k"] = 107] = "k";
757
+ CharacterCodes[CharacterCodes["l"] = 108] = "l";
758
+ CharacterCodes[CharacterCodes["m"] = 109] = "m";
759
+ CharacterCodes[CharacterCodes["n"] = 110] = "n";
760
+ CharacterCodes[CharacterCodes["o"] = 111] = "o";
761
+ CharacterCodes[CharacterCodes["p"] = 112] = "p";
762
+ CharacterCodes[CharacterCodes["q"] = 113] = "q";
763
+ CharacterCodes[CharacterCodes["r"] = 114] = "r";
764
+ CharacterCodes[CharacterCodes["s"] = 115] = "s";
765
+ CharacterCodes[CharacterCodes["t"] = 116] = "t";
766
+ CharacterCodes[CharacterCodes["u"] = 117] = "u";
767
+ CharacterCodes[CharacterCodes["v"] = 118] = "v";
768
+ CharacterCodes[CharacterCodes["w"] = 119] = "w";
769
+ CharacterCodes[CharacterCodes["x"] = 120] = "x";
770
+ CharacterCodes[CharacterCodes["y"] = 121] = "y";
771
+ CharacterCodes[CharacterCodes["z"] = 122] = "z";
772
+ CharacterCodes[CharacterCodes["A"] = 65] = "A";
773
+ CharacterCodes[CharacterCodes["B"] = 66] = "B";
774
+ CharacterCodes[CharacterCodes["C"] = 67] = "C";
775
+ CharacterCodes[CharacterCodes["D"] = 68] = "D";
776
+ CharacterCodes[CharacterCodes["E"] = 69] = "E";
777
+ CharacterCodes[CharacterCodes["F"] = 70] = "F";
778
+ CharacterCodes[CharacterCodes["G"] = 71] = "G";
779
+ CharacterCodes[CharacterCodes["H"] = 72] = "H";
780
+ CharacterCodes[CharacterCodes["I"] = 73] = "I";
781
+ CharacterCodes[CharacterCodes["J"] = 74] = "J";
782
+ CharacterCodes[CharacterCodes["K"] = 75] = "K";
783
+ CharacterCodes[CharacterCodes["L"] = 76] = "L";
784
+ CharacterCodes[CharacterCodes["M"] = 77] = "M";
785
+ CharacterCodes[CharacterCodes["N"] = 78] = "N";
786
+ CharacterCodes[CharacterCodes["O"] = 79] = "O";
787
+ CharacterCodes[CharacterCodes["P"] = 80] = "P";
788
+ CharacterCodes[CharacterCodes["Q"] = 81] = "Q";
789
+ CharacterCodes[CharacterCodes["R"] = 82] = "R";
790
+ CharacterCodes[CharacterCodes["S"] = 83] = "S";
791
+ CharacterCodes[CharacterCodes["T"] = 84] = "T";
792
+ CharacterCodes[CharacterCodes["U"] = 85] = "U";
793
+ CharacterCodes[CharacterCodes["V"] = 86] = "V";
794
+ CharacterCodes[CharacterCodes["W"] = 87] = "W";
795
+ CharacterCodes[CharacterCodes["X"] = 88] = "X";
796
+ CharacterCodes[CharacterCodes["Y"] = 89] = "Y";
797
+ CharacterCodes[CharacterCodes["Z"] = 90] = "Z";
798
+ CharacterCodes[CharacterCodes["ampersand"] = 38] = "ampersand";
799
+ CharacterCodes[CharacterCodes["asterisk"] = 42] = "asterisk";
800
+ CharacterCodes[CharacterCodes["at"] = 64] = "at";
801
+ CharacterCodes[CharacterCodes["backslash"] = 92] = "backslash";
802
+ CharacterCodes[CharacterCodes["backtick"] = 96] = "backtick";
803
+ CharacterCodes[CharacterCodes["bar"] = 124] = "bar";
804
+ CharacterCodes[CharacterCodes["caret"] = 94] = "caret";
805
+ CharacterCodes[CharacterCodes["closeBrace"] = 125] = "closeBrace";
806
+ CharacterCodes[CharacterCodes["closeBracket"] = 93] = "closeBracket";
807
+ CharacterCodes[CharacterCodes["closeParen"] = 41] = "closeParen";
808
+ CharacterCodes[CharacterCodes["colon"] = 58] = "colon";
809
+ CharacterCodes[CharacterCodes["comma"] = 44] = "comma";
810
+ CharacterCodes[CharacterCodes["dot"] = 46] = "dot";
811
+ CharacterCodes[CharacterCodes["doubleQuote"] = 34] = "doubleQuote";
812
+ CharacterCodes[CharacterCodes["equals"] = 61] = "equals";
813
+ CharacterCodes[CharacterCodes["exclamation"] = 33] = "exclamation";
814
+ CharacterCodes[CharacterCodes["greaterThan"] = 62] = "greaterThan";
815
+ CharacterCodes[CharacterCodes["hash"] = 35] = "hash";
816
+ CharacterCodes[CharacterCodes["lessThan"] = 60] = "lessThan";
817
+ CharacterCodes[CharacterCodes["minus"] = 45] = "minus";
818
+ CharacterCodes[CharacterCodes["openBrace"] = 123] = "openBrace";
819
+ CharacterCodes[CharacterCodes["openBracket"] = 91] = "openBracket";
820
+ CharacterCodes[CharacterCodes["openParen"] = 40] = "openParen";
821
+ CharacterCodes[CharacterCodes["percent"] = 37] = "percent";
822
+ CharacterCodes[CharacterCodes["plus"] = 43] = "plus";
823
+ CharacterCodes[CharacterCodes["question"] = 63] = "question";
824
+ CharacterCodes[CharacterCodes["semicolon"] = 59] = "semicolon";
825
+ CharacterCodes[CharacterCodes["singleQuote"] = 39] = "singleQuote";
826
+ CharacterCodes[CharacterCodes["slash"] = 47] = "slash";
827
+ CharacterCodes[CharacterCodes["tilde"] = 126] = "tilde";
828
+ CharacterCodes[CharacterCodes["backspace"] = 8] = "backspace";
829
+ CharacterCodes[CharacterCodes["formFeed"] = 12] = "formFeed";
830
+ CharacterCodes[CharacterCodes["byteOrderMark"] = 65279] = "byteOrderMark";
831
+ CharacterCodes[CharacterCodes["tab"] = 9] = "tab";
832
+ CharacterCodes[CharacterCodes["verticalTab"] = 11] = "verticalTab";
833
+ })(CharacterCodes || (CharacterCodes = {}));
834
+ export var Extension;
835
+ (function (Extension) {
836
+ Extension["Ts"] = ".ts";
837
+ Extension["Tsx"] = ".tsx";
838
+ Extension["Dts"] = ".d.ts";
839
+ Extension["Js"] = ".js";
840
+ Extension["Jsx"] = ".jsx";
841
+ Extension["Json"] = ".json";
842
+ Extension["TsBuildInfo"] = ".tsbuildinfo";
843
+ })(Extension || (Extension = {}));
844
+ export var TransformFlags;
845
+ (function (TransformFlags) {
846
+ TransformFlags[TransformFlags["None"] = 0] = "None";
847
+ // Facts
848
+ // - Flags used to indicate that a node or subtree contains syntax that requires transformation.
849
+ TransformFlags[TransformFlags["ContainsTypeScript"] = 1] = "ContainsTypeScript";
850
+ TransformFlags[TransformFlags["ContainsJsx"] = 2] = "ContainsJsx";
851
+ TransformFlags[TransformFlags["ContainsESNext"] = 4] = "ContainsESNext";
852
+ TransformFlags[TransformFlags["ContainsES2020"] = 8] = "ContainsES2020";
853
+ TransformFlags[TransformFlags["ContainsES2019"] = 16] = "ContainsES2019";
854
+ TransformFlags[TransformFlags["ContainsES2018"] = 32] = "ContainsES2018";
855
+ TransformFlags[TransformFlags["ContainsES2017"] = 64] = "ContainsES2017";
856
+ TransformFlags[TransformFlags["ContainsES2016"] = 128] = "ContainsES2016";
857
+ TransformFlags[TransformFlags["ContainsES2015"] = 256] = "ContainsES2015";
858
+ TransformFlags[TransformFlags["ContainsGenerator"] = 512] = "ContainsGenerator";
859
+ TransformFlags[TransformFlags["ContainsDestructuringAssignment"] = 1024] = "ContainsDestructuringAssignment";
860
+ // Markers
861
+ // - Flags used to indicate that a subtree contains a specific transformation.
862
+ TransformFlags[TransformFlags["ContainsTypeScriptClassSyntax"] = 2048] = "ContainsTypeScriptClassSyntax";
863
+ TransformFlags[TransformFlags["ContainsLexicalThis"] = 4096] = "ContainsLexicalThis";
864
+ TransformFlags[TransformFlags["ContainsRestOrSpread"] = 8192] = "ContainsRestOrSpread";
865
+ TransformFlags[TransformFlags["ContainsObjectRestOrSpread"] = 16384] = "ContainsObjectRestOrSpread";
866
+ TransformFlags[TransformFlags["ContainsComputedPropertyName"] = 32768] = "ContainsComputedPropertyName";
867
+ TransformFlags[TransformFlags["ContainsBlockScopedBinding"] = 65536] = "ContainsBlockScopedBinding";
868
+ TransformFlags[TransformFlags["ContainsBindingPattern"] = 131072] = "ContainsBindingPattern";
869
+ TransformFlags[TransformFlags["ContainsYield"] = 262144] = "ContainsYield";
870
+ TransformFlags[TransformFlags["ContainsAwait"] = 524288] = "ContainsAwait";
871
+ TransformFlags[TransformFlags["ContainsHoistedDeclarationOrCompletion"] = 1048576] = "ContainsHoistedDeclarationOrCompletion";
872
+ TransformFlags[TransformFlags["ContainsDynamicImport"] = 2097152] = "ContainsDynamicImport";
873
+ TransformFlags[TransformFlags["ContainsClassFields"] = 4194304] = "ContainsClassFields";
874
+ // Please leave this as 1 << 29.
875
+ // It is the maximum bit we can set before we outgrow the size of a v8 small integer (SMI) on an x86 system.
876
+ // It is a good reminder of how much room we have left
877
+ TransformFlags[TransformFlags["HasComputedFlags"] = 536870912] = "HasComputedFlags";
878
+ // Assertions
879
+ // - Bitmasks that are used to assert facts about the syntax of a node and its subtree.
880
+ TransformFlags[TransformFlags["AssertTypeScript"] = 1] = "AssertTypeScript";
881
+ TransformFlags[TransformFlags["AssertJsx"] = 2] = "AssertJsx";
882
+ TransformFlags[TransformFlags["AssertESNext"] = 4] = "AssertESNext";
883
+ TransformFlags[TransformFlags["AssertES2020"] = 8] = "AssertES2020";
884
+ TransformFlags[TransformFlags["AssertES2019"] = 16] = "AssertES2019";
885
+ TransformFlags[TransformFlags["AssertES2018"] = 32] = "AssertES2018";
886
+ TransformFlags[TransformFlags["AssertES2017"] = 64] = "AssertES2017";
887
+ TransformFlags[TransformFlags["AssertES2016"] = 128] = "AssertES2016";
888
+ TransformFlags[TransformFlags["AssertES2015"] = 256] = "AssertES2015";
889
+ TransformFlags[TransformFlags["AssertGenerator"] = 512] = "AssertGenerator";
890
+ TransformFlags[TransformFlags["AssertDestructuringAssignment"] = 1024] = "AssertDestructuringAssignment";
891
+ // Scope Exclusions
892
+ // - Bitmasks that exclude flags from propagating out of a specific context
893
+ // into the subtree flags of their container.
894
+ TransformFlags[TransformFlags["OuterExpressionExcludes"] = 536870912] = "OuterExpressionExcludes";
895
+ TransformFlags[TransformFlags["PropertyAccessExcludes"] = 536870912] = "PropertyAccessExcludes";
896
+ TransformFlags[TransformFlags["NodeExcludes"] = 536870912] = "NodeExcludes";
897
+ TransformFlags[TransformFlags["ArrowFunctionExcludes"] = 538920960] = "ArrowFunctionExcludes";
898
+ TransformFlags[TransformFlags["FunctionExcludes"] = 538925056] = "FunctionExcludes";
899
+ TransformFlags[TransformFlags["ConstructorExcludes"] = 538923008] = "ConstructorExcludes";
900
+ TransformFlags[TransformFlags["MethodOrAccessorExcludes"] = 538923008] = "MethodOrAccessorExcludes";
901
+ TransformFlags[TransformFlags["PropertyExcludes"] = 536875008] = "PropertyExcludes";
902
+ TransformFlags[TransformFlags["ClassExcludes"] = 536905728] = "ClassExcludes";
903
+ TransformFlags[TransformFlags["ModuleExcludes"] = 537991168] = "ModuleExcludes";
904
+ TransformFlags[TransformFlags["TypeExcludes"] = -2] = "TypeExcludes";
905
+ TransformFlags[TransformFlags["ObjectLiteralExcludes"] = 536922112] = "ObjectLiteralExcludes";
906
+ TransformFlags[TransformFlags["ArrayLiteralOrCallOrNewExcludes"] = 536879104] = "ArrayLiteralOrCallOrNewExcludes";
907
+ TransformFlags[TransformFlags["VariableDeclarationListExcludes"] = 537018368] = "VariableDeclarationListExcludes";
908
+ TransformFlags[TransformFlags["ParameterExcludes"] = 536870912] = "ParameterExcludes";
909
+ TransformFlags[TransformFlags["CatchClauseExcludes"] = 536887296] = "CatchClauseExcludes";
910
+ TransformFlags[TransformFlags["BindingPatternExcludes"] = 536879104] = "BindingPatternExcludes";
911
+ // Propagating flags
912
+ // - Bitmasks for flags that should propagate from a child
913
+ TransformFlags[TransformFlags["PropertyNamePropagatingFlags"] = 4096] = "PropertyNamePropagatingFlags";
914
+ // Masks
915
+ // - Additional bitmasks
916
+ })(TransformFlags || (TransformFlags = {}));
917
+ export var EmitFlags;
918
+ (function (EmitFlags) {
919
+ EmitFlags[EmitFlags["None"] = 0] = "None";
920
+ EmitFlags[EmitFlags["SingleLine"] = 1] = "SingleLine";
921
+ EmitFlags[EmitFlags["AdviseOnEmitNode"] = 2] = "AdviseOnEmitNode";
922
+ EmitFlags[EmitFlags["NoSubstitution"] = 4] = "NoSubstitution";
923
+ EmitFlags[EmitFlags["NoLeadingSourceMap"] = 16] = "NoLeadingSourceMap";
924
+ EmitFlags[EmitFlags["NoTrailingSourceMap"] = 32] = "NoTrailingSourceMap";
925
+ EmitFlags[EmitFlags["NoSourceMap"] = 48] = "NoSourceMap";
926
+ EmitFlags[EmitFlags["NoNestedSourceMaps"] = 64] = "NoNestedSourceMaps";
927
+ EmitFlags[EmitFlags["NoTokenLeadingSourceMaps"] = 128] = "NoTokenLeadingSourceMaps";
928
+ EmitFlags[EmitFlags["NoTokenTrailingSourceMaps"] = 256] = "NoTokenTrailingSourceMaps";
929
+ EmitFlags[EmitFlags["NoTokenSourceMaps"] = 384] = "NoTokenSourceMaps";
930
+ EmitFlags[EmitFlags["NoLeadingComments"] = 512] = "NoLeadingComments";
931
+ EmitFlags[EmitFlags["NoTrailingComments"] = 1024] = "NoTrailingComments";
932
+ EmitFlags[EmitFlags["NoComments"] = 1536] = "NoComments";
933
+ EmitFlags[EmitFlags["NoNestedComments"] = 2048] = "NoNestedComments";
934
+ EmitFlags[EmitFlags["HelperName"] = 4096] = "HelperName";
935
+ EmitFlags[EmitFlags["ExportName"] = 8192] = "ExportName";
936
+ EmitFlags[EmitFlags["LocalName"] = 16384] = "LocalName";
937
+ EmitFlags[EmitFlags["InternalName"] = 32768] = "InternalName";
938
+ EmitFlags[EmitFlags["Indented"] = 65536] = "Indented";
939
+ EmitFlags[EmitFlags["NoIndentation"] = 131072] = "NoIndentation";
940
+ EmitFlags[EmitFlags["AsyncFunctionBody"] = 262144] = "AsyncFunctionBody";
941
+ EmitFlags[EmitFlags["ReuseTempVariableScope"] = 524288] = "ReuseTempVariableScope";
942
+ EmitFlags[EmitFlags["CustomPrologue"] = 1048576] = "CustomPrologue";
943
+ EmitFlags[EmitFlags["NoHoisting"] = 2097152] = "NoHoisting";
944
+ EmitFlags[EmitFlags["HasEndOfDeclarationMarker"] = 4194304] = "HasEndOfDeclarationMarker";
945
+ EmitFlags[EmitFlags["Iterator"] = 8388608] = "Iterator";
946
+ EmitFlags[EmitFlags["NoAsciiEscaping"] = 16777216] = "NoAsciiEscaping";
947
+ EmitFlags[EmitFlags["TypeScriptClassWrapper"] = 33554432] = "TypeScriptClassWrapper";
948
+ EmitFlags[EmitFlags["NeverApplyImportHelper"] = 67108864] = "NeverApplyImportHelper";
949
+ EmitFlags[EmitFlags["IgnoreSourceNewlines"] = 134217728] = "IgnoreSourceNewlines";
950
+ })(EmitFlags || (EmitFlags = {}));
951
+ /**
952
+ * Used by the checker, this enum keeps track of external emit helpers that should be type
953
+ * checked.
954
+ */
955
+ export var ExternalEmitHelpers;
956
+ (function (ExternalEmitHelpers) {
957
+ ExternalEmitHelpers[ExternalEmitHelpers["None"] = 0] = "None";
958
+ ExternalEmitHelpers[ExternalEmitHelpers["Extends"] = 1] = "Extends";
959
+ ExternalEmitHelpers[ExternalEmitHelpers["Assign"] = 2] = "Assign";
960
+ ExternalEmitHelpers[ExternalEmitHelpers["Rest"] = 4] = "Rest";
961
+ ExternalEmitHelpers[ExternalEmitHelpers["Decorate"] = 8] = "Decorate";
962
+ ExternalEmitHelpers[ExternalEmitHelpers["Metadata"] = 16] = "Metadata";
963
+ ExternalEmitHelpers[ExternalEmitHelpers["Param"] = 32] = "Param";
964
+ ExternalEmitHelpers[ExternalEmitHelpers["Awaiter"] = 64] = "Awaiter";
965
+ ExternalEmitHelpers[ExternalEmitHelpers["Generator"] = 128] = "Generator";
966
+ ExternalEmitHelpers[ExternalEmitHelpers["Values"] = 256] = "Values";
967
+ ExternalEmitHelpers[ExternalEmitHelpers["Read"] = 512] = "Read";
968
+ ExternalEmitHelpers[ExternalEmitHelpers["Spread"] = 1024] = "Spread";
969
+ ExternalEmitHelpers[ExternalEmitHelpers["SpreadArrays"] = 2048] = "SpreadArrays";
970
+ ExternalEmitHelpers[ExternalEmitHelpers["Await"] = 4096] = "Await";
971
+ ExternalEmitHelpers[ExternalEmitHelpers["AsyncGenerator"] = 8192] = "AsyncGenerator";
972
+ ExternalEmitHelpers[ExternalEmitHelpers["AsyncDelegator"] = 16384] = "AsyncDelegator";
973
+ ExternalEmitHelpers[ExternalEmitHelpers["AsyncValues"] = 32768] = "AsyncValues";
974
+ ExternalEmitHelpers[ExternalEmitHelpers["ExportStar"] = 65536] = "ExportStar";
975
+ ExternalEmitHelpers[ExternalEmitHelpers["MakeTemplateObject"] = 131072] = "MakeTemplateObject";
976
+ ExternalEmitHelpers[ExternalEmitHelpers["ClassPrivateFieldGet"] = 262144] = "ClassPrivateFieldGet";
977
+ ExternalEmitHelpers[ExternalEmitHelpers["ClassPrivateFieldSet"] = 524288] = "ClassPrivateFieldSet";
978
+ ExternalEmitHelpers[ExternalEmitHelpers["CreateBinding"] = 1048576] = "CreateBinding";
979
+ ExternalEmitHelpers[ExternalEmitHelpers["FirstEmitHelper"] = 1] = "FirstEmitHelper";
980
+ ExternalEmitHelpers[ExternalEmitHelpers["LastEmitHelper"] = 1048576] = "LastEmitHelper";
981
+ // Helpers included by ES2015 for..of
982
+ ExternalEmitHelpers[ExternalEmitHelpers["ForOfIncludes"] = 256] = "ForOfIncludes";
983
+ // Helpers included by ES2017 for..await..of
984
+ ExternalEmitHelpers[ExternalEmitHelpers["ForAwaitOfIncludes"] = 32768] = "ForAwaitOfIncludes";
985
+ // Helpers included by ES2017 async generators
986
+ ExternalEmitHelpers[ExternalEmitHelpers["AsyncGeneratorIncludes"] = 12288] = "AsyncGeneratorIncludes";
987
+ // Helpers included by yield* in ES2017 async generators
988
+ ExternalEmitHelpers[ExternalEmitHelpers["AsyncDelegatorIncludes"] = 53248] = "AsyncDelegatorIncludes";
989
+ // Helpers included by ES2015 spread
990
+ ExternalEmitHelpers[ExternalEmitHelpers["SpreadIncludes"] = 1536] = "SpreadIncludes";
991
+ })(ExternalEmitHelpers || (ExternalEmitHelpers = {}));
992
+ export var EmitHint;
993
+ (function (EmitHint) {
994
+ EmitHint[EmitHint["SourceFile"] = 0] = "SourceFile";
995
+ EmitHint[EmitHint["Expression"] = 1] = "Expression";
996
+ EmitHint[EmitHint["IdentifierName"] = 2] = "IdentifierName";
997
+ EmitHint[EmitHint["MappedTypeParameter"] = 3] = "MappedTypeParameter";
998
+ EmitHint[EmitHint["Unspecified"] = 4] = "Unspecified";
999
+ EmitHint[EmitHint["EmbeddedStatement"] = 5] = "EmbeddedStatement";
1000
+ EmitHint[EmitHint["JsxAttributeValue"] = 6] = "JsxAttributeValue";
1001
+ })(EmitHint || (EmitHint = {}));
1002
+ export var LexicalEnvironmentFlags;
1003
+ (function (LexicalEnvironmentFlags) {
1004
+ LexicalEnvironmentFlags[LexicalEnvironmentFlags["None"] = 0] = "None";
1005
+ LexicalEnvironmentFlags[LexicalEnvironmentFlags["InParameters"] = 1] = "InParameters";
1006
+ LexicalEnvironmentFlags[LexicalEnvironmentFlags["VariablesHoistedInParameters"] = 2] = "VariablesHoistedInParameters"; // a temp variable was hoisted while visiting a parameter list
1007
+ })(LexicalEnvironmentFlags || (LexicalEnvironmentFlags = {}));
1008
+ export var BundleFileSectionKind;
1009
+ (function (BundleFileSectionKind) {
1010
+ BundleFileSectionKind["Prologue"] = "prologue";
1011
+ BundleFileSectionKind["EmitHelpers"] = "emitHelpers";
1012
+ BundleFileSectionKind["NoDefaultLib"] = "no-default-lib";
1013
+ BundleFileSectionKind["Reference"] = "reference";
1014
+ BundleFileSectionKind["Type"] = "type";
1015
+ BundleFileSectionKind["Lib"] = "lib";
1016
+ BundleFileSectionKind["Prepend"] = "prepend";
1017
+ BundleFileSectionKind["Text"] = "text";
1018
+ BundleFileSectionKind["Internal"] = "internal";
1019
+ // comments?
1020
+ })(BundleFileSectionKind || (BundleFileSectionKind = {}));
1021
+ export var PragmaKindFlags;
1022
+ (function (PragmaKindFlags) {
1023
+ PragmaKindFlags[PragmaKindFlags["None"] = 0] = "None";
1024
+ /**
1025
+ * Triple slash comment of the form
1026
+ * /// <pragma-name argname="value" />
1027
+ */
1028
+ PragmaKindFlags[PragmaKindFlags["TripleSlashXML"] = 1] = "TripleSlashXML";
1029
+ /**
1030
+ * Single line comment of the form
1031
+ * // @pragma-name argval1 argval2
1032
+ * or
1033
+ * /// @pragma-name argval1 argval2
1034
+ */
1035
+ PragmaKindFlags[PragmaKindFlags["SingleLine"] = 2] = "SingleLine";
1036
+ /**
1037
+ * Multiline non-jsdoc pragma of the form
1038
+ * /* @pragma-name argval1 argval2 * /
1039
+ */
1040
+ PragmaKindFlags[PragmaKindFlags["MultiLine"] = 4] = "MultiLine";
1041
+ PragmaKindFlags[PragmaKindFlags["All"] = 7] = "All";
1042
+ PragmaKindFlags[PragmaKindFlags["Default"] = 7] = "Default";
1043
+ })(PragmaKindFlags || (PragmaKindFlags = {}));
1044
+ // While not strictly a type, this is here because `PragmaMap` needs to be here to be used with `SourceFile`, and we don't
1045
+ // fancy effectively defining it twice, once in value-space and once in type-space
1046
+ export const commentPragmas = {
1047
+ "reference": {
1048
+ args: [
1049
+ { name: "types", optional: true, captureSpan: true },
1050
+ { name: "lib", optional: true, captureSpan: true },
1051
+ { name: "path", optional: true, captureSpan: true },
1052
+ { name: "no-default-lib", optional: true }
1053
+ ],
1054
+ kind: 1 /* PragmaKindFlags.TripleSlashXML */
1055
+ },
1056
+ "amd-dependency": {
1057
+ args: [{ name: "path" }, { name: "name", optional: true }],
1058
+ kind: 1 /* PragmaKindFlags.TripleSlashXML */
1059
+ },
1060
+ "amd-module": {
1061
+ args: [{ name: "name" }],
1062
+ kind: 1 /* PragmaKindFlags.TripleSlashXML */
1063
+ },
1064
+ "ts-check": {
1065
+ kind: 2 /* PragmaKindFlags.SingleLine */
1066
+ },
1067
+ "ts-nocheck": {
1068
+ kind: 2 /* PragmaKindFlags.SingleLine */
1069
+ },
1070
+ "jsx": {
1071
+ args: [{ name: "factory" }],
1072
+ kind: 4 /* PragmaKindFlags.MultiLine */
1073
+ },
1074
+ };