UNPKG

chen-typescript

Version:

TypeScript is a language for application scale JavaScript development

712 lines (708 loc) 3.59 MB
/*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABLITY OR NON-INFRINGEMENT. See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** */ var __extends = (this && this.__extends) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; var ts; (function (ts) { // token > SyntaxKind.Identifer => token is a keyword // Also, If you add a new SyntaxKind be sure to keep the `Markers` section at the bottom in sync (function (SyntaxKind) { SyntaxKind[SyntaxKind["Unknown"] = 0] = "Unknown"; SyntaxKind[SyntaxKind["EndOfFileToken"] = 1] = "EndOfFileToken"; SyntaxKind[SyntaxKind["SingleLineCommentTrivia"] = 2] = "SingleLineCommentTrivia"; SyntaxKind[SyntaxKind["MultiLineCommentTrivia"] = 3] = "MultiLineCommentTrivia"; SyntaxKind[SyntaxKind["NewLineTrivia"] = 4] = "NewLineTrivia"; SyntaxKind[SyntaxKind["WhitespaceTrivia"] = 5] = "WhitespaceTrivia"; // We detect and preserve #! on the first line SyntaxKind[SyntaxKind["ShebangTrivia"] = 6] = "ShebangTrivia"; // We detect and provide better error recovery when we encounter a git merge marker. This // allows us to edit files with git-conflict markers in them in a much more pleasant manner. SyntaxKind[SyntaxKind["ConflictMarkerTrivia"] = 7] = "ConflictMarkerTrivia"; // Literals SyntaxKind[SyntaxKind["NumericLiteral"] = 8] = "NumericLiteral"; SyntaxKind[SyntaxKind["StringLiteral"] = 9] = "StringLiteral"; SyntaxKind[SyntaxKind["RegularExpressionLiteral"] = 10] = "RegularExpressionLiteral"; SyntaxKind[SyntaxKind["NoSubstitutionTemplateLiteral"] = 11] = "NoSubstitutionTemplateLiteral"; // Pseudo-literals SyntaxKind[SyntaxKind["TemplateHead"] = 12] = "TemplateHead"; SyntaxKind[SyntaxKind["TemplateMiddle"] = 13] = "TemplateMiddle"; SyntaxKind[SyntaxKind["TemplateTail"] = 14] = "TemplateTail"; // Punctuation SyntaxKind[SyntaxKind["OpenBraceToken"] = 15] = "OpenBraceToken"; SyntaxKind[SyntaxKind["CloseBraceToken"] = 16] = "CloseBraceToken"; SyntaxKind[SyntaxKind["OpenParenToken"] = 17] = "OpenParenToken"; SyntaxKind[SyntaxKind["CloseParenToken"] = 18] = "CloseParenToken"; SyntaxKind[SyntaxKind["OpenBracketToken"] = 19] = "OpenBracketToken"; SyntaxKind[SyntaxKind["CloseBracketToken"] = 20] = "CloseBracketToken"; SyntaxKind[SyntaxKind["DotToken"] = 21] = "DotToken"; SyntaxKind[SyntaxKind["DotDotDotToken"] = 22] = "DotDotDotToken"; SyntaxKind[SyntaxKind["SemicolonToken"] = 23] = "SemicolonToken"; SyntaxKind[SyntaxKind["CommaToken"] = 24] = "CommaToken"; SyntaxKind[SyntaxKind["LessThanToken"] = 25] = "LessThanToken"; SyntaxKind[SyntaxKind["LessThanSlashToken"] = 26] = "LessThanSlashToken"; SyntaxKind[SyntaxKind["GreaterThanToken"] = 27] = "GreaterThanToken"; SyntaxKind[SyntaxKind["LessThanEqualsToken"] = 28] = "LessThanEqualsToken"; SyntaxKind[SyntaxKind["GreaterThanEqualsToken"] = 29] = "GreaterThanEqualsToken"; SyntaxKind[SyntaxKind["EqualsEqualsToken"] = 30] = "EqualsEqualsToken"; SyntaxKind[SyntaxKind["ExclamationEqualsToken"] = 31] = "ExclamationEqualsToken"; SyntaxKind[SyntaxKind["EqualsEqualsEqualsToken"] = 32] = "EqualsEqualsEqualsToken"; SyntaxKind[SyntaxKind["ExclamationEqualsEqualsToken"] = 33] = "ExclamationEqualsEqualsToken"; SyntaxKind[SyntaxKind["EqualsGreaterThanToken"] = 34] = "EqualsGreaterThanToken"; SyntaxKind[SyntaxKind["PlusToken"] = 35] = "PlusToken"; SyntaxKind[SyntaxKind["MinusToken"] = 36] = "MinusToken"; SyntaxKind[SyntaxKind["AsteriskToken"] = 37] = "AsteriskToken"; SyntaxKind[SyntaxKind["AsteriskAsteriskToken"] = 38] = "AsteriskAsteriskToken"; SyntaxKind[SyntaxKind["SlashToken"] = 39] = "SlashToken"; SyntaxKind[SyntaxKind["PercentToken"] = 40] = "PercentToken"; SyntaxKind[SyntaxKind["PlusPlusToken"] = 41] = "PlusPlusToken"; SyntaxKind[SyntaxKind["MinusMinusToken"] = 42] = "MinusMinusToken"; SyntaxKind[SyntaxKind["LessThanLessThanToken"] = 43] = "LessThanLessThanToken"; SyntaxKind[SyntaxKind["GreaterThanGreaterThanToken"] = 44] = "GreaterThanGreaterThanToken"; SyntaxKind[SyntaxKind["GreaterThanGreaterThanGreaterThanToken"] = 45] = "GreaterThanGreaterThanGreaterThanToken"; SyntaxKind[SyntaxKind["AmpersandToken"] = 46] = "AmpersandToken"; SyntaxKind[SyntaxKind["BarToken"] = 47] = "BarToken"; SyntaxKind[SyntaxKind["CaretToken"] = 48] = "CaretToken"; SyntaxKind[SyntaxKind["ExclamationToken"] = 49] = "ExclamationToken"; SyntaxKind[SyntaxKind["TildeToken"] = 50] = "TildeToken"; SyntaxKind[SyntaxKind["AmpersandAmpersandToken"] = 51] = "AmpersandAmpersandToken"; SyntaxKind[SyntaxKind["BarBarToken"] = 52] = "BarBarToken"; SyntaxKind[SyntaxKind["QuestionToken"] = 53] = "QuestionToken"; SyntaxKind[SyntaxKind["ColonToken"] = 54] = "ColonToken"; SyntaxKind[SyntaxKind["AtToken"] = 55] = "AtToken"; // Assignments SyntaxKind[SyntaxKind["EqualsToken"] = 56] = "EqualsToken"; SyntaxKind[SyntaxKind["PlusEqualsToken"] = 57] = "PlusEqualsToken"; SyntaxKind[SyntaxKind["MinusEqualsToken"] = 58] = "MinusEqualsToken"; SyntaxKind[SyntaxKind["AsteriskEqualsToken"] = 59] = "AsteriskEqualsToken"; SyntaxKind[SyntaxKind["AsteriskAsteriskEqualsToken"] = 60] = "AsteriskAsteriskEqualsToken"; SyntaxKind[SyntaxKind["SlashEqualsToken"] = 61] = "SlashEqualsToken"; SyntaxKind[SyntaxKind["PercentEqualsToken"] = 62] = "PercentEqualsToken"; SyntaxKind[SyntaxKind["LessThanLessThanEqualsToken"] = 63] = "LessThanLessThanEqualsToken"; SyntaxKind[SyntaxKind["GreaterThanGreaterThanEqualsToken"] = 64] = "GreaterThanGreaterThanEqualsToken"; SyntaxKind[SyntaxKind["GreaterThanGreaterThanGreaterThanEqualsToken"] = 65] = "GreaterThanGreaterThanGreaterThanEqualsToken"; SyntaxKind[SyntaxKind["AmpersandEqualsToken"] = 66] = "AmpersandEqualsToken"; SyntaxKind[SyntaxKind["BarEqualsToken"] = 67] = "BarEqualsToken"; SyntaxKind[SyntaxKind["CaretEqualsToken"] = 68] = "CaretEqualsToken"; // Identifiers SyntaxKind[SyntaxKind["Identifier"] = 69] = "Identifier"; // Reserved words SyntaxKind[SyntaxKind["BreakKeyword"] = 70] = "BreakKeyword"; SyntaxKind[SyntaxKind["CaseKeyword"] = 71] = "CaseKeyword"; SyntaxKind[SyntaxKind["CatchKeyword"] = 72] = "CatchKeyword"; SyntaxKind[SyntaxKind["ClassKeyword"] = 73] = "ClassKeyword"; SyntaxKind[SyntaxKind["ConstKeyword"] = 74] = "ConstKeyword"; SyntaxKind[SyntaxKind["ContinueKeyword"] = 75] = "ContinueKeyword"; SyntaxKind[SyntaxKind["DebuggerKeyword"] = 76] = "DebuggerKeyword"; SyntaxKind[SyntaxKind["DefaultKeyword"] = 77] = "DefaultKeyword"; SyntaxKind[SyntaxKind["DeleteKeyword"] = 78] = "DeleteKeyword"; SyntaxKind[SyntaxKind["DoKeyword"] = 79] = "DoKeyword"; SyntaxKind[SyntaxKind["ElseKeyword"] = 80] = "ElseKeyword"; SyntaxKind[SyntaxKind["EnumKeyword"] = 81] = "EnumKeyword"; SyntaxKind[SyntaxKind["ExportKeyword"] = 82] = "ExportKeyword"; SyntaxKind[SyntaxKind["ExtendsKeyword"] = 83] = "ExtendsKeyword"; SyntaxKind[SyntaxKind["FalseKeyword"] = 84] = "FalseKeyword"; SyntaxKind[SyntaxKind["FinallyKeyword"] = 85] = "FinallyKeyword"; SyntaxKind[SyntaxKind["ForKeyword"] = 86] = "ForKeyword"; SyntaxKind[SyntaxKind["FunctionKeyword"] = 87] = "FunctionKeyword"; SyntaxKind[SyntaxKind["IfKeyword"] = 88] = "IfKeyword"; SyntaxKind[SyntaxKind["ImportKeyword"] = 89] = "ImportKeyword"; SyntaxKind[SyntaxKind["InKeyword"] = 90] = "InKeyword"; SyntaxKind[SyntaxKind["InstanceOfKeyword"] = 91] = "InstanceOfKeyword"; SyntaxKind[SyntaxKind["NewKeyword"] = 92] = "NewKeyword"; SyntaxKind[SyntaxKind["NullKeyword"] = 93] = "NullKeyword"; SyntaxKind[SyntaxKind["ReturnKeyword"] = 94] = "ReturnKeyword"; SyntaxKind[SyntaxKind["SuperKeyword"] = 95] = "SuperKeyword"; SyntaxKind[SyntaxKind["SwitchKeyword"] = 96] = "SwitchKeyword"; SyntaxKind[SyntaxKind["ThisKeyword"] = 97] = "ThisKeyword"; SyntaxKind[SyntaxKind["ThrowKeyword"] = 98] = "ThrowKeyword"; SyntaxKind[SyntaxKind["TrueKeyword"] = 99] = "TrueKeyword"; SyntaxKind[SyntaxKind["TryKeyword"] = 100] = "TryKeyword"; SyntaxKind[SyntaxKind["TypeOfKeyword"] = 101] = "TypeOfKeyword"; SyntaxKind[SyntaxKind["VarKeyword"] = 102] = "VarKeyword"; SyntaxKind[SyntaxKind["VoidKeyword"] = 103] = "VoidKeyword"; SyntaxKind[SyntaxKind["WhileKeyword"] = 104] = "WhileKeyword"; SyntaxKind[SyntaxKind["WithKeyword"] = 105] = "WithKeyword"; // Strict mode reserved words SyntaxKind[SyntaxKind["ImplementsKeyword"] = 106] = "ImplementsKeyword"; SyntaxKind[SyntaxKind["InterfaceKeyword"] = 107] = "InterfaceKeyword"; SyntaxKind[SyntaxKind["LetKeyword"] = 108] = "LetKeyword"; SyntaxKind[SyntaxKind["PackageKeyword"] = 109] = "PackageKeyword"; SyntaxKind[SyntaxKind["PrivateKeyword"] = 110] = "PrivateKeyword"; SyntaxKind[SyntaxKind["ProtectedKeyword"] = 111] = "ProtectedKeyword"; SyntaxKind[SyntaxKind["PublicKeyword"] = 112] = "PublicKeyword"; SyntaxKind[SyntaxKind["StaticKeyword"] = 113] = "StaticKeyword"; SyntaxKind[SyntaxKind["YieldKeyword"] = 114] = "YieldKeyword"; // Contextual keywords SyntaxKind[SyntaxKind["AbstractKeyword"] = 115] = "AbstractKeyword"; SyntaxKind[SyntaxKind["AsKeyword"] = 116] = "AsKeyword"; SyntaxKind[SyntaxKind["AnyKeyword"] = 117] = "AnyKeyword"; SyntaxKind[SyntaxKind["AsyncKeyword"] = 118] = "AsyncKeyword"; SyntaxKind[SyntaxKind["AwaitKeyword"] = 119] = "AwaitKeyword"; SyntaxKind[SyntaxKind["BooleanKeyword"] = 120] = "BooleanKeyword"; SyntaxKind[SyntaxKind["ConstructorKeyword"] = 121] = "ConstructorKeyword"; SyntaxKind[SyntaxKind["DeclareKeyword"] = 122] = "DeclareKeyword"; SyntaxKind[SyntaxKind["GetKeyword"] = 123] = "GetKeyword"; SyntaxKind[SyntaxKind["IsKeyword"] = 124] = "IsKeyword"; SyntaxKind[SyntaxKind["ModuleKeyword"] = 125] = "ModuleKeyword"; SyntaxKind[SyntaxKind["NamespaceKeyword"] = 126] = "NamespaceKeyword"; SyntaxKind[SyntaxKind["NeverKeyword"] = 127] = "NeverKeyword"; SyntaxKind[SyntaxKind["ReadonlyKeyword"] = 128] = "ReadonlyKeyword"; SyntaxKind[SyntaxKind["RequireKeyword"] = 129] = "RequireKeyword"; SyntaxKind[SyntaxKind["NumberKeyword"] = 130] = "NumberKeyword"; SyntaxKind[SyntaxKind["SetKeyword"] = 131] = "SetKeyword"; SyntaxKind[SyntaxKind["StringKeyword"] = 132] = "StringKeyword"; SyntaxKind[SyntaxKind["SymbolKeyword"] = 133] = "SymbolKeyword"; SyntaxKind[SyntaxKind["TypeKeyword"] = 134] = "TypeKeyword"; SyntaxKind[SyntaxKind["UndefinedKeyword"] = 135] = "UndefinedKeyword"; SyntaxKind[SyntaxKind["FromKeyword"] = 136] = "FromKeyword"; SyntaxKind[SyntaxKind["GlobalKeyword"] = 137] = "GlobalKeyword"; SyntaxKind[SyntaxKind["OfKeyword"] = 138] = "OfKeyword"; // Parse tree nodes // Names SyntaxKind[SyntaxKind["QualifiedName"] = 139] = "QualifiedName"; SyntaxKind[SyntaxKind["ComputedPropertyName"] = 140] = "ComputedPropertyName"; // Signature elements SyntaxKind[SyntaxKind["TypeParameter"] = 141] = "TypeParameter"; SyntaxKind[SyntaxKind["Parameter"] = 142] = "Parameter"; SyntaxKind[SyntaxKind["Decorator"] = 143] = "Decorator"; // TypeMember SyntaxKind[SyntaxKind["PropertySignature"] = 144] = "PropertySignature"; SyntaxKind[SyntaxKind["PropertyDeclaration"] = 145] = "PropertyDeclaration"; SyntaxKind[SyntaxKind["MethodSignature"] = 146] = "MethodSignature"; SyntaxKind[SyntaxKind["MethodDeclaration"] = 147] = "MethodDeclaration"; SyntaxKind[SyntaxKind["Constructor"] = 148] = "Constructor"; SyntaxKind[SyntaxKind["GetAccessor"] = 149] = "GetAccessor"; SyntaxKind[SyntaxKind["SetAccessor"] = 150] = "SetAccessor"; SyntaxKind[SyntaxKind["CallSignature"] = 151] = "CallSignature"; SyntaxKind[SyntaxKind["ConstructSignature"] = 152] = "ConstructSignature"; SyntaxKind[SyntaxKind["IndexSignature"] = 153] = "IndexSignature"; // Type SyntaxKind[SyntaxKind["TypePredicate"] = 154] = "TypePredicate"; SyntaxKind[SyntaxKind["TypeReference"] = 155] = "TypeReference"; SyntaxKind[SyntaxKind["FunctionType"] = 156] = "FunctionType"; SyntaxKind[SyntaxKind["ConstructorType"] = 157] = "ConstructorType"; SyntaxKind[SyntaxKind["TypeQuery"] = 158] = "TypeQuery"; SyntaxKind[SyntaxKind["TypeLiteral"] = 159] = "TypeLiteral"; SyntaxKind[SyntaxKind["ArrayType"] = 160] = "ArrayType"; SyntaxKind[SyntaxKind["TupleType"] = 161] = "TupleType"; SyntaxKind[SyntaxKind["UnionType"] = 162] = "UnionType"; SyntaxKind[SyntaxKind["IntersectionType"] = 163] = "IntersectionType"; SyntaxKind[SyntaxKind["ParenthesizedType"] = 164] = "ParenthesizedType"; SyntaxKind[SyntaxKind["ThisType"] = 165] = "ThisType"; SyntaxKind[SyntaxKind["LiteralType"] = 166] = "LiteralType"; // Binding patterns SyntaxKind[SyntaxKind["ObjectBindingPattern"] = 167] = "ObjectBindingPattern"; SyntaxKind[SyntaxKind["ArrayBindingPattern"] = 168] = "ArrayBindingPattern"; SyntaxKind[SyntaxKind["BindingElement"] = 169] = "BindingElement"; // Expression SyntaxKind[SyntaxKind["ArrayLiteralExpression"] = 170] = "ArrayLiteralExpression"; SyntaxKind[SyntaxKind["ObjectLiteralExpression"] = 171] = "ObjectLiteralExpression"; SyntaxKind[SyntaxKind["PropertyAccessExpression"] = 172] = "PropertyAccessExpression"; SyntaxKind[SyntaxKind["ElementAccessExpression"] = 173] = "ElementAccessExpression"; SyntaxKind[SyntaxKind["CallExpression"] = 174] = "CallExpression"; SyntaxKind[SyntaxKind["NewExpression"] = 175] = "NewExpression"; SyntaxKind[SyntaxKind["TaggedTemplateExpression"] = 176] = "TaggedTemplateExpression"; SyntaxKind[SyntaxKind["TypeAssertionExpression"] = 177] = "TypeAssertionExpression"; SyntaxKind[SyntaxKind["ParenthesizedExpression"] = 178] = "ParenthesizedExpression"; SyntaxKind[SyntaxKind["FunctionExpression"] = 179] = "FunctionExpression"; SyntaxKind[SyntaxKind["ArrowFunction"] = 180] = "ArrowFunction"; SyntaxKind[SyntaxKind["DeleteExpression"] = 181] = "DeleteExpression"; SyntaxKind[SyntaxKind["TypeOfExpression"] = 182] = "TypeOfExpression"; SyntaxKind[SyntaxKind["VoidExpression"] = 183] = "VoidExpression"; SyntaxKind[SyntaxKind["AwaitExpression"] = 184] = "AwaitExpression"; SyntaxKind[SyntaxKind["PrefixUnaryExpression"] = 185] = "PrefixUnaryExpression"; SyntaxKind[SyntaxKind["PostfixUnaryExpression"] = 186] = "PostfixUnaryExpression"; SyntaxKind[SyntaxKind["BinaryExpression"] = 187] = "BinaryExpression"; SyntaxKind[SyntaxKind["ConditionalExpression"] = 188] = "ConditionalExpression"; SyntaxKind[SyntaxKind["TemplateExpression"] = 189] = "TemplateExpression"; SyntaxKind[SyntaxKind["YieldExpression"] = 190] = "YieldExpression"; SyntaxKind[SyntaxKind["SpreadElementExpression"] = 191] = "SpreadElementExpression"; SyntaxKind[SyntaxKind["ClassExpression"] = 192] = "ClassExpression"; SyntaxKind[SyntaxKind["OmittedExpression"] = 193] = "OmittedExpression"; SyntaxKind[SyntaxKind["ExpressionWithTypeArguments"] = 194] = "ExpressionWithTypeArguments"; SyntaxKind[SyntaxKind["AsExpression"] = 195] = "AsExpression"; SyntaxKind[SyntaxKind["NonNullExpression"] = 196] = "NonNullExpression"; // Misc SyntaxKind[SyntaxKind["TemplateSpan"] = 197] = "TemplateSpan"; SyntaxKind[SyntaxKind["SemicolonClassElement"] = 198] = "SemicolonClassElement"; // Element SyntaxKind[SyntaxKind["Block"] = 199] = "Block"; SyntaxKind[SyntaxKind["VariableStatement"] = 200] = "VariableStatement"; SyntaxKind[SyntaxKind["EmptyStatement"] = 201] = "EmptyStatement"; SyntaxKind[SyntaxKind["ExpressionStatement"] = 202] = "ExpressionStatement"; SyntaxKind[SyntaxKind["IfStatement"] = 203] = "IfStatement"; SyntaxKind[SyntaxKind["DoStatement"] = 204] = "DoStatement"; SyntaxKind[SyntaxKind["WhileStatement"] = 205] = "WhileStatement"; SyntaxKind[SyntaxKind["ForStatement"] = 206] = "ForStatement"; SyntaxKind[SyntaxKind["ForInStatement"] = 207] = "ForInStatement"; SyntaxKind[SyntaxKind["ForOfStatement"] = 208] = "ForOfStatement"; SyntaxKind[SyntaxKind["ContinueStatement"] = 209] = "ContinueStatement"; SyntaxKind[SyntaxKind["BreakStatement"] = 210] = "BreakStatement"; SyntaxKind[SyntaxKind["ReturnStatement"] = 211] = "ReturnStatement"; SyntaxKind[SyntaxKind["WithStatement"] = 212] = "WithStatement"; SyntaxKind[SyntaxKind["SwitchStatement"] = 213] = "SwitchStatement"; SyntaxKind[SyntaxKind["LabeledStatement"] = 214] = "LabeledStatement"; SyntaxKind[SyntaxKind["ThrowStatement"] = 215] = "ThrowStatement"; SyntaxKind[SyntaxKind["TryStatement"] = 216] = "TryStatement"; SyntaxKind[SyntaxKind["DebuggerStatement"] = 217] = "DebuggerStatement"; SyntaxKind[SyntaxKind["VariableDeclaration"] = 218] = "VariableDeclaration"; SyntaxKind[SyntaxKind["VariableDeclarationList"] = 219] = "VariableDeclarationList"; SyntaxKind[SyntaxKind["FunctionDeclaration"] = 220] = "FunctionDeclaration"; SyntaxKind[SyntaxKind["ClassDeclaration"] = 221] = "ClassDeclaration"; SyntaxKind[SyntaxKind["InterfaceDeclaration"] = 222] = "InterfaceDeclaration"; SyntaxKind[SyntaxKind["TypeAliasDeclaration"] = 223] = "TypeAliasDeclaration"; SyntaxKind[SyntaxKind["EnumDeclaration"] = 224] = "EnumDeclaration"; SyntaxKind[SyntaxKind["ModuleDeclaration"] = 225] = "ModuleDeclaration"; SyntaxKind[SyntaxKind["ModuleBlock"] = 226] = "ModuleBlock"; SyntaxKind[SyntaxKind["CaseBlock"] = 227] = "CaseBlock"; SyntaxKind[SyntaxKind["NamespaceExportDeclaration"] = 228] = "NamespaceExportDeclaration"; SyntaxKind[SyntaxKind["ImportEqualsDeclaration"] = 229] = "ImportEqualsDeclaration"; SyntaxKind[SyntaxKind["ImportDeclaration"] = 230] = "ImportDeclaration"; SyntaxKind[SyntaxKind["ImportClause"] = 231] = "ImportClause"; SyntaxKind[SyntaxKind["NamespaceImport"] = 232] = "NamespaceImport"; SyntaxKind[SyntaxKind["NamedImports"] = 233] = "NamedImports"; SyntaxKind[SyntaxKind["ImportSpecifier"] = 234] = "ImportSpecifier"; SyntaxKind[SyntaxKind["ExportAssignment"] = 235] = "ExportAssignment"; SyntaxKind[SyntaxKind["ExportDeclaration"] = 236] = "ExportDeclaration"; SyntaxKind[SyntaxKind["NamedExports"] = 237] = "NamedExports"; SyntaxKind[SyntaxKind["ExportSpecifier"] = 238] = "ExportSpecifier"; SyntaxKind[SyntaxKind["MissingDeclaration"] = 239] = "MissingDeclaration"; // Module references SyntaxKind[SyntaxKind["ExternalModuleReference"] = 240] = "ExternalModuleReference"; // JSX SyntaxKind[SyntaxKind["JsxElement"] = 241] = "JsxElement"; SyntaxKind[SyntaxKind["JsxSelfClosingElement"] = 242] = "JsxSelfClosingElement"; SyntaxKind[SyntaxKind["JsxOpeningElement"] = 243] = "JsxOpeningElement"; SyntaxKind[SyntaxKind["JsxText"] = 244] = "JsxText"; SyntaxKind[SyntaxKind["JsxClosingElement"] = 245] = "JsxClosingElement"; SyntaxKind[SyntaxKind["JsxAttribute"] = 246] = "JsxAttribute"; SyntaxKind[SyntaxKind["JsxSpreadAttribute"] = 247] = "JsxSpreadAttribute"; SyntaxKind[SyntaxKind["JsxExpression"] = 248] = "JsxExpression"; // Clauses SyntaxKind[SyntaxKind["CaseClause"] = 249] = "CaseClause"; SyntaxKind[SyntaxKind["DefaultClause"] = 250] = "DefaultClause"; SyntaxKind[SyntaxKind["HeritageClause"] = 251] = "HeritageClause"; SyntaxKind[SyntaxKind["CatchClause"] = 252] = "CatchClause"; // Property assignments SyntaxKind[SyntaxKind["PropertyAssignment"] = 253] = "PropertyAssignment"; SyntaxKind[SyntaxKind["ShorthandPropertyAssignment"] = 254] = "ShorthandPropertyAssignment"; // Enum SyntaxKind[SyntaxKind["EnumMember"] = 255] = "EnumMember"; // Top-level nodes SyntaxKind[SyntaxKind["SourceFile"] = 256] = "SourceFile"; // JSDoc nodes SyntaxKind[SyntaxKind["JSDocTypeExpression"] = 257] = "JSDocTypeExpression"; // The * type SyntaxKind[SyntaxKind["JSDocAllType"] = 258] = "JSDocAllType"; // The ? type SyntaxKind[SyntaxKind["JSDocUnknownType"] = 259] = "JSDocUnknownType"; SyntaxKind[SyntaxKind["JSDocArrayType"] = 260] = "JSDocArrayType"; SyntaxKind[SyntaxKind["JSDocUnionType"] = 261] = "JSDocUnionType"; SyntaxKind[SyntaxKind["JSDocTupleType"] = 262] = "JSDocTupleType"; SyntaxKind[SyntaxKind["JSDocNullableType"] = 263] = "JSDocNullableType"; SyntaxKind[SyntaxKind["JSDocNonNullableType"] = 264] = "JSDocNonNullableType"; SyntaxKind[SyntaxKind["JSDocRecordType"] = 265] = "JSDocRecordType"; SyntaxKind[SyntaxKind["JSDocRecordMember"] = 266] = "JSDocRecordMember"; SyntaxKind[SyntaxKind["JSDocTypeReference"] = 267] = "JSDocTypeReference"; SyntaxKind[SyntaxKind["JSDocOptionalType"] = 268] = "JSDocOptionalType"; SyntaxKind[SyntaxKind["JSDocFunctionType"] = 269] = "JSDocFunctionType"; SyntaxKind[SyntaxKind["JSDocVariadicType"] = 270] = "JSDocVariadicType"; SyntaxKind[SyntaxKind["JSDocConstructorType"] = 271] = "JSDocConstructorType"; SyntaxKind[SyntaxKind["JSDocThisType"] = 272] = "JSDocThisType"; SyntaxKind[SyntaxKind["JSDocComment"] = 273] = "JSDocComment"; SyntaxKind[SyntaxKind["JSDocTag"] = 274] = "JSDocTag"; SyntaxKind[SyntaxKind["JSDocParameterTag"] = 275] = "JSDocParameterTag"; SyntaxKind[SyntaxKind["JSDocReturnTag"] = 276] = "JSDocReturnTag"; SyntaxKind[SyntaxKind["JSDocTypeTag"] = 277] = "JSDocTypeTag"; SyntaxKind[SyntaxKind["JSDocTemplateTag"] = 278] = "JSDocTemplateTag"; SyntaxKind[SyntaxKind["JSDocTypedefTag"] = 279] = "JSDocTypedefTag"; SyntaxKind[SyntaxKind["JSDocPropertyTag"] = 280] = "JSDocPropertyTag"; SyntaxKind[SyntaxKind["JSDocTypeLiteral"] = 281] = "JSDocTypeLiteral"; SyntaxKind[SyntaxKind["JSDocLiteralType"] = 282] = "JSDocLiteralType"; SyntaxKind[SyntaxKind["JSDocNullKeyword"] = 283] = "JSDocNullKeyword"; SyntaxKind[SyntaxKind["JSDocUndefinedKeyword"] = 284] = "JSDocUndefinedKeyword"; SyntaxKind[SyntaxKind["JSDocNeverKeyword"] = 285] = "JSDocNeverKeyword"; // Synthesized list SyntaxKind[SyntaxKind["SyntaxList"] = 286] = "SyntaxList"; // Enum value count SyntaxKind[SyntaxKind["Count"] = 287] = "Count"; // Markers SyntaxKind[SyntaxKind["FirstAssignment"] = 56] = "FirstAssignment"; SyntaxKind[SyntaxKind["LastAssignment"] = 68] = "LastAssignment"; SyntaxKind[SyntaxKind["FirstReservedWord"] = 70] = "FirstReservedWord"; SyntaxKind[SyntaxKind["LastReservedWord"] = 105] = "LastReservedWord"; SyntaxKind[SyntaxKind["FirstKeyword"] = 70] = "FirstKeyword"; SyntaxKind[SyntaxKind["LastKeyword"] = 138] = "LastKeyword"; SyntaxKind[SyntaxKind["FirstFutureReservedWord"] = 106] = "FirstFutureReservedWord"; SyntaxKind[SyntaxKind["LastFutureReservedWord"] = 114] = "LastFutureReservedWord"; SyntaxKind[SyntaxKind["FirstTypeNode"] = 154] = "FirstTypeNode"; SyntaxKind[SyntaxKind["LastTypeNode"] = 166] = "LastTypeNode"; SyntaxKind[SyntaxKind["FirstPunctuation"] = 15] = "FirstPunctuation"; SyntaxKind[SyntaxKind["LastPunctuation"] = 68] = "LastPunctuation"; SyntaxKind[SyntaxKind["FirstToken"] = 0] = "FirstToken"; SyntaxKind[SyntaxKind["LastToken"] = 138] = "LastToken"; SyntaxKind[SyntaxKind["FirstTriviaToken"] = 2] = "FirstTriviaToken"; SyntaxKind[SyntaxKind["LastTriviaToken"] = 7] = "LastTriviaToken"; SyntaxKind[SyntaxKind["FirstLiteralToken"] = 8] = "FirstLiteralToken"; SyntaxKind[SyntaxKind["LastLiteralToken"] = 11] = "LastLiteralToken"; SyntaxKind[SyntaxKind["FirstTemplateToken"] = 11] = "FirstTemplateToken"; SyntaxKind[SyntaxKind["LastTemplateToken"] = 14] = "LastTemplateToken"; SyntaxKind[SyntaxKind["FirstBinaryOperator"] = 25] = "FirstBinaryOperator"; SyntaxKind[SyntaxKind["LastBinaryOperator"] = 68] = "LastBinaryOperator"; SyntaxKind[SyntaxKind["FirstNode"] = 139] = "FirstNode"; SyntaxKind[SyntaxKind["FirstJSDocNode"] = 257] = "FirstJSDocNode"; SyntaxKind[SyntaxKind["LastJSDocNode"] = 282] = "LastJSDocNode"; SyntaxKind[SyntaxKind["FirstJSDocTagNode"] = 273] = "FirstJSDocTagNode"; SyntaxKind[SyntaxKind["LastJSDocTagNode"] = 285] = "LastJSDocTagNode"; })(ts.SyntaxKind || (ts.SyntaxKind = {})); var SyntaxKind = ts.SyntaxKind; (function (NodeFlags) { NodeFlags[NodeFlags["None"] = 0] = "None"; NodeFlags[NodeFlags["Export"] = 1] = "Export"; NodeFlags[NodeFlags["Ambient"] = 2] = "Ambient"; NodeFlags[NodeFlags["Public"] = 4] = "Public"; NodeFlags[NodeFlags["Private"] = 8] = "Private"; NodeFlags[NodeFlags["Protected"] = 16] = "Protected"; NodeFlags[NodeFlags["Static"] = 32] = "Static"; NodeFlags[NodeFlags["Readonly"] = 64] = "Readonly"; NodeFlags[NodeFlags["Abstract"] = 128] = "Abstract"; NodeFlags[NodeFlags["Async"] = 256] = "Async"; NodeFlags[NodeFlags["Default"] = 512] = "Default"; NodeFlags[NodeFlags["Let"] = 1024] = "Let"; NodeFlags[NodeFlags["Const"] = 2048] = "Const"; NodeFlags[NodeFlags["Namespace"] = 4096] = "Namespace"; NodeFlags[NodeFlags["ExportContext"] = 8192] = "ExportContext"; NodeFlags[NodeFlags["ContainsThis"] = 16384] = "ContainsThis"; NodeFlags[NodeFlags["HasImplicitReturn"] = 32768] = "HasImplicitReturn"; NodeFlags[NodeFlags["HasExplicitReturn"] = 65536] = "HasExplicitReturn"; NodeFlags[NodeFlags["GlobalAugmentation"] = 131072] = "GlobalAugmentation"; NodeFlags[NodeFlags["HasClassExtends"] = 262144] = "HasClassExtends"; NodeFlags[NodeFlags["HasDecorators"] = 524288] = "HasDecorators"; NodeFlags[NodeFlags["HasParamDecorators"] = 1048576] = "HasParamDecorators"; NodeFlags[NodeFlags["HasAsyncFunctions"] = 2097152] = "HasAsyncFunctions"; NodeFlags[NodeFlags["DisallowInContext"] = 4194304] = "DisallowInContext"; NodeFlags[NodeFlags["YieldContext"] = 8388608] = "YieldContext"; NodeFlags[NodeFlags["DecoratorContext"] = 16777216] = "DecoratorContext"; NodeFlags[NodeFlags["AwaitContext"] = 33554432] = "AwaitContext"; NodeFlags[NodeFlags["ThisNodeHasError"] = 67108864] = "ThisNodeHasError"; NodeFlags[NodeFlags["JavaScriptFile"] = 134217728] = "JavaScriptFile"; NodeFlags[NodeFlags["ThisNodeOrAnySubNodesHasError"] = 268435456] = "ThisNodeOrAnySubNodesHasError"; NodeFlags[NodeFlags["HasAggregatedChildData"] = 536870912] = "HasAggregatedChildData"; NodeFlags[NodeFlags["HasJsxSpreadAttribute"] = 1073741824] = "HasJsxSpreadAttribute"; NodeFlags[NodeFlags["Modifier"] = 1023] = "Modifier"; NodeFlags[NodeFlags["AccessibilityModifier"] = 28] = "AccessibilityModifier"; // Accessibility modifiers and 'readonly' can be attached to a parameter in a constructor to make it a property. NodeFlags[NodeFlags["ParameterPropertyModifier"] = 92] = "ParameterPropertyModifier"; NodeFlags[NodeFlags["BlockScoped"] = 3072] = "BlockScoped"; NodeFlags[NodeFlags["ReachabilityCheckFlags"] = 98304] = "ReachabilityCheckFlags"; NodeFlags[NodeFlags["EmitHelperFlags"] = 3932160] = "EmitHelperFlags"; NodeFlags[NodeFlags["ReachabilityAndEmitFlags"] = 4030464] = "ReachabilityAndEmitFlags"; // Parsing context flags NodeFlags[NodeFlags["ContextFlags"] = 197132288] = "ContextFlags"; // Exclude these flags when parsing a Type NodeFlags[NodeFlags["TypeExcludesFlags"] = 41943040] = "TypeExcludesFlags"; })(ts.NodeFlags || (ts.NodeFlags = {})); var NodeFlags = ts.NodeFlags; (function (JsxFlags) { JsxFlags[JsxFlags["None"] = 0] = "None"; /** An element from a named property of the JSX.IntrinsicElements interface */ JsxFlags[JsxFlags["IntrinsicNamedElement"] = 1] = "IntrinsicNamedElement"; /** An element inferred from the string index signature of the JSX.IntrinsicElements interface */ JsxFlags[JsxFlags["IntrinsicIndexedElement"] = 2] = "IntrinsicIndexedElement"; JsxFlags[JsxFlags["IntrinsicElement"] = 3] = "IntrinsicElement"; })(ts.JsxFlags || (ts.JsxFlags = {})); var JsxFlags = ts.JsxFlags; /* @internal */ (function (RelationComparisonResult) { RelationComparisonResult[RelationComparisonResult["Succeeded"] = 1] = "Succeeded"; RelationComparisonResult[RelationComparisonResult["Failed"] = 2] = "Failed"; RelationComparisonResult[RelationComparisonResult["FailedAndReported"] = 3] = "FailedAndReported"; })(ts.RelationComparisonResult || (ts.RelationComparisonResult = {})); var RelationComparisonResult = ts.RelationComparisonResult; (function (FlowFlags) { FlowFlags[FlowFlags["Unreachable"] = 1] = "Unreachable"; FlowFlags[FlowFlags["Start"] = 2] = "Start"; FlowFlags[FlowFlags["BranchLabel"] = 4] = "BranchLabel"; FlowFlags[FlowFlags["LoopLabel"] = 8] = "LoopLabel"; FlowFlags[FlowFlags["Assignment"] = 16] = "Assignment"; FlowFlags[FlowFlags["TrueCondition"] = 32] = "TrueCondition"; FlowFlags[FlowFlags["FalseCondition"] = 64] = "FalseCondition"; FlowFlags[FlowFlags["SwitchClause"] = 128] = "SwitchClause"; FlowFlags[FlowFlags["Referenced"] = 256] = "Referenced"; FlowFlags[FlowFlags["Shared"] = 512] = "Shared"; FlowFlags[FlowFlags["Label"] = 12] = "Label"; FlowFlags[FlowFlags["Condition"] = 96] = "Condition"; })(ts.FlowFlags || (ts.FlowFlags = {})); var FlowFlags = ts.FlowFlags; var OperationCanceledException = (function () { function OperationCanceledException() { } return OperationCanceledException; }()); ts.OperationCanceledException = OperationCanceledException; /** Return code used by getEmitOutput function to indicate status of the function */ (function (ExitStatus) { // Compiler ran successfully. Either this was a simple do-nothing compilation (for example, // when -version or -help was provided, or this was a normal compilation, no diagnostics // were produced, and all outputs were generated successfully. ExitStatus[ExitStatus["Success"] = 0] = "Success"; // Diagnostics were produced and because of them no code was generated. ExitStatus[ExitStatus["DiagnosticsPresent_OutputsSkipped"] = 1] = "DiagnosticsPresent_OutputsSkipped"; // Diagnostics were produced and outputs were generated in spite of them. ExitStatus[ExitStatus["DiagnosticsPresent_OutputsGenerated"] = 2] = "DiagnosticsPresent_OutputsGenerated"; })(ts.ExitStatus || (ts.ExitStatus = {})); var ExitStatus = ts.ExitStatus; (function (TypeFormatFlags) { TypeFormatFlags[TypeFormatFlags["None"] = 0] = "None"; TypeFormatFlags[TypeFormatFlags["WriteArrayAsGenericType"] = 1] = "WriteArrayAsGenericType"; TypeFormatFlags[TypeFormatFlags["UseTypeOfFunction"] = 2] = "UseTypeOfFunction"; TypeFormatFlags[TypeFormatFlags["NoTruncation"] = 4] = "NoTruncation"; TypeFormatFlags[TypeFormatFlags["WriteArrowStyleSignature"] = 8] = "WriteArrowStyleSignature"; TypeFormatFlags[TypeFormatFlags["WriteOwnNameForAnyLike"] = 16] = "WriteOwnNameForAnyLike"; TypeFormatFlags[TypeFormatFlags["WriteTypeArgumentsOfSignature"] = 32] = "WriteTypeArgumentsOfSignature"; TypeFormatFlags[TypeFormatFlags["InElementType"] = 64] = "InElementType"; TypeFormatFlags[TypeFormatFlags["UseFullyQualifiedType"] = 128] = "UseFullyQualifiedType"; TypeFormatFlags[TypeFormatFlags["InFirstTypeArgument"] = 256] = "InFirstTypeArgument"; TypeFormatFlags[TypeFormatFlags["InTypeAlias"] = 512] = "InTypeAlias"; })(ts.TypeFormatFlags || (ts.TypeFormatFlags = {})); var TypeFormatFlags = ts.TypeFormatFlags; (function (SymbolFormatFlags) { SymbolFormatFlags[SymbolFormatFlags["None"] = 0] = "None"; // Write symbols's type argument if it is instantiated symbol // eg. class C<T> { p: T } <-- Show p as C<T>.p here // var a: C<number>; // var p = a.p; <--- Here p is property of C<number> so show it as C<number>.p instead of just C.p SymbolFormatFlags[SymbolFormatFlags["WriteTypeParametersOrArguments"] = 1] = "WriteTypeParametersOrArguments"; // Use only external alias information to get the symbol name in the given context // eg. module m { export class c { } } import x = m.c; // When this flag is specified m.c will be used to refer to the class instead of alias symbol x SymbolFormatFlags[SymbolFormatFlags["UseOnlyExternalAliasing"] = 2] = "UseOnlyExternalAliasing"; })(ts.SymbolFormatFlags || (ts.SymbolFormatFlags = {})); var SymbolFormatFlags = ts.SymbolFormatFlags; /* @internal */ (function (SymbolAccessibility) { SymbolAccessibility[SymbolAccessibility["Accessible"] = 0] = "Accessible"; SymbolAccessibility[SymbolAccessibility["NotAccessible"] = 1] = "NotAccessible"; SymbolAccessibility[SymbolAccessibility["CannotBeNamed"] = 2] = "CannotBeNamed"; })(ts.SymbolAccessibility || (ts.SymbolAccessibility = {})); var SymbolAccessibility = ts.SymbolAccessibility; (function (TypePredicateKind) { TypePredicateKind[TypePredicateKind["This"] = 0] = "This"; TypePredicateKind[TypePredicateKind["Identifier"] = 1] = "Identifier"; })(ts.TypePredicateKind || (ts.TypePredicateKind = {})); var TypePredicateKind = ts.TypePredicateKind; /** Indicates how to serialize the name for a TypeReferenceNode when emitting decorator * metadata */ /* @internal */ (function (TypeReferenceSerializationKind) { TypeReferenceSerializationKind[TypeReferenceSerializationKind["Unknown"] = 0] = "Unknown"; // should be emitted using a safe fallback. TypeReferenceSerializationKind[TypeReferenceSerializationKind["TypeWithConstructSignatureAndValue"] = 1] = "TypeWithConstructSignatureAndValue"; // function that can be reached at runtime (e.g. a `class` // declaration or a `var` declaration for the static side // of a type, such as the global `Promise` type in lib.d.ts). TypeReferenceSerializationKind[TypeReferenceSerializationKind["VoidType"] = 2] = "VoidType"; TypeReferenceSerializationKind[TypeReferenceSerializationKind["NumberLikeType"] = 3] = "NumberLikeType"; TypeReferenceSerializationKind[TypeReferenceSerializationKind["StringLikeType"] = 4] = "StringLikeType"; TypeReferenceSerializationKind[TypeReferenceSerializationKind["BooleanType"] = 5] = "BooleanType"; TypeReferenceSerializationKind[TypeReferenceSerializationKind["ArrayLikeType"] = 6] = "ArrayLikeType"; TypeReferenceSerializationKind[TypeReferenceSerializationKind["ESSymbolType"] = 7] = "ESSymbolType"; TypeReferenceSerializationKind[TypeReferenceSerializationKind["TypeWithCallSignature"] = 8] = "TypeWithCallSignature"; // with call signatures. TypeReferenceSerializationKind[TypeReferenceSerializationKind["ObjectType"] = 9] = "ObjectType"; })(ts.TypeReferenceSerializationKind || (ts.TypeReferenceSerializationKind = {})); var TypeReferenceSerializationKind = ts.TypeReferenceSerializationKind; (function (SymbolFlags) { SymbolFlags[SymbolFlags["None"] = 0] = "None"; SymbolFlags[SymbolFlags["FunctionScopedVariable"] = 1] = "FunctionScopedVariable"; SymbolFlags[SymbolFlags["BlockScopedVariable"] = 2] = "BlockScopedVariable"; SymbolFlags[SymbolFlags["Property"] = 4] = "Property"; SymbolFlags[SymbolFlags["EnumMember"] = 8] = "EnumMember"; SymbolFlags[SymbolFlags["Function"] = 16] = "Function"; SymbolFlags[SymbolFlags["Class"] = 32] = "Class"; SymbolFlags[SymbolFlags["Interface"] = 64] = "Interface"; SymbolFlags[SymbolFlags["ConstEnum"] = 128] = "ConstEnum"; SymbolFlags[SymbolFlags["RegularEnum"] = 256] = "RegularEnum"; SymbolFlags[SymbolFlags["ValueModule"] = 512] = "ValueModule"; SymbolFlags[SymbolFlags["NamespaceModule"] = 1024] = "NamespaceModule"; SymbolFlags[SymbolFlags["TypeLiteral"] = 2048] = "TypeLiteral"; SymbolFlags[SymbolFlags["ObjectLiteral"] = 4096] = "ObjectLiteral"; SymbolFlags[SymbolFlags["Method"] = 8192] = "Method"; SymbolFlags[SymbolFlags["Constructor"] = 16384] = "Constructor"; SymbolFlags[SymbolFlags["GetAccessor"] = 32768] = "GetAccessor"; SymbolFlags[SymbolFlags["SetAccessor"] = 65536] = "SetAccessor"; SymbolFlags[SymbolFlags["Signature"] = 131072] = "Signature"; SymbolFlags[SymbolFlags["TypeParameter"] = 262144] = "TypeParameter"; SymbolFlags[SymbolFlags["TypeAlias"] = 524288] = "TypeAlias"; SymbolFlags[SymbolFlags["ExportValue"] = 1048576] = "ExportValue"; SymbolFlags[SymbolFlags["ExportType"] = 2097152] = "ExportType"; SymbolFlags[SymbolFlags["ExportNamespace"] = 4194304] = "ExportNamespace"; SymbolFlags[SymbolFlags["Alias"] = 8388608] = "Alias"; SymbolFlags[SymbolFlags["Instantiated"] = 16777216] = "Instantiated"; SymbolFlags[SymbolFlags["Merged"] = 33554432] = "Merged"; SymbolFlags[SymbolFlags["Transient"] = 67108864] = "Transient"; SymbolFlags[SymbolFlags["Prototype"] = 134217728] = "Prototype"; SymbolFlags[SymbolFlags["SyntheticProperty"] = 268435456] = "SyntheticProperty"; SymbolFlags[SymbolFlags["Optional"] = 536870912] = "Optional"; SymbolFlags[SymbolFlags["ExportStar"] = 1073741824] = "ExportStar"; SymbolFlags[SymbolFlags["Enum"] = 384] = "Enum"; SymbolFlags[SymbolFlags["Variable"] = 3] = "Variable"; SymbolFlags[SymbolFlags["Value"] = 107455] = "Value"; SymbolFlags[SymbolFlags["Type"] = 793064] = "Type"; SymbolFlags[SymbolFlags["Namespace"] = 1920] = "Namespace"; SymbolFlags[SymbolFlags["Module"] = 1536] = "Module"; SymbolFlags[SymbolFlags["Accessor"] = 98304] = "Accessor"; // Variables can be redeclared, but can not redeclare a block-scoped declaration with the // same name, or any other value that is not a variable, e.g. ValueModule or Class SymbolFlags[SymbolFlags["FunctionScopedVariableExcludes"] = 107454] = "FunctionScopedVariableExcludes"; // Block-scoped declarations are not allowed to be re-declared // they can not merge with anything in the value space SymbolFlags[SymbolFlags["BlockScopedVariableExcludes"] = 107455] = "BlockScopedVariableExcludes"; SymbolFlags[SymbolFlags["ParameterExcludes"] = 107455] = "ParameterExcludes"; SymbolFlags[SymbolFlags["PropertyExcludes"] = 0] = "PropertyExcludes"; SymbolFlags[SymbolFlags["EnumMemberExcludes"] = 900095] = "EnumMemberExcludes"; SymbolFlags[SymbolFlags["FunctionExcludes"] = 106927] = "FunctionExcludes"; SymbolFlags[SymbolFlags["ClassExcludes"] = 899519] = "ClassExcludes"; SymbolFlags[SymbolFlags["InterfaceExcludes"] = 792968] = "InterfaceExcludes"; SymbolFlags[SymbolFlags["RegularEnumExcludes"] = 899327] = "RegularEnumExcludes"; SymbolFlags[SymbolFlags["ConstEnumExcludes"] = 899967] = "ConstEnumExcludes"; SymbolFlags[SymbolFlags["ValueModuleExcludes"] = 106639] = "ValueModuleExcludes"; SymbolFlags[SymbolFlags["NamespaceModuleExcludes"] = 0] = "NamespaceModuleExcludes"; SymbolFlags[SymbolFlags["MethodExcludes"] = 99263] = "MethodExcludes"; SymbolFlags[SymbolFlags["GetAccessorExcludes"] = 41919] = "GetAccessorExcludes"; SymbolFlags[SymbolFlags["SetAccessorExcludes"] = 74687] = "SetAccessorExcludes"; SymbolFlags[SymbolFlags["TypeParameterExcludes"] = 530920] = "TypeParameterExcludes"; SymbolFlags[SymbolFlags["TypeAliasExcludes"] = 793064] = "TypeAliasExcludes"; SymbolFlags[SymbolFlags["AliasExcludes"] = 8388608] = "AliasExcludes"; SymbolFlags[SymbolFlags["ModuleMember"] = 8914931] = "ModuleMember"; SymbolFlags[SymbolFlags["ExportHasLocal"] = 944] = "ExportHasLocal"; SymbolFlags[SymbolFlags["HasExports"] = 1952] = "HasExports"; SymbolFlags[SymbolFlags["HasMembers"] = 6240] = "HasMembers"; SymbolFlags[SymbolFlags["BlockScoped"] = 418] = "BlockScoped"; SymbolFlags[SymbolFlags["PropertyOrAccessor"] = 98308] = "PropertyOrAccessor"; SymbolFlags[SymbolFlags["Export"] = 7340032] = "Export"; SymbolFlags[SymbolFlags["ClassMember"] = 106500] = "ClassMember"; /* @internal */ // The set of things we consider semantically classifiable. Used to speed up the LS during // classification. SymbolFlags[SymbolFlags["Classifiable"] = 788448] = "Classifiable"; })(ts.SymbolFlags || (ts.SymbolFlags = {})); var SymbolFlags = ts.SymbolFlags; /* @internal */ (function (NodeCheckFlags) { NodeCheckFlags[NodeCheckFlags["TypeChecked"] = 1] = "TypeChecked"; NodeCheckFlags[NodeCheckFlags["LexicalThis"] = 2] = "LexicalThis"; NodeCheckFlags[NodeCheckFlags["CaptureThis"] = 4] = "CaptureThis"; NodeCheckFlags[NodeCheckFlags["SuperInstance"] = 256] = "SuperInstance"; NodeCheckFlags[NodeCheckFlags["SuperStatic"] = 512] = "SuperStatic"; NodeCheckFlags[NodeCheckFlags["ContextChecked"] = 1024] = "ContextChecked"; NodeCheckFlags[NodeCheckFlags["AsyncMethodWithSuper"] = 2048] = "AsyncMethodWithSuper"; NodeCheckFlags[NodeCheckFlags["AsyncMethodWithSuperBinding"] = 4096] = "AsyncMethodWithSuperBinding"; NodeCheckFlags[NodeCheckFlags["CaptureArguments"] = 8192] = "CaptureArguments"; NodeCheckFlags[NodeCheckFlags["EnumValuesComputed"] = 16384] = "EnumValuesComputed"; NodeCheckFlags[NodeCheckFlags["LexicalModuleMergesWithClass"] = 32768] = "LexicalModuleMergesWithClass"; NodeCheckFlags[NodeCheckFlags["LoopWithCapturedBlockScopedBinding"] = 65536] = "LoopWithCapturedBlockScopedBinding"; NodeCheckFlags[NodeCheckFlags["CapturedBlockScopedBinding"] = 131072] = "CapturedBlockScopedBinding"; NodeCheckFlags[NodeCheckFlags["BlockScopedBindingInLoop"] = 262144] = "BlockScopedBindingInLoop"; NodeCheckFlags[NodeCheckFlags["ClassWithBodyScopedClassBinding"] = 524288] = "ClassWithBodyScopedClassBinding"; NodeCheckFlags[NodeCheckFlags["BodyScopedClassBinding"] = 1048576] = "BodyScopedClassBinding"; NodeCheckFlags[NodeCheckFlags["NeedsLoopOutParameter"] = 2097152] = "NeedsLoopOutParameter"; NodeCheckFlags[NodeCheckFlags["AssignmentsMarked"] = 4194304] = "AssignmentsMarked"; })(ts.NodeCheckFlags || (ts.NodeCheckFlags = {})); var NodeCheckFlags = ts.NodeCheckFlags; (function (TypeFlags) { TypeFlags[TypeFlags["Any"] = 1] = "Any"; TypeFlags[TypeFlags["String"] = 2] = "String"; TypeFlags[TypeFlags["Number"] = 4] = "Number"; TypeFlags[TypeFlags["Boolean"] = 8] = "Boolean"; TypeFlags[TypeFlags["Enum"] = 16] = "Enum"; TypeFlags[TypeFlags["StringLiteral"] = 32] = "StringLiteral"; TypeFlags[TypeFlags["NumberLiteral"] = 64] = "NumberLiteral"; TypeFlags[TypeFlags["BooleanLiteral"] = 128] = "BooleanLiteral"; TypeFlags[TypeFlags["EnumLiteral"] = 256] = "EnumLiteral"; TypeFlags[TypeFlags["ESSymbol"] = 512] = "ESSymbol"; TypeFlags[TypeFlags["Void"] = 1024] = "Void"; TypeFlags[TypeFlags["Undefined"] = 2048] = "Undefined"; TypeFlags[TypeFlags["Null"] = 4096] = "Null"; TypeFlags[TypeFlags["Never"] = 8192] = "Never"; TypeFlags[TypeFlags["TypeParameter"] = 16384] = "TypeParameter"; TypeFlags[TypeFlags["Class"] = 32768] = "Class"; TypeFlags[TypeFlags["Interface"] = 65536] = "Interface"; TypeFlags[TypeFlags["Reference"] = 131072] = "Reference"; TypeFlags[TypeFlags["Tuple"] = 262144] = "Tuple"; TypeFlags[TypeFlags["Union"] = 524288] = "Union"; TypeFlags[TypeFlags["Intersection"] = 1048576] = "Intersection"; TypeFlags[TypeFlags["Anonymous"] = 2097152] = "Anonymous"; TypeFlags[TypeFlags["Instantiated"] = 4194304] = "Instantiated"; /* @internal */ TypeFlags[TypeFlags["ObjectLiteral"] = 8388608] = "ObjectLiteral"; /* @internal */ TypeFlags[TypeFlags["FreshObjectLiteral"] = 16777216] = "FreshObjectLiteral"; /* @internal */ TypeFlags[TypeFlags["ContainsWideningType"] = 33554432] = "ContainsWideningType"; /* @internal */ TypeFlags[TypeFlags["ContainsObjectLiteral"] = 67108864] = "ContainsObjectLiteral"; /* @internal */ TypeFlags[TypeFlags["ContainsAnyFunctionType"] = 134217728] = "ContainsAnyFunctionType"; TypeFlags[TypeFlags["ThisType"] = 268435456] = "ThisType"; TypeFlags[TypeFlags["ObjectLiteralPatternWithComputedProperties"] = 536870912] = "ObjectLiteralPatternWithComputedProperties"; /* @internal */ TypeFlags[TypeFlags["Nullable"] = 6144] = "Nullable"; TypeFlags[TypeFlags["Literal"] = 480] = "Literal"; /* @internal */ TypeFlags[TypeFlags["DefinitelyFalsy"] = 7392] = "DefinitelyFalsy"; TypeFlags[TypeFlags["PossiblyFalsy"] = 7406] = "PossiblyFalsy"; /* @internal */ TypeFlags[TypeFlags["Intrinsic"] = 16015] = "Intrinsic"; /* @internal */ TypeFlags[TypeFlags["Primitive"] = 8190] = "Primitive"; TypeFlags[TypeFlags["StringLike"] = 34] = "StringLike"; TypeFlags[TypeFlags["NumberLike"] = 340] = "NumberLike"; TypeFlags[TypeFlags["BooleanLike"] = 136] = "BooleanLike"; TypeFlags[TypeFlags["EnumLike"] = 272] = "EnumLike"; TypeFlags[TypeFlags["ObjectType"] = 2588672] = "ObjectType"; TypeFlags[TypeFlags["UnionOrIntersection"] = 1572864] = "UnionOrIntersection"; TypeFlags[TypeFlags["StructuredType"] = 4161536] = "StructuredType"; TypeFlags[TypeFlags["StructuredOrTypeParameter"] = 4177920] = "StructuredOrTypeParameter"; // 'Narrowable' types are types where narrowing actually narrows. // This *should* be every type other than null, undefined, void, and never TypeFlags[TypeFlags["Narrowable"] = 4178943] = "Narrowable"; TypeFlags[TypeFlags["NotUnionOrUnit"] = 2589191] = "NotUnionOrUnit"; /* @internal */ TypeFlags[TypeFlags["RequiresWidening"] = 100663296] = "RequiresWidening"; /* @internal */ TypeFlags[TypeFlags["PropagatingFlags"] = 234881024] = "PropagatingFlags"; })(ts.TypeFlags || (ts.TypeFlags = {})); var TypeFlags = ts.TypeFlags; (function (SignatureKind) { SignatureKind[SignatureKind["Call"] = 0] = "Call"; SignatureKind[SignatureKind["Construct"] = 1] = "Construct"; })(ts.SignatureKind || (ts.SignatureKind = {})); var SignatureKind = ts.SignatureKind; (function (IndexKind) { IndexKind[IndexKind["String"] = 0] = "String"; IndexKind[IndexKind["Number"] = 1] = "Number"; })(ts.IndexKind || (ts.IndexKind = {})); var IndexKind = ts.IndexKind; /* @internal */ (function (SpecialPropertyAssignmentKind) { SpecialPropertyAssignmentKind[SpecialPropertyAssignmentKind["None"] = 0] = "None"; /// exports.name = expr SpecialPropertyAssignmentKind[SpecialPropertyAssignmentKind["ExportsProperty"] = 1] = "ExportsProperty"; /// module.exports = expr SpecialPropertyAssignmentKind[SpecialPropertyAssignmentKind["ModuleExports"] = 2] = "ModuleExports"; /// className.prototype.name = expr SpecialPropertyAssignmentKind[SpecialPropertyAssignmentKind["PrototypeProperty"] = 3] = "PrototypeProperty";