summaryrefslogtreecommitdiff
path: root/cli/tsc
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tsc')
-rw-r--r--cli/tsc/dts/lib.esnext.d.ts1
-rw-r--r--cli/tsc/dts/lib.esnext.object.d.ts32
2 files changed, 33 insertions, 0 deletions
diff --git a/cli/tsc/dts/lib.esnext.d.ts b/cli/tsc/dts/lib.esnext.d.ts
index 3df5bce09..0f265acfa 100644
--- a/cli/tsc/dts/lib.esnext.d.ts
+++ b/cli/tsc/dts/lib.esnext.d.ts
@@ -19,5 +19,6 @@ and limitations under the License.
/// <reference lib="es2023" />
/// <reference lib="esnext.array" />
/// <reference lib="esnext.intl" />
+/// <reference lib="esnext.object" />
/// <reference lib="esnext.decorators" />
/// <reference lib="esnext.disposable" />
diff --git a/cli/tsc/dts/lib.esnext.object.d.ts b/cli/tsc/dts/lib.esnext.object.d.ts
new file mode 100644
index 000000000..130f2fc9f
--- /dev/null
+++ b/cli/tsc/dts/lib.esnext.object.d.ts
@@ -0,0 +1,32 @@
+/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+/// <reference no-default-lib="true"/>
+
+// NOTE(iuioiua): taken from https://github.com/microsoft/TypeScript/issues/47171#issuecomment-1697373352
+// while we wait for these types to officially ship
+interface ObjectConstructor {
+ groupBy<Item, Key extends PropertyKey>(
+ items: Iterable<Item>,
+ keySelector: (item: Item, index: number) => Key,
+ ): Record<Key, Item[]>;
+}
+
+interface MapConstructor {
+ groupBy<Item, Key>(
+ items: Iterable<Item>,
+ keySelector: (item: Item, index: number) => Key,
+ ): Map<Key, Item[]>;
+}