Accept new baselines

This commit is contained in:
Anders Hejlsberg
2018-01-25 12:26:05 -08:00
parent 490d6568f9
commit 4d62df4322
2 changed files with 384 additions and 364 deletions

View File

@@ -187,178 +187,180 @@ declare namespace ts {
ConstructorKeyword = 123,
DeclareKeyword = 124,
GetKeyword = 125,
IsKeyword = 126,
KeyOfKeyword = 127,
ModuleKeyword = 128,
NamespaceKeyword = 129,
NeverKeyword = 130,
ReadonlyKeyword = 131,
RequireKeyword = 132,
NumberKeyword = 133,
ObjectKeyword = 134,
SetKeyword = 135,
StringKeyword = 136,
SymbolKeyword = 137,
TypeKeyword = 138,
UndefinedKeyword = 139,
UniqueKeyword = 140,
FromKeyword = 141,
GlobalKeyword = 142,
OfKeyword = 143,
QualifiedName = 144,
ComputedPropertyName = 145,
TypeParameter = 146,
Parameter = 147,
Decorator = 148,
PropertySignature = 149,
PropertyDeclaration = 150,
MethodSignature = 151,
MethodDeclaration = 152,
Constructor = 153,
GetAccessor = 154,
SetAccessor = 155,
CallSignature = 156,
ConstructSignature = 157,
IndexSignature = 158,
TypePredicate = 159,
TypeReference = 160,
FunctionType = 161,
ConstructorType = 162,
TypeQuery = 163,
TypeLiteral = 164,
ArrayType = 165,
TupleType = 166,
UnionType = 167,
IntersectionType = 168,
ConditionalType = 169,
ParenthesizedType = 170,
ThisType = 171,
TypeOperator = 172,
IndexedAccessType = 173,
MappedType = 174,
LiteralType = 175,
ObjectBindingPattern = 176,
ArrayBindingPattern = 177,
BindingElement = 178,
ArrayLiteralExpression = 179,
ObjectLiteralExpression = 180,
PropertyAccessExpression = 181,
ElementAccessExpression = 182,
CallExpression = 183,
NewExpression = 184,
TaggedTemplateExpression = 185,
TypeAssertionExpression = 186,
ParenthesizedExpression = 187,
FunctionExpression = 188,
ArrowFunction = 189,
DeleteExpression = 190,
TypeOfExpression = 191,
VoidExpression = 192,
AwaitExpression = 193,
PrefixUnaryExpression = 194,
PostfixUnaryExpression = 195,
BinaryExpression = 196,
ConditionalExpression = 197,
TemplateExpression = 198,
YieldExpression = 199,
SpreadElement = 200,
ClassExpression = 201,
OmittedExpression = 202,
ExpressionWithTypeArguments = 203,
AsExpression = 204,
NonNullExpression = 205,
MetaProperty = 206,
TemplateSpan = 207,
SemicolonClassElement = 208,
Block = 209,
VariableStatement = 210,
EmptyStatement = 211,
ExpressionStatement = 212,
IfStatement = 213,
DoStatement = 214,
WhileStatement = 215,
ForStatement = 216,
ForInStatement = 217,
ForOfStatement = 218,
ContinueStatement = 219,
BreakStatement = 220,
ReturnStatement = 221,
WithStatement = 222,
SwitchStatement = 223,
LabeledStatement = 224,
ThrowStatement = 225,
TryStatement = 226,
DebuggerStatement = 227,
VariableDeclaration = 228,
VariableDeclarationList = 229,
FunctionDeclaration = 230,
ClassDeclaration = 231,
InterfaceDeclaration = 232,
TypeAliasDeclaration = 233,
EnumDeclaration = 234,
ModuleDeclaration = 235,
ModuleBlock = 236,
CaseBlock = 237,
NamespaceExportDeclaration = 238,
ImportEqualsDeclaration = 239,
ImportDeclaration = 240,
ImportClause = 241,
NamespaceImport = 242,
NamedImports = 243,
ImportSpecifier = 244,
ExportAssignment = 245,
ExportDeclaration = 246,
NamedExports = 247,
ExportSpecifier = 248,
MissingDeclaration = 249,
ExternalModuleReference = 250,
JsxElement = 251,
JsxSelfClosingElement = 252,
JsxOpeningElement = 253,
JsxClosingElement = 254,
JsxFragment = 255,
JsxOpeningFragment = 256,
JsxClosingFragment = 257,
JsxAttribute = 258,
JsxAttributes = 259,
JsxSpreadAttribute = 260,
JsxExpression = 261,
CaseClause = 262,
DefaultClause = 263,
HeritageClause = 264,
CatchClause = 265,
PropertyAssignment = 266,
ShorthandPropertyAssignment = 267,
SpreadAssignment = 268,
EnumMember = 269,
SourceFile = 270,
Bundle = 271,
JSDocTypeExpression = 272,
JSDocAllType = 273,
JSDocUnknownType = 274,
JSDocNullableType = 275,
JSDocNonNullableType = 276,
JSDocOptionalType = 277,
JSDocFunctionType = 278,
JSDocVariadicType = 279,
JSDocComment = 280,
JSDocTypeLiteral = 281,
JSDocTag = 282,
JSDocAugmentsTag = 283,
JSDocClassTag = 284,
JSDocParameterTag = 285,
JSDocReturnTag = 286,
JSDocTypeTag = 287,
JSDocTemplateTag = 288,
JSDocTypedefTag = 289,
JSDocPropertyTag = 290,
SyntaxList = 291,
NotEmittedStatement = 292,
PartiallyEmittedExpression = 293,
CommaListExpression = 294,
MergeDeclarationMarker = 295,
EndOfDeclarationMarker = 296,
Count = 297,
InferKeyword = 126,
IsKeyword = 127,
KeyOfKeyword = 128,
ModuleKeyword = 129,
NamespaceKeyword = 130,
NeverKeyword = 131,
ReadonlyKeyword = 132,
RequireKeyword = 133,
NumberKeyword = 134,
ObjectKeyword = 135,
SetKeyword = 136,
StringKeyword = 137,
SymbolKeyword = 138,
TypeKeyword = 139,
UndefinedKeyword = 140,
UniqueKeyword = 141,
FromKeyword = 142,
GlobalKeyword = 143,
OfKeyword = 144,
QualifiedName = 145,
ComputedPropertyName = 146,
TypeParameter = 147,
Parameter = 148,
Decorator = 149,
PropertySignature = 150,
PropertyDeclaration = 151,
MethodSignature = 152,
MethodDeclaration = 153,
Constructor = 154,
GetAccessor = 155,
SetAccessor = 156,
CallSignature = 157,
ConstructSignature = 158,
IndexSignature = 159,
TypePredicate = 160,
TypeReference = 161,
FunctionType = 162,
ConstructorType = 163,
TypeQuery = 164,
TypeLiteral = 165,
ArrayType = 166,
TupleType = 167,
UnionType = 168,
IntersectionType = 169,
ConditionalType = 170,
InferType = 171,
ParenthesizedType = 172,
ThisType = 173,
TypeOperator = 174,
IndexedAccessType = 175,
MappedType = 176,
LiteralType = 177,
ObjectBindingPattern = 178,
ArrayBindingPattern = 179,
BindingElement = 180,
ArrayLiteralExpression = 181,
ObjectLiteralExpression = 182,
PropertyAccessExpression = 183,
ElementAccessExpression = 184,
CallExpression = 185,
NewExpression = 186,
TaggedTemplateExpression = 187,
TypeAssertionExpression = 188,
ParenthesizedExpression = 189,
FunctionExpression = 190,
ArrowFunction = 191,
DeleteExpression = 192,
TypeOfExpression = 193,
VoidExpression = 194,
AwaitExpression = 195,
PrefixUnaryExpression = 196,
PostfixUnaryExpression = 197,
BinaryExpression = 198,
ConditionalExpression = 199,
TemplateExpression = 200,
YieldExpression = 201,
SpreadElement = 202,
ClassExpression = 203,
OmittedExpression = 204,
ExpressionWithTypeArguments = 205,
AsExpression = 206,
NonNullExpression = 207,
MetaProperty = 208,
TemplateSpan = 209,
SemicolonClassElement = 210,
Block = 211,
VariableStatement = 212,
EmptyStatement = 213,
ExpressionStatement = 214,
IfStatement = 215,
DoStatement = 216,
WhileStatement = 217,
ForStatement = 218,
ForInStatement = 219,
ForOfStatement = 220,
ContinueStatement = 221,
BreakStatement = 222,
ReturnStatement = 223,
WithStatement = 224,
SwitchStatement = 225,
LabeledStatement = 226,
ThrowStatement = 227,
TryStatement = 228,
DebuggerStatement = 229,
VariableDeclaration = 230,
VariableDeclarationList = 231,
FunctionDeclaration = 232,
ClassDeclaration = 233,
InterfaceDeclaration = 234,
TypeAliasDeclaration = 235,
EnumDeclaration = 236,
ModuleDeclaration = 237,
ModuleBlock = 238,
CaseBlock = 239,
NamespaceExportDeclaration = 240,
ImportEqualsDeclaration = 241,
ImportDeclaration = 242,
ImportClause = 243,
NamespaceImport = 244,
NamedImports = 245,
ImportSpecifier = 246,
ExportAssignment = 247,
ExportDeclaration = 248,
NamedExports = 249,
ExportSpecifier = 250,
MissingDeclaration = 251,
ExternalModuleReference = 252,
JsxElement = 253,
JsxSelfClosingElement = 254,
JsxOpeningElement = 255,
JsxClosingElement = 256,
JsxFragment = 257,
JsxOpeningFragment = 258,
JsxClosingFragment = 259,
JsxAttribute = 260,
JsxAttributes = 261,
JsxSpreadAttribute = 262,
JsxExpression = 263,
CaseClause = 264,
DefaultClause = 265,
HeritageClause = 266,
CatchClause = 267,
PropertyAssignment = 268,
ShorthandPropertyAssignment = 269,
SpreadAssignment = 270,
EnumMember = 271,
SourceFile = 272,
Bundle = 273,
JSDocTypeExpression = 274,
JSDocAllType = 275,
JSDocUnknownType = 276,
JSDocNullableType = 277,
JSDocNonNullableType = 278,
JSDocOptionalType = 279,
JSDocFunctionType = 280,
JSDocVariadicType = 281,
JSDocComment = 282,
JSDocTypeLiteral = 283,
JSDocTag = 284,
JSDocAugmentsTag = 285,
JSDocClassTag = 286,
JSDocParameterTag = 287,
JSDocReturnTag = 288,
JSDocTypeTag = 289,
JSDocTemplateTag = 290,
JSDocTypedefTag = 291,
JSDocPropertyTag = 292,
SyntaxList = 293,
NotEmittedStatement = 294,
PartiallyEmittedExpression = 295,
CommaListExpression = 296,
MergeDeclarationMarker = 297,
EndOfDeclarationMarker = 298,
Count = 299,
FirstAssignment = 58,
LastAssignment = 70,
FirstCompoundAssignment = 59,
@@ -366,15 +368,15 @@ declare namespace ts {
FirstReservedWord = 72,
LastReservedWord = 107,
FirstKeyword = 72,
LastKeyword = 143,
LastKeyword = 144,
FirstFutureReservedWord = 108,
LastFutureReservedWord = 116,
FirstTypeNode = 159,
LastTypeNode = 175,
FirstTypeNode = 160,
LastTypeNode = 177,
FirstPunctuation = 17,
LastPunctuation = 70,
FirstToken = 0,
LastToken = 143,
LastToken = 144,
FirstTriviaToken = 2,
LastTriviaToken = 7,
FirstLiteralToken = 8,
@@ -383,11 +385,11 @@ declare namespace ts {
LastTemplateToken = 16,
FirstBinaryOperator = 27,
LastBinaryOperator = 70,
FirstNode = 144,
FirstJSDocNode = 272,
LastJSDocNode = 290,
FirstJSDocTagNode = 282,
LastJSDocTagNode = 290,
FirstNode = 145,
FirstJSDocNode = 274,
LastJSDocNode = 292,
FirstJSDocTagNode = 284,
LastJSDocTagNode = 292,
}
enum NodeFlags {
None = 0,
@@ -518,7 +520,7 @@ declare namespace ts {
}
interface TypeParameterDeclaration extends NamedDeclaration {
kind: SyntaxKind.TypeParameter;
parent?: DeclarationWithTypeParameters;
parent?: DeclarationWithTypeParameters | InferTypeNode;
name: Identifier;
constraint?: TypeNode;
default?: TypeNode;
@@ -742,6 +744,10 @@ declare namespace ts {
trueType: TypeNode;
falseType: TypeNode;
}
interface InferTypeNode extends TypeNode {
kind: SyntaxKind.InferType;
typeParameter: TypeParameterDeclaration;
}
interface ParenthesizedTypeNode extends TypeNode {
kind: SyntaxKind.ParenthesizedType;
type: TypeNode;
@@ -2205,6 +2211,7 @@ declare namespace ts {
NakedTypeVariable = 1,
MappedType = 2,
ReturnType = 4,
NoConstraints = 8,
}
interface InferenceInfo {
typeParameter: TypeParameter;
@@ -3075,6 +3082,7 @@ declare namespace ts {
function isUnionTypeNode(node: Node): node is UnionTypeNode;
function isIntersectionTypeNode(node: Node): node is IntersectionTypeNode;
function isConditionalTypeNode(node: Node): node is ConditionalTypeNode;
function isInferTypeNode(node: Node): node is InferTypeNode;
function isParenthesizedTypeNode(node: Node): node is ParenthesizedTypeNode;
function isThisTypeNode(node: Node): node is ThisTypeNode;
function isTypeOperatorNode(node: Node): node is TypeOperatorNode;
@@ -3496,6 +3504,8 @@ declare namespace ts {
function createUnionOrIntersectionTypeNode(kind: SyntaxKind.UnionType | SyntaxKind.IntersectionType, types: ReadonlyArray<TypeNode>): UnionOrIntersectionTypeNode;
function createConditionalTypeNode(checkType: TypeNode, extendsType: TypeNode, trueType: TypeNode, falseType: TypeNode): ConditionalTypeNode;
function updateConditionalTypeNode(node: ConditionalTypeNode, checkType: TypeNode, extendsType: TypeNode, trueType: TypeNode, falseType: TypeNode): ConditionalTypeNode;
function createInferTypeNode(typeParameter: TypeParameterDeclaration): InferTypeNode;
function updateInferTypeNode(node: InferTypeNode, typeParameter: TypeParameterDeclaration): InferTypeNode;
function createParenthesizedType(type: TypeNode): ParenthesizedTypeNode;
function updateParenthesizedType(node: ParenthesizedTypeNode, type: TypeNode): ParenthesizedTypeNode;
function createThisTypeNode(): ThisTypeNode;

View File

@@ -187,178 +187,180 @@ declare namespace ts {
ConstructorKeyword = 123,
DeclareKeyword = 124,
GetKeyword = 125,
IsKeyword = 126,
KeyOfKeyword = 127,
ModuleKeyword = 128,
NamespaceKeyword = 129,
NeverKeyword = 130,
ReadonlyKeyword = 131,
RequireKeyword = 132,
NumberKeyword = 133,
ObjectKeyword = 134,
SetKeyword = 135,
StringKeyword = 136,
SymbolKeyword = 137,
TypeKeyword = 138,
UndefinedKeyword = 139,
UniqueKeyword = 140,
FromKeyword = 141,
GlobalKeyword = 142,
OfKeyword = 143,
QualifiedName = 144,
ComputedPropertyName = 145,
TypeParameter = 146,
Parameter = 147,
Decorator = 148,
PropertySignature = 149,
PropertyDeclaration = 150,
MethodSignature = 151,
MethodDeclaration = 152,
Constructor = 153,
GetAccessor = 154,
SetAccessor = 155,
CallSignature = 156,
ConstructSignature = 157,
IndexSignature = 158,
TypePredicate = 159,
TypeReference = 160,
FunctionType = 161,
ConstructorType = 162,
TypeQuery = 163,
TypeLiteral = 164,
ArrayType = 165,
TupleType = 166,
UnionType = 167,
IntersectionType = 168,
ConditionalType = 169,
ParenthesizedType = 170,
ThisType = 171,
TypeOperator = 172,
IndexedAccessType = 173,
MappedType = 174,
LiteralType = 175,
ObjectBindingPattern = 176,
ArrayBindingPattern = 177,
BindingElement = 178,
ArrayLiteralExpression = 179,
ObjectLiteralExpression = 180,
PropertyAccessExpression = 181,
ElementAccessExpression = 182,
CallExpression = 183,
NewExpression = 184,
TaggedTemplateExpression = 185,
TypeAssertionExpression = 186,
ParenthesizedExpression = 187,
FunctionExpression = 188,
ArrowFunction = 189,
DeleteExpression = 190,
TypeOfExpression = 191,
VoidExpression = 192,
AwaitExpression = 193,
PrefixUnaryExpression = 194,
PostfixUnaryExpression = 195,
BinaryExpression = 196,
ConditionalExpression = 197,
TemplateExpression = 198,
YieldExpression = 199,
SpreadElement = 200,
ClassExpression = 201,
OmittedExpression = 202,
ExpressionWithTypeArguments = 203,
AsExpression = 204,
NonNullExpression = 205,
MetaProperty = 206,
TemplateSpan = 207,
SemicolonClassElement = 208,
Block = 209,
VariableStatement = 210,
EmptyStatement = 211,
ExpressionStatement = 212,
IfStatement = 213,
DoStatement = 214,
WhileStatement = 215,
ForStatement = 216,
ForInStatement = 217,
ForOfStatement = 218,
ContinueStatement = 219,
BreakStatement = 220,
ReturnStatement = 221,
WithStatement = 222,
SwitchStatement = 223,
LabeledStatement = 224,
ThrowStatement = 225,
TryStatement = 226,
DebuggerStatement = 227,
VariableDeclaration = 228,
VariableDeclarationList = 229,
FunctionDeclaration = 230,
ClassDeclaration = 231,
InterfaceDeclaration = 232,
TypeAliasDeclaration = 233,
EnumDeclaration = 234,
ModuleDeclaration = 235,
ModuleBlock = 236,
CaseBlock = 237,
NamespaceExportDeclaration = 238,
ImportEqualsDeclaration = 239,
ImportDeclaration = 240,
ImportClause = 241,
NamespaceImport = 242,
NamedImports = 243,
ImportSpecifier = 244,
ExportAssignment = 245,
ExportDeclaration = 246,
NamedExports = 247,
ExportSpecifier = 248,
MissingDeclaration = 249,
ExternalModuleReference = 250,
JsxElement = 251,
JsxSelfClosingElement = 252,
JsxOpeningElement = 253,
JsxClosingElement = 254,
JsxFragment = 255,
JsxOpeningFragment = 256,
JsxClosingFragment = 257,
JsxAttribute = 258,
JsxAttributes = 259,
JsxSpreadAttribute = 260,
JsxExpression = 261,
CaseClause = 262,
DefaultClause = 263,
HeritageClause = 264,
CatchClause = 265,
PropertyAssignment = 266,
ShorthandPropertyAssignment = 267,
SpreadAssignment = 268,
EnumMember = 269,
SourceFile = 270,
Bundle = 271,
JSDocTypeExpression = 272,
JSDocAllType = 273,
JSDocUnknownType = 274,
JSDocNullableType = 275,
JSDocNonNullableType = 276,
JSDocOptionalType = 277,
JSDocFunctionType = 278,
JSDocVariadicType = 279,
JSDocComment = 280,
JSDocTypeLiteral = 281,
JSDocTag = 282,
JSDocAugmentsTag = 283,
JSDocClassTag = 284,
JSDocParameterTag = 285,
JSDocReturnTag = 286,
JSDocTypeTag = 287,
JSDocTemplateTag = 288,
JSDocTypedefTag = 289,
JSDocPropertyTag = 290,
SyntaxList = 291,
NotEmittedStatement = 292,
PartiallyEmittedExpression = 293,
CommaListExpression = 294,
MergeDeclarationMarker = 295,
EndOfDeclarationMarker = 296,
Count = 297,
InferKeyword = 126,
IsKeyword = 127,
KeyOfKeyword = 128,
ModuleKeyword = 129,
NamespaceKeyword = 130,
NeverKeyword = 131,
ReadonlyKeyword = 132,
RequireKeyword = 133,
NumberKeyword = 134,
ObjectKeyword = 135,
SetKeyword = 136,
StringKeyword = 137,
SymbolKeyword = 138,
TypeKeyword = 139,
UndefinedKeyword = 140,
UniqueKeyword = 141,
FromKeyword = 142,
GlobalKeyword = 143,
OfKeyword = 144,
QualifiedName = 145,
ComputedPropertyName = 146,
TypeParameter = 147,
Parameter = 148,
Decorator = 149,
PropertySignature = 150,
PropertyDeclaration = 151,
MethodSignature = 152,
MethodDeclaration = 153,
Constructor = 154,
GetAccessor = 155,
SetAccessor = 156,
CallSignature = 157,
ConstructSignature = 158,
IndexSignature = 159,
TypePredicate = 160,
TypeReference = 161,
FunctionType = 162,
ConstructorType = 163,
TypeQuery = 164,
TypeLiteral = 165,
ArrayType = 166,
TupleType = 167,
UnionType = 168,
IntersectionType = 169,
ConditionalType = 170,
InferType = 171,
ParenthesizedType = 172,
ThisType = 173,
TypeOperator = 174,
IndexedAccessType = 175,
MappedType = 176,
LiteralType = 177,
ObjectBindingPattern = 178,
ArrayBindingPattern = 179,
BindingElement = 180,
ArrayLiteralExpression = 181,
ObjectLiteralExpression = 182,
PropertyAccessExpression = 183,
ElementAccessExpression = 184,
CallExpression = 185,
NewExpression = 186,
TaggedTemplateExpression = 187,
TypeAssertionExpression = 188,
ParenthesizedExpression = 189,
FunctionExpression = 190,
ArrowFunction = 191,
DeleteExpression = 192,
TypeOfExpression = 193,
VoidExpression = 194,
AwaitExpression = 195,
PrefixUnaryExpression = 196,
PostfixUnaryExpression = 197,
BinaryExpression = 198,
ConditionalExpression = 199,
TemplateExpression = 200,
YieldExpression = 201,
SpreadElement = 202,
ClassExpression = 203,
OmittedExpression = 204,
ExpressionWithTypeArguments = 205,
AsExpression = 206,
NonNullExpression = 207,
MetaProperty = 208,
TemplateSpan = 209,
SemicolonClassElement = 210,
Block = 211,
VariableStatement = 212,
EmptyStatement = 213,
ExpressionStatement = 214,
IfStatement = 215,
DoStatement = 216,
WhileStatement = 217,
ForStatement = 218,
ForInStatement = 219,
ForOfStatement = 220,
ContinueStatement = 221,
BreakStatement = 222,
ReturnStatement = 223,
WithStatement = 224,
SwitchStatement = 225,
LabeledStatement = 226,
ThrowStatement = 227,
TryStatement = 228,
DebuggerStatement = 229,
VariableDeclaration = 230,
VariableDeclarationList = 231,
FunctionDeclaration = 232,
ClassDeclaration = 233,
InterfaceDeclaration = 234,
TypeAliasDeclaration = 235,
EnumDeclaration = 236,
ModuleDeclaration = 237,
ModuleBlock = 238,
CaseBlock = 239,
NamespaceExportDeclaration = 240,
ImportEqualsDeclaration = 241,
ImportDeclaration = 242,
ImportClause = 243,
NamespaceImport = 244,
NamedImports = 245,
ImportSpecifier = 246,
ExportAssignment = 247,
ExportDeclaration = 248,
NamedExports = 249,
ExportSpecifier = 250,
MissingDeclaration = 251,
ExternalModuleReference = 252,
JsxElement = 253,
JsxSelfClosingElement = 254,
JsxOpeningElement = 255,
JsxClosingElement = 256,
JsxFragment = 257,
JsxOpeningFragment = 258,
JsxClosingFragment = 259,
JsxAttribute = 260,
JsxAttributes = 261,
JsxSpreadAttribute = 262,
JsxExpression = 263,
CaseClause = 264,
DefaultClause = 265,
HeritageClause = 266,
CatchClause = 267,
PropertyAssignment = 268,
ShorthandPropertyAssignment = 269,
SpreadAssignment = 270,
EnumMember = 271,
SourceFile = 272,
Bundle = 273,
JSDocTypeExpression = 274,
JSDocAllType = 275,
JSDocUnknownType = 276,
JSDocNullableType = 277,
JSDocNonNullableType = 278,
JSDocOptionalType = 279,
JSDocFunctionType = 280,
JSDocVariadicType = 281,
JSDocComment = 282,
JSDocTypeLiteral = 283,
JSDocTag = 284,
JSDocAugmentsTag = 285,
JSDocClassTag = 286,
JSDocParameterTag = 287,
JSDocReturnTag = 288,
JSDocTypeTag = 289,
JSDocTemplateTag = 290,
JSDocTypedefTag = 291,
JSDocPropertyTag = 292,
SyntaxList = 293,
NotEmittedStatement = 294,
PartiallyEmittedExpression = 295,
CommaListExpression = 296,
MergeDeclarationMarker = 297,
EndOfDeclarationMarker = 298,
Count = 299,
FirstAssignment = 58,
LastAssignment = 70,
FirstCompoundAssignment = 59,
@@ -366,15 +368,15 @@ declare namespace ts {
FirstReservedWord = 72,
LastReservedWord = 107,
FirstKeyword = 72,
LastKeyword = 143,
LastKeyword = 144,
FirstFutureReservedWord = 108,
LastFutureReservedWord = 116,
FirstTypeNode = 159,
LastTypeNode = 175,
FirstTypeNode = 160,
LastTypeNode = 177,
FirstPunctuation = 17,
LastPunctuation = 70,
FirstToken = 0,
LastToken = 143,
LastToken = 144,
FirstTriviaToken = 2,
LastTriviaToken = 7,
FirstLiteralToken = 8,
@@ -383,11 +385,11 @@ declare namespace ts {
LastTemplateToken = 16,
FirstBinaryOperator = 27,
LastBinaryOperator = 70,
FirstNode = 144,
FirstJSDocNode = 272,
LastJSDocNode = 290,
FirstJSDocTagNode = 282,
LastJSDocTagNode = 290,
FirstNode = 145,
FirstJSDocNode = 274,
LastJSDocNode = 292,
FirstJSDocTagNode = 284,
LastJSDocTagNode = 292,
}
enum NodeFlags {
None = 0,
@@ -518,7 +520,7 @@ declare namespace ts {
}
interface TypeParameterDeclaration extends NamedDeclaration {
kind: SyntaxKind.TypeParameter;
parent?: DeclarationWithTypeParameters;
parent?: DeclarationWithTypeParameters | InferTypeNode;
name: Identifier;
constraint?: TypeNode;
default?: TypeNode;
@@ -742,6 +744,10 @@ declare namespace ts {
trueType: TypeNode;
falseType: TypeNode;
}
interface InferTypeNode extends TypeNode {
kind: SyntaxKind.InferType;
typeParameter: TypeParameterDeclaration;
}
interface ParenthesizedTypeNode extends TypeNode {
kind: SyntaxKind.ParenthesizedType;
type: TypeNode;
@@ -2205,6 +2211,7 @@ declare namespace ts {
NakedTypeVariable = 1,
MappedType = 2,
ReturnType = 4,
NoConstraints = 8,
}
interface InferenceInfo {
typeParameter: TypeParameter;
@@ -3130,6 +3137,7 @@ declare namespace ts {
function isUnionTypeNode(node: Node): node is UnionTypeNode;
function isIntersectionTypeNode(node: Node): node is IntersectionTypeNode;
function isConditionalTypeNode(node: Node): node is ConditionalTypeNode;
function isInferTypeNode(node: Node): node is InferTypeNode;
function isParenthesizedTypeNode(node: Node): node is ParenthesizedTypeNode;
function isThisTypeNode(node: Node): node is ThisTypeNode;
function isTypeOperatorNode(node: Node): node is TypeOperatorNode;
@@ -3443,6 +3451,8 @@ declare namespace ts {
function createUnionOrIntersectionTypeNode(kind: SyntaxKind.UnionType | SyntaxKind.IntersectionType, types: ReadonlyArray<TypeNode>): UnionOrIntersectionTypeNode;
function createConditionalTypeNode(checkType: TypeNode, extendsType: TypeNode, trueType: TypeNode, falseType: TypeNode): ConditionalTypeNode;
function updateConditionalTypeNode(node: ConditionalTypeNode, checkType: TypeNode, extendsType: TypeNode, trueType: TypeNode, falseType: TypeNode): ConditionalTypeNode;
function createInferTypeNode(typeParameter: TypeParameterDeclaration): InferTypeNode;
function updateInferTypeNode(node: InferTypeNode, typeParameter: TypeParameterDeclaration): InferTypeNode;
function createParenthesizedType(type: TypeNode): ParenthesizedTypeNode;
function updateParenthesizedType(node: ParenthesizedTypeNode, type: TypeNode): ParenthesizedTypeNode;
function createThisTypeNode(): ThisTypeNode;