From ec22274670e5ccc5e9af39e28cdbc3c2a047e3ba Mon Sep 17 00:00:00 2001 From: Ankith Burki <295691623+Ankith-B@users.noreply.github.com> Date: Sun, 11 Oct 2026 11:26:42 -0700 Subject: [PATCH] Add typed overloads for Performance.getEntriesByType/getEntriesByName getEntriesByType("mark" | "measure" | "resource") and the matching getEntriesByName(name, type) overloads now return PerformanceMark[], PerformanceMeasure[] and PerformanceResourceTiming[] instead of the generic PerformanceEntryList, on both Performance and PerformanceObserverEntryList. These entry types exist in every environment that exposes Performance, so the worker libraries get the same overloads. Other entry types keep the existing PerformanceEntryList signature. Fixes microsoft/TypeScript#33866 Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01HePuF24BxGCMzABHKRirN8 --- baselines/dom.generated.d.ts | 12 ++++++ baselines/serviceworker.generated.d.ts | 12 ++++++ baselines/sharedworker.generated.d.ts | 12 ++++++ baselines/ts5.5/dom.generated.d.ts | 12 ++++++ baselines/ts5.5/serviceworker.generated.d.ts | 12 ++++++ baselines/ts5.5/sharedworker.generated.d.ts | 12 ++++++ baselines/ts5.5/webworker.generated.d.ts | 12 ++++++ baselines/ts5.6/dom.generated.d.ts | 12 ++++++ baselines/ts5.6/serviceworker.generated.d.ts | 12 ++++++ baselines/ts5.6/sharedworker.generated.d.ts | 12 ++++++ baselines/ts5.6/webworker.generated.d.ts | 12 ++++++ baselines/ts5.9/dom.generated.d.ts | 12 ++++++ baselines/ts5.9/serviceworker.generated.d.ts | 12 ++++++ baselines/ts5.9/sharedworker.generated.d.ts | 12 ++++++ baselines/ts5.9/webworker.generated.d.ts | 12 ++++++ baselines/webworker.generated.d.ts | 12 ++++++ inputfiles/overridingTypes.jsonc | 41 ++++++++++++++++++++ 17 files changed, 233 insertions(+) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index f543d0f63..269b51fb9 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -28095,12 +28095,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -28450,12 +28456,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/serviceworker.generated.d.ts b/baselines/serviceworker.generated.d.ts index 190881a28..897c03c42 100644 --- a/baselines/serviceworker.generated.d.ts +++ b/baselines/serviceworker.generated.d.ts @@ -7422,12 +7422,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7605,12 +7611,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/sharedworker.generated.d.ts b/baselines/sharedworker.generated.d.ts index 602f794ec..ea865d21f 100644 --- a/baselines/sharedworker.generated.d.ts +++ b/baselines/sharedworker.generated.d.ts @@ -7080,12 +7080,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7263,12 +7269,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.5/dom.generated.d.ts b/baselines/ts5.5/dom.generated.d.ts index 2594d311f..ded7d08f2 100644 --- a/baselines/ts5.5/dom.generated.d.ts +++ b/baselines/ts5.5/dom.generated.d.ts @@ -28071,12 +28071,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -28426,12 +28432,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.5/serviceworker.generated.d.ts b/baselines/ts5.5/serviceworker.generated.d.ts index afc9c9702..7d51bb2d9 100644 --- a/baselines/ts5.5/serviceworker.generated.d.ts +++ b/baselines/ts5.5/serviceworker.generated.d.ts @@ -7419,12 +7419,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7602,12 +7608,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.5/sharedworker.generated.d.ts b/baselines/ts5.5/sharedworker.generated.d.ts index 272a4fc47..136dca566 100644 --- a/baselines/ts5.5/sharedworker.generated.d.ts +++ b/baselines/ts5.5/sharedworker.generated.d.ts @@ -7077,12 +7077,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7260,12 +7266,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.5/webworker.generated.d.ts b/baselines/ts5.5/webworker.generated.d.ts index e74ca3fe4..49f785e44 100644 --- a/baselines/ts5.5/webworker.generated.d.ts +++ b/baselines/ts5.5/webworker.generated.d.ts @@ -8321,12 +8321,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -8504,12 +8510,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.6/dom.generated.d.ts b/baselines/ts5.6/dom.generated.d.ts index a9f3c2fc4..51ece2d26 100644 --- a/baselines/ts5.6/dom.generated.d.ts +++ b/baselines/ts5.6/dom.generated.d.ts @@ -28092,12 +28092,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -28447,12 +28453,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.6/serviceworker.generated.d.ts b/baselines/ts5.6/serviceworker.generated.d.ts index afc9c9702..7d51bb2d9 100644 --- a/baselines/ts5.6/serviceworker.generated.d.ts +++ b/baselines/ts5.6/serviceworker.generated.d.ts @@ -7419,12 +7419,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7602,12 +7608,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.6/sharedworker.generated.d.ts b/baselines/ts5.6/sharedworker.generated.d.ts index 272a4fc47..136dca566 100644 --- a/baselines/ts5.6/sharedworker.generated.d.ts +++ b/baselines/ts5.6/sharedworker.generated.d.ts @@ -7077,12 +7077,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7260,12 +7266,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.6/webworker.generated.d.ts b/baselines/ts5.6/webworker.generated.d.ts index e74ca3fe4..49f785e44 100644 --- a/baselines/ts5.6/webworker.generated.d.ts +++ b/baselines/ts5.6/webworker.generated.d.ts @@ -8321,12 +8321,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -8504,12 +8510,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.9/dom.generated.d.ts b/baselines/ts5.9/dom.generated.d.ts index 83e861452..b914ed11a 100644 --- a/baselines/ts5.9/dom.generated.d.ts +++ b/baselines/ts5.9/dom.generated.d.ts @@ -28092,12 +28092,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -28447,12 +28453,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.9/serviceworker.generated.d.ts b/baselines/ts5.9/serviceworker.generated.d.ts index 377ca282f..c31795afa 100644 --- a/baselines/ts5.9/serviceworker.generated.d.ts +++ b/baselines/ts5.9/serviceworker.generated.d.ts @@ -7419,12 +7419,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7602,12 +7608,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.9/sharedworker.generated.d.ts b/baselines/ts5.9/sharedworker.generated.d.ts index ef5f13c4b..75d2063ef 100644 --- a/baselines/ts5.9/sharedworker.generated.d.ts +++ b/baselines/ts5.9/sharedworker.generated.d.ts @@ -7077,12 +7077,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -7260,12 +7266,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/ts5.9/webworker.generated.d.ts b/baselines/ts5.9/webworker.generated.d.ts index 69f511463..ff4e9e62c 100644 --- a/baselines/ts5.9/webworker.generated.d.ts +++ b/baselines/ts5.9/webworker.generated.d.ts @@ -8321,12 +8321,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -8504,12 +8510,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/baselines/webworker.generated.d.ts b/baselines/webworker.generated.d.ts index 45364e7b8..8873a6545 100644 --- a/baselines/webworker.generated.d.ts +++ b/baselines/webworker.generated.d.ts @@ -8324,12 +8324,18 @@ interface Performance extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method returns an array of PerformanceEntry objects currently present in the performance timeline for a given type. * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; /** * The **`mark()`** method creates a named PerformanceMark object representing a high resolution timestamp marker in the browser's performance timeline. @@ -8507,12 +8513,18 @@ interface PerformanceObserverEntryList { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */ + getEntriesByName(name: string, type: "mark"): PerformanceMark[]; + getEntriesByName(name: string, type: "measure"): PerformanceMeasure[]; + getEntriesByName(name: string, type: "resource"): PerformanceResourceTiming[]; getEntriesByName(name: string, type?: string): PerformanceEntryList; /** * The **`getEntriesByType()`** method of the PerformanceObserverEntryList returns a list of explicitly observed performance entry objects for a given performance entry type. The list's members are determined by the set of entry types specified in the call to the observe() method. The list is available in the observer's callback function (as the first parameter in the callback). * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */ + getEntriesByType(type: "mark"): PerformanceMark[]; + getEntriesByType(type: "measure"): PerformanceMeasure[]; + getEntriesByType(type: "resource"): PerformanceResourceTiming[]; getEntriesByType(type: string): PerformanceEntryList; } diff --git a/inputfiles/overridingTypes.jsonc b/inputfiles/overridingTypes.jsonc index b20f538ba..3db10391b 100644 --- a/inputfiles/overridingTypes.jsonc +++ b/inputfiles/overridingTypes.jsonc @@ -937,6 +937,47 @@ } } }, + "Performance": { + "methods": { + "method": { + // https://github.com/microsoft/TypeScript/issues/33866 + "getEntriesByName": { + "additionalSignatures": [ + "getEntriesByName(name: string, type: \"mark\"): PerformanceMark[]", + "getEntriesByName(name: string, type: \"measure\"): PerformanceMeasure[]", + "getEntriesByName(name: string, type: \"resource\"): PerformanceResourceTiming[]" + ] + }, + "getEntriesByType": { + "additionalSignatures": [ + "getEntriesByType(type: \"mark\"): PerformanceMark[]", + "getEntriesByType(type: \"measure\"): PerformanceMeasure[]", + "getEntriesByType(type: \"resource\"): PerformanceResourceTiming[]" + ] + } + } + } + }, + "PerformanceObserverEntryList": { + "methods": { + "method": { + "getEntriesByName": { + "additionalSignatures": [ + "getEntriesByName(name: string, type: \"mark\"): PerformanceMark[]", + "getEntriesByName(name: string, type: \"measure\"): PerformanceMeasure[]", + "getEntriesByName(name: string, type: \"resource\"): PerformanceResourceTiming[]" + ] + }, + "getEntriesByType": { + "additionalSignatures": [ + "getEntriesByType(type: \"mark\"): PerformanceMark[]", + "getEntriesByType(type: \"measure\"): PerformanceMeasure[]", + "getEntriesByType(type: \"resource\"): PerformanceResourceTiming[]" + ] + } + } + } + }, "HTMLCanvasElement": { "methods": { "method": {