From 4395f256486d8460ab2301e4e6de968fb952809b Mon Sep 17 00:00:00 2001 From: Ron Buckton Date: Tue, 3 Oct 2017 13:06:17 -0700 Subject: [PATCH] PR Feedback and API baselines --- src/compiler/checker.ts | 3 +- .../reference/api/tsserverlibrary.d.ts | 304 +++++++++--------- tests/baselines/reference/api/typescript.d.ts | 304 +++++++++--------- 3 files changed, 317 insertions(+), 294 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 206ad674870..6f5cc8e0e5b 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -8206,8 +8206,7 @@ namespace ts { switch (symbol.valueDeclaration.kind) { case SyntaxKind.VariableDeclaration: return getNameOfDeclaration(symbol.valueDeclaration).kind === SyntaxKind.Identifier - && symbol.valueDeclaration.parent.kind === SyntaxKind.VariableDeclarationList - && symbol.valueDeclaration.parent.parent.kind === SyntaxKind.VariableStatement + && isVariableDeclarationInVariableStatement(symbol.valueDeclaration) && !!(symbol.valueDeclaration.parent.flags & NodeFlags.Const); case SyntaxKind.PropertySignature: return hasModifier(symbol.valueDeclaration, ModifierFlags.Readonly); diff --git a/tests/baselines/reference/api/tsserverlibrary.d.ts b/tests/baselines/reference/api/tsserverlibrary.d.ts index 7adc7539ca6..de9ff05f9c1 100644 --- a/tests/baselines/reference/api/tsserverlibrary.d.ts +++ b/tests/baselines/reference/api/tsserverlibrary.d.ts @@ -234,125 +234,126 @@ declare namespace ts { IndexedAccessType = 171, MappedType = 172, LiteralType = 173, - ObjectBindingPattern = 174, - ArrayBindingPattern = 175, - BindingElement = 176, - ArrayLiteralExpression = 177, - ObjectLiteralExpression = 178, - PropertyAccessExpression = 179, - ElementAccessExpression = 180, - CallExpression = 181, - NewExpression = 182, - TaggedTemplateExpression = 183, - TypeAssertionExpression = 184, - ParenthesizedExpression = 185, - FunctionExpression = 186, - ArrowFunction = 187, - DeleteExpression = 188, - TypeOfExpression = 189, - VoidExpression = 190, - AwaitExpression = 191, - PrefixUnaryExpression = 192, - PostfixUnaryExpression = 193, - BinaryExpression = 194, - ConditionalExpression = 195, - TemplateExpression = 196, - YieldExpression = 197, - SpreadElement = 198, - ClassExpression = 199, - OmittedExpression = 200, - ExpressionWithTypeArguments = 201, - AsExpression = 202, - NonNullExpression = 203, - MetaProperty = 204, - TemplateSpan = 205, - SemicolonClassElement = 206, - Block = 207, - VariableStatement = 208, - EmptyStatement = 209, - ExpressionStatement = 210, - IfStatement = 211, - DoStatement = 212, - WhileStatement = 213, - ForStatement = 214, - ForInStatement = 215, - ForOfStatement = 216, - ContinueStatement = 217, - BreakStatement = 218, - ReturnStatement = 219, - WithStatement = 220, - SwitchStatement = 221, - LabeledStatement = 222, - ThrowStatement = 223, - TryStatement = 224, - DebuggerStatement = 225, - VariableDeclaration = 226, - VariableDeclarationList = 227, - FunctionDeclaration = 228, - ClassDeclaration = 229, - InterfaceDeclaration = 230, - TypeAliasDeclaration = 231, - EnumDeclaration = 232, - ModuleDeclaration = 233, - ModuleBlock = 234, - CaseBlock = 235, - NamespaceExportDeclaration = 236, - ImportEqualsDeclaration = 237, - ImportDeclaration = 238, - ImportClause = 239, - NamespaceImport = 240, - NamedImports = 241, - ImportSpecifier = 242, - ExportAssignment = 243, - ExportDeclaration = 244, - NamedExports = 245, - ExportSpecifier = 246, - MissingDeclaration = 247, - ExternalModuleReference = 248, - JsxElement = 249, - JsxSelfClosingElement = 250, - JsxOpeningElement = 251, - JsxClosingElement = 252, - JsxAttribute = 253, - JsxAttributes = 254, - JsxSpreadAttribute = 255, - JsxExpression = 256, - CaseClause = 257, - DefaultClause = 258, - HeritageClause = 259, - CatchClause = 260, - PropertyAssignment = 261, - ShorthandPropertyAssignment = 262, - SpreadAssignment = 263, - EnumMember = 264, - SourceFile = 265, - Bundle = 266, - JSDocTypeExpression = 267, - JSDocAllType = 268, - JSDocUnknownType = 269, - JSDocNullableType = 270, - JSDocNonNullableType = 271, - JSDocOptionalType = 272, - JSDocFunctionType = 273, - JSDocVariadicType = 274, - JSDocComment = 275, - JSDocTag = 276, - JSDocAugmentsTag = 277, - JSDocClassTag = 278, - JSDocParameterTag = 279, - JSDocReturnTag = 280, - JSDocTypeTag = 281, - JSDocTemplateTag = 282, - JSDocTypedefTag = 283, - JSDocPropertyTag = 284, - JSDocTypeLiteral = 285, - SyntaxList = 286, - NotEmittedStatement = 287, - PartiallyEmittedExpression = 288, - CommaListExpression = 289, - MergeDeclarationMarker = 290, - EndOfDeclarationMarker = 291, - Count = 292, + ESSymbolType = 174, + ObjectBindingPattern = 175, + ArrayBindingPattern = 176, + BindingElement = 177, + ArrayLiteralExpression = 178, + ObjectLiteralExpression = 179, + PropertyAccessExpression = 180, + ElementAccessExpression = 181, + CallExpression = 182, + NewExpression = 183, + TaggedTemplateExpression = 184, + TypeAssertionExpression = 185, + ParenthesizedExpression = 186, + FunctionExpression = 187, + ArrowFunction = 188, + DeleteExpression = 189, + TypeOfExpression = 190, + VoidExpression = 191, + AwaitExpression = 192, + PrefixUnaryExpression = 193, + PostfixUnaryExpression = 194, + BinaryExpression = 195, + ConditionalExpression = 196, + TemplateExpression = 197, + YieldExpression = 198, + SpreadElement = 199, + ClassExpression = 200, + OmittedExpression = 201, + ExpressionWithTypeArguments = 202, + AsExpression = 203, + NonNullExpression = 204, + MetaProperty = 205, + TemplateSpan = 206, + SemicolonClassElement = 207, + Block = 208, + VariableStatement = 209, + EmptyStatement = 210, + ExpressionStatement = 211, + IfStatement = 212, + DoStatement = 213, + WhileStatement = 214, + ForStatement = 215, + ForInStatement = 216, + ForOfStatement = 217, + ContinueStatement = 218, + BreakStatement = 219, + ReturnStatement = 220, + WithStatement = 221, + SwitchStatement = 222, + LabeledStatement = 223, + ThrowStatement = 224, + TryStatement = 225, + DebuggerStatement = 226, + VariableDeclaration = 227, + VariableDeclarationList = 228, + FunctionDeclaration = 229, + ClassDeclaration = 230, + InterfaceDeclaration = 231, + TypeAliasDeclaration = 232, + EnumDeclaration = 233, + ModuleDeclaration = 234, + ModuleBlock = 235, + CaseBlock = 236, + NamespaceExportDeclaration = 237, + ImportEqualsDeclaration = 238, + ImportDeclaration = 239, + ImportClause = 240, + NamespaceImport = 241, + NamedImports = 242, + ImportSpecifier = 243, + ExportAssignment = 244, + ExportDeclaration = 245, + NamedExports = 246, + ExportSpecifier = 247, + MissingDeclaration = 248, + ExternalModuleReference = 249, + JsxElement = 250, + JsxSelfClosingElement = 251, + JsxOpeningElement = 252, + JsxClosingElement = 253, + JsxAttribute = 254, + JsxAttributes = 255, + JsxSpreadAttribute = 256, + JsxExpression = 257, + CaseClause = 258, + DefaultClause = 259, + HeritageClause = 260, + CatchClause = 261, + PropertyAssignment = 262, + ShorthandPropertyAssignment = 263, + SpreadAssignment = 264, + EnumMember = 265, + SourceFile = 266, + Bundle = 267, + JSDocTypeExpression = 268, + JSDocAllType = 269, + JSDocUnknownType = 270, + JSDocNullableType = 271, + JSDocNonNullableType = 272, + JSDocOptionalType = 273, + JSDocFunctionType = 274, + JSDocVariadicType = 275, + JSDocComment = 276, + JSDocTag = 277, + JSDocAugmentsTag = 278, + JSDocClassTag = 279, + JSDocParameterTag = 280, + JSDocReturnTag = 281, + JSDocTypeTag = 282, + JSDocTemplateTag = 283, + JSDocTypedefTag = 284, + JSDocPropertyTag = 285, + JSDocTypeLiteral = 286, + SyntaxList = 287, + NotEmittedStatement = 288, + PartiallyEmittedExpression = 289, + CommaListExpression = 290, + MergeDeclarationMarker = 291, + EndOfDeclarationMarker = 292, + Count = 293, FirstAssignment = 58, LastAssignment = 70, FirstCompoundAssignment = 59, @@ -364,7 +365,7 @@ declare namespace ts { FirstFutureReservedWord = 108, LastFutureReservedWord = 116, FirstTypeNode = 158, - LastTypeNode = 173, + LastTypeNode = 174, FirstPunctuation = 17, LastPunctuation = 70, FirstToken = 0, @@ -378,10 +379,10 @@ declare namespace ts { FirstBinaryOperator = 27, LastBinaryOperator = 70, FirstNode = 143, - FirstJSDocNode = 267, - LastJSDocNode = 285, - FirstJSDocTagNode = 276, - LastJSDocTagNode = 285, + FirstJSDocNode = 268, + LastJSDocNode = 286, + FirstJSDocTagNode = 277, + LastJSDocTagNode = 286, } enum NodeFlags { None = 0, @@ -755,6 +756,9 @@ declare namespace ts { kind: SyntaxKind.LiteralType; literal: BooleanLiteral | LiteralExpression | PrefixUnaryExpression; } + interface ESSymbolTypeNode extends TypeNode { + kind: SyntaxKind.ESSymbolType; + } interface StringLiteral extends LiteralExpression { kind: SyntaxKind.StringLiteral; } @@ -1772,6 +1776,7 @@ declare namespace ts { IgnoreErrors = 60416, InObjectTypeLiteral = 1048576, InTypeAlias = 8388608, + IsDeclarationOfUniqueESSymbolType = 16777216, } interface SymbolDisplayBuilder { buildTypeDisplay(type: Type, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void; @@ -1871,6 +1876,7 @@ declare namespace ts { ExportStar = 8388608, Optional = 16777216, Transient = 33554432, + Late = 67108864, Enum = 384, Variable = 3, Value = 107455, @@ -1973,32 +1979,34 @@ declare namespace ts { BooleanLiteral = 128, EnumLiteral = 256, ESSymbol = 512, - Void = 1024, - Undefined = 2048, - Null = 4096, - Never = 8192, - TypeParameter = 16384, - Object = 32768, - Union = 65536, - Intersection = 131072, - Index = 262144, - IndexedAccess = 524288, - NonPrimitive = 16777216, - MarkerType = 67108864, - Literal = 224, - Unit = 6368, + UniqueESSymbol = 1024, + Void = 2048, + Undefined = 4096, + Null = 8192, + Never = 16384, + TypeParameter = 32768, + Object = 65536, + Union = 131072, + Intersection = 262144, + Index = 524288, + IndexedAccess = 1048576, + NonPrimitive = 33554432, + MarkerType = 134217728, + Literal = 1248, + Unit = 13536, StringOrNumberLiteral = 96, - PossiblyFalsy = 7406, - StringLike = 262178, + PossiblyFalsy = 14574, + StringLike = 524322, NumberLike = 84, BooleanLike = 136, EnumLike = 272, - UnionOrIntersection = 196608, - StructuredType = 229376, - StructuredOrTypeVariable = 1032192, - TypeVariable = 540672, - Narrowable = 17810175, - NotUnionOrUnit = 16810497, + ESSymbolLike = 1536, + UnionOrIntersection = 393216, + StructuredType = 458752, + StructuredOrTypeVariable = 2064384, + TypeVariable = 1081344, + Narrowable = 35620607, + NotUnionOrUnit = 33620481, } type DestructuringPattern = BindingPattern | ObjectLiteralExpression | ArrayLiteralExpression; interface Type { @@ -2013,6 +2021,9 @@ declare namespace ts { freshType?: LiteralType; regularType?: LiteralType; } + interface UniqueESSymbolType extends Type { + symbol: Symbol; + } interface StringLiteralType extends LiteralType { value: string; } @@ -3325,6 +3336,7 @@ declare namespace ts { function updateMappedTypeNode(node: MappedTypeNode, readonlyToken: ReadonlyToken | undefined, typeParameter: TypeParameterDeclaration, questionToken: QuestionToken | undefined, type: TypeNode | undefined): MappedTypeNode; function createLiteralTypeNode(literal: LiteralTypeNode["literal"]): LiteralTypeNode; function updateLiteralTypeNode(node: LiteralTypeNode, literal: LiteralTypeNode["literal"]): LiteralTypeNode; + function createESSymbolTypeNode(): ESSymbolTypeNode; function createObjectBindingPattern(elements: ReadonlyArray): ObjectBindingPattern; function updateObjectBindingPattern(node: ObjectBindingPattern, elements: ReadonlyArray): ObjectBindingPattern; function createArrayBindingPattern(elements: ReadonlyArray): ArrayBindingPattern; diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts index d41db2eb413..2be759e509e 100644 --- a/tests/baselines/reference/api/typescript.d.ts +++ b/tests/baselines/reference/api/typescript.d.ts @@ -234,125 +234,126 @@ declare namespace ts { IndexedAccessType = 171, MappedType = 172, LiteralType = 173, - ObjectBindingPattern = 174, - ArrayBindingPattern = 175, - BindingElement = 176, - ArrayLiteralExpression = 177, - ObjectLiteralExpression = 178, - PropertyAccessExpression = 179, - ElementAccessExpression = 180, - CallExpression = 181, - NewExpression = 182, - TaggedTemplateExpression = 183, - TypeAssertionExpression = 184, - ParenthesizedExpression = 185, - FunctionExpression = 186, - ArrowFunction = 187, - DeleteExpression = 188, - TypeOfExpression = 189, - VoidExpression = 190, - AwaitExpression = 191, - PrefixUnaryExpression = 192, - PostfixUnaryExpression = 193, - BinaryExpression = 194, - ConditionalExpression = 195, - TemplateExpression = 196, - YieldExpression = 197, - SpreadElement = 198, - ClassExpression = 199, - OmittedExpression = 200, - ExpressionWithTypeArguments = 201, - AsExpression = 202, - NonNullExpression = 203, - MetaProperty = 204, - TemplateSpan = 205, - SemicolonClassElement = 206, - Block = 207, - VariableStatement = 208, - EmptyStatement = 209, - ExpressionStatement = 210, - IfStatement = 211, - DoStatement = 212, - WhileStatement = 213, - ForStatement = 214, - ForInStatement = 215, - ForOfStatement = 216, - ContinueStatement = 217, - BreakStatement = 218, - ReturnStatement = 219, - WithStatement = 220, - SwitchStatement = 221, - LabeledStatement = 222, - ThrowStatement = 223, - TryStatement = 224, - DebuggerStatement = 225, - VariableDeclaration = 226, - VariableDeclarationList = 227, - FunctionDeclaration = 228, - ClassDeclaration = 229, - InterfaceDeclaration = 230, - TypeAliasDeclaration = 231, - EnumDeclaration = 232, - ModuleDeclaration = 233, - ModuleBlock = 234, - CaseBlock = 235, - NamespaceExportDeclaration = 236, - ImportEqualsDeclaration = 237, - ImportDeclaration = 238, - ImportClause = 239, - NamespaceImport = 240, - NamedImports = 241, - ImportSpecifier = 242, - ExportAssignment = 243, - ExportDeclaration = 244, - NamedExports = 245, - ExportSpecifier = 246, - MissingDeclaration = 247, - ExternalModuleReference = 248, - JsxElement = 249, - JsxSelfClosingElement = 250, - JsxOpeningElement = 251, - JsxClosingElement = 252, - JsxAttribute = 253, - JsxAttributes = 254, - JsxSpreadAttribute = 255, - JsxExpression = 256, - CaseClause = 257, - DefaultClause = 258, - HeritageClause = 259, - CatchClause = 260, - PropertyAssignment = 261, - ShorthandPropertyAssignment = 262, - SpreadAssignment = 263, - EnumMember = 264, - SourceFile = 265, - Bundle = 266, - JSDocTypeExpression = 267, - JSDocAllType = 268, - JSDocUnknownType = 269, - JSDocNullableType = 270, - JSDocNonNullableType = 271, - JSDocOptionalType = 272, - JSDocFunctionType = 273, - JSDocVariadicType = 274, - JSDocComment = 275, - JSDocTag = 276, - JSDocAugmentsTag = 277, - JSDocClassTag = 278, - JSDocParameterTag = 279, - JSDocReturnTag = 280, - JSDocTypeTag = 281, - JSDocTemplateTag = 282, - JSDocTypedefTag = 283, - JSDocPropertyTag = 284, - JSDocTypeLiteral = 285, - SyntaxList = 286, - NotEmittedStatement = 287, - PartiallyEmittedExpression = 288, - CommaListExpression = 289, - MergeDeclarationMarker = 290, - EndOfDeclarationMarker = 291, - Count = 292, + ESSymbolType = 174, + ObjectBindingPattern = 175, + ArrayBindingPattern = 176, + BindingElement = 177, + ArrayLiteralExpression = 178, + ObjectLiteralExpression = 179, + PropertyAccessExpression = 180, + ElementAccessExpression = 181, + CallExpression = 182, + NewExpression = 183, + TaggedTemplateExpression = 184, + TypeAssertionExpression = 185, + ParenthesizedExpression = 186, + FunctionExpression = 187, + ArrowFunction = 188, + DeleteExpression = 189, + TypeOfExpression = 190, + VoidExpression = 191, + AwaitExpression = 192, + PrefixUnaryExpression = 193, + PostfixUnaryExpression = 194, + BinaryExpression = 195, + ConditionalExpression = 196, + TemplateExpression = 197, + YieldExpression = 198, + SpreadElement = 199, + ClassExpression = 200, + OmittedExpression = 201, + ExpressionWithTypeArguments = 202, + AsExpression = 203, + NonNullExpression = 204, + MetaProperty = 205, + TemplateSpan = 206, + SemicolonClassElement = 207, + Block = 208, + VariableStatement = 209, + EmptyStatement = 210, + ExpressionStatement = 211, + IfStatement = 212, + DoStatement = 213, + WhileStatement = 214, + ForStatement = 215, + ForInStatement = 216, + ForOfStatement = 217, + ContinueStatement = 218, + BreakStatement = 219, + ReturnStatement = 220, + WithStatement = 221, + SwitchStatement = 222, + LabeledStatement = 223, + ThrowStatement = 224, + TryStatement = 225, + DebuggerStatement = 226, + VariableDeclaration = 227, + VariableDeclarationList = 228, + FunctionDeclaration = 229, + ClassDeclaration = 230, + InterfaceDeclaration = 231, + TypeAliasDeclaration = 232, + EnumDeclaration = 233, + ModuleDeclaration = 234, + ModuleBlock = 235, + CaseBlock = 236, + NamespaceExportDeclaration = 237, + ImportEqualsDeclaration = 238, + ImportDeclaration = 239, + ImportClause = 240, + NamespaceImport = 241, + NamedImports = 242, + ImportSpecifier = 243, + ExportAssignment = 244, + ExportDeclaration = 245, + NamedExports = 246, + ExportSpecifier = 247, + MissingDeclaration = 248, + ExternalModuleReference = 249, + JsxElement = 250, + JsxSelfClosingElement = 251, + JsxOpeningElement = 252, + JsxClosingElement = 253, + JsxAttribute = 254, + JsxAttributes = 255, + JsxSpreadAttribute = 256, + JsxExpression = 257, + CaseClause = 258, + DefaultClause = 259, + HeritageClause = 260, + CatchClause = 261, + PropertyAssignment = 262, + ShorthandPropertyAssignment = 263, + SpreadAssignment = 264, + EnumMember = 265, + SourceFile = 266, + Bundle = 267, + JSDocTypeExpression = 268, + JSDocAllType = 269, + JSDocUnknownType = 270, + JSDocNullableType = 271, + JSDocNonNullableType = 272, + JSDocOptionalType = 273, + JSDocFunctionType = 274, + JSDocVariadicType = 275, + JSDocComment = 276, + JSDocTag = 277, + JSDocAugmentsTag = 278, + JSDocClassTag = 279, + JSDocParameterTag = 280, + JSDocReturnTag = 281, + JSDocTypeTag = 282, + JSDocTemplateTag = 283, + JSDocTypedefTag = 284, + JSDocPropertyTag = 285, + JSDocTypeLiteral = 286, + SyntaxList = 287, + NotEmittedStatement = 288, + PartiallyEmittedExpression = 289, + CommaListExpression = 290, + MergeDeclarationMarker = 291, + EndOfDeclarationMarker = 292, + Count = 293, FirstAssignment = 58, LastAssignment = 70, FirstCompoundAssignment = 59, @@ -364,7 +365,7 @@ declare namespace ts { FirstFutureReservedWord = 108, LastFutureReservedWord = 116, FirstTypeNode = 158, - LastTypeNode = 173, + LastTypeNode = 174, FirstPunctuation = 17, LastPunctuation = 70, FirstToken = 0, @@ -378,10 +379,10 @@ declare namespace ts { FirstBinaryOperator = 27, LastBinaryOperator = 70, FirstNode = 143, - FirstJSDocNode = 267, - LastJSDocNode = 285, - FirstJSDocTagNode = 276, - LastJSDocTagNode = 285, + FirstJSDocNode = 268, + LastJSDocNode = 286, + FirstJSDocTagNode = 277, + LastJSDocTagNode = 286, } enum NodeFlags { None = 0, @@ -755,6 +756,9 @@ declare namespace ts { kind: SyntaxKind.LiteralType; literal: BooleanLiteral | LiteralExpression | PrefixUnaryExpression; } + interface ESSymbolTypeNode extends TypeNode { + kind: SyntaxKind.ESSymbolType; + } interface StringLiteral extends LiteralExpression { kind: SyntaxKind.StringLiteral; } @@ -1772,6 +1776,7 @@ declare namespace ts { IgnoreErrors = 60416, InObjectTypeLiteral = 1048576, InTypeAlias = 8388608, + IsDeclarationOfUniqueESSymbolType = 16777216, } interface SymbolDisplayBuilder { buildTypeDisplay(type: Type, writer: SymbolWriter, enclosingDeclaration?: Node, flags?: TypeFormatFlags): void; @@ -1871,6 +1876,7 @@ declare namespace ts { ExportStar = 8388608, Optional = 16777216, Transient = 33554432, + Late = 67108864, Enum = 384, Variable = 3, Value = 107455, @@ -1973,32 +1979,34 @@ declare namespace ts { BooleanLiteral = 128, EnumLiteral = 256, ESSymbol = 512, - Void = 1024, - Undefined = 2048, - Null = 4096, - Never = 8192, - TypeParameter = 16384, - Object = 32768, - Union = 65536, - Intersection = 131072, - Index = 262144, - IndexedAccess = 524288, - NonPrimitive = 16777216, - MarkerType = 67108864, - Literal = 224, - Unit = 6368, + UniqueESSymbol = 1024, + Void = 2048, + Undefined = 4096, + Null = 8192, + Never = 16384, + TypeParameter = 32768, + Object = 65536, + Union = 131072, + Intersection = 262144, + Index = 524288, + IndexedAccess = 1048576, + NonPrimitive = 33554432, + MarkerType = 134217728, + Literal = 1248, + Unit = 13536, StringOrNumberLiteral = 96, - PossiblyFalsy = 7406, - StringLike = 262178, + PossiblyFalsy = 14574, + StringLike = 524322, NumberLike = 84, BooleanLike = 136, EnumLike = 272, - UnionOrIntersection = 196608, - StructuredType = 229376, - StructuredOrTypeVariable = 1032192, - TypeVariable = 540672, - Narrowable = 17810175, - NotUnionOrUnit = 16810497, + ESSymbolLike = 1536, + UnionOrIntersection = 393216, + StructuredType = 458752, + StructuredOrTypeVariable = 2064384, + TypeVariable = 1081344, + Narrowable = 35620607, + NotUnionOrUnit = 33620481, } type DestructuringPattern = BindingPattern | ObjectLiteralExpression | ArrayLiteralExpression; interface Type { @@ -2013,6 +2021,9 @@ declare namespace ts { freshType?: LiteralType; regularType?: LiteralType; } + interface UniqueESSymbolType extends Type { + symbol: Symbol; + } interface StringLiteralType extends LiteralType { value: string; } @@ -3272,6 +3283,7 @@ declare namespace ts { function updateMappedTypeNode(node: MappedTypeNode, readonlyToken: ReadonlyToken | undefined, typeParameter: TypeParameterDeclaration, questionToken: QuestionToken | undefined, type: TypeNode | undefined): MappedTypeNode; function createLiteralTypeNode(literal: LiteralTypeNode["literal"]): LiteralTypeNode; function updateLiteralTypeNode(node: LiteralTypeNode, literal: LiteralTypeNode["literal"]): LiteralTypeNode; + function createESSymbolTypeNode(): ESSymbolTypeNode; function createObjectBindingPattern(elements: ReadonlyArray): ObjectBindingPattern; function updateObjectBindingPattern(node: ObjectBindingPattern, elements: ReadonlyArray): ObjectBindingPattern; function createArrayBindingPattern(elements: ReadonlyArray): ArrayBindingPattern;