From 4e07db791045c1d2c17366bed5e3197830e55a5f Mon Sep 17 00:00:00 2001 From: Tom Picton Date: Wed, 6 Aug 2025 09:44:42 -0400 Subject: [PATCH 1/2] feat: Increase specificity of WebSocket.readyState --- baselines/dom.generated.d.ts | 2 +- baselines/serviceworker.generated.d.ts | 2 +- baselines/sharedworker.generated.d.ts | 2 +- baselines/ts5.5/dom.generated.d.ts | 2 +- baselines/ts5.5/serviceworker.generated.d.ts | 2 +- baselines/ts5.5/sharedworker.generated.d.ts | 2 +- baselines/ts5.5/webworker.generated.d.ts | 2 +- baselines/ts5.6/dom.generated.d.ts | 2 +- baselines/ts5.6/serviceworker.generated.d.ts | 2 +- baselines/ts5.6/sharedworker.generated.d.ts | 2 +- baselines/ts5.6/webworker.generated.d.ts | 2 +- baselines/webworker.generated.d.ts | 2 +- inputfiles/overridingTypes.jsonc | 8 ++++++++ 13 files changed, 20 insertions(+), 12 deletions(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index 112a707d5..c5ac972b6 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -36713,7 +36713,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/serviceworker.generated.d.ts b/baselines/serviceworker.generated.d.ts index 02b5f0403..d94ec767e 100644 --- a/baselines/serviceworker.generated.d.ts +++ b/baselines/serviceworker.generated.d.ts @@ -10486,7 +10486,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/sharedworker.generated.d.ts b/baselines/sharedworker.generated.d.ts index 5bb63c4f4..82be54b49 100644 --- a/baselines/sharedworker.generated.d.ts +++ b/baselines/sharedworker.generated.d.ts @@ -10029,7 +10029,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/dom.generated.d.ts b/baselines/ts5.5/dom.generated.d.ts index 566f7f4bd..fba6edfb7 100644 --- a/baselines/ts5.5/dom.generated.d.ts +++ b/baselines/ts5.5/dom.generated.d.ts @@ -36690,7 +36690,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/serviceworker.generated.d.ts b/baselines/ts5.5/serviceworker.generated.d.ts index 295e1756e..06718bcb5 100644 --- a/baselines/ts5.5/serviceworker.generated.d.ts +++ b/baselines/ts5.5/serviceworker.generated.d.ts @@ -10486,7 +10486,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/sharedworker.generated.d.ts b/baselines/ts5.5/sharedworker.generated.d.ts index 4fb5c5f83..a8e0ea796 100644 --- a/baselines/ts5.5/sharedworker.generated.d.ts +++ b/baselines/ts5.5/sharedworker.generated.d.ts @@ -10029,7 +10029,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/webworker.generated.d.ts b/baselines/ts5.5/webworker.generated.d.ts index 63867da88..553c39616 100644 --- a/baselines/ts5.5/webworker.generated.d.ts +++ b/baselines/ts5.5/webworker.generated.d.ts @@ -11920,7 +11920,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/dom.generated.d.ts b/baselines/ts5.6/dom.generated.d.ts index 9997a7f0b..d11b58713 100644 --- a/baselines/ts5.6/dom.generated.d.ts +++ b/baselines/ts5.6/dom.generated.d.ts @@ -36713,7 +36713,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/serviceworker.generated.d.ts b/baselines/ts5.6/serviceworker.generated.d.ts index 295e1756e..06718bcb5 100644 --- a/baselines/ts5.6/serviceworker.generated.d.ts +++ b/baselines/ts5.6/serviceworker.generated.d.ts @@ -10486,7 +10486,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/sharedworker.generated.d.ts b/baselines/ts5.6/sharedworker.generated.d.ts index 4fb5c5f83..a8e0ea796 100644 --- a/baselines/ts5.6/sharedworker.generated.d.ts +++ b/baselines/ts5.6/sharedworker.generated.d.ts @@ -10029,7 +10029,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/webworker.generated.d.ts b/baselines/ts5.6/webworker.generated.d.ts index 63867da88..553c39616 100644 --- a/baselines/ts5.6/webworker.generated.d.ts +++ b/baselines/ts5.6/webworker.generated.d.ts @@ -11920,7 +11920,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/webworker.generated.d.ts b/baselines/webworker.generated.d.ts index 41d032889..ed17bad3d 100644 --- a/baselines/webworker.generated.d.ts +++ b/baselines/webworker.generated.d.ts @@ -11920,7 +11920,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: number; + readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/inputfiles/overridingTypes.jsonc b/inputfiles/overridingTypes.jsonc index 8a7e0851f..5f1572b1d 100644 --- a/inputfiles/overridingTypes.jsonc +++ b/inputfiles/overridingTypes.jsonc @@ -1962,6 +1962,14 @@ "type": "MessageEvent" } ] + }, + "properties": { + "property": { + "readyState": { + "name": "readyState", + "overrideType": "typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED" + } + } } }, "WebTransportDatagramDuplexStream": { From 21e258513334bdccad50eec9e0ce6d250756aa58 Mon Sep 17 00:00:00 2001 From: Tom Picton Date: Tue, 26 Aug 2025 10:52:33 -0400 Subject: [PATCH 2/2] Reference constants by value, not name --- baselines/dom.generated.d.ts | 2 +- baselines/serviceworker.generated.d.ts | 2 +- baselines/sharedworker.generated.d.ts | 2 +- baselines/ts5.5/dom.generated.d.ts | 2 +- baselines/ts5.5/serviceworker.generated.d.ts | 2 +- baselines/ts5.5/sharedworker.generated.d.ts | 2 +- baselines/ts5.5/webworker.generated.d.ts | 2 +- baselines/ts5.6/dom.generated.d.ts | 2 +- baselines/ts5.6/serviceworker.generated.d.ts | 2 +- baselines/ts5.6/sharedworker.generated.d.ts | 2 +- baselines/ts5.6/webworker.generated.d.ts | 2 +- baselines/webworker.generated.d.ts | 2 +- inputfiles/overridingTypes.jsonc | 2 +- 13 files changed, 13 insertions(+), 13 deletions(-) diff --git a/baselines/dom.generated.d.ts b/baselines/dom.generated.d.ts index c5ac972b6..f9625520c 100644 --- a/baselines/dom.generated.d.ts +++ b/baselines/dom.generated.d.ts @@ -36713,7 +36713,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/serviceworker.generated.d.ts b/baselines/serviceworker.generated.d.ts index d94ec767e..44d9ce471 100644 --- a/baselines/serviceworker.generated.d.ts +++ b/baselines/serviceworker.generated.d.ts @@ -10486,7 +10486,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/sharedworker.generated.d.ts b/baselines/sharedworker.generated.d.ts index 82be54b49..78660c4c8 100644 --- a/baselines/sharedworker.generated.d.ts +++ b/baselines/sharedworker.generated.d.ts @@ -10029,7 +10029,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/dom.generated.d.ts b/baselines/ts5.5/dom.generated.d.ts index fba6edfb7..0b03442c6 100644 --- a/baselines/ts5.5/dom.generated.d.ts +++ b/baselines/ts5.5/dom.generated.d.ts @@ -36690,7 +36690,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/serviceworker.generated.d.ts b/baselines/ts5.5/serviceworker.generated.d.ts index 06718bcb5..c8d187b25 100644 --- a/baselines/ts5.5/serviceworker.generated.d.ts +++ b/baselines/ts5.5/serviceworker.generated.d.ts @@ -10486,7 +10486,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/sharedworker.generated.d.ts b/baselines/ts5.5/sharedworker.generated.d.ts index a8e0ea796..48db755f6 100644 --- a/baselines/ts5.5/sharedworker.generated.d.ts +++ b/baselines/ts5.5/sharedworker.generated.d.ts @@ -10029,7 +10029,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.5/webworker.generated.d.ts b/baselines/ts5.5/webworker.generated.d.ts index 553c39616..87315e043 100644 --- a/baselines/ts5.5/webworker.generated.d.ts +++ b/baselines/ts5.5/webworker.generated.d.ts @@ -11920,7 +11920,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/dom.generated.d.ts b/baselines/ts5.6/dom.generated.d.ts index d11b58713..ff0b5ade7 100644 --- a/baselines/ts5.6/dom.generated.d.ts +++ b/baselines/ts5.6/dom.generated.d.ts @@ -36713,7 +36713,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/serviceworker.generated.d.ts b/baselines/ts5.6/serviceworker.generated.d.ts index 06718bcb5..c8d187b25 100644 --- a/baselines/ts5.6/serviceworker.generated.d.ts +++ b/baselines/ts5.6/serviceworker.generated.d.ts @@ -10486,7 +10486,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/sharedworker.generated.d.ts b/baselines/ts5.6/sharedworker.generated.d.ts index a8e0ea796..48db755f6 100644 --- a/baselines/ts5.6/sharedworker.generated.d.ts +++ b/baselines/ts5.6/sharedworker.generated.d.ts @@ -10029,7 +10029,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/ts5.6/webworker.generated.d.ts b/baselines/ts5.6/webworker.generated.d.ts index 553c39616..87315e043 100644 --- a/baselines/ts5.6/webworker.generated.d.ts +++ b/baselines/ts5.6/webworker.generated.d.ts @@ -11920,7 +11920,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/baselines/webworker.generated.d.ts b/baselines/webworker.generated.d.ts index ed17bad3d..7dc3f51bc 100644 --- a/baselines/webworker.generated.d.ts +++ b/baselines/webworker.generated.d.ts @@ -11920,7 +11920,7 @@ interface WebSocket extends EventTarget { * * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */ - readonly readyState: typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED; + readonly readyState: 0 | 1 | 2 | 3; /** * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. * diff --git a/inputfiles/overridingTypes.jsonc b/inputfiles/overridingTypes.jsonc index 5f1572b1d..f4059cc8e 100644 --- a/inputfiles/overridingTypes.jsonc +++ b/inputfiles/overridingTypes.jsonc @@ -1967,7 +1967,7 @@ "property": { "readyState": { "name": "readyState", - "overrideType": "typeof WebSocket.CONNECTING | typeof WebSocket.OPEN | typeof WebSocket.CLOSING | typeof WebSocket.CLOSED" + "overrideType": "0 | 1 | 2 | 3" } } }