Merge branch 'main' into nodejs-26
diff --git a/api/BroadcastChannel.json b/api/BroadcastChannel.json
index 70849c9..ba1b757 100644
--- a/api/BroadcastChannel.json
+++ b/api/BroadcastChannel.json
@@ -88,7 +88,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.4.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -138,7 +138,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.4.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -298,7 +298,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.4.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -348,7 +348,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.4.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/ByteLengthQueuingStrategy.json b/api/ByteLengthQueuingStrategy.json
index 750807a..67ba5ea 100644
--- a/api/ByteLengthQueuingStrategy.json
+++ b/api/ByteLengthQueuingStrategy.json
@@ -80,7 +80,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -126,7 +126,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -172,7 +172,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/CompressionStream.json b/api/CompressionStream.json
index 14c0ed3..a205ffd 100644
--- a/api/CompressionStream.json
+++ b/api/CompressionStream.json
@@ -76,7 +76,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "17.0.0"
+              "version_added": "17.9.0> ≤21.3.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -167,7 +167,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "17.0.0"
+                "version_added": "18.0.0"
               },
               "opera": "mirror",
               "opera_android": "mirror",
@@ -259,7 +259,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "17.0.0"
+                "version_added": "18.0.0"
               },
               "opera": "mirror",
               "opera_android": "mirror",
@@ -350,7 +350,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "17.0.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -394,7 +394,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "17.0.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/CountQueuingStrategy.json b/api/CountQueuingStrategy.json
index ea78e57..c61c8e3 100644
--- a/api/CountQueuingStrategy.json
+++ b/api/CountQueuingStrategy.json
@@ -80,7 +80,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -126,7 +126,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -172,7 +172,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/Crypto.json b/api/Crypto.json
index ec86913..36fa00a 100644
--- a/api/Crypto.json
+++ b/api/Crypto.json
@@ -96,7 +96,7 @@
               "version_added": "11"
             },
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": "Since v17.4.0, a similar method is available via the `crypto` module."
             },
             "oculus": "mirror",
@@ -144,7 +144,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.7.0",
+              "version_added": "19.0.0",
               "notes": "Since 14.17.0 and 15.6.0, a similar method is available via the `crypto` module."
             },
             "oculus": "mirror",
@@ -194,7 +194,7 @@
               "version_added": "11"
             },
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/CryptoKey.json b/api/CryptoKey.json
index 4162242..d5938f8 100644
--- a/api/CryptoKey.json
+++ b/api/CryptoKey.json
@@ -79,7 +79,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -133,7 +133,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -179,7 +179,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -225,7 +225,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/DecompressionStream.json b/api/DecompressionStream.json
index dea3ede..7f396b6 100644
--- a/api/DecompressionStream.json
+++ b/api/DecompressionStream.json
@@ -76,7 +76,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "17.0.0"
+              "version_added": "17.9.0> ≤21.3.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -167,7 +167,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "17.0.0"
+                "version_added": "18.0.0"
               },
               "opera": "mirror",
               "opera_android": "mirror",
@@ -259,7 +259,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "17.0.0"
+                "version_added": "18.0.0"
               },
               "opera": "mirror",
               "opera_android": "mirror",
@@ -350,7 +350,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "17.0.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -394,7 +394,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "17.0.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/ErrorEvent.json b/api/ErrorEvent.json
index 50d4212..68c1684 100644
--- a/api/ErrorEvent.json
+++ b/api/ErrorEvent.json
@@ -25,6 +25,9 @@
           "ie": {
             "version_added": "10"
           },
+          "nodejs": {
+            "version_added": "≤25.0.0"
+          },
           "oculus": "mirror",
           "opera": {
             "version_added": "11"
@@ -69,6 +72,9 @@
               "version_added": "27"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "25.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -112,6 +118,9 @@
             "ie": {
               "version_added": "10"
             },
+            "nodejs": {
+              "version_added": "≤25.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -155,6 +164,9 @@
             "ie": {
               "version_added": "11"
             },
+            "nodejs": {
+              "version_added": "≤25.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -198,6 +210,9 @@
             "ie": {
               "version_added": "10"
             },
+            "nodejs": {
+              "version_added": "≤25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "11"
@@ -245,6 +260,9 @@
             "ie": {
               "version_added": "10"
             },
+            "nodejs": {
+              "version_added": "≤25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "11"
@@ -292,6 +310,9 @@
             "ie": {
               "version_added": "10"
             },
+            "nodejs": {
+              "version_added": "≤25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "11"
diff --git a/api/FormData.json b/api/FormData.json
index ee09465..362fbd8 100644
--- a/api/FormData.json
+++ b/api/FormData.json
@@ -279,6 +279,9 @@
               "ie": {
                 "version_added": "10"
               },
+              "nodejs": {
+                "version_added": "18.0.0"
+              },
               "oculus": "mirror",
               "opera": {
                 "version_added": "≤15"
@@ -417,7 +420,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "18.0.0"
+              "version_added": "18.4.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/Headers.json b/api/Headers.json
index 3feed27..44f1a04 100644
--- a/api/Headers.json
+++ b/api/Headers.json
@@ -345,9 +345,15 @@
               "version_added": "112"
             },
             "firefox_android": "mirror",
-            "nodejs": {
-              "version_added": "19.7.0"
-            },
+            "nodejs": [
+              {
+                "version_added": "19.7.0"
+              },
+              {
+                "version_added": "18.15.0",
+                "version_removed": "19.0.0"
+              }
+            ],
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
diff --git a/api/Lock.json b/api/Lock.json
index 0f4c0a8..452730a 100644
--- a/api/Lock.json
+++ b/api/Lock.json
@@ -18,7 +18,7 @@
           },
           "firefox_android": "mirror",
           "nodejs": {
-            "version_added": "24.5.0"
+            "version_added": false
           },
           "oculus": "mirror",
           "opera": "mirror",
@@ -55,7 +55,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "24.5.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -93,7 +93,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "24.5.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/LockManager.json b/api/LockManager.json
index d3ec880..91583bb 100644
--- a/api/LockManager.json
+++ b/api/LockManager.json
@@ -18,7 +18,7 @@
           },
           "firefox_android": "mirror",
           "nodejs": {
-            "version_added": "24.5.0"
+            "version_added": false
           },
           "oculus": "mirror",
           "opera": "mirror",
@@ -55,7 +55,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "24.5.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -93,7 +93,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "24.5.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/MessageEvent.json b/api/MessageEvent.json
index da16915..c782c8a 100644
--- a/api/MessageEvent.json
+++ b/api/MessageEvent.json
@@ -181,7 +181,7 @@
               "version_added": "9"
             },
             "nodejs": {
-              "version_added": false
+              "version_added": "22.3.0"
             },
             "oculus": "mirror",
             "opera": {
diff --git a/api/Performance.json b/api/Performance.json
index afdba2b..223c619 100644
--- a/api/Performance.json
+++ b/api/Performance.json
@@ -101,7 +101,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.0.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -534,7 +534,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.0.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -660,7 +660,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "8.5.0"
+                "version_added": "16.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -719,7 +719,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.0.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -845,7 +845,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "8.5.0"
+                "version_added": "16.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -1033,7 +1033,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -1189,7 +1189,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -1292,7 +1292,7 @@
               "version_added": "9"
             },
             "nodejs": {
-              "version_added": "16.1.0"
+              "version_added": "18.8.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/PerformanceEntry.json b/api/PerformanceEntry.json
index 5bea1ae..eb24d71 100644
--- a/api/PerformanceEntry.json
+++ b/api/PerformanceEntry.json
@@ -141,7 +141,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.7.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -192,7 +192,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.7.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -243,7 +243,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.7.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -294,7 +294,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.7.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -342,7 +342,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "16.7.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/PerformanceMark.json b/api/PerformanceMark.json
index 4603187..34276c4 100644
--- a/api/PerformanceMark.json
+++ b/api/PerformanceMark.json
@@ -83,7 +83,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/PerformanceMeasure.json b/api/PerformanceMeasure.json
index fd355da..2ad579b 100644
--- a/api/PerformanceMeasure.json
+++ b/api/PerformanceMeasure.json
@@ -90,7 +90,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/PerformanceObserver.json b/api/PerformanceObserver.json
index dfe3c2f..7aaa4a2 100644
--- a/api/PerformanceObserver.json
+++ b/api/PerformanceObserver.json
@@ -76,7 +76,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -201,7 +201,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -245,7 +245,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -290,7 +290,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -334,7 +334,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/PerformanceObserverEntryList.json b/api/PerformanceObserverEntryList.json
index 9394dbe..81a73ab 100644
--- a/api/PerformanceObserverEntryList.json
+++ b/api/PerformanceObserverEntryList.json
@@ -81,7 +81,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -125,7 +125,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -169,7 +169,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "8.5.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/PerformanceResourceTiming.json b/api/PerformanceResourceTiming.json
index b372fba..4cdf7cf 100644
--- a/api/PerformanceResourceTiming.json
+++ b/api/PerformanceResourceTiming.json
@@ -367,7 +367,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "22.2.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -1134,7 +1134,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "22.2.0"
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/QuotaExceededError.json b/api/QuotaExceededError.json
index 81d9d7c..c3a7876 100644
--- a/api/QuotaExceededError.json
+++ b/api/QuotaExceededError.json
@@ -14,6 +14,9 @@
             "version_added": false
           },
           "firefox_android": "mirror",
+          "nodejs": {
+            "version_added": "26.0.0"
+          },
           "oculus": "mirror",
           "opera": "mirror",
           "opera_android": "mirror",
@@ -46,6 +49,9 @@
               "version_added": false
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "26.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -78,6 +84,9 @@
               "version_added": false
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "26.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -110,6 +119,9 @@
               "version_added": false
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "26.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
diff --git a/api/ReadableByteStreamController.json b/api/ReadableByteStreamController.json
index afcae08..8b62627 100644
--- a/api/ReadableByteStreamController.json
+++ b/api/ReadableByteStreamController.json
@@ -84,7 +84,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -128,7 +128,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -172,7 +172,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -216,7 +216,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -260,7 +260,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/ReadableStream.json b/api/ReadableStream.json
index d8d1563..9d0e365 100644
--- a/api/ReadableStream.json
+++ b/api/ReadableStream.json
@@ -78,7 +78,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -124,7 +124,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -212,7 +212,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -258,7 +258,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -302,7 +302,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -346,7 +346,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -390,7 +390,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0",
+              "version_added": "18.0.0",
               "notes": "Before 18.10.0 or 16.18.0, teeing a readable byte stream is not supported."
             },
             "oculus": "mirror",
@@ -475,7 +475,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -520,7 +520,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/ReadableStreamBYOBReader.json b/api/ReadableStreamBYOBReader.json
index 38e1114..c6e3745 100644
--- a/api/ReadableStreamBYOBReader.json
+++ b/api/ReadableStreamBYOBReader.json
@@ -76,7 +76,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -120,7 +120,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -164,7 +164,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -208,7 +208,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -300,7 +300,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/ReadableStreamBYOBRequest.json b/api/ReadableStreamBYOBRequest.json
index 7b5940f..cdfbb74 100644
--- a/api/ReadableStreamBYOBRequest.json
+++ b/api/ReadableStreamBYOBRequest.json
@@ -75,7 +75,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -119,7 +119,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -163,7 +163,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/ReadableStreamDefaultController.json b/api/ReadableStreamDefaultController.json
index 5e90cb4..a85d280 100644
--- a/api/ReadableStreamDefaultController.json
+++ b/api/ReadableStreamDefaultController.json
@@ -83,7 +83,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -127,7 +127,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -171,7 +171,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -215,7 +215,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/ReadableStreamDefaultReader.json b/api/ReadableStreamDefaultReader.json
index 6faf6b0..28b5fb0 100644
--- a/api/ReadableStreamDefaultReader.json
+++ b/api/ReadableStreamDefaultReader.json
@@ -84,7 +84,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -128,7 +128,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -172,7 +172,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -216,7 +216,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -260,7 +260,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/Request.json b/api/Request.json
index e8f99b5..2a11c15 100644
--- a/api/Request.json
+++ b/api/Request.json
@@ -1228,7 +1228,7 @@
             "firefox_android": "mirror",
             "nodejs": [
               {
-                "version_added": "19.3.0"
+                "version_added": "19.1.0"
               },
               {
                 "version_added": "18.13.0",
diff --git a/api/Response.json b/api/Response.json
index d1b9c07..883c12d 100644
--- a/api/Response.json
+++ b/api/Response.json
@@ -345,9 +345,15 @@
                 "version_added": "102"
               },
               "firefox_android": "mirror",
-              "nodejs": {
-                "version_added": "18.0.0"
-              },
+              "nodejs": [
+                {
+                  "version_added": "21.7.0"
+                },
+                {
+                  "version_added": "20.13.0",
+                  "version_removed": "21.0.0"
+                }
+              ],
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
@@ -727,7 +733,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "18.0.0"
+              "version_added": "18.3.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/Storage.json b/api/Storage.json
index c3940de..5ec3526 100644
--- a/api/Storage.json
+++ b/api/Storage.json
@@ -27,6 +27,9 @@
           "ie": {
             "version_added": "8"
           },
+          "nodejs": {
+            "version_added": "25.0.0"
+          },
           "oculus": "mirror",
           "opera": {
             "version_added": "10.5"
@@ -75,6 +78,9 @@
             "ie": {
               "version_added": "8"
             },
+            "nodejs": {
+              "version_added": "25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "10.5"
@@ -124,6 +130,9 @@
             "ie": {
               "version_added": "8"
             },
+            "nodejs": {
+              "version_added": "25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "10.5"
@@ -173,6 +182,9 @@
             "ie": {
               "version_added": "8"
             },
+            "nodejs": {
+              "version_added": "25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "10.5"
@@ -222,6 +234,9 @@
             "ie": {
               "version_added": "8"
             },
+            "nodejs": {
+              "version_added": "25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "10.5"
@@ -271,6 +286,9 @@
             "ie": {
               "version_added": "8"
             },
+            "nodejs": {
+              "version_added": "25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "10.5"
@@ -320,6 +338,9 @@
             "ie": {
               "version_added": "8"
             },
+            "nodejs": {
+              "version_added": "25.0.0"
+            },
             "oculus": "mirror",
             "opera": {
               "version_added": "10.5"
diff --git a/api/SubtleCrypto.json b/api/SubtleCrypto.json
index 5873ac7..0028055 100644
--- a/api/SubtleCrypto.json
+++ b/api/SubtleCrypto.json
@@ -202,7 +202,7 @@
               "notes": "Returns `CryptoOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -267,7 +267,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": [
                 "Supports: NODE-DH",
                 "Supports: NODE-SCRYPT"
@@ -369,7 +369,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": [
                 "Supports: NODE-DH",
                 "Supports: NODE-SCRYPT"
@@ -416,7 +416,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "15.0.0"
+                "version_added": "19.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -460,7 +460,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "15.0.0"
+                "version_added": "19.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -504,7 +504,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "15.0.0"
+                "version_added": "19.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -548,7 +548,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "15.0.0"
+                "version_added": "19.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -657,7 +657,7 @@
               "notes": "Returns `CryptoOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -730,7 +730,7 @@
               "notes": "Returns `CryptoOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -806,7 +806,7 @@
               "notes": "Returns `KeyOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": [
                 "Supports: NODE-DSA",
                 "Supports: NODE-DH",
@@ -975,7 +975,7 @@
               "notes": "Returns `KeyOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": [
                 "Supports: NODE-DSA",
                 "Supports: NODE-DH"
@@ -1146,7 +1146,7 @@
               "notes": "Returns `KeyOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": [
                 "Supports: NODE-DSA",
                 "Supports: NODE-DH",
@@ -1460,7 +1460,7 @@
               "notes": "Returns `CryptoOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": "Supports: NODE-DSA"
             },
             "oculus": "mirror",
@@ -1565,7 +1565,7 @@
               "notes": "Returns `KeyOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": [
                 "Supports: NODE-DSA",
                 "Supports: NODE-DH"
@@ -1636,7 +1636,7 @@
               "notes": "Returns `CryptoOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0",
+              "version_added": "19.0.0",
               "notes": "Supports: NODE-DSA"
             },
             "oculus": "mirror",
@@ -1740,7 +1740,7 @@
               "notes": "Returns `KeyOperation` instead of `Promise`"
             },
             "nodejs": {
-              "version_added": "15.0.0"
+              "version_added": "19.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/TextDecoderStream.json b/api/TextDecoderStream.json
index cc0f167..94f5fed 100644
--- a/api/TextDecoderStream.json
+++ b/api/TextDecoderStream.json
@@ -76,7 +76,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -120,7 +120,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -164,7 +164,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -208,7 +208,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -252,7 +252,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -296,7 +296,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/TextEncoderStream.json b/api/TextEncoderStream.json
index 76d1e9c..64ce87e 100644
--- a/api/TextEncoderStream.json
+++ b/api/TextEncoderStream.json
@@ -76,7 +76,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -120,7 +120,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -164,7 +164,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -208,7 +208,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.6.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/TransformStream.json b/api/TransformStream.json
index de66eb3..f906350 100644
--- a/api/TransformStream.json
+++ b/api/TransformStream.json
@@ -76,7 +76,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -170,7 +170,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -255,7 +255,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/TransformStreamDefaultController.json b/api/TransformStreamDefaultController.json
index 5ff1e5b..2cdb709 100644
--- a/api/TransformStreamDefaultController.json
+++ b/api/TransformStreamDefaultController.json
@@ -83,7 +83,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -127,7 +127,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -171,7 +171,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -215,7 +215,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/URL.json b/api/URL.json
index 277033c..931c7f2 100644
--- a/api/URL.json
+++ b/api/URL.json
@@ -494,9 +494,15 @@
               "version_added": "126"
             },
             "firefox_android": "mirror",
-            "nodejs": {
-              "version_added": "22.1.0"
-            },
+            "nodejs": [
+              {
+                "version_added": "22.1.0"
+              },
+              {
+                "version_added": "20.18.0",
+                "version_removed": "21.0.0"
+              }
+            ],
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
diff --git a/api/URLPattern.json b/api/URLPattern.json
index 09a3867..cf6f67f 100644
--- a/api/URLPattern.json
+++ b/api/URLPattern.json
@@ -23,6 +23,9 @@
             "version_added": "142"
           },
           "firefox_android": "mirror",
+          "nodejs": {
+            "version_added": "24.0.0"
+          },
           "oculus": "mirror",
           "opera": "mirror",
           "opera_android": "mirror",
@@ -64,6 +67,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -104,6 +110,9 @@
                 "version_added": "142"
               },
               "firefox_android": "mirror",
+              "nodejs": {
+                "version_added": "24.0.0"
+              },
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
@@ -146,6 +155,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -187,6 +199,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -228,6 +243,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -269,6 +287,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -310,6 +331,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -351,6 +375,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -392,6 +419,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -433,6 +463,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -474,6 +507,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -515,6 +551,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
@@ -556,6 +595,9 @@
               "version_added": "142"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "24.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
diff --git a/api/Worker.json b/api/Worker.json
index efcb62b..415b41a 100644
--- a/api/Worker.json
+++ b/api/Worker.json
@@ -29,13 +29,7 @@
             "version_added": "10"
           },
           "nodejs": {
-            "version_added": "11.7.0",
-            "partial_implementation": true,
-            "notes": [
-              "Inherits from a Node `EventEmitter` instead of DOM `EventTarget`.",
-              "Also supports CommonJS modules, enabled for files ending with `.cjs` and for files ending with `.js` when the nearest parent `package.json` file contains a top-level field `\"type\"` with a value not of `\"commonjs\"`.",
-              "Available as a part of the `worker_threads` module."
-            ]
+            "version_added": false
           },
           "oculus": "mirror",
           "opera": {
@@ -90,9 +84,7 @@
               "version_added": "10"
             },
             "nodejs": {
-              "version_added": "11.7.0",
-              "partial_implementation": true,
-              "notes": "Takes entirely different options parameters."
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": {
@@ -597,12 +589,7 @@
               "notes": "Internet Explorer does not support `Transferable` objects."
             },
             "nodejs": {
-              "version_added": "11.7.0",
-              "partial_implementation": true,
-              "notes": [
-                "Only accepts an array of transfer objects as the second parameter, not an options object with a `transfer` property.",
-                "Only supports transferring `ArrayBuffer` and `MessagePort` objects."
-              ]
+              "version_added": false
             },
             "oculus": "mirror",
             "opera": {
diff --git a/api/WritableStream.json b/api/WritableStream.json
index 0563236..5f8c797 100644
--- a/api/WritableStream.json
+++ b/api/WritableStream.json
@@ -84,7 +84,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -134,7 +134,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -182,7 +182,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -228,7 +228,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -278,7 +278,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": {
diff --git a/api/WritableStreamDefaultController.json b/api/WritableStreamDefaultController.json
index 775f6d6..8db6442 100644
--- a/api/WritableStreamDefaultController.json
+++ b/api/WritableStreamDefaultController.json
@@ -79,7 +79,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -120,7 +120,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/WritableStreamDefaultWriter.json b/api/WritableStreamDefaultWriter.json
index 1f8643b..f24bdd5 100644
--- a/api/WritableStreamDefaultWriter.json
+++ b/api/WritableStreamDefaultWriter.json
@@ -78,7 +78,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -124,7 +124,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -170,7 +170,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -216,7 +216,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -262,7 +262,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -308,7 +308,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -354,7 +354,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -400,7 +400,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": "16.5.0"
+              "version_added": "18.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/api/_globals/console.json b/api/_globals/console.json
index 864e8a7..411c08b 100644
--- a/api/_globals/console.json
+++ b/api/_globals/console.json
@@ -452,7 +452,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "0.12.0"
+                "version_added": false
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -492,7 +492,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "0.12.0"
+                "version_added": false
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -529,7 +529,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "0.12.0"
+                "version_added": false
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -1025,13 +1025,7 @@
               "version_added": "9"
             },
             "nodejs": {
-              "version_added": "8.0.0",
-              "flags": [
-                {
-                  "type": "runtime_flag",
-                  "name": "--inspect"
-                }
-              ]
+              "version_added": "≤15.3.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -1090,13 +1084,7 @@
               "version_added": "9"
             },
             "nodejs": {
-              "version_added": "8.0.0",
-              "flags": [
-                {
-                  "type": "runtime_flag",
-                  "name": "--inspect"
-                }
-              ]
+              "version_added": "≤15.3.0"
             },
             "oculus": "mirror",
             "opera": {
@@ -1432,13 +1420,7 @@
               "version_added": "11"
             },
             "nodejs": {
-              "version_added": "8.0.0",
-              "flags": [
-                {
-                  "type": "runtime_flag",
-                  "name": "--inspect"
-                }
-              ]
+              "version_added": "≤15.3.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
diff --git a/browsers/nodejs.json b/browsers/nodejs.json
index 755e563..ffb0096 100644
--- a/browsers/nodejs.json
+++ b/browsers/nodejs.json
@@ -307,6 +307,13 @@
           "engine": "V8",
           "engine_version": "8.6"
         },
+        "15.3.0": {
+          "release_date": "2020-11-24",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.3.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
         "15.4.0": {
           "release_date": "2020-12-09",
           "release_notes": "https://nodejs.org/en/blog/release/v15.4.0/",
@@ -314,6 +321,20 @@
           "engine": "V8",
           "engine_version": "8.6"
         },
+        "15.5.0": {
+          "release_date": "2020-12-22",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.5.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
+        "15.6.0": {
+          "release_date": "2021-01-15",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.6.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
         "15.7.0": {
           "release_date": "2021-01-26",
           "release_notes": "https://nodejs.org/en/blog/release/v15.7.0/",
@@ -321,6 +342,34 @@
           "engine": "V8",
           "engine_version": "8.6"
         },
+        "15.8.0": {
+          "release_date": "2021-02-02",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.8.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
+        "15.9.0": {
+          "release_date": "2021-02-18",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.9.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
+        "15.10.0": {
+          "release_date": "2021-02-23",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.10.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
+        "15.11.0": {
+          "release_date": "2021-03-03",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.11.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
         "15.12.0": {
           "release_date": "2021-03-17",
           "release_notes": "https://nodejs.org/en/blog/release/v15.12.0/",
@@ -328,6 +377,20 @@
           "engine": "V8",
           "engine_version": "8.6"
         },
+        "15.13.0": {
+          "release_date": "2021-03-31",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.13.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
+        "15.14.0": {
+          "release_date": "2021-04-06",
+          "release_notes": "https://nodejs.org/en/blog/release/v15.14.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "8.6"
+        },
         "16.0.0": {
           "release_date": "2021-04-20",
           "release_notes": "https://nodejs.org/en/blog/release/v16.0.0/",
@@ -342,6 +405,20 @@
           "engine": "V8",
           "engine_version": "9.0"
         },
+        "16.2.0": {
+          "release_date": "2021-05-19",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.2.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.0"
+        },
+        "16.3.0": {
+          "release_date": "2021-06-03",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.3.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.0"
+        },
         "16.4.0": {
           "release_date": "2021-06-23",
           "release_notes": "https://nodejs.org/en/blog/release/v16.4.0/",
@@ -370,6 +447,13 @@
           "engine": "V8",
           "engine_version": "9.2"
         },
+        "16.8.0": {
+          "release_date": "2021-08-25",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.8.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.2"
+        },
         "16.9.0": {
           "release_date": "2021-09-07",
           "release_notes": "https://nodejs.org/en/blog/release/v16.9.0/",
@@ -377,6 +461,13 @@
           "engine": "V8",
           "engine_version": "9.3"
         },
+        "16.10.0": {
+          "release_date": "2021-09-22",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.10.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.3"
+        },
         "16.11.0": {
           "release_date": "2021-10-08",
           "release_notes": "https://nodejs.org/en/blog/release/v16.11.0/",
@@ -384,6 +475,20 @@
           "engine": "V8",
           "engine_version": "9.4"
         },
+        "16.12.0": {
+          "release_date": "2021-10-20",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.12.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.4"
+        },
+        "16.13.0": {
+          "release_date": "2021-10-26",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.13.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.4"
+        },
         "16.14.0": {
           "release_date": "2022-02-08",
           "release_notes": "https://nodejs.org/en/blog/release/v16.14.0/",
@@ -398,6 +503,13 @@
           "engine": "V8",
           "engine_version": "9.4"
         },
+        "16.16.0": {
+          "release_date": "2022-07-07",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.16.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.4"
+        },
         "16.17.0": {
           "release_date": "2022-08-16",
           "release_notes": "https://nodejs.org/en/blog/release/v16.17.0/",
@@ -405,6 +517,27 @@
           "engine": "V8",
           "engine_version": "9.4"
         },
+        "16.18.0": {
+          "release_date": "2022-10-12",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.18.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.4"
+        },
+        "16.19.0": {
+          "release_date": "2022-12-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.19.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.4"
+        },
+        "16.20.0": {
+          "release_date": "2023-03-29",
+          "release_notes": "https://nodejs.org/en/blog/release/v16.20.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.4"
+        },
         "17.0.0": {
           "release_date": "2021-10-19",
           "release_notes": "https://nodejs.org/en/blog/release/v17.0.0/",
@@ -412,6 +545,13 @@
           "engine": "V8",
           "engine_version": "9.5"
         },
+        "17.1.0": {
+          "release_date": "2021-11-09",
+          "release_notes": "https://nodejs.org/en/blog/release/v17.1.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.5"
+        },
         "17.2.0": {
           "release_date": "2021-11-30",
           "release_notes": "https://nodejs.org/en/blog/release/v17.2.0/",
@@ -440,6 +580,34 @@
           "engine": "V8",
           "engine_version": "9.6"
         },
+        "17.6.0": {
+          "release_date": "2022-02-23",
+          "release_notes": "https://nodejs.org/en/blog/release/v17.6.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.6"
+        },
+        "17.7.0": {
+          "release_date": "2022-03-09",
+          "release_notes": "https://nodejs.org/en/blog/release/v17.7.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.6"
+        },
+        "17.8.0": {
+          "release_date": "2022-03-22",
+          "release_notes": "https://nodejs.org/en/blog/release/v17.8.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.6"
+        },
+        "17.9.0": {
+          "release_date": "2022-04-07",
+          "release_notes": "https://nodejs.org/en/blog/release/v17.9.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "9.6"
+        },
         "18.0.0": {
           "release_date": "2022-04-19",
           "release_notes": "https://nodejs.org/en/blog/release/v18.0.0/",
@@ -461,6 +629,27 @@
           "engine": "V8",
           "engine_version": "10.1"
         },
+        "18.3.0": {
+          "release_date": "2022-06-02",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.3.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.2"
+        },
+        "18.4.0": {
+          "release_date": "2022-06-16",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.4.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.2"
+        },
+        "18.5.0": {
+          "release_date": "2022-07-07",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.5.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.2"
+        },
         "18.6.0": {
           "release_date": "2022-07-13",
           "release_notes": "https://nodejs.org/en/blog/release/v18.6.0/",
@@ -489,6 +678,27 @@
           "engine": "V8",
           "engine_version": "10.1"
         },
+        "18.10.0": {
+          "release_date": "2022-09-28",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.10.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.1"
+        },
+        "18.11.0": {
+          "release_date": "2022-10-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.11.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.1"
+        },
+        "18.12.0": {
+          "release_date": "2022-10-25",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.12.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.1"
+        },
         "18.13.0": {
           "release_date": "2023-01-06",
           "release_notes": "https://nodejs.org/en/blog/release/v18.13.0/",
@@ -496,6 +706,20 @@
           "engine": "V8",
           "engine_version": "10.1"
         },
+        "18.14.0": {
+          "release_date": "2023-02-02",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.14.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.1"
+        },
+        "18.15.0": {
+          "release_date": "2023-03-07",
+          "release_notes": "https://nodejs.org/en/blog/release/v18.15.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.1"
+        },
         "18.16.0": {
           "release_date": "2023-04-13",
           "release_notes": "https://nodejs.org/en/blog/release/v18.16.0/",
@@ -559,6 +783,13 @@
           "engine": "V8",
           "engine_version": "10.7"
         },
+        "19.4.0": {
+          "release_date": "2023-01-06",
+          "release_notes": "https://nodejs.org/en/blog/release/v19.4.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.7"
+        },
         "19.5.0": {
           "release_date": "2023-01-24",
           "release_notes": "https://nodejs.org/en/blog/release/v19.5.0/",
@@ -566,6 +797,13 @@
           "engine": "V8",
           "engine_version": "10.7"
         },
+        "19.6.0": {
+          "release_date": "2023-02-02",
+          "release_notes": "https://nodejs.org/en/blog/release/v19.6.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "10.7"
+        },
         "19.7.0": {
           "release_date": "2023-02-21",
           "release_notes": "https://nodejs.org/en/blog/release/v19.7.0",
@@ -622,6 +860,13 @@
           "engine": "V8",
           "engine_version": "11.3"
         },
+        "20.5.0": {
+          "release_date": "2023-07-20",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.5.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
         "20.6.0": {
           "release_date": "2023-09-04",
           "release_notes": "https://nodejs.org/en/blog/release/v20.6.0",
@@ -629,6 +874,13 @@
           "engine": "V8",
           "engine_version": "11.3"
         },
+        "20.7.0": {
+          "release_date": "2023-09-18",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.7.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
         "20.8.0": {
           "release_date": "2023-09-29",
           "release_notes": "https://nodejs.org/en/blog/release/v20.8.0",
@@ -636,6 +888,13 @@
           "engine": "V8",
           "engine_version": "11.3"
         },
+        "20.9.0": {
+          "release_date": "2023-10-24",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.9.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
         "20.10.0": {
           "release_date": "2023-11-22",
           "release_notes": "https://nodejs.org/en/blog/release/v20.10.0",
@@ -643,6 +902,13 @@
           "engine": "V8",
           "engine_version": "11.3"
         },
+        "20.11.0": {
+          "release_date": "2024-01-10",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.11.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.1"
+        },
         "20.12.0": {
           "release_date": "2024-03-26",
           "release_notes": "https://nodejs.org/en/blog/release/v20.12.0",
@@ -650,6 +916,13 @@
           "engine": "V8",
           "engine_version": "11.3"
         },
+        "20.13.0": {
+          "release_date": "2024-05-07",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.13.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
         "20.14.0": {
           "release_date": "2024-05-28",
           "release_notes": "https://nodejs.org/en/blog/release/v20.14.0",
@@ -657,6 +930,13 @@
           "engine": "V8",
           "engine_version": "11.3"
         },
+        "20.15.0": {
+          "release_date": "2024-06-20",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.15.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
         "20.16.0": {
           "release_date": "2024-07-24",
           "release_notes": "https://nodejs.org/en/blog/release/v20.16.0",
@@ -671,6 +951,27 @@
           "engine": "V8",
           "engine_version": "11.3"
         },
+        "20.18.0": {
+          "release_date": "2024-10-03",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.18.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
+        "20.19.0": {
+          "release_date": "2025-03-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.19.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
+        "20.20.0": {
+          "release_date": "2026-01-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v20.20.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.3"
+        },
         "21.0.0": {
           "release_date": "2023-10-17",
           "release_notes": "https://nodejs.org/en/blog/release/v21.0.0",
@@ -692,6 +993,20 @@
           "engine": "V8",
           "engine_version": "11.8"
         },
+        "21.3.0": {
+          "release_date": "2023-11-30",
+          "release_notes": "https://nodejs.org/en/blog/release/v21.3.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.1"
+        },
+        "21.4.0": {
+          "release_date": "2023-12-05",
+          "release_notes": "https://nodejs.org/en/blog/release/v21.4.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.1"
+        },
         "21.5.0": {
           "release_date": "2023-12-19",
           "release_notes": "https://nodejs.org/en/blog/release/v21.5.0",
@@ -699,6 +1014,13 @@
           "engine": "V8",
           "engine_version": "11.8"
         },
+        "21.6.0": {
+          "release_date": "2024-01-15",
+          "release_notes": "https://nodejs.org/en/blog/release/v21.6.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "11.8"
+        },
         "21.7.0": {
           "release_date": "2024-03-06",
           "release_notes": "https://nodejs.org/en/blog/release/v21.7.0",
@@ -734,6 +1056,139 @@
           "engine": "V8",
           "engine_version": "12.4"
         },
+        "22.4.0": {
+          "release_date": "2024-07-02",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.4.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.5.0": {
+          "release_date": "2024-07-17",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.5.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.6.0": {
+          "release_date": "2024-08-06",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.6.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.7.0": {
+          "release_date": "2024-08-22",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.7.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.8.0": {
+          "release_date": "2024-09-03",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.8.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.9.0": {
+          "release_date": "2024-09-17",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.9.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.10.0": {
+          "release_date": "2024-10-16",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.10.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.11.0": {
+          "release_date": "2024-10-29",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.11.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.12.0": {
+          "release_date": "2024-12-03",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.12.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.13.0": {
+          "release_date": "2025-01-07",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.13.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.14.0": {
+          "release_date": "2025-02-11",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.14.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.15.0": {
+          "release_date": "2025-04-23",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.15.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.16.0": {
+          "release_date": "2025-05-21",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.16.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.17.0": {
+          "release_date": "2025-06-25",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.17.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.18.0": {
+          "release_date": "2025-07-31",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.18.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.19.0": {
+          "release_date": "2025-08-28",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.19.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.20.0": {
+          "release_date": "2025-09-24",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.20.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.21.0": {
+          "release_date": "2025-10-20",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.21.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
+        "22.22.0": {
+          "release_date": "2026-01-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v22.22.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.4"
+        },
         "23.0.0": {
           "release_date": "2024-10-16",
           "release_notes": "https://nodejs.org/en/blog/release/v23.0.0",
@@ -741,6 +1196,83 @@
           "engine": "V8",
           "engine_version": "12.9"
         },
+        "23.1.0": {
+          "release_date": "2024-10-24",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.1.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.2.0": {
+          "release_date": "2024-11-11",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.2.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.3.0": {
+          "release_date": "2024-11-20",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.3.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.4.0": {
+          "release_date": "2024-12-10",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.4.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.5.0": {
+          "release_date": "2024-12-19",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.5.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.6.0": {
+          "release_date": "2025-01-07",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.6.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.7.0": {
+          "release_date": "2025-01-30",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.7.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.8.0": {
+          "release_date": "2025-02-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.8.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.9.0": {
+          "release_date": "2025-02-26",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.9.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.10.0": {
+          "release_date": "2025-03-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.10.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
+        "23.11.0": {
+          "release_date": "2025-04-01",
+          "release_notes": "https://nodejs.org/en/blog/release/v23.11.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "12.9"
+        },
         "24.0.0": {
           "release_date": "2025-05-06",
           "release_notes": "https://nodejs.org/en/blog/release/v24.0.0",
@@ -825,6 +1357,34 @@
           "engine": "V8",
           "engine_version": "13.6"
         },
+        "24.12.0": {
+          "release_date": "2025-12-10",
+          "release_notes": "https://nodejs.org/en/blog/release/v24.12.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "13.6"
+        },
+        "24.13.0": {
+          "release_date": "2026-01-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v24.13.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "13.6"
+        },
+        "24.14.0": {
+          "release_date": "2026-02-24",
+          "release_notes": "https://nodejs.org/en/blog/release/v24.14.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "13.6"
+        },
+        "24.15.0": {
+          "release_date": "2026-04-16",
+          "release_notes": "https://nodejs.org/en/blog/release/v24.15.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "13.6"
+        },
         "25.0.0": {
           "release_date": "2025-10-15",
           "release_notes": "https://nodejs.org/en/blog/release/v25.0.0",
@@ -846,6 +1406,55 @@
           "engine": "V8",
           "engine_version": "14.1"
         },
+        "25.3.0": {
+          "release_date": "2026-01-13",
+          "release_notes": "https://nodejs.org/en/blog/release/v25.3.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "14.1"
+        },
+        "25.4.0": {
+          "release_date": "2026-01-19",
+          "release_notes": "https://nodejs.org/en/blog/release/v25.4.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "14.1"
+        },
+        "25.5.0": {
+          "release_date": "2026-01-26",
+          "release_notes": "https://nodejs.org/en/blog/release/v25.5.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "14.1"
+        },
+        "25.6.0": {
+          "release_date": "2026-02-03",
+          "release_notes": "https://nodejs.org/en/blog/release/v25.6.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "14.1"
+        },
+        "25.7.0": {
+          "release_date": "2026-02-24",
+          "release_notes": "https://nodejs.org/en/blog/release/v25.7.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "14.1"
+        },
+        "25.8.0": {
+          "release_date": "2026-03-03",
+          "release_notes": "https://nodejs.org/en/blog/release/v25.8.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "14.1"
+        },
+        "25.9.0": {
+          "release_date": "2026-04-01",
+          "release_notes": "https://nodejs.org/en/blog/release/v25.9.0",
+          "status": "retired",
+          "engine": "V8",
+          "engine_version": "14.1"
+        },
         "26.0.0": {
           "release_date": "2026-05-05",
           "release_notes": "https://nodejs.org/en/blog/release/v26.0.0",
diff --git a/javascript/builtins/AsyncIterator.json b/javascript/builtins/AsyncIterator.json
index 08ea6c7..25c5f87 100644
--- a/javascript/builtins/AsyncIterator.json
+++ b/javascript/builtins/AsyncIterator.json
@@ -69,7 +69,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "24.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
diff --git a/javascript/builtins/Atomics.json b/javascript/builtins/Atomics.json
index bb3352b..edbe7e0 100644
--- a/javascript/builtins/Atomics.json
+++ b/javascript/builtins/Atomics.json
@@ -492,7 +492,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "24.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
diff --git a/javascript/builtins/Error.json b/javascript/builtins/Error.json
index ecc33cc..72bf3c0 100644
--- a/javascript/builtins/Error.json
+++ b/javascript/builtins/Error.json
@@ -705,7 +705,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": "16.17.0"
+                "version_added": "≤15.3.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
diff --git a/javascript/builtins/FinalizationRegistry.json b/javascript/builtins/FinalizationRegistry.json
index c4cf46d..cd76369 100644
--- a/javascript/builtins/FinalizationRegistry.json
+++ b/javascript/builtins/FinalizationRegistry.json
@@ -158,9 +158,15 @@
                   "version_added": "146"
                 },
                 "firefox_android": "mirror",
-                "nodejs": {
-                  "version_added": "20.0.0"
-                },
+                "nodejs": [
+                  {
+                    "version_added": "20.0.0"
+                  },
+                  {
+                    "version_added": "18.20.0",
+                    "version_removed": "19.0.0"
+                  }
+                ],
                 "oculus": "mirror",
                 "opera": "mirror",
                 "opera_android": "mirror",
diff --git a/javascript/builtins/Intl/DateTimeFormat.json b/javascript/builtins/Intl/DateTimeFormat.json
index 2f640b7..6e5de90 100644
--- a/javascript/builtins/Intl/DateTimeFormat.json
+++ b/javascript/builtins/Intl/DateTimeFormat.json
@@ -391,7 +391,7 @@
                     },
                     "firefox_android": "mirror",
                     "nodejs": {
-                      "version_added": false
+                      "version_added": "16.6.0"
                     },
                     "oculus": "mirror",
                     "opera": "mirror",
diff --git a/javascript/builtins/Intl/PluralRules.json b/javascript/builtins/Intl/PluralRules.json
index f1dad7f..30ced0e 100644
--- a/javascript/builtins/Intl/PluralRules.json
+++ b/javascript/builtins/Intl/PluralRules.json
@@ -125,7 +125,7 @@
                   },
                   "firefox_android": "mirror",
                   "nodejs": {
-                    "version_added": false
+                    "version_added": "19.0.0"
                   },
                   "opera": "mirror",
                   "opera_android": "mirror",
@@ -208,7 +208,7 @@
                     },
                     "firefox_android": "mirror",
                     "nodejs": {
-                      "version_added": false
+                      "version_added": "21.0.0"
                     },
                     "opera": "mirror",
                     "opera_android": "mirror",
@@ -250,7 +250,7 @@
                     },
                     "firefox_android": "mirror",
                     "nodejs": {
-                      "version_added": false
+                      "version_added": "19.0.0"
                     },
                     "opera": "mirror",
                     "opera_android": "mirror",
diff --git a/javascript/builtins/Iterator.json b/javascript/builtins/Iterator.json
index 9b77e4f..5875acf 100644
--- a/javascript/builtins/Iterator.json
+++ b/javascript/builtins/Iterator.json
@@ -852,7 +852,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "24.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
diff --git a/javascript/builtins/Map.json b/javascript/builtins/Map.json
index a502898..c2c1d38 100644
--- a/javascript/builtins/Map.json
+++ b/javascript/builtins/Map.json
@@ -463,6 +463,9 @@
                 "version_added": "144"
               },
               "firefox_android": "mirror",
+              "nodejs": {
+                "version_added": "26.0.0"
+              },
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
@@ -501,6 +504,9 @@
                 "version_added": "144"
               },
               "firefox_android": "mirror",
+              "nodejs": {
+                "version_added": "26.0.0"
+              },
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
diff --git a/javascript/builtins/SuppressedError.json b/javascript/builtins/SuppressedError.json
index 131fbfe..2c3702b 100644
--- a/javascript/builtins/SuppressedError.json
+++ b/javascript/builtins/SuppressedError.json
@@ -25,7 +25,7 @@
             },
             "firefox_android": "mirror",
             "nodejs": {
-              "version_added": false
+              "version_added": "24.0.0"
             },
             "oculus": "mirror",
             "opera": "mirror",
@@ -68,7 +68,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "24.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -112,7 +112,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "24.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -156,7 +156,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "24.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
diff --git a/javascript/builtins/Symbol.json b/javascript/builtins/Symbol.json
index 7479531..6bad86e 100644
--- a/javascript/builtins/Symbol.json
+++ b/javascript/builtins/Symbol.json
@@ -121,19 +121,11 @@
               "firefox_android": "mirror",
               "nodejs": [
                 {
-                  "version_added": "24.0.0"
-                },
-                {
-                  "version_added": "20.4.0",
-                  "version_removed": "21.0.0",
-                  "partial_implementation": true,
-                  "notes": "Only available for `fs` and `stream` resources."
+                  "version_added": "20.4.0"
                 },
                 {
                   "version_added": "18.18.0",
-                  "version_removed": "19.0.0",
-                  "partial_implementation": true,
-                  "notes": "Only available for `fs` and `stream` resources."
+                  "version_removed": "19.0.0"
                 }
               ],
               "oculus": "mirror",
@@ -277,19 +269,11 @@
               "firefox_android": "mirror",
               "nodejs": [
                 {
-                  "version_added": "24.0.0"
-                },
-                {
-                  "version_added": "20.4.0",
-                  "version_removed": "21.0.0",
-                  "partial_implementation": true,
-                  "notes": "Only available for `fs` and `stream` resources."
+                  "version_added": "20.4.0"
                 },
                 {
                   "version_added": "18.18.0",
-                  "version_removed": "19.0.0",
-                  "partial_implementation": true,
-                  "notes": "Only available for `fs` and `stream` resources."
+                  "version_removed": "19.0.0"
                 }
               ],
               "oculus": "mirror",
diff --git a/javascript/builtins/TypedArray.json b/javascript/builtins/TypedArray.json
index 148815d..1129856 100644
--- a/javascript/builtins/TypedArray.json
+++ b/javascript/builtins/TypedArray.json
@@ -742,7 +742,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "18.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
@@ -787,7 +787,7 @@
               },
               "firefox_android": "mirror",
               "nodejs": {
-                "version_added": false
+                "version_added": "18.0.0"
               },
               "oculus": "mirror",
               "opera": "mirror",
diff --git a/javascript/builtins/WeakMap.json b/javascript/builtins/WeakMap.json
index 6eddf0e..d41c59c 100644
--- a/javascript/builtins/WeakMap.json
+++ b/javascript/builtins/WeakMap.json
@@ -126,7 +126,7 @@
                 },
                 "firefox_android": "mirror",
                 "nodejs": {
-                  "version_added": "0.12.0"
+                  "version_added": false
                 },
                 "oculus": "mirror",
                 "opera": "mirror",
@@ -318,6 +318,9 @@
                 "version_added": "144"
               },
               "firefox_android": "mirror",
+              "nodejs": {
+                "version_added": "26.0.0"
+              },
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
@@ -356,6 +359,9 @@
                 "version_added": "144"
               },
               "firefox_android": "mirror",
+              "nodejs": {
+                "version_added": "26.0.0"
+              },
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
@@ -501,9 +507,15 @@
                 "version_added": "146"
               },
               "firefox_android": "mirror",
-              "nodejs": {
-                "version_added": "20.1.0"
-              },
+              "nodejs": [
+                {
+                  "version_added": "20.0.0"
+                },
+                {
+                  "version_added": "18.20.0",
+                  "version_removed": "19.0.0"
+                }
+              ],
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
diff --git a/javascript/builtins/WeakRef.json b/javascript/builtins/WeakRef.json
index 6d54ef1..b970b89 100644
--- a/javascript/builtins/WeakRef.json
+++ b/javascript/builtins/WeakRef.json
@@ -113,9 +113,15 @@
                   "version_added": "146"
                 },
                 "firefox_android": "mirror",
-                "nodejs": {
-                  "version_added": "20.0.0"
-                },
+                "nodejs": [
+                  {
+                    "version_added": "20.0.0"
+                  },
+                  {
+                    "version_added": "18.20.0",
+                    "version_removed": "19.0.0"
+                  }
+                ],
                 "oculus": "mirror",
                 "opera": "mirror",
                 "opera_android": "mirror",
diff --git a/javascript/builtins/WeakSet.json b/javascript/builtins/WeakSet.json
index d85fb3b..adb3c99 100644
--- a/javascript/builtins/WeakSet.json
+++ b/javascript/builtins/WeakSet.json
@@ -120,7 +120,7 @@
                 },
                 "firefox_android": "mirror",
                 "nodejs": {
-                  "version_added": "0.12.0"
+                  "version_added": false
                 },
                 "oculus": "mirror",
                 "opera": "mirror",
@@ -351,9 +351,15 @@
                 "version_added": "146"
               },
               "firefox_android": "mirror",
-              "nodejs": {
-                "version_added": "20.0.0"
-              },
+              "nodejs": [
+                {
+                  "version_added": "20.0.0"
+                },
+                {
+                  "version_added": "18.20.0",
+                  "version_removed": "19.0.0"
+                }
+              ],
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
diff --git a/webassembly/api.json b/webassembly/api.json
index 40f40dd..aa9b22f 100644
--- a/webassembly/api.json
+++ b/webassembly/api.json
@@ -59,6 +59,9 @@
               "version_added": "131"
             },
             "firefox_android": "mirror",
+            "nodejs": {
+              "version_added": "21.0.0"
+            },
             "oculus": "mirror",
             "opera": "mirror",
             "opera_android": "mirror",
diff --git a/webassembly/api/Memory.json b/webassembly/api/Memory.json
index fc3c925..45fe79d 100644
--- a/webassembly/api/Memory.json
+++ b/webassembly/api/Memory.json
@@ -244,6 +244,9 @@
                 "version_added": "145"
               },
               "firefox_android": "mirror",
+              "nodejs": {
+                "version_added": "26.0.0"
+              },
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",
@@ -275,6 +278,9 @@
                 "version_added": "145"
               },
               "firefox_android": "mirror",
+              "nodejs": {
+                "version_added": "26.0.0"
+              },
               "oculus": "mirror",
               "opera": "mirror",
               "opera_android": "mirror",