Accept new API baselines

This commit is contained in:
Anders Hejlsberg
2019-08-03 08:55:55 -07:00
parent 1f5bb970d9
commit fe70a62ef1
2 changed files with 480 additions and 450 deletions

View File

@@ -73,7 +73,7 @@ declare namespace ts {
end: number;
}
export type JSDocSyntaxKind = SyntaxKind.EndOfFileToken | SyntaxKind.WhitespaceTrivia | SyntaxKind.AtToken | SyntaxKind.NewLineTrivia | SyntaxKind.AsteriskToken | SyntaxKind.OpenBraceToken | SyntaxKind.CloseBraceToken | SyntaxKind.LessThanToken | SyntaxKind.GreaterThanToken | SyntaxKind.OpenBracketToken | SyntaxKind.CloseBracketToken | SyntaxKind.EqualsToken | SyntaxKind.CommaToken | SyntaxKind.DotToken | SyntaxKind.Identifier | SyntaxKind.BacktickToken | SyntaxKind.Unknown | KeywordSyntaxKind;
export type KeywordSyntaxKind = SyntaxKind.AbstractKeyword | SyntaxKind.AnyKeyword | SyntaxKind.AsKeyword | SyntaxKind.BigIntKeyword | SyntaxKind.BooleanKeyword | SyntaxKind.BreakKeyword | SyntaxKind.CaseKeyword | SyntaxKind.CatchKeyword | SyntaxKind.ClassKeyword | SyntaxKind.ContinueKeyword | SyntaxKind.ConstKeyword | SyntaxKind.ConstructorKeyword | SyntaxKind.DebuggerKeyword | SyntaxKind.DeclareKeyword | SyntaxKind.DefaultKeyword | SyntaxKind.DeleteKeyword | SyntaxKind.DoKeyword | SyntaxKind.ElseKeyword | SyntaxKind.EnumKeyword | SyntaxKind.ExportKeyword | SyntaxKind.ExtendsKeyword | SyntaxKind.FalseKeyword | SyntaxKind.FinallyKeyword | SyntaxKind.ForKeyword | SyntaxKind.FromKeyword | SyntaxKind.FunctionKeyword | SyntaxKind.GetKeyword | SyntaxKind.IfKeyword | SyntaxKind.ImplementsKeyword | SyntaxKind.ImportKeyword | SyntaxKind.InKeyword | SyntaxKind.InferKeyword | SyntaxKind.InstanceOfKeyword | SyntaxKind.InterfaceKeyword | SyntaxKind.IsKeyword | SyntaxKind.KeyOfKeyword | SyntaxKind.LetKeyword | SyntaxKind.ModuleKeyword | SyntaxKind.NamespaceKeyword | SyntaxKind.NeverKeyword | SyntaxKind.NewKeyword | SyntaxKind.NullKeyword | SyntaxKind.NumberKeyword | SyntaxKind.ObjectKeyword | SyntaxKind.PackageKeyword | SyntaxKind.PrivateKeyword | SyntaxKind.ProtectedKeyword | SyntaxKind.PublicKeyword | SyntaxKind.ReadonlyKeyword | SyntaxKind.RequireKeyword | SyntaxKind.GlobalKeyword | SyntaxKind.ReturnKeyword | SyntaxKind.SetKeyword | SyntaxKind.StaticKeyword | SyntaxKind.StringKeyword | SyntaxKind.SuperKeyword | SyntaxKind.SwitchKeyword | SyntaxKind.SymbolKeyword | SyntaxKind.ThisKeyword | SyntaxKind.ThrowKeyword | SyntaxKind.TrueKeyword | SyntaxKind.TryKeyword | SyntaxKind.TypeKeyword | SyntaxKind.TypeOfKeyword | SyntaxKind.UndefinedKeyword | SyntaxKind.UniqueKeyword | SyntaxKind.UnknownKeyword | SyntaxKind.VarKeyword | SyntaxKind.VoidKeyword | SyntaxKind.WhileKeyword | SyntaxKind.WithKeyword | SyntaxKind.YieldKeyword | SyntaxKind.AsyncKeyword | SyntaxKind.AwaitKeyword | SyntaxKind.OfKeyword;
export type KeywordSyntaxKind = SyntaxKind.AbstractKeyword | SyntaxKind.AnyKeyword | SyntaxKind.AsKeyword | SyntaxKind.AssertsKeyword | SyntaxKind.BigIntKeyword | SyntaxKind.BooleanKeyword | SyntaxKind.BreakKeyword | SyntaxKind.CaseKeyword | SyntaxKind.CatchKeyword | SyntaxKind.ClassKeyword | SyntaxKind.ContinueKeyword | SyntaxKind.ConstKeyword | SyntaxKind.ConstructorKeyword | SyntaxKind.DebuggerKeyword | SyntaxKind.DeclareKeyword | SyntaxKind.DefaultKeyword | SyntaxKind.DeleteKeyword | SyntaxKind.DoKeyword | SyntaxKind.ElseKeyword | SyntaxKind.EnumKeyword | SyntaxKind.ExportKeyword | SyntaxKind.ExtendsKeyword | SyntaxKind.FalseKeyword | SyntaxKind.FinallyKeyword | SyntaxKind.ForKeyword | SyntaxKind.FromKeyword | SyntaxKind.FunctionKeyword | SyntaxKind.GetKeyword | SyntaxKind.IfKeyword | SyntaxKind.ImplementsKeyword | SyntaxKind.ImportKeyword | SyntaxKind.InKeyword | SyntaxKind.InferKeyword | SyntaxKind.InstanceOfKeyword | SyntaxKind.InterfaceKeyword | SyntaxKind.IsKeyword | SyntaxKind.KeyOfKeyword | SyntaxKind.LetKeyword | SyntaxKind.ModuleKeyword | SyntaxKind.NamespaceKeyword | SyntaxKind.NeverKeyword | SyntaxKind.NewKeyword | SyntaxKind.NullKeyword | SyntaxKind.NumberKeyword | SyntaxKind.ObjectKeyword | SyntaxKind.PackageKeyword | SyntaxKind.PrivateKeyword | SyntaxKind.ProtectedKeyword | SyntaxKind.PublicKeyword | SyntaxKind.ReadonlyKeyword | SyntaxKind.RequireKeyword | SyntaxKind.GlobalKeyword | SyntaxKind.ReturnKeyword | SyntaxKind.SetKeyword | SyntaxKind.StaticKeyword | SyntaxKind.StringKeyword | SyntaxKind.SuperKeyword | SyntaxKind.SwitchKeyword | SyntaxKind.SymbolKeyword | SyntaxKind.ThisKeyword | SyntaxKind.ThrowKeyword | SyntaxKind.TrueKeyword | SyntaxKind.TryKeyword | SyntaxKind.TypeKeyword | SyntaxKind.TypeOfKeyword | SyntaxKind.UndefinedKeyword | SyntaxKind.UniqueKeyword | SyntaxKind.UnknownKeyword | SyntaxKind.VarKeyword | SyntaxKind.VoidKeyword | SyntaxKind.WhileKeyword | SyntaxKind.WithKeyword | SyntaxKind.YieldKeyword | SyntaxKind.AsyncKeyword | SyntaxKind.AwaitKeyword | SyntaxKind.OfKeyword;
export type JsxTokenSyntaxKind = SyntaxKind.LessThanSlashToken | SyntaxKind.EndOfFileToken | SyntaxKind.ConflictMarkerTrivia | SyntaxKind.JsxText | SyntaxKind.JsxTextAllWhiteSpaces | SyntaxKind.OpenBraceToken | SyntaxKind.LessThanToken;
export enum SyntaxKind {
Unknown = 0,
@@ -198,205 +198,206 @@ declare namespace ts {
YieldKeyword = 118,
AbstractKeyword = 119,
AsKeyword = 120,
AnyKeyword = 121,
AsyncKeyword = 122,
AwaitKeyword = 123,
BooleanKeyword = 124,
ConstructorKeyword = 125,
DeclareKeyword = 126,
GetKeyword = 127,
InferKeyword = 128,
IsKeyword = 129,
KeyOfKeyword = 130,
ModuleKeyword = 131,
NamespaceKeyword = 132,
NeverKeyword = 133,
ReadonlyKeyword = 134,
RequireKeyword = 135,
NumberKeyword = 136,
ObjectKeyword = 137,
SetKeyword = 138,
StringKeyword = 139,
SymbolKeyword = 140,
TypeKeyword = 141,
UndefinedKeyword = 142,
UniqueKeyword = 143,
UnknownKeyword = 144,
FromKeyword = 145,
GlobalKeyword = 146,
BigIntKeyword = 147,
OfKeyword = 148,
QualifiedName = 149,
ComputedPropertyName = 150,
TypeParameter = 151,
Parameter = 152,
Decorator = 153,
PropertySignature = 154,
PropertyDeclaration = 155,
MethodSignature = 156,
MethodDeclaration = 157,
Constructor = 158,
GetAccessor = 159,
SetAccessor = 160,
CallSignature = 161,
ConstructSignature = 162,
IndexSignature = 163,
TypePredicate = 164,
TypeReference = 165,
FunctionType = 166,
ConstructorType = 167,
TypeQuery = 168,
TypeLiteral = 169,
ArrayType = 170,
TupleType = 171,
OptionalType = 172,
RestType = 173,
UnionType = 174,
IntersectionType = 175,
ConditionalType = 176,
InferType = 177,
ParenthesizedType = 178,
ThisType = 179,
TypeOperator = 180,
IndexedAccessType = 181,
MappedType = 182,
LiteralType = 183,
ImportType = 184,
ObjectBindingPattern = 185,
ArrayBindingPattern = 186,
BindingElement = 187,
ArrayLiteralExpression = 188,
ObjectLiteralExpression = 189,
PropertyAccessExpression = 190,
ElementAccessExpression = 191,
CallExpression = 192,
NewExpression = 193,
TaggedTemplateExpression = 194,
TypeAssertionExpression = 195,
ParenthesizedExpression = 196,
FunctionExpression = 197,
ArrowFunction = 198,
DeleteExpression = 199,
TypeOfExpression = 200,
VoidExpression = 201,
AwaitExpression = 202,
PrefixUnaryExpression = 203,
PostfixUnaryExpression = 204,
BinaryExpression = 205,
ConditionalExpression = 206,
TemplateExpression = 207,
YieldExpression = 208,
SpreadElement = 209,
ClassExpression = 210,
OmittedExpression = 211,
ExpressionWithTypeArguments = 212,
AsExpression = 213,
NonNullExpression = 214,
MetaProperty = 215,
SyntheticExpression = 216,
TemplateSpan = 217,
SemicolonClassElement = 218,
Block = 219,
VariableStatement = 220,
EmptyStatement = 221,
ExpressionStatement = 222,
IfStatement = 223,
DoStatement = 224,
WhileStatement = 225,
ForStatement = 226,
ForInStatement = 227,
ForOfStatement = 228,
ContinueStatement = 229,
BreakStatement = 230,
ReturnStatement = 231,
WithStatement = 232,
SwitchStatement = 233,
LabeledStatement = 234,
ThrowStatement = 235,
TryStatement = 236,
DebuggerStatement = 237,
VariableDeclaration = 238,
VariableDeclarationList = 239,
FunctionDeclaration = 240,
ClassDeclaration = 241,
InterfaceDeclaration = 242,
TypeAliasDeclaration = 243,
EnumDeclaration = 244,
ModuleDeclaration = 245,
ModuleBlock = 246,
CaseBlock = 247,
NamespaceExportDeclaration = 248,
ImportEqualsDeclaration = 249,
ImportDeclaration = 250,
ImportClause = 251,
NamespaceImport = 252,
NamedImports = 253,
ImportSpecifier = 254,
ExportAssignment = 255,
ExportDeclaration = 256,
NamedExports = 257,
ExportSpecifier = 258,
MissingDeclaration = 259,
ExternalModuleReference = 260,
JsxElement = 261,
JsxSelfClosingElement = 262,
JsxOpeningElement = 263,
JsxClosingElement = 264,
JsxFragment = 265,
JsxOpeningFragment = 266,
JsxClosingFragment = 267,
JsxAttribute = 268,
JsxAttributes = 269,
JsxSpreadAttribute = 270,
JsxExpression = 271,
CaseClause = 272,
DefaultClause = 273,
HeritageClause = 274,
CatchClause = 275,
PropertyAssignment = 276,
ShorthandPropertyAssignment = 277,
SpreadAssignment = 278,
EnumMember = 279,
UnparsedPrologue = 280,
UnparsedPrepend = 281,
UnparsedText = 282,
UnparsedInternalText = 283,
UnparsedSyntheticReference = 284,
SourceFile = 285,
Bundle = 286,
UnparsedSource = 287,
InputFiles = 288,
JSDocTypeExpression = 289,
JSDocAllType = 290,
JSDocUnknownType = 291,
JSDocNullableType = 292,
JSDocNonNullableType = 293,
JSDocOptionalType = 294,
JSDocFunctionType = 295,
JSDocVariadicType = 296,
JSDocComment = 297,
JSDocTypeLiteral = 298,
JSDocSignature = 299,
JSDocTag = 300,
JSDocAugmentsTag = 301,
JSDocAuthorTag = 302,
JSDocClassTag = 303,
JSDocCallbackTag = 304,
JSDocEnumTag = 305,
JSDocParameterTag = 306,
JSDocReturnTag = 307,
JSDocThisTag = 308,
JSDocTypeTag = 309,
JSDocTemplateTag = 310,
JSDocTypedefTag = 311,
JSDocPropertyTag = 312,
SyntaxList = 313,
NotEmittedStatement = 314,
PartiallyEmittedExpression = 315,
CommaListExpression = 316,
MergeDeclarationMarker = 317,
EndOfDeclarationMarker = 318,
Count = 319,
AssertsKeyword = 121,
AnyKeyword = 122,
AsyncKeyword = 123,
AwaitKeyword = 124,
BooleanKeyword = 125,
ConstructorKeyword = 126,
DeclareKeyword = 127,
GetKeyword = 128,
InferKeyword = 129,
IsKeyword = 130,
KeyOfKeyword = 131,
ModuleKeyword = 132,
NamespaceKeyword = 133,
NeverKeyword = 134,
ReadonlyKeyword = 135,
RequireKeyword = 136,
NumberKeyword = 137,
ObjectKeyword = 138,
SetKeyword = 139,
StringKeyword = 140,
SymbolKeyword = 141,
TypeKeyword = 142,
UndefinedKeyword = 143,
UniqueKeyword = 144,
UnknownKeyword = 145,
FromKeyword = 146,
GlobalKeyword = 147,
BigIntKeyword = 148,
OfKeyword = 149,
QualifiedName = 150,
ComputedPropertyName = 151,
TypeParameter = 152,
Parameter = 153,
Decorator = 154,
PropertySignature = 155,
PropertyDeclaration = 156,
MethodSignature = 157,
MethodDeclaration = 158,
Constructor = 159,
GetAccessor = 160,
SetAccessor = 161,
CallSignature = 162,
ConstructSignature = 163,
IndexSignature = 164,
TypePredicate = 165,
TypeReference = 166,
FunctionType = 167,
ConstructorType = 168,
TypeQuery = 169,
TypeLiteral = 170,
ArrayType = 171,
TupleType = 172,
OptionalType = 173,
RestType = 174,
UnionType = 175,
IntersectionType = 176,
ConditionalType = 177,
InferType = 178,
ParenthesizedType = 179,
ThisType = 180,
TypeOperator = 181,
IndexedAccessType = 182,
MappedType = 183,
LiteralType = 184,
ImportType = 185,
ObjectBindingPattern = 186,
ArrayBindingPattern = 187,
BindingElement = 188,
ArrayLiteralExpression = 189,
ObjectLiteralExpression = 190,
PropertyAccessExpression = 191,
ElementAccessExpression = 192,
CallExpression = 193,
NewExpression = 194,
TaggedTemplateExpression = 195,
TypeAssertionExpression = 196,
ParenthesizedExpression = 197,
FunctionExpression = 198,
ArrowFunction = 199,
DeleteExpression = 200,
TypeOfExpression = 201,
VoidExpression = 202,
AwaitExpression = 203,
PrefixUnaryExpression = 204,
PostfixUnaryExpression = 205,
BinaryExpression = 206,
ConditionalExpression = 207,
TemplateExpression = 208,
YieldExpression = 209,
SpreadElement = 210,
ClassExpression = 211,
OmittedExpression = 212,
ExpressionWithTypeArguments = 213,
AsExpression = 214,
NonNullExpression = 215,
MetaProperty = 216,
SyntheticExpression = 217,
TemplateSpan = 218,
SemicolonClassElement = 219,
Block = 220,
VariableStatement = 221,
EmptyStatement = 222,
ExpressionStatement = 223,
IfStatement = 224,
DoStatement = 225,
WhileStatement = 226,
ForStatement = 227,
ForInStatement = 228,
ForOfStatement = 229,
ContinueStatement = 230,
BreakStatement = 231,
ReturnStatement = 232,
WithStatement = 233,
SwitchStatement = 234,
LabeledStatement = 235,
ThrowStatement = 236,
TryStatement = 237,
DebuggerStatement = 238,
VariableDeclaration = 239,
VariableDeclarationList = 240,
FunctionDeclaration = 241,
ClassDeclaration = 242,
InterfaceDeclaration = 243,
TypeAliasDeclaration = 244,
EnumDeclaration = 245,
ModuleDeclaration = 246,
ModuleBlock = 247,
CaseBlock = 248,
NamespaceExportDeclaration = 249,
ImportEqualsDeclaration = 250,
ImportDeclaration = 251,
ImportClause = 252,
NamespaceImport = 253,
NamedImports = 254,
ImportSpecifier = 255,
ExportAssignment = 256,
ExportDeclaration = 257,
NamedExports = 258,
ExportSpecifier = 259,
MissingDeclaration = 260,
ExternalModuleReference = 261,
JsxElement = 262,
JsxSelfClosingElement = 263,
JsxOpeningElement = 264,
JsxClosingElement = 265,
JsxFragment = 266,
JsxOpeningFragment = 267,
JsxClosingFragment = 268,
JsxAttribute = 269,
JsxAttributes = 270,
JsxSpreadAttribute = 271,
JsxExpression = 272,
CaseClause = 273,
DefaultClause = 274,
HeritageClause = 275,
CatchClause = 276,
PropertyAssignment = 277,
ShorthandPropertyAssignment = 278,
SpreadAssignment = 279,
EnumMember = 280,
UnparsedPrologue = 281,
UnparsedPrepend = 282,
UnparsedText = 283,
UnparsedInternalText = 284,
UnparsedSyntheticReference = 285,
SourceFile = 286,
Bundle = 287,
UnparsedSource = 288,
InputFiles = 289,
JSDocTypeExpression = 290,
JSDocAllType = 291,
JSDocUnknownType = 292,
JSDocNullableType = 293,
JSDocNonNullableType = 294,
JSDocOptionalType = 295,
JSDocFunctionType = 296,
JSDocVariadicType = 297,
JSDocComment = 298,
JSDocTypeLiteral = 299,
JSDocSignature = 300,
JSDocTag = 301,
JSDocAugmentsTag = 302,
JSDocAuthorTag = 303,
JSDocClassTag = 304,
JSDocCallbackTag = 305,
JSDocEnumTag = 306,
JSDocParameterTag = 307,
JSDocReturnTag = 308,
JSDocThisTag = 309,
JSDocTypeTag = 310,
JSDocTemplateTag = 311,
JSDocTypedefTag = 312,
JSDocPropertyTag = 313,
SyntaxList = 314,
NotEmittedStatement = 315,
PartiallyEmittedExpression = 316,
CommaListExpression = 317,
MergeDeclarationMarker = 318,
EndOfDeclarationMarker = 319,
Count = 320,
FirstAssignment = 60,
LastAssignment = 72,
FirstCompoundAssignment = 61,
@@ -404,15 +405,15 @@ declare namespace ts {
FirstReservedWord = 74,
LastReservedWord = 109,
FirstKeyword = 74,
LastKeyword = 148,
LastKeyword = 149,
FirstFutureReservedWord = 110,
LastFutureReservedWord = 118,
FirstTypeNode = 164,
LastTypeNode = 184,
FirstTypeNode = 165,
LastTypeNode = 185,
FirstPunctuation = 18,
LastPunctuation = 72,
FirstToken = 0,
LastToken = 148,
LastToken = 149,
FirstTriviaToken = 2,
LastTriviaToken = 7,
FirstLiteralToken = 8,
@@ -421,11 +422,11 @@ declare namespace ts {
LastTemplateToken = 17,
FirstBinaryOperator = 28,
LastBinaryOperator = 72,
FirstNode = 149,
FirstJSDocNode = 289,
LastJSDocNode = 312,
FirstJSDocTagNode = 300,
LastJSDocTagNode = 312,
FirstNode = 150,
FirstJSDocNode = 290,
LastJSDocNode = 313,
FirstJSDocTagNode = 301,
LastJSDocTagNode = 313,
}
export enum NodeFlags {
None = 0,
@@ -516,6 +517,7 @@ declare namespace ts {
export type AwaitKeywordToken = Token<SyntaxKind.AwaitKeyword>;
export type PlusToken = Token<SyntaxKind.PlusToken>;
export type MinusToken = Token<SyntaxKind.MinusToken>;
export type AssertsToken = Token<SyntaxKind.AssertsKeyword>;
export type Modifier = Token<SyntaxKind.AbstractKeyword> | Token<SyntaxKind.AsyncKeyword> | Token<SyntaxKind.ConstKeyword> | Token<SyntaxKind.DeclareKeyword> | Token<SyntaxKind.DefaultKeyword> | Token<SyntaxKind.ExportKeyword> | Token<SyntaxKind.PublicKeyword> | Token<SyntaxKind.PrivateKeyword> | Token<SyntaxKind.ProtectedKeyword> | Token<SyntaxKind.ReadonlyKeyword> | Token<SyntaxKind.StaticKeyword>;
export type ModifiersArray = NodeArray<Modifier>;
export interface Identifier extends PrimaryExpression, Declaration {
@@ -769,8 +771,9 @@ declare namespace ts {
export interface TypePredicateNode extends TypeNode {
kind: SyntaxKind.TypePredicate;
parent: SignatureDeclaration | JSDocTypeExpression;
assertsModifier?: AssertsToken;
parameterName: Identifier | ThisTypeNode;
type: TypeNode;
type?: TypeNode;
}
export interface TypeQueryNode extends TypeNode {
kind: SyntaxKind.TypeQuery;
@@ -1661,10 +1664,11 @@ declare namespace ts {
FalseCondition = 64,
SwitchClause = 128,
ArrayMutation = 256,
Referenced = 512,
Shared = 1024,
PreFinally = 2048,
AfterFinally = 4096,
Call = 512,
Referenced = 1024,
Shared = 2048,
PreFinally = 4096,
AfterFinally = 8192,
Label = 12,
Condition = 96
}
@@ -1678,7 +1682,7 @@ declare namespace ts {
antecedent: FlowNode;
lock: FlowLock;
}
export type FlowNode = AfterFinallyFlow | PreFinallyFlow | FlowStart | FlowLabel | FlowAssignment | FlowCondition | FlowSwitchClause | FlowArrayMutation;
export type FlowNode = AfterFinallyFlow | PreFinallyFlow | FlowStart | FlowLabel | FlowAssignment | FlowCall | FlowCondition | FlowSwitchClause | FlowArrayMutation;
export interface FlowNodeBase {
flags: FlowFlags;
id?: number;
@@ -1693,6 +1697,10 @@ declare namespace ts {
node: Expression | VariableDeclaration | BindingElement;
antecedent: FlowNode;
}
export interface FlowCall extends FlowNodeBase {
node: CallExpression;
antecedent: FlowNode;
}
export interface FlowCondition extends FlowNodeBase {
expression: Expression;
antecedent: FlowNode;
@@ -2080,21 +2088,28 @@ declare namespace ts {
}
export enum TypePredicateKind {
This = 0,
Identifier = 1
Identifier = 1,
Assertion = 2
}
export interface TypePredicateBase {
kind: TypePredicateKind;
export interface ThisTypePredicate {
kind: TypePredicateKind.This;
parameterName: undefined;
parameterIndex: undefined;
type: Type;
}
export interface ThisTypePredicate extends TypePredicateBase {
kind: TypePredicateKind.This;
}
export interface IdentifierTypePredicate extends TypePredicateBase {
export interface IdentifierTypePredicate {
kind: TypePredicateKind.Identifier;
parameterName: string;
parameterIndex: number;
type: Type;
}
export type TypePredicate = IdentifierTypePredicate | ThisTypePredicate;
export interface AssertionTypePredicate {
kind: TypePredicateKind.Assertion;
parameterName: string;
parameterIndex: number;
type: Type | undefined;
}
export type TypePredicate = ThisTypePredicate | IdentifierTypePredicate | AssertionTypePredicate;
export enum SymbolFlags {
None = 0,
FunctionScopedVariable = 1,
@@ -3823,8 +3838,8 @@ declare namespace ts {
function createIndexSignature(decorators: ReadonlyArray<Decorator> | undefined, modifiers: ReadonlyArray<Modifier> | undefined, parameters: ReadonlyArray<ParameterDeclaration>, type: TypeNode): IndexSignatureDeclaration;
function updateIndexSignature(node: IndexSignatureDeclaration, decorators: ReadonlyArray<Decorator> | undefined, modifiers: ReadonlyArray<Modifier> | undefined, parameters: ReadonlyArray<ParameterDeclaration>, type: TypeNode): IndexSignatureDeclaration;
function createKeywordTypeNode(kind: KeywordTypeNode["kind"]): KeywordTypeNode;
function createTypePredicateNode(parameterName: Identifier | ThisTypeNode | string, type: TypeNode): TypePredicateNode;
function updateTypePredicateNode(node: TypePredicateNode, parameterName: Identifier | ThisTypeNode, type: TypeNode): TypePredicateNode;
function createTypePredicateNode(assertsModifier: AssertsToken | undefined, parameterName: Identifier | ThisTypeNode | string, type: TypeNode | undefined): TypePredicateNode;
function updateTypePredicateNode(node: TypePredicateNode, assertsModifier: AssertsToken | undefined, parameterName: Identifier | ThisTypeNode, type: TypeNode | undefined): TypePredicateNode;
function createTypeReferenceNode(typeName: string | EntityName, typeArguments: ReadonlyArray<TypeNode> | undefined): TypeReferenceNode;
function updateTypeReferenceNode(node: TypeReferenceNode, typeName: EntityName, typeArguments: NodeArray<TypeNode> | undefined): TypeReferenceNode;
function createFunctionTypeNode(typeParameters: ReadonlyArray<TypeParameterDeclaration> | undefined, parameters: ReadonlyArray<ParameterDeclaration>, type: TypeNode | undefined): FunctionTypeNode;

View File

@@ -73,7 +73,7 @@ declare namespace ts {
end: number;
}
export type JSDocSyntaxKind = SyntaxKind.EndOfFileToken | SyntaxKind.WhitespaceTrivia | SyntaxKind.AtToken | SyntaxKind.NewLineTrivia | SyntaxKind.AsteriskToken | SyntaxKind.OpenBraceToken | SyntaxKind.CloseBraceToken | SyntaxKind.LessThanToken | SyntaxKind.GreaterThanToken | SyntaxKind.OpenBracketToken | SyntaxKind.CloseBracketToken | SyntaxKind.EqualsToken | SyntaxKind.CommaToken | SyntaxKind.DotToken | SyntaxKind.Identifier | SyntaxKind.BacktickToken | SyntaxKind.Unknown | KeywordSyntaxKind;
export type KeywordSyntaxKind = SyntaxKind.AbstractKeyword | SyntaxKind.AnyKeyword | SyntaxKind.AsKeyword | SyntaxKind.BigIntKeyword | SyntaxKind.BooleanKeyword | SyntaxKind.BreakKeyword | SyntaxKind.CaseKeyword | SyntaxKind.CatchKeyword | SyntaxKind.ClassKeyword | SyntaxKind.ContinueKeyword | SyntaxKind.ConstKeyword | SyntaxKind.ConstructorKeyword | SyntaxKind.DebuggerKeyword | SyntaxKind.DeclareKeyword | SyntaxKind.DefaultKeyword | SyntaxKind.DeleteKeyword | SyntaxKind.DoKeyword | SyntaxKind.ElseKeyword | SyntaxKind.EnumKeyword | SyntaxKind.ExportKeyword | SyntaxKind.ExtendsKeyword | SyntaxKind.FalseKeyword | SyntaxKind.FinallyKeyword | SyntaxKind.ForKeyword | SyntaxKind.FromKeyword | SyntaxKind.FunctionKeyword | SyntaxKind.GetKeyword | SyntaxKind.IfKeyword | SyntaxKind.ImplementsKeyword | SyntaxKind.ImportKeyword | SyntaxKind.InKeyword | SyntaxKind.InferKeyword | SyntaxKind.InstanceOfKeyword | SyntaxKind.InterfaceKeyword | SyntaxKind.IsKeyword | SyntaxKind.KeyOfKeyword | SyntaxKind.LetKeyword | SyntaxKind.ModuleKeyword | SyntaxKind.NamespaceKeyword | SyntaxKind.NeverKeyword | SyntaxKind.NewKeyword | SyntaxKind.NullKeyword | SyntaxKind.NumberKeyword | SyntaxKind.ObjectKeyword | SyntaxKind.PackageKeyword | SyntaxKind.PrivateKeyword | SyntaxKind.ProtectedKeyword | SyntaxKind.PublicKeyword | SyntaxKind.ReadonlyKeyword | SyntaxKind.RequireKeyword | SyntaxKind.GlobalKeyword | SyntaxKind.ReturnKeyword | SyntaxKind.SetKeyword | SyntaxKind.StaticKeyword | SyntaxKind.StringKeyword | SyntaxKind.SuperKeyword | SyntaxKind.SwitchKeyword | SyntaxKind.SymbolKeyword | SyntaxKind.ThisKeyword | SyntaxKind.ThrowKeyword | SyntaxKind.TrueKeyword | SyntaxKind.TryKeyword | SyntaxKind.TypeKeyword | SyntaxKind.TypeOfKeyword | SyntaxKind.UndefinedKeyword | SyntaxKind.UniqueKeyword | SyntaxKind.UnknownKeyword | SyntaxKind.VarKeyword | SyntaxKind.VoidKeyword | SyntaxKind.WhileKeyword | SyntaxKind.WithKeyword | SyntaxKind.YieldKeyword | SyntaxKind.AsyncKeyword | SyntaxKind.AwaitKeyword | SyntaxKind.OfKeyword;
export type KeywordSyntaxKind = SyntaxKind.AbstractKeyword | SyntaxKind.AnyKeyword | SyntaxKind.AsKeyword | SyntaxKind.AssertsKeyword | SyntaxKind.BigIntKeyword | SyntaxKind.BooleanKeyword | SyntaxKind.BreakKeyword | SyntaxKind.CaseKeyword | SyntaxKind.CatchKeyword | SyntaxKind.ClassKeyword | SyntaxKind.ContinueKeyword | SyntaxKind.ConstKeyword | SyntaxKind.ConstructorKeyword | SyntaxKind.DebuggerKeyword | SyntaxKind.DeclareKeyword | SyntaxKind.DefaultKeyword | SyntaxKind.DeleteKeyword | SyntaxKind.DoKeyword | SyntaxKind.ElseKeyword | SyntaxKind.EnumKeyword | SyntaxKind.ExportKeyword | SyntaxKind.ExtendsKeyword | SyntaxKind.FalseKeyword | SyntaxKind.FinallyKeyword | SyntaxKind.ForKeyword | SyntaxKind.FromKeyword | SyntaxKind.FunctionKeyword | SyntaxKind.GetKeyword | SyntaxKind.IfKeyword | SyntaxKind.ImplementsKeyword | SyntaxKind.ImportKeyword | SyntaxKind.InKeyword | SyntaxKind.InferKeyword | SyntaxKind.InstanceOfKeyword | SyntaxKind.InterfaceKeyword | SyntaxKind.IsKeyword | SyntaxKind.KeyOfKeyword | SyntaxKind.LetKeyword | SyntaxKind.ModuleKeyword | SyntaxKind.NamespaceKeyword | SyntaxKind.NeverKeyword | SyntaxKind.NewKeyword | SyntaxKind.NullKeyword | SyntaxKind.NumberKeyword | SyntaxKind.ObjectKeyword | SyntaxKind.PackageKeyword | SyntaxKind.PrivateKeyword | SyntaxKind.ProtectedKeyword | SyntaxKind.PublicKeyword | SyntaxKind.ReadonlyKeyword | SyntaxKind.RequireKeyword | SyntaxKind.GlobalKeyword | SyntaxKind.ReturnKeyword | SyntaxKind.SetKeyword | SyntaxKind.StaticKeyword | SyntaxKind.StringKeyword | SyntaxKind.SuperKeyword | SyntaxKind.SwitchKeyword | SyntaxKind.SymbolKeyword | SyntaxKind.ThisKeyword | SyntaxKind.ThrowKeyword | SyntaxKind.TrueKeyword | SyntaxKind.TryKeyword | SyntaxKind.TypeKeyword | SyntaxKind.TypeOfKeyword | SyntaxKind.UndefinedKeyword | SyntaxKind.UniqueKeyword | SyntaxKind.UnknownKeyword | SyntaxKind.VarKeyword | SyntaxKind.VoidKeyword | SyntaxKind.WhileKeyword | SyntaxKind.WithKeyword | SyntaxKind.YieldKeyword | SyntaxKind.AsyncKeyword | SyntaxKind.AwaitKeyword | SyntaxKind.OfKeyword;
export type JsxTokenSyntaxKind = SyntaxKind.LessThanSlashToken | SyntaxKind.EndOfFileToken | SyntaxKind.ConflictMarkerTrivia | SyntaxKind.JsxText | SyntaxKind.JsxTextAllWhiteSpaces | SyntaxKind.OpenBraceToken | SyntaxKind.LessThanToken;
export enum SyntaxKind {
Unknown = 0,
@@ -198,205 +198,206 @@ declare namespace ts {
YieldKeyword = 118,
AbstractKeyword = 119,
AsKeyword = 120,
AnyKeyword = 121,
AsyncKeyword = 122,
AwaitKeyword = 123,
BooleanKeyword = 124,
ConstructorKeyword = 125,
DeclareKeyword = 126,
GetKeyword = 127,
InferKeyword = 128,
IsKeyword = 129,
KeyOfKeyword = 130,
ModuleKeyword = 131,
NamespaceKeyword = 132,
NeverKeyword = 133,
ReadonlyKeyword = 134,
RequireKeyword = 135,
NumberKeyword = 136,
ObjectKeyword = 137,
SetKeyword = 138,
StringKeyword = 139,
SymbolKeyword = 140,
TypeKeyword = 141,
UndefinedKeyword = 142,
UniqueKeyword = 143,
UnknownKeyword = 144,
FromKeyword = 145,
GlobalKeyword = 146,
BigIntKeyword = 147,
OfKeyword = 148,
QualifiedName = 149,
ComputedPropertyName = 150,
TypeParameter = 151,
Parameter = 152,
Decorator = 153,
PropertySignature = 154,
PropertyDeclaration = 155,
MethodSignature = 156,
MethodDeclaration = 157,
Constructor = 158,
GetAccessor = 159,
SetAccessor = 160,
CallSignature = 161,
ConstructSignature = 162,
IndexSignature = 163,
TypePredicate = 164,
TypeReference = 165,
FunctionType = 166,
ConstructorType = 167,
TypeQuery = 168,
TypeLiteral = 169,
ArrayType = 170,
TupleType = 171,
OptionalType = 172,
RestType = 173,
UnionType = 174,
IntersectionType = 175,
ConditionalType = 176,
InferType = 177,
ParenthesizedType = 178,
ThisType = 179,
TypeOperator = 180,
IndexedAccessType = 181,
MappedType = 182,
LiteralType = 183,
ImportType = 184,
ObjectBindingPattern = 185,
ArrayBindingPattern = 186,
BindingElement = 187,
ArrayLiteralExpression = 188,
ObjectLiteralExpression = 189,
PropertyAccessExpression = 190,
ElementAccessExpression = 191,
CallExpression = 192,
NewExpression = 193,
TaggedTemplateExpression = 194,
TypeAssertionExpression = 195,
ParenthesizedExpression = 196,
FunctionExpression = 197,
ArrowFunction = 198,
DeleteExpression = 199,
TypeOfExpression = 200,
VoidExpression = 201,
AwaitExpression = 202,
PrefixUnaryExpression = 203,
PostfixUnaryExpression = 204,
BinaryExpression = 205,
ConditionalExpression = 206,
TemplateExpression = 207,
YieldExpression = 208,
SpreadElement = 209,
ClassExpression = 210,
OmittedExpression = 211,
ExpressionWithTypeArguments = 212,
AsExpression = 213,
NonNullExpression = 214,
MetaProperty = 215,
SyntheticExpression = 216,
TemplateSpan = 217,
SemicolonClassElement = 218,
Block = 219,
VariableStatement = 220,
EmptyStatement = 221,
ExpressionStatement = 222,
IfStatement = 223,
DoStatement = 224,
WhileStatement = 225,
ForStatement = 226,
ForInStatement = 227,
ForOfStatement = 228,
ContinueStatement = 229,
BreakStatement = 230,
ReturnStatement = 231,
WithStatement = 232,
SwitchStatement = 233,
LabeledStatement = 234,
ThrowStatement = 235,
TryStatement = 236,
DebuggerStatement = 237,
VariableDeclaration = 238,
VariableDeclarationList = 239,
FunctionDeclaration = 240,
ClassDeclaration = 241,
InterfaceDeclaration = 242,
TypeAliasDeclaration = 243,
EnumDeclaration = 244,
ModuleDeclaration = 245,
ModuleBlock = 246,
CaseBlock = 247,
NamespaceExportDeclaration = 248,
ImportEqualsDeclaration = 249,
ImportDeclaration = 250,
ImportClause = 251,
NamespaceImport = 252,
NamedImports = 253,
ImportSpecifier = 254,
ExportAssignment = 255,
ExportDeclaration = 256,
NamedExports = 257,
ExportSpecifier = 258,
MissingDeclaration = 259,
ExternalModuleReference = 260,
JsxElement = 261,
JsxSelfClosingElement = 262,
JsxOpeningElement = 263,
JsxClosingElement = 264,
JsxFragment = 265,
JsxOpeningFragment = 266,
JsxClosingFragment = 267,
JsxAttribute = 268,
JsxAttributes = 269,
JsxSpreadAttribute = 270,
JsxExpression = 271,
CaseClause = 272,
DefaultClause = 273,
HeritageClause = 274,
CatchClause = 275,
PropertyAssignment = 276,
ShorthandPropertyAssignment = 277,
SpreadAssignment = 278,
EnumMember = 279,
UnparsedPrologue = 280,
UnparsedPrepend = 281,
UnparsedText = 282,
UnparsedInternalText = 283,
UnparsedSyntheticReference = 284,
SourceFile = 285,
Bundle = 286,
UnparsedSource = 287,
InputFiles = 288,
JSDocTypeExpression = 289,
JSDocAllType = 290,
JSDocUnknownType = 291,
JSDocNullableType = 292,
JSDocNonNullableType = 293,
JSDocOptionalType = 294,
JSDocFunctionType = 295,
JSDocVariadicType = 296,
JSDocComment = 297,
JSDocTypeLiteral = 298,
JSDocSignature = 299,
JSDocTag = 300,
JSDocAugmentsTag = 301,
JSDocAuthorTag = 302,
JSDocClassTag = 303,
JSDocCallbackTag = 304,
JSDocEnumTag = 305,
JSDocParameterTag = 306,
JSDocReturnTag = 307,
JSDocThisTag = 308,
JSDocTypeTag = 309,
JSDocTemplateTag = 310,
JSDocTypedefTag = 311,
JSDocPropertyTag = 312,
SyntaxList = 313,
NotEmittedStatement = 314,
PartiallyEmittedExpression = 315,
CommaListExpression = 316,
MergeDeclarationMarker = 317,
EndOfDeclarationMarker = 318,
Count = 319,
AssertsKeyword = 121,
AnyKeyword = 122,
AsyncKeyword = 123,
AwaitKeyword = 124,
BooleanKeyword = 125,
ConstructorKeyword = 126,
DeclareKeyword = 127,
GetKeyword = 128,
InferKeyword = 129,
IsKeyword = 130,
KeyOfKeyword = 131,
ModuleKeyword = 132,
NamespaceKeyword = 133,
NeverKeyword = 134,
ReadonlyKeyword = 135,
RequireKeyword = 136,
NumberKeyword = 137,
ObjectKeyword = 138,
SetKeyword = 139,
StringKeyword = 140,
SymbolKeyword = 141,
TypeKeyword = 142,
UndefinedKeyword = 143,
UniqueKeyword = 144,
UnknownKeyword = 145,
FromKeyword = 146,
GlobalKeyword = 147,
BigIntKeyword = 148,
OfKeyword = 149,
QualifiedName = 150,
ComputedPropertyName = 151,
TypeParameter = 152,
Parameter = 153,
Decorator = 154,
PropertySignature = 155,
PropertyDeclaration = 156,
MethodSignature = 157,
MethodDeclaration = 158,
Constructor = 159,
GetAccessor = 160,
SetAccessor = 161,
CallSignature = 162,
ConstructSignature = 163,
IndexSignature = 164,
TypePredicate = 165,
TypeReference = 166,
FunctionType = 167,
ConstructorType = 168,
TypeQuery = 169,
TypeLiteral = 170,
ArrayType = 171,
TupleType = 172,
OptionalType = 173,
RestType = 174,
UnionType = 175,
IntersectionType = 176,
ConditionalType = 177,
InferType = 178,
ParenthesizedType = 179,
ThisType = 180,
TypeOperator = 181,
IndexedAccessType = 182,
MappedType = 183,
LiteralType = 184,
ImportType = 185,
ObjectBindingPattern = 186,
ArrayBindingPattern = 187,
BindingElement = 188,
ArrayLiteralExpression = 189,
ObjectLiteralExpression = 190,
PropertyAccessExpression = 191,
ElementAccessExpression = 192,
CallExpression = 193,
NewExpression = 194,
TaggedTemplateExpression = 195,
TypeAssertionExpression = 196,
ParenthesizedExpression = 197,
FunctionExpression = 198,
ArrowFunction = 199,
DeleteExpression = 200,
TypeOfExpression = 201,
VoidExpression = 202,
AwaitExpression = 203,
PrefixUnaryExpression = 204,
PostfixUnaryExpression = 205,
BinaryExpression = 206,
ConditionalExpression = 207,
TemplateExpression = 208,
YieldExpression = 209,
SpreadElement = 210,
ClassExpression = 211,
OmittedExpression = 212,
ExpressionWithTypeArguments = 213,
AsExpression = 214,
NonNullExpression = 215,
MetaProperty = 216,
SyntheticExpression = 217,
TemplateSpan = 218,
SemicolonClassElement = 219,
Block = 220,
VariableStatement = 221,
EmptyStatement = 222,
ExpressionStatement = 223,
IfStatement = 224,
DoStatement = 225,
WhileStatement = 226,
ForStatement = 227,
ForInStatement = 228,
ForOfStatement = 229,
ContinueStatement = 230,
BreakStatement = 231,
ReturnStatement = 232,
WithStatement = 233,
SwitchStatement = 234,
LabeledStatement = 235,
ThrowStatement = 236,
TryStatement = 237,
DebuggerStatement = 238,
VariableDeclaration = 239,
VariableDeclarationList = 240,
FunctionDeclaration = 241,
ClassDeclaration = 242,
InterfaceDeclaration = 243,
TypeAliasDeclaration = 244,
EnumDeclaration = 245,
ModuleDeclaration = 246,
ModuleBlock = 247,
CaseBlock = 248,
NamespaceExportDeclaration = 249,
ImportEqualsDeclaration = 250,
ImportDeclaration = 251,
ImportClause = 252,
NamespaceImport = 253,
NamedImports = 254,
ImportSpecifier = 255,
ExportAssignment = 256,
ExportDeclaration = 257,
NamedExports = 258,
ExportSpecifier = 259,
MissingDeclaration = 260,
ExternalModuleReference = 261,
JsxElement = 262,
JsxSelfClosingElement = 263,
JsxOpeningElement = 264,
JsxClosingElement = 265,
JsxFragment = 266,
JsxOpeningFragment = 267,
JsxClosingFragment = 268,
JsxAttribute = 269,
JsxAttributes = 270,
JsxSpreadAttribute = 271,
JsxExpression = 272,
CaseClause = 273,
DefaultClause = 274,
HeritageClause = 275,
CatchClause = 276,
PropertyAssignment = 277,
ShorthandPropertyAssignment = 278,
SpreadAssignment = 279,
EnumMember = 280,
UnparsedPrologue = 281,
UnparsedPrepend = 282,
UnparsedText = 283,
UnparsedInternalText = 284,
UnparsedSyntheticReference = 285,
SourceFile = 286,
Bundle = 287,
UnparsedSource = 288,
InputFiles = 289,
JSDocTypeExpression = 290,
JSDocAllType = 291,
JSDocUnknownType = 292,
JSDocNullableType = 293,
JSDocNonNullableType = 294,
JSDocOptionalType = 295,
JSDocFunctionType = 296,
JSDocVariadicType = 297,
JSDocComment = 298,
JSDocTypeLiteral = 299,
JSDocSignature = 300,
JSDocTag = 301,
JSDocAugmentsTag = 302,
JSDocAuthorTag = 303,
JSDocClassTag = 304,
JSDocCallbackTag = 305,
JSDocEnumTag = 306,
JSDocParameterTag = 307,
JSDocReturnTag = 308,
JSDocThisTag = 309,
JSDocTypeTag = 310,
JSDocTemplateTag = 311,
JSDocTypedefTag = 312,
JSDocPropertyTag = 313,
SyntaxList = 314,
NotEmittedStatement = 315,
PartiallyEmittedExpression = 316,
CommaListExpression = 317,
MergeDeclarationMarker = 318,
EndOfDeclarationMarker = 319,
Count = 320,
FirstAssignment = 60,
LastAssignment = 72,
FirstCompoundAssignment = 61,
@@ -404,15 +405,15 @@ declare namespace ts {
FirstReservedWord = 74,
LastReservedWord = 109,
FirstKeyword = 74,
LastKeyword = 148,
LastKeyword = 149,
FirstFutureReservedWord = 110,
LastFutureReservedWord = 118,
FirstTypeNode = 164,
LastTypeNode = 184,
FirstTypeNode = 165,
LastTypeNode = 185,
FirstPunctuation = 18,
LastPunctuation = 72,
FirstToken = 0,
LastToken = 148,
LastToken = 149,
FirstTriviaToken = 2,
LastTriviaToken = 7,
FirstLiteralToken = 8,
@@ -421,11 +422,11 @@ declare namespace ts {
LastTemplateToken = 17,
FirstBinaryOperator = 28,
LastBinaryOperator = 72,
FirstNode = 149,
FirstJSDocNode = 289,
LastJSDocNode = 312,
FirstJSDocTagNode = 300,
LastJSDocTagNode = 312,
FirstNode = 150,
FirstJSDocNode = 290,
LastJSDocNode = 313,
FirstJSDocTagNode = 301,
LastJSDocTagNode = 313,
}
export enum NodeFlags {
None = 0,
@@ -516,6 +517,7 @@ declare namespace ts {
export type AwaitKeywordToken = Token<SyntaxKind.AwaitKeyword>;
export type PlusToken = Token<SyntaxKind.PlusToken>;
export type MinusToken = Token<SyntaxKind.MinusToken>;
export type AssertsToken = Token<SyntaxKind.AssertsKeyword>;
export type Modifier = Token<SyntaxKind.AbstractKeyword> | Token<SyntaxKind.AsyncKeyword> | Token<SyntaxKind.ConstKeyword> | Token<SyntaxKind.DeclareKeyword> | Token<SyntaxKind.DefaultKeyword> | Token<SyntaxKind.ExportKeyword> | Token<SyntaxKind.PublicKeyword> | Token<SyntaxKind.PrivateKeyword> | Token<SyntaxKind.ProtectedKeyword> | Token<SyntaxKind.ReadonlyKeyword> | Token<SyntaxKind.StaticKeyword>;
export type ModifiersArray = NodeArray<Modifier>;
export interface Identifier extends PrimaryExpression, Declaration {
@@ -769,8 +771,9 @@ declare namespace ts {
export interface TypePredicateNode extends TypeNode {
kind: SyntaxKind.TypePredicate;
parent: SignatureDeclaration | JSDocTypeExpression;
assertsModifier?: AssertsToken;
parameterName: Identifier | ThisTypeNode;
type: TypeNode;
type?: TypeNode;
}
export interface TypeQueryNode extends TypeNode {
kind: SyntaxKind.TypeQuery;
@@ -1661,10 +1664,11 @@ declare namespace ts {
FalseCondition = 64,
SwitchClause = 128,
ArrayMutation = 256,
Referenced = 512,
Shared = 1024,
PreFinally = 2048,
AfterFinally = 4096,
Call = 512,
Referenced = 1024,
Shared = 2048,
PreFinally = 4096,
AfterFinally = 8192,
Label = 12,
Condition = 96
}
@@ -1678,7 +1682,7 @@ declare namespace ts {
antecedent: FlowNode;
lock: FlowLock;
}
export type FlowNode = AfterFinallyFlow | PreFinallyFlow | FlowStart | FlowLabel | FlowAssignment | FlowCondition | FlowSwitchClause | FlowArrayMutation;
export type FlowNode = AfterFinallyFlow | PreFinallyFlow | FlowStart | FlowLabel | FlowAssignment | FlowCall | FlowCondition | FlowSwitchClause | FlowArrayMutation;
export interface FlowNodeBase {
flags: FlowFlags;
id?: number;
@@ -1693,6 +1697,10 @@ declare namespace ts {
node: Expression | VariableDeclaration | BindingElement;
antecedent: FlowNode;
}
export interface FlowCall extends FlowNodeBase {
node: CallExpression;
antecedent: FlowNode;
}
export interface FlowCondition extends FlowNodeBase {
expression: Expression;
antecedent: FlowNode;
@@ -2080,21 +2088,28 @@ declare namespace ts {
}
export enum TypePredicateKind {
This = 0,
Identifier = 1
Identifier = 1,
Assertion = 2
}
export interface TypePredicateBase {
kind: TypePredicateKind;
export interface ThisTypePredicate {
kind: TypePredicateKind.This;
parameterName: undefined;
parameterIndex: undefined;
type: Type;
}
export interface ThisTypePredicate extends TypePredicateBase {
kind: TypePredicateKind.This;
}
export interface IdentifierTypePredicate extends TypePredicateBase {
export interface IdentifierTypePredicate {
kind: TypePredicateKind.Identifier;
parameterName: string;
parameterIndex: number;
type: Type;
}
export type TypePredicate = IdentifierTypePredicate | ThisTypePredicate;
export interface AssertionTypePredicate {
kind: TypePredicateKind.Assertion;
parameterName: string;
parameterIndex: number;
type: Type | undefined;
}
export type TypePredicate = ThisTypePredicate | IdentifierTypePredicate | AssertionTypePredicate;
export enum SymbolFlags {
None = 0,
FunctionScopedVariable = 1,
@@ -3823,8 +3838,8 @@ declare namespace ts {
function createIndexSignature(decorators: ReadonlyArray<Decorator> | undefined, modifiers: ReadonlyArray<Modifier> | undefined, parameters: ReadonlyArray<ParameterDeclaration>, type: TypeNode): IndexSignatureDeclaration;
function updateIndexSignature(node: IndexSignatureDeclaration, decorators: ReadonlyArray<Decorator> | undefined, modifiers: ReadonlyArray<Modifier> | undefined, parameters: ReadonlyArray<ParameterDeclaration>, type: TypeNode): IndexSignatureDeclaration;
function createKeywordTypeNode(kind: KeywordTypeNode["kind"]): KeywordTypeNode;
function createTypePredicateNode(parameterName: Identifier | ThisTypeNode | string, type: TypeNode): TypePredicateNode;
function updateTypePredicateNode(node: TypePredicateNode, parameterName: Identifier | ThisTypeNode, type: TypeNode): TypePredicateNode;
function createTypePredicateNode(assertsModifier: AssertsToken | undefined, parameterName: Identifier | ThisTypeNode | string, type: TypeNode | undefined): TypePredicateNode;
function updateTypePredicateNode(node: TypePredicateNode, assertsModifier: AssertsToken | undefined, parameterName: Identifier | ThisTypeNode, type: TypeNode | undefined): TypePredicateNode;
function createTypeReferenceNode(typeName: string | EntityName, typeArguments: ReadonlyArray<TypeNode> | undefined): TypeReferenceNode;
function updateTypeReferenceNode(node: TypeReferenceNode, typeName: EntityName, typeArguments: NodeArray<TypeNode> | undefined): TypeReferenceNode;
function createFunctionTypeNode(typeParameters: ReadonlyArray<TypeParameterDeclaration> | undefined, parameters: ReadonlyArray<ParameterDeclaration>, type: TypeNode | undefined): FunctionTypeNode;