@@ -2335,6 +2335,7 @@ declare namespace ts {
2335
2335
}
2336
2336
interface TypeChecker {
2337
2337
getTypeOfSymbolAtLocation ( symbol : Symbol , node : Node ) : Type ;
2338
+ getTypeOfSymbol ( symbol : Symbol ) : Type ;
2338
2339
getDeclaredTypeOfSymbol ( symbol : Symbol ) : Type ;
2339
2340
getPropertiesOfType ( type : Type ) : Symbol [ ] ;
2340
2341
getPropertyOfType ( type : Type , propertyName : string ) : Symbol | undefined ;
@@ -2425,6 +2426,21 @@ declare namespace ts {
2425
2426
getApparentType ( type : Type ) : Type ;
2426
2427
getBaseConstraintOfType ( type : Type ) : Type | undefined ;
2427
2428
getDefaultFromTypeParameter ( type : Type ) : Type | undefined ;
2429
+ /**
2430
+ * True if this type is the `Array` or `ReadonlyArray` type from lib.d.ts.
2431
+ * This function will _not_ return true if passed a type which
2432
+ * extends `Array` (for example, the TypeScript AST's `NodeArray` type).
2433
+ */
2434
+ isArrayType ( type : Type ) : boolean ;
2435
+ /**
2436
+ * True if this type is a tuple type. This function will _not_ return true if
2437
+ * passed a type which extends from a tuple.
2438
+ */
2439
+ isTupleType ( type : Type ) : boolean ;
2440
+ /**
2441
+ * True if this type is assignable to `ReadonlyArray<any>`.
2442
+ */
2443
+ isArrayLikeType ( type : Type ) : boolean ;
2428
2444
getTypePredicateOfSignature ( signature : Signature ) : TypePredicate | undefined ;
2429
2445
/**
2430
2446
* Depending on the operation performed, it may be appropriate to throw away the checker
@@ -2684,7 +2700,8 @@ declare namespace ts {
2684
2700
TemplateLiteral = 134217728 ,
2685
2701
StringMapping = 268435456 ,
2686
2702
Literal = 2944 ,
2687
- Unit = 109440 ,
2703
+ Unit = 109472 ,
2704
+ Freshable = 2976 ,
2688
2705
StringOrNumberLiteral = 384 ,
2689
2706
PossiblyFalsy = 117724 ,
2690
2707
StringLike = 402653316 ,
@@ -2736,10 +2753,12 @@ declare namespace ts {
2736
2753
isClass ( ) : this is InterfaceType ;
2737
2754
isIndexType ( ) : this is IndexType ;
2738
2755
}
2739
- interface LiteralType extends Type {
2756
+ interface FreshableType extends Type {
2757
+ freshType : FreshableType ;
2758
+ regularType : FreshableType ;
2759
+ }
2760
+ interface LiteralType extends FreshableType {
2740
2761
value : string | number | PseudoBigInt ;
2741
- freshType : LiteralType ;
2742
- regularType : LiteralType ;
2743
2762
}
2744
2763
interface UniqueESSymbolType extends Type {
2745
2764
symbol : Symbol ;
@@ -2754,7 +2773,7 @@ declare namespace ts {
2754
2773
interface BigIntLiteralType extends LiteralType {
2755
2774
value : PseudoBigInt ;
2756
2775
}
2757
- interface EnumType extends Type {
2776
+ interface EnumType extends FreshableType {
2758
2777
}
2759
2778
enum ObjectFlags {
2760
2779
None = 0 ,
@@ -2997,6 +3016,12 @@ declare namespace ts {
2997
3016
}
2998
3017
enum ModuleResolutionKind {
2999
3018
Classic = 1 ,
3019
+ /**
3020
+ * @deprecated
3021
+ * `NodeJs` was renamed to `Node10` to better reflect the version of Node that it targets.
3022
+ * Use the new name or consider switching to a modern module resolution target.
3023
+ */
3024
+ NodeJs = 2 ,
3000
3025
Node10 = 2 ,
3001
3026
Node16 = 3 ,
3002
3027
NodeNext = 99 ,
@@ -4286,7 +4311,6 @@ declare namespace ts {
4286
4311
negative : boolean ;
4287
4312
base10Value : string ;
4288
4313
}
4289
- function getNodeMajorVersion ( ) : number | undefined ;
4290
4314
enum FileWatcherEventKind {
4291
4315
Created = 0 ,
4292
4316
Changed = 1 ,
@@ -4698,7 +4722,6 @@ declare namespace ts {
4698
4722
parent : ConstructorDeclaration ;
4699
4723
name : Identifier ;
4700
4724
} ;
4701
- function emitModuleKindIsNonNodeESM ( moduleKind : ModuleKind ) : boolean ;
4702
4725
/** @deprecated */
4703
4726
function createUnparsedSourceFile ( text : string ) : UnparsedSource ;
4704
4727
/** @deprecated */
@@ -5153,7 +5176,6 @@ declare namespace ts {
5153
5176
function bundlerModuleNameResolver ( moduleName : string , containingFile : string , compilerOptions : CompilerOptions , host : ModuleResolutionHost , cache ?: ModuleResolutionCache , redirectedReference ?: ResolvedProjectReference ) : ResolvedModuleWithFailedLookupLocations ;
5154
5177
function nodeModuleNameResolver ( moduleName : string , containingFile : string , compilerOptions : CompilerOptions , host : ModuleResolutionHost , cache ?: ModuleResolutionCache , redirectedReference ?: ResolvedProjectReference ) : ResolvedModuleWithFailedLookupLocations ;
5155
5178
function classicNameResolver ( moduleName : string , containingFile : string , compilerOptions : CompilerOptions , host : ModuleResolutionHost , cache ?: NonRelativeModuleNameResolutionCache , redirectedReference ?: ResolvedProjectReference ) : ResolvedModuleWithFailedLookupLocations ;
5156
- function shouldAllowImportingTsExtension ( compilerOptions : CompilerOptions , fromFileName ?: string ) : boolean | "" | undefined ;
5157
5179
interface TypeReferenceDirectiveResolutionCache extends PerDirectoryResolutionCache < ResolvedTypeReferenceDirectiveWithFailedLookupLocations > , NonRelativeNameResolutionCache < ResolvedTypeReferenceDirectiveWithFailedLookupLocations > , PackageJsonInfoCache {
5158
5180
}
5159
5181
interface ModeAwareCache < T > {
@@ -6154,6 +6176,13 @@ declare namespace ts {
6154
6176
*/
6155
6177
triggerCharacter ?: CompletionsTriggerCharacter ;
6156
6178
triggerKind ?: CompletionTriggerKind ;
6179
+ /**
6180
+ * Include a `symbol` property on each completion entry object.
6181
+ * Symbols reference cyclic data structures and sometimes an entire TypeChecker instance,
6182
+ * so use caution when serializing or retaining completion entries retrieved with this option.
6183
+ * @default false
6184
+ */
6185
+ includeSymbol ?: boolean ;
6157
6186
/** @deprecated Use includeCompletionsForModuleExports */
6158
6187
includeExternalModuleExports ?: boolean ;
6159
6188
/** @deprecated Use includeCompletionsWithInsertText */
@@ -6674,6 +6703,7 @@ declare namespace ts {
6674
6703
* in the case of InternalSymbolName.ExportEquals and InternalSymbolName.Default.
6675
6704
*/
6676
6705
exportName : string ;
6706
+ exportMapKey ?: string ;
6677
6707
moduleSpecifier ?: string ;
6678
6708
/** The file name declaring the export's module symbol, if it was an external module */
6679
6709
fileName ?: string ;
@@ -6683,7 +6713,6 @@ declare namespace ts {
6683
6713
isPackageJsonImport ?: true ;
6684
6714
}
6685
6715
interface CompletionEntryDataUnresolved extends CompletionEntryDataAutoImport {
6686
- /** The key in the `ExportMapCache` where the completion entry's `SymbolExportInfo[]` is found */
6687
6716
exportMapKey : string ;
6688
6717
}
6689
6718
interface CompletionEntryDataResolved extends CompletionEntryDataAutoImport {
@@ -6711,6 +6740,12 @@ declare namespace ts {
6711
6740
isFromUncheckedFile ?: true ;
6712
6741
isPackageJsonImport ?: true ;
6713
6742
isImportStatementCompletion ?: true ;
6743
+ /**
6744
+ * For API purposes.
6745
+ * Included for non-string completions only when `includeSymbol: true` option is passed to `getCompletionsAtPosition`.
6746
+ * @example Get declaration of completion: `symbol.valueDeclaration`
6747
+ */
6748
+ symbol ?: Symbol ;
6714
6749
/**
6715
6750
* A property to be sent back to TS Server in the CompletionDetailsRequest, along with `name`,
6716
6751
* that allows TS Server to look up the symbol represented by the completion item, disambiguating
0 commit comments