typescript 5.5.0-dev.20240301 → 5.5.0-dev.20240302

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -55,10 +55,22 @@ declare namespace Intl {
55
55
 
56
56
  const PluralRules: PluralRulesConstructor;
57
57
 
58
- // We can only have one definition for 'type' in TypeScript, and so you can learn where the keys come from here:
59
- type ES2018NumberFormatPartType = "literal" | "nan" | "infinity" | "percent" | "integer" | "group" | "decimal" | "fraction" | "plusSign" | "minusSign" | "percentSign" | "currency" | "code" | "symbol" | "name";
60
- type ES2020NumberFormatPartType = "compact" | "exponentInteger" | "exponentMinusSign" | "exponentSeparator" | "unit" | "unknown";
61
- type NumberFormatPartTypes = ES2018NumberFormatPartType | ES2020NumberFormatPartType;
58
+ interface NumberFormatPartTypeRegistry {
59
+ literal: never;
60
+ nan: never;
61
+ infinity: never;
62
+ percent: never;
63
+ integer: never;
64
+ group: never;
65
+ decimal: never;
66
+ fraction: never;
67
+ plusSign: never;
68
+ minusSign: never;
69
+ percentSign: never;
70
+ currency: never;
71
+ }
72
+
73
+ type NumberFormatPartTypes = keyof NumberFormatPartTypeRegistry;
62
74
 
63
75
  interface NumberFormatPart {
64
76
  type: NumberFormatPartTypes;
@@ -18,6 +18,6 @@ and limitations under the License.
18
18
 
19
19
  declare namespace Intl {
20
20
  interface DateTimeFormatPartTypesRegistry {
21
- unknown: any;
21
+ unknown: never;
22
22
  }
23
23
  }
@@ -723,6 +723,5 @@ interface DataView {
723
723
  declare namespace Intl {
724
724
  interface NumberFormat {
725
725
  format(value: number | bigint): string;
726
- resolvedOptions(): ResolvedNumberFormatOptions;
727
726
  }
728
727
  }
@@ -241,24 +241,49 @@ declare namespace Intl {
241
241
  ): UnicodeBCP47LocaleIdentifier[];
242
242
  };
243
243
 
244
+ interface NumberFormatOptionsStyleRegistry {
245
+ unit: never;
246
+ }
247
+
248
+ interface NumberFormatOptionsCurrencyDisplayRegistry {
249
+ narrowSymbol: never;
250
+ }
251
+
252
+ interface NumberFormatOptionsSignDisplayRegistry {
253
+ auto: never;
254
+ never: never;
255
+ always: never;
256
+ exceptZero: never;
257
+ }
258
+
259
+ type NumberFormatOptionsSignDisplay = keyof NumberFormatOptionsSignDisplayRegistry;
260
+
244
261
  interface NumberFormatOptions {
262
+ numberingSystem?: string | undefined;
245
263
  compactDisplay?: "short" | "long" | undefined;
246
264
  notation?: "standard" | "scientific" | "engineering" | "compact" | undefined;
247
- signDisplay?: "auto" | "never" | "always" | "exceptZero" | undefined;
265
+ signDisplay?: NumberFormatOptionsSignDisplay | undefined;
248
266
  unit?: string | undefined;
249
267
  unitDisplay?: "short" | "long" | "narrow" | undefined;
250
- currencyDisplay?: string | undefined;
251
- currencySign?: string | undefined;
268
+ currencySign?: "standard" | "accounting" | undefined;
252
269
  }
253
270
 
254
271
  interface ResolvedNumberFormatOptions {
255
272
  compactDisplay?: "short" | "long";
256
- notation?: "standard" | "scientific" | "engineering" | "compact";
257
- signDisplay?: "auto" | "never" | "always" | "exceptZero";
273
+ notation: "standard" | "scientific" | "engineering" | "compact";
274
+ signDisplay: NumberFormatOptionsSignDisplay;
258
275
  unit?: string;
259
276
  unitDisplay?: "short" | "long" | "narrow";
260
- currencyDisplay?: string;
261
- currencySign?: string;
277
+ currencySign?: "standard" | "accounting";
278
+ }
279
+
280
+ interface NumberFormatPartTypeRegistry {
281
+ compact: never;
282
+ exponentInteger: never;
283
+ exponentMinusSign: never;
284
+ exponentSeparator: never;
285
+ unit: never;
286
+ unknown: never;
262
287
  }
263
288
 
264
289
  interface DateTimeFormatOptions {
@@ -19,3 +19,4 @@ and limitations under the License.
19
19
  /// <reference lib="es2022" />
20
20
  /// <reference lib="es2023.array" />
21
21
  /// <reference lib="es2023.collection" />
22
+ /// <reference lib="es2023.intl" />
@@ -0,0 +1,52 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+ /// <reference no-default-lib="true"/>
18
+
19
+ declare namespace Intl {
20
+ interface NumberFormatOptionsUseGroupingRegistry {
21
+ min2: never;
22
+ auto: never;
23
+ always: never;
24
+ }
25
+
26
+ interface NumberFormatOptionsSignDisplayRegistry {
27
+ negative: never;
28
+ }
29
+
30
+ interface NumberFormatOptions {
31
+ roundingPriority?: "auto" | "morePrecision" | "lessPrecision" | undefined;
32
+ roundingIncrement?: 1 | 2 | 5 | 10 | 20 | 25 | 50 | 100 | 200 | 250 | 500 | 1000 | 2000 | 2500 | 5000 | undefined;
33
+ roundingMode?: "ceil" | "floor" | "expand" | "trunc" | "halfCeil" | "halfFloor" | "halfExpand" | "halfTrunc" | "halfEven" | undefined;
34
+ trailingZeroDisplay?: "auto" | "stripIfInteger" | undefined;
35
+ }
36
+
37
+ interface ResolvedNumberFormatOptions {
38
+ roundingPriority: "auto" | "morePrecision" | "lessPrecision";
39
+ roundingMode: "ceil" | "floor" | "expand" | "trunc" | "halfCeil" | "halfFloor" | "halfExpand" | "halfTrunc" | "halfEven";
40
+ roundingIncrement: 1 | 2 | 5 | 10 | 20 | 25 | 50 | 100 | 200 | 250 | 500 | 1000 | 2000 | 2500 | 5000;
41
+ trailingZeroDisplay: "auto" | "stripIfInteger";
42
+ }
43
+
44
+ interface NumberRangeFormatPart extends NumberFormatPart {
45
+ source: "startRange" | "endRange" | "shared";
46
+ }
47
+
48
+ interface NumberFormat {
49
+ formatRange(start: number | bigint, end: number | bigint): string;
50
+ formatRangeToParts(start: number | bigint, end: number | bigint): NumberRangeFormatPart[];
51
+ }
52
+ }
package/lib/lib.es5.d.ts CHANGED
@@ -4433,12 +4433,33 @@ declare namespace Intl {
4433
4433
 
4434
4434
  var Collator: CollatorConstructor;
4435
4435
 
4436
+ interface NumberFormatOptionsStyleRegistry {
4437
+ decimal: never;
4438
+ percent: never;
4439
+ currency: never;
4440
+ }
4441
+
4442
+ type NumberFormatOptionsStyle = keyof NumberFormatOptionsStyleRegistry;
4443
+
4444
+ interface NumberFormatOptionsCurrencyDisplayRegistry {
4445
+ code: never;
4446
+ symbol: never;
4447
+ name: never;
4448
+ }
4449
+
4450
+ type NumberFormatOptionsCurrencyDisplay = keyof NumberFormatOptionsCurrencyDisplayRegistry;
4451
+
4452
+ interface NumberFormatOptionsUseGroupingRegistry {}
4453
+
4454
+ type NumberFormatOptionsUseGrouping = {} extends NumberFormatOptionsUseGroupingRegistry ? boolean : keyof NumberFormatOptionsUseGroupingRegistry | "true" | "false" | boolean;
4455
+ type ResolvedNumberFormatOptionsUseGrouping = {} extends NumberFormatOptionsUseGroupingRegistry ? boolean : keyof NumberFormatOptionsUseGroupingRegistry | false;
4456
+
4436
4457
  interface NumberFormatOptions {
4437
- localeMatcher?: string | undefined;
4438
- style?: string | undefined;
4458
+ localeMatcher?: "lookup" | "best fit" | undefined;
4459
+ style?: NumberFormatOptionsStyle | undefined;
4439
4460
  currency?: string | undefined;
4440
- currencySign?: string | undefined;
4441
- useGrouping?: boolean | undefined;
4461
+ currencyDisplay?: NumberFormatOptionsCurrencyDisplay | undefined;
4462
+ useGrouping?: NumberFormatOptionsUseGrouping | undefined;
4442
4463
  minimumIntegerDigits?: number | undefined;
4443
4464
  minimumFractionDigits?: number | undefined;
4444
4465
  maximumFractionDigits?: number | undefined;
@@ -4449,14 +4470,15 @@ declare namespace Intl {
4449
4470
  interface ResolvedNumberFormatOptions {
4450
4471
  locale: string;
4451
4472
  numberingSystem: string;
4452
- style: string;
4473
+ style: NumberFormatOptionsStyle;
4453
4474
  currency?: string;
4475
+ currencyDisplay?: NumberFormatOptionsCurrencyDisplay;
4454
4476
  minimumIntegerDigits: number;
4455
- minimumFractionDigits: number;
4456
- maximumFractionDigits: number;
4477
+ minimumFractionDigits?: number;
4478
+ maximumFractionDigits?: number;
4457
4479
  minimumSignificantDigits?: number;
4458
4480
  maximumSignificantDigits?: number;
4459
- useGrouping: boolean;
4481
+ useGrouping: ResolvedNumberFormatOptionsUseGrouping;
4460
4482
  }
4461
4483
 
4462
4484
  interface NumberFormat {
@@ -17,12 +17,5 @@ and limitations under the License.
17
17
  /// <reference no-default-lib="true"/>
18
18
 
19
19
  declare namespace Intl {
20
- interface NumberRangeFormatPart extends NumberFormatPart {
21
- source: "startRange" | "endRange" | "shared";
22
- }
23
-
24
- interface NumberFormat {
25
- formatRange(start: number | bigint, end: number | bigint): string;
26
- formatRangeToParts(start: number | bigint, end: number | bigint): NumberRangeFormatPart[];
27
- }
20
+ // Empty
28
21
  }
package/lib/tsc.js CHANGED
@@ -18,7 +18,7 @@ and limitations under the License.
18
18
 
19
19
  // src/compiler/corePublic.ts
20
20
  var versionMajorMinor = "5.5";
21
- var version = `${versionMajorMinor}.0-dev.20240301`;
21
+ var version = `${versionMajorMinor}.0-dev.20240302`;
22
22
 
23
23
  // src/compiler/core.ts
24
24
  var emptyArray = [];
@@ -33723,6 +33723,7 @@ var libEntries = [
33723
33723
  ["es2022.regexp", "lib.es2022.regexp.d.ts"],
33724
33724
  ["es2023.array", "lib.es2023.array.d.ts"],
33725
33725
  ["es2023.collection", "lib.es2023.collection.d.ts"],
33726
+ ["es2023.intl", "lib.es2023.intl.d.ts"],
33726
33727
  ["esnext.array", "lib.es2023.array.d.ts"],
33727
33728
  ["esnext.collection", "lib.esnext.collection.d.ts"],
33728
33729
  ["esnext.symbol", "lib.es2019.symbol.d.ts"],
@@ -40995,7 +40996,7 @@ function createBinder() {
40995
40996
  return Diagnostics.Invalid_use_of_0_in_strict_mode;
40996
40997
  }
40997
40998
  function checkStrictModeFunctionName(node) {
40998
- if (inStrictMode) {
40999
+ if (inStrictMode && !(node.flags & 33554432 /* Ambient */)) {
40999
41000
  checkStrictModeEvalOrArguments(node, node.name);
41000
41001
  }
41001
41002
  }
@@ -74505,11 +74506,13 @@ function createTypeChecker(host) {
74505
74506
  }
74506
74507
  function getSymbolHasInstanceMethodOfObjectType(type) {
74507
74508
  const hasInstancePropertyName = getPropertyNameForKnownSymbolName("hasInstance");
74508
- const hasInstanceProperty = getPropertyOfObjectType(type, hasInstancePropertyName);
74509
- if (hasInstanceProperty) {
74510
- const hasInstancePropertyType = getTypeOfSymbol(hasInstanceProperty);
74511
- if (hasInstancePropertyType && getSignaturesOfType(hasInstancePropertyType, 0 /* Call */).length !== 0) {
74512
- return hasInstancePropertyType;
74509
+ if (allTypesAssignableToKind(type, 67108864 /* NonPrimitive */)) {
74510
+ const hasInstanceProperty = getPropertyOfType(type, hasInstancePropertyName);
74511
+ if (hasInstanceProperty) {
74512
+ const hasInstancePropertyType = getTypeOfSymbol(hasInstanceProperty);
74513
+ if (hasInstancePropertyType && getSignaturesOfType(hasInstancePropertyType, 0 /* Call */).length !== 0) {
74514
+ return hasInstancePropertyType;
74515
+ }
74513
74516
  }
74514
74517
  }
74515
74518
  }
package/lib/tsserver.js CHANGED
@@ -2325,7 +2325,7 @@ module.exports = __toCommonJS(server_exports);
2325
2325
 
2326
2326
  // src/compiler/corePublic.ts
2327
2327
  var versionMajorMinor = "5.5";
2328
- var version = `${versionMajorMinor}.0-dev.20240301`;
2328
+ var version = `${versionMajorMinor}.0-dev.20240302`;
2329
2329
  var Comparison = /* @__PURE__ */ ((Comparison3) => {
2330
2330
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
2331
2331
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -38133,6 +38133,7 @@ var libEntries = [
38133
38133
  ["es2022.regexp", "lib.es2022.regexp.d.ts"],
38134
38134
  ["es2023.array", "lib.es2023.array.d.ts"],
38135
38135
  ["es2023.collection", "lib.es2023.collection.d.ts"],
38136
+ ["es2023.intl", "lib.es2023.intl.d.ts"],
38136
38137
  ["esnext.array", "lib.es2023.array.d.ts"],
38137
38138
  ["esnext.collection", "lib.esnext.collection.d.ts"],
38138
38139
  ["esnext.symbol", "lib.es2019.symbol.d.ts"],
@@ -45660,7 +45661,7 @@ function createBinder() {
45660
45661
  return Diagnostics.Invalid_use_of_0_in_strict_mode;
45661
45662
  }
45662
45663
  function checkStrictModeFunctionName(node) {
45663
- if (inStrictMode) {
45664
+ if (inStrictMode && !(node.flags & 33554432 /* Ambient */)) {
45664
45665
  checkStrictModeEvalOrArguments(node, node.name);
45665
45666
  }
45666
45667
  }
@@ -79224,11 +79225,13 @@ function createTypeChecker(host) {
79224
79225
  }
79225
79226
  function getSymbolHasInstanceMethodOfObjectType(type) {
79226
79227
  const hasInstancePropertyName = getPropertyNameForKnownSymbolName("hasInstance");
79227
- const hasInstanceProperty = getPropertyOfObjectType(type, hasInstancePropertyName);
79228
- if (hasInstanceProperty) {
79229
- const hasInstancePropertyType = getTypeOfSymbol(hasInstanceProperty);
79230
- if (hasInstancePropertyType && getSignaturesOfType(hasInstancePropertyType, 0 /* Call */).length !== 0) {
79231
- return hasInstancePropertyType;
79228
+ if (allTypesAssignableToKind(type, 67108864 /* NonPrimitive */)) {
79229
+ const hasInstanceProperty = getPropertyOfType(type, hasInstancePropertyName);
79230
+ if (hasInstanceProperty) {
79231
+ const hasInstancePropertyType = getTypeOfSymbol(hasInstanceProperty);
79232
+ if (hasInstancePropertyType && getSignaturesOfType(hasInstancePropertyType, 0 /* Call */).length !== 0) {
79233
+ return hasInstancePropertyType;
79234
+ }
79232
79235
  }
79233
79236
  }
79234
79237
  }
package/lib/typescript.js CHANGED
@@ -35,7 +35,7 @@ var ts = (() => {
35
35
  "src/compiler/corePublic.ts"() {
36
36
  "use strict";
37
37
  versionMajorMinor = "5.5";
38
- version = `${versionMajorMinor}.0-dev.20240301`;
38
+ version = `${versionMajorMinor}.0-dev.20240302`;
39
39
  Comparison = /* @__PURE__ */ ((Comparison3) => {
40
40
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
41
41
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -37644,6 +37644,7 @@ ${lanes.join("\n")}
37644
37644
  ["es2022.regexp", "lib.es2022.regexp.d.ts"],
37645
37645
  ["es2023.array", "lib.es2023.array.d.ts"],
37646
37646
  ["es2023.collection", "lib.es2023.collection.d.ts"],
37647
+ ["es2023.intl", "lib.es2023.intl.d.ts"],
37647
37648
  ["esnext.array", "lib.es2023.array.d.ts"],
37648
37649
  ["esnext.collection", "lib.esnext.collection.d.ts"],
37649
37650
  ["esnext.symbol", "lib.es2019.symbol.d.ts"],
@@ -43511,7 +43512,7 @@ ${lanes.join("\n")}
43511
43512
  return Diagnostics.Invalid_use_of_0_in_strict_mode;
43512
43513
  }
43513
43514
  function checkStrictModeFunctionName(node) {
43514
- if (inStrictMode) {
43515
+ if (inStrictMode && !(node.flags & 33554432 /* Ambient */)) {
43515
43516
  checkStrictModeEvalOrArguments(node, node.name);
43516
43517
  }
43517
43518
  }
@@ -76995,11 +76996,13 @@ ${lanes.join("\n")}
76995
76996
  }
76996
76997
  function getSymbolHasInstanceMethodOfObjectType(type) {
76997
76998
  const hasInstancePropertyName = getPropertyNameForKnownSymbolName("hasInstance");
76998
- const hasInstanceProperty = getPropertyOfObjectType(type, hasInstancePropertyName);
76999
- if (hasInstanceProperty) {
77000
- const hasInstancePropertyType = getTypeOfSymbol(hasInstanceProperty);
77001
- if (hasInstancePropertyType && getSignaturesOfType(hasInstancePropertyType, 0 /* Call */).length !== 0) {
77002
- return hasInstancePropertyType;
76999
+ if (allTypesAssignableToKind(type, 67108864 /* NonPrimitive */)) {
77000
+ const hasInstanceProperty = getPropertyOfType(type, hasInstancePropertyName);
77001
+ if (hasInstanceProperty) {
77002
+ const hasInstancePropertyType = getTypeOfSymbol(hasInstanceProperty);
77003
+ if (hasInstancePropertyType && getSignaturesOfType(hasInstancePropertyType, 0 /* Call */).length !== 0) {
77004
+ return hasInstancePropertyType;
77005
+ }
77003
77006
  }
77004
77007
  }
77005
77008
  }
@@ -54,7 +54,7 @@ var path = __toESM(require("path"));
54
54
 
55
55
  // src/compiler/corePublic.ts
56
56
  var versionMajorMinor = "5.5";
57
- var version = `${versionMajorMinor}.0-dev.20240301`;
57
+ var version = `${versionMajorMinor}.0-dev.20240302`;
58
58
 
59
59
  // src/compiler/core.ts
60
60
  var emptyArray = [];
@@ -25877,6 +25877,7 @@ var libEntries = [
25877
25877
  ["es2022.regexp", "lib.es2022.regexp.d.ts"],
25878
25878
  ["es2023.array", "lib.es2023.array.d.ts"],
25879
25879
  ["es2023.collection", "lib.es2023.collection.d.ts"],
25880
+ ["es2023.intl", "lib.es2023.intl.d.ts"],
25880
25881
  ["esnext.array", "lib.es2023.array.d.ts"],
25881
25882
  ["esnext.collection", "lib.esnext.collection.d.ts"],
25882
25883
  ["esnext.symbol", "lib.es2019.symbol.d.ts"],
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "typescript",
3
3
  "author": "Microsoft Corp.",
4
4
  "homepage": "https://www.typescriptlang.org/",
5
- "version": "5.5.0-dev.20240301",
5
+ "version": "5.5.0-dev.20240302",
6
6
  "license": "Apache-2.0",
7
7
  "description": "TypeScript is a language for application scale JavaScript development",
8
8
  "keywords": [
@@ -113,5 +113,5 @@
113
113
  "node": "20.1.0",
114
114
  "npm": "8.19.4"
115
115
  },
116
- "gitHead": "3964aa183eb66e3e853ffbe26be1125b5d22e5fd"
116
+ "gitHead": "0d78152bd7947694cd3e3d8422e338bf03499096"
117
117
  }