@rescript/webapi 0.1.0-experimental-2d6efc2 → 0.1.0-experimental-0781ac8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/README.md +10 -5
  2. package/package.json +6 -4
  3. package/rescript.json +591 -4
  4. package/src/Base/ArrayBufferTypedArrayOrDataView.res +4 -0
  5. package/src/Base/BaseCSSFontLoading.res +25 -0
  6. package/src/{EncryptedMediaExtensionsAPI.res → Base/BaseEncryptedMediaExtensions.res} +12 -18
  7. package/src/Base/BaseEvent.res +6 -0
  8. package/src/Base/BaseFile.res +37 -0
  9. package/src/{FileAndDirectoryEntriesAPI.res → Base/BaseFileAndDirectoryEntries.res} +5 -22
  10. package/src/{DOMAPI.res → Base/DOM.res} +225 -2237
  11. package/src/{CSSFontLoadingAPI.res → CSSFontLoading/CssFontLoadingTypes.res} +4 -15
  12. package/src/CSSFontLoading/FontFace.res +62 -0
  13. package/src/CSSFontLoading/FontFaceSet.res +38 -0
  14. package/src/Canvas/Canvas.res +179 -0
  15. package/src/{CanvasAPI → Canvas}/CanvasGradient.res +2 -3
  16. package/src/{CanvasAPI → Canvas}/CanvasPattern.res +3 -3
  17. package/src/{DOMAPI → Canvas}/CanvasRenderingContext2D.res +178 -140
  18. package/src/{CanvasAPI.res → Canvas/CanvasTypes.res} +9 -11
  19. package/src/Canvas/FillStyle.res +25 -0
  20. package/src/{DOMAPI → Canvas}/HTMLCanvasElement.res +21 -23
  21. package/src/{CanvasAPI → Canvas}/ImageBitmap.res +1 -3
  22. package/src/{CanvasAPI → Canvas}/ImageBitmapRenderingContext.res +4 -4
  23. package/src/{CanvasAPI → Canvas}/OffscreenCanvas.res +19 -19
  24. package/src/{CanvasAPI → Canvas}/Path2D.res +63 -19
  25. package/src/Canvas/VideoFrame.res +223 -0
  26. package/src/{ChannelMessagingAPI.res → ChannelMessaging/ChannelMessagingTypes.res} +2 -4
  27. package/src/{ChannelMessagingAPI → ChannelMessaging}/MessagePort.res +8 -10
  28. package/src/Clipboard/Clipboard.res +29 -0
  29. package/src/{ClipboardAPI → Clipboard}/ClipboardItem.res +5 -6
  30. package/src/{ClipboardAPI.res → Clipboard/ClipboardTypes.res} +5 -7
  31. package/src/{CredentialManagementAPI.res → CredentialManagement/CredentialManagementTypes.res} +10 -13
  32. package/src/CredentialManagement/CredentialsContainer.res +33 -0
  33. package/src/{DOMAPI → DOM}/Animation.res +13 -13
  34. package/src/{DOMAPI → DOM}/AnimationEffect.res +7 -5
  35. package/src/{DOMAPI → DOM}/CSSRuleList.res +1 -3
  36. package/src/{DOMAPI → DOM}/CSSStyleDeclaration.res +6 -7
  37. package/src/DOM/CSSStyleSheet.res +30 -0
  38. package/src/{DOMAPI → DOM}/CSSStyleValue.res +3 -4
  39. package/src/DOM/CaretPosition.res +2 -0
  40. package/src/{DOMAPI → DOM}/CharacterData.res +5 -7
  41. package/src/DOM/Comment.res +7 -0
  42. package/src/{DOMAPI → DOM}/CustomElementRegistry.res +10 -9
  43. package/src/DOM/DOMException.res +7 -0
  44. package/src/{DOMAPI → DOM}/DOMImplementation.res +6 -8
  45. package/src/DOM/DOMMatrix.res +228 -0
  46. package/src/DOM/DOMMatrixReadOnly.res +147 -0
  47. package/src/DOM/DOMPoint.res +31 -0
  48. package/src/{DOMAPI → DOM}/DOMPointReadOnly.res +7 -7
  49. package/src/{DOMAPI → DOM}/DOMRect.res +6 -7
  50. package/src/DOM/DOMRectList.res +2 -0
  51. package/src/DOM/DOMRectReadOnly.res +19 -0
  52. package/src/{Prelude → DOM}/DOMStringList.res +3 -3
  53. package/src/{DOMAPI → DOM}/DOMTokenList.res +7 -9
  54. package/src/{DOMAPI → DOM}/Document.res +94 -80
  55. package/src/{DOMAPI → DOM}/DocumentFragment.res +10 -11
  56. package/src/DOM/DocumentTimeline.res +8 -0
  57. package/src/{Global.res → DOM/DomGlobal.res} +62 -285
  58. package/src/{DOMAPI/HTMLMediaElement.res → DOM/DomHTMLMediaElement.res} +6 -16
  59. package/src/DOM/DomTypes.res +2105 -0
  60. package/src/{DOMAPI → DOM}/Element.res +53 -44
  61. package/src/{DOMAPI → DOM}/ElementInternals.res +6 -8
  62. package/src/{DOMAPI → DOM}/FileList.res +2 -5
  63. package/src/DOM/HTMLAnchorElement.res +1 -0
  64. package/src/DOM/HTMLAreaElement.res +1 -0
  65. package/src/DOM/HTMLAudioElement.res +1 -0
  66. package/src/DOM/HTMLBRElement.res +1 -0
  67. package/src/DOM/HTMLBaseElement.res +1 -0
  68. package/src/DOM/HTMLBodyElement.res +1 -0
  69. package/src/{DOMAPI → DOM}/HTMLButtonElement.res +4 -6
  70. package/src/{DOMAPI → DOM}/HTMLCollection.res +2 -4
  71. package/src/DOM/HTMLDListElement.res +1 -0
  72. package/src/DOM/HTMLDataElement.res +1 -0
  73. package/src/DOM/HTMLDataListElement.res +1 -0
  74. package/src/{DOMAPI → DOM}/HTMLDialogElement.res +4 -6
  75. package/src/DOM/HTMLDivElement.res +1 -0
  76. package/src/{DOMAPI → DOM}/HTMLElement.res +5 -5
  77. package/src/DOM/HTMLEmbedElement.res +4 -0
  78. package/src/{DOMAPI → DOM}/HTMLFieldSetElement.res +4 -6
  79. package/src/DOM/HTMLFormControlsCollection.res +16 -0
  80. package/src/{DOMAPI → DOM}/HTMLFormElement.res +7 -7
  81. package/src/DOM/HTMLFrameSetElement.res +1 -0
  82. package/src/DOM/HTMLHRElement.res +1 -0
  83. package/src/DOM/HTMLHeadElement.res +1 -0
  84. package/src/DOM/HTMLHeadingElement.res +1 -0
  85. package/src/DOM/HTMLHtmlElement.res +1 -0
  86. package/src/DOM/HTMLIFrameElement.res +4 -0
  87. package/src/DOM/HTMLImageElement.res +7 -0
  88. package/src/{DOMAPI → DOM}/HTMLInputElement.res +12 -14
  89. package/src/DOM/HTMLLIElement.res +1 -0
  90. package/src/DOM/HTMLLabelElement.res +1 -0
  91. package/src/DOM/HTMLLegendElement.res +1 -0
  92. package/src/DOM/HTMLLinkElement.res +1 -0
  93. package/src/DOM/HTMLMapElement.res +1 -0
  94. package/src/DOM/HTMLMenuElement.res +1 -0
  95. package/src/DOM/HTMLMetaElement.res +1 -0
  96. package/src/DOM/HTMLMeterElement.res +1 -0
  97. package/src/DOM/HTMLModElement.res +1 -0
  98. package/src/DOM/HTMLOListElement.res +1 -0
  99. package/src/{DOMAPI → DOM}/HTMLObjectElement.res +5 -7
  100. package/src/DOM/HTMLOptGroupElement.res +1 -0
  101. package/src/DOM/HTMLOptionElement.res +1 -0
  102. package/src/{DOMAPI → DOM}/HTMLOptionsCollection.res +4 -5
  103. package/src/{DOMAPI → DOM}/HTMLOutputElement.res +4 -6
  104. package/src/DOM/HTMLParagraphElement.res +1 -0
  105. package/src/DOM/HTMLPictureElement.res +1 -0
  106. package/src/DOM/HTMLPreElement.res +1 -0
  107. package/src/DOM/HTMLProgressElement.res +1 -0
  108. package/src/DOM/HTMLQuoteElement.res +1 -0
  109. package/src/{DOMAPI → DOM}/HTMLScriptElement.res +1 -3
  110. package/src/{DOMAPI → DOM}/HTMLSelectElement.res +10 -12
  111. package/src/DOM/HTMLSlotElement.res +31 -0
  112. package/src/DOM/HTMLSourceElement.res +1 -0
  113. package/src/DOM/HTMLSpanElement.res +1 -0
  114. package/src/DOM/HTMLStyleElement.res +1 -0
  115. package/src/DOM/HTMLTableCaptionElement.res +1 -0
  116. package/src/DOM/HTMLTableCellElement.res +1 -0
  117. package/src/{DOMAPI → DOM}/HTMLTableElement.res +12 -12
  118. package/src/{DOMAPI → DOM}/HTMLTableRowElement.res +6 -5
  119. package/src/{DOMAPI → DOM}/HTMLTableSectionElement.res +6 -5
  120. package/src/DOM/HTMLTemplateElement.res +1 -0
  121. package/src/{DOMAPI → DOM}/HTMLTextAreaElement.res +9 -11
  122. package/src/DOM/HTMLTimeElement.res +1 -0
  123. package/src/DOM/HTMLTitleElement.res +1 -0
  124. package/src/DOM/HTMLTrackElement.res +1 -0
  125. package/src/DOM/HTMLUListElement.res +1 -0
  126. package/src/DOM/HTMLVideoElement.res +32 -0
  127. package/src/{DOMAPI → DOM}/IdleDeadline.res +1 -3
  128. package/src/{DOMAPI → DOM}/ImageData.res +4 -5
  129. package/src/{DOMAPI → DOM}/Location.res +3 -5
  130. package/src/{DOMAPI → DOM}/MediaList.res +3 -5
  131. package/src/DOM/MediaQueryList.res +1 -0
  132. package/src/{DOMAPI → DOM}/NamedNodeMap.res +15 -11
  133. package/src/DOM/Navigator.res +166 -0
  134. package/src/{DOMAPI → DOM}/Node.res +10 -11
  135. package/src/DOM/NodeFilter.res +2 -0
  136. package/src/{DOMAPI → DOM}/NodeIterator.res +2 -4
  137. package/src/{DOMAPI → DOM}/NodeList.res +1 -3
  138. package/src/{DOMAPI → DOM}/Range.res +27 -27
  139. package/src/DOM/SVGGraphicsElement.res +18 -0
  140. package/src/{DOMAPI → DOM}/SVGLength.res +2 -4
  141. package/src/DOM/ScreenOrientation.res +7 -0
  142. package/src/{DOMAPI → DOM}/Selection.res +22 -20
  143. package/src/DOM/ShadowRoot.res +19 -0
  144. package/src/DOM/StylePropertyMap.res +57 -0
  145. package/src/{DOMAPI → DOM}/StylePropertyMapReadOnly.res +3 -4
  146. package/src/{DOMAPI → DOM}/StyleSheetList.res +1 -3
  147. package/src/{DOMAPI → DOM}/Text.res +3 -5
  148. package/src/DOM/TextTrackList.res +7 -0
  149. package/src/{DOMAPI → DOM}/TimeRanges.res +2 -4
  150. package/src/{DOMAPI → DOM}/TreeWalker.res +7 -9
  151. package/src/{DOMAPI → DOM}/VideoColorSpace.res +3 -4
  152. package/src/DOM/Window.res +557 -0
  153. package/src/{DOMAPI → DOM}/XPathExpression.res +4 -6
  154. package/src/{DOMAPI → DOM}/XPathResult.res +2 -4
  155. package/src/EncryptedMediaExtensions/EncryptedMediaExtensionsHTMLMediaElement.res +15 -0
  156. package/src/EncryptedMediaExtensions/EncryptedMediaExtensionsTypes.res +43 -0
  157. package/src/{EncryptedMediaExtensionsAPI → EncryptedMediaExtensions}/MediaKeySession.res +10 -10
  158. package/src/{EncryptedMediaExtensionsAPI → EncryptedMediaExtensions}/MediaKeyStatusMap.res +2 -4
  159. package/src/EncryptedMediaExtensions/MediaKeySystemAccess.res +14 -0
  160. package/src/EncryptedMediaExtensions/MediaKeys.res +35 -0
  161. package/src/{EventAPI → Event}/AbortController.res +2 -4
  162. package/src/{EventAPI → Event}/AbortSignal.res +5 -7
  163. package/src/{EventAPI → Event}/Event.res +5 -6
  164. package/src/{EventAPI → Event}/EventTarget.res +14 -16
  165. package/src/{EventAPI.res → Event/EventTypes.res} +10 -10
  166. package/src/{EventAPI → Event}/ExtendableEvent.res +2 -4
  167. package/src/{FetchAPI → Fetch}/BodyInit.res +10 -12
  168. package/src/Fetch/Fetch.res +12 -0
  169. package/src/{FetchAPI.res → Fetch/FetchTypes.res} +19 -21
  170. package/src/{FetchAPI → Fetch}/FormData.res +16 -15
  171. package/src/Fetch/FormDataEntryValue.res +2 -0
  172. package/src/{FetchAPI → Fetch}/Headers.res +10 -12
  173. package/src/{FetchAPI → Fetch}/HeadersInit.res +4 -4
  174. package/src/{FetchAPI → Fetch}/Request.res +16 -11
  175. package/src/{FetchAPI → Fetch}/Response.res +27 -23
  176. package/src/{FileAPI → File}/Blob.res +9 -7
  177. package/src/{FileAPI → File}/File.res +5 -5
  178. package/src/File/FileSystemDirectoryHandle.res +49 -0
  179. package/src/File/FileSystemFileHandle.res +25 -0
  180. package/src/File/FileSystemHandle.res +6 -0
  181. package/src/File/FileSystemWritableFileStream.res +65 -0
  182. package/src/{FileAPI.res → File/FileTypes.res} +22 -23
  183. package/src/File/ReadableStream.res +79 -0
  184. package/src/File/WritableStream.res +27 -0
  185. package/src/{FileAPI → File}/WritableStreamDefaultController.res +1 -3
  186. package/src/FileAndDirectoryEntries/FileAndDirectoryEntriesTypes.res +35 -0
  187. package/src/FileAndDirectoryEntries/FileSystemDirectoryEntry.res +42 -0
  188. package/src/FileAndDirectoryEntries/FileSystemDirectoryReader.res +9 -0
  189. package/src/FileAndDirectoryEntries/FileSystemEntry.res +9 -0
  190. package/src/Gamepad/GamepadHapticActuator.res +16 -0
  191. package/src/{GamepadAPI.res → Gamepad/GamepadTypes.res} +4 -4
  192. package/src/Geolocation/Geolocation.res +31 -0
  193. package/src/{GeolocationAPI → Geolocation}/GeolocationCoordinates.res +1 -3
  194. package/src/{GeolocationAPI → Geolocation}/GeolocationPosition.res +1 -3
  195. package/src/{GeolocationAPI.res → Geolocation/GeolocationTypes.res} +5 -5
  196. package/src/{HistoryAPI → History}/History.res +13 -8
  197. package/src/{HistoryAPI.res → History/HistoryTypes.res} +3 -2
  198. package/src/{IndexedDBAPI → IndexedDB}/IDBDatabase.res +14 -16
  199. package/src/{IndexedDBAPI → IndexedDB}/IDBFactory.res +10 -6
  200. package/src/{IndexedDBAPI → IndexedDB}/IDBIndex.res +22 -17
  201. package/src/{IndexedDBAPI → IndexedDB}/IDBObjectStore.res +44 -33
  202. package/src/{IndexedDBAPI → IndexedDB}/IDBTransaction.res +5 -6
  203. package/src/{IndexedDBAPI.res → IndexedDB/IndexedDbTypes.res} +16 -17
  204. package/src/IntersectionObserver/IntersectionObserver.res +39 -0
  205. package/src/IntersectionObserver/IntersectionObserverRoot.res +21 -0
  206. package/src/{IntersectionObserverAPI.res → IntersectionObserver/IntersectionObserverTypes.res} +7 -9
  207. package/src/MediaCapabilities/MediaCapabilities.res +19 -0
  208. package/src/{MediaCapabilitiesAPI.res → MediaCapabilities/MediaCapabilitiesTypes.res} +3 -3
  209. package/src/{MediaCaptureAndStreamsAPI.res → MediaCaptureAndStreams/MediaCaptureAndStreamsTypes.res} +7 -8
  210. package/src/MediaCaptureAndStreams/MediaDeviceInfo.res +9 -0
  211. package/src/MediaCaptureAndStreams/MediaDevices.res +40 -0
  212. package/src/MediaCaptureAndStreams/MediaStream.res +89 -0
  213. package/src/MediaCaptureAndStreams/MediaStreamTrack.res +51 -0
  214. package/src/MediaSession/MediaMetadata.res +10 -0
  215. package/src/MediaSession/MediaSession.res +25 -0
  216. package/src/{MediaSessionAPI.res → MediaSession/MediaSessionTypes.res} +4 -2
  217. package/src/MutationObserver/MutationObserver.res +31 -0
  218. package/src/{MutationObserverAPI.res → MutationObserver/MutationObserverTypes.res} +3 -5
  219. package/src/Notification/Notification.res +46 -0
  220. package/src/{NotificationAPI.res → Notification/NotificationTypes.res} +5 -7
  221. package/src/Performance/Performance.res +101 -0
  222. package/src/{PerformanceAPI → Performance}/PerformanceEntry.res +1 -3
  223. package/src/Performance/PerformanceMark.res +16 -0
  224. package/src/{PerformanceAPI.res → Performance/PerformanceTypes.res} +9 -12
  225. package/src/Permissions/Permissions.res +10 -0
  226. package/src/{PermissionsAPI.res → Permissions/PermissionsTypes.res} +4 -6
  227. package/src/PictureInPicture/PictureInPicture.res +7 -0
  228. package/src/{PictureInPictureAPI.res → PictureInPicture/PictureInPictureTypes.res} +1 -3
  229. package/src/Push/ApplicationServerKey.res +2 -0
  230. package/src/Push/PushEvent.res +3 -0
  231. package/src/Push/PushManager.res +24 -0
  232. package/src/{PushAPI → Push}/PushMessageData.res +3 -3
  233. package/src/{PushAPI → Push}/PushSubscription.res +4 -5
  234. package/src/{PushAPI.res → Push/PushTypes.res} +6 -8
  235. package/src/RemotePlayback/RemotePlayback.res +25 -0
  236. package/src/{RemotePlaybackAPI.res → RemotePlayback/RemotePlaybackTypes.res} +4 -6
  237. package/src/ResizeObserver/ResizeObserver.res +30 -0
  238. package/src/{ResizeObserverAPI.res → ResizeObserver/ResizeObserverTypes.res} +5 -7
  239. package/src/{ScreenWakeLockAPI.res → ScreenWakeLock/ScreenWakeLockTypes.res} +3 -5
  240. package/src/ScreenWakeLock/WakeLock.res +8 -0
  241. package/src/ScreenWakeLock/WakeLockSentinel.res +7 -0
  242. package/src/ServiceWorker/Cache.res +117 -0
  243. package/src/{ServiceWorkerAPI → ServiceWorker}/Clients.res +14 -7
  244. package/src/{ServiceWorkerAPI → ServiceWorker}/NavigationPreloadManager.res +7 -6
  245. package/src/ServiceWorker/ServiceWorker.res +38 -0
  246. package/src/ServiceWorker/ServiceWorkerContainer.res +34 -0
  247. package/src/{ServiceWorkerAPI → ServiceWorker}/ServiceWorkerRegistration.res +8 -11
  248. package/src/ServiceWorker/ServiceWorkerScope.res +12 -0
  249. package/src/{ServiceWorkerAPI.res → ServiceWorker/ServiceWorkerTypes.res} +18 -23
  250. package/src/{StorageAPI → Storage}/StorageManager.res +5 -7
  251. package/src/{StorageAPI.res → Storage/StorageTypes.res} +1 -1
  252. package/src/UIEvents/CompositionEvent.res +10 -0
  253. package/src/{UIEventsAPI → UIEvents}/DataTransfer.res +10 -8
  254. package/src/{UIEventsAPI → UIEvents}/DataTransferItem.res +5 -8
  255. package/src/{UIEventsAPI → UIEvents}/DataTransferItemList.res +11 -7
  256. package/src/UIEvents/FocusEvent.res +10 -0
  257. package/src/UIEvents/InputEvent.res +16 -0
  258. package/src/UIEvents/KeyboardEvent.res +16 -0
  259. package/src/{UIEventsAPI → UIEvents}/MouseEvent.res +6 -5
  260. package/src/UIEvents/PointerEvent.res +24 -0
  261. package/src/{UIEventsAPI → UIEvents}/Touch.res +1 -3
  262. package/src/UIEvents/TouchEvent.res +10 -0
  263. package/src/{UIEventsAPI → UIEvents}/TouchList.res +1 -3
  264. package/src/UIEvents/UIEvent.res +20 -0
  265. package/src/{UIEventsAPI.res → UIEvents/UiEventsTypes.res} +28 -30
  266. package/src/UIEvents/WheelEvent.res +10 -0
  267. package/src/{URLAPI → URL}/URL.res +6 -5
  268. package/src/{URLAPI → URL}/URLSearchParams.res +20 -17
  269. package/src/{URLAPI.res → URL/UrlTypes.res} +5 -4
  270. package/src/{ViewTransitionsAPI → ViewTransitions}/ViewTransition.res +1 -3
  271. package/src/{ViewTransitionsAPI.res → ViewTransitions/ViewTransitionsTypes.res} +1 -1
  272. package/src/VisualViewport/VisualViewport.res +5 -0
  273. package/src/{VisualViewportAPI.res → VisualViewport/VisualViewportTypes.res} +2 -4
  274. package/src/WebAudio/AnalyserNode.res +38 -0
  275. package/src/{WebAudioAPI → WebAudio}/AudioBuffer.res +4 -6
  276. package/src/{WebAudioAPI → WebAudio}/AudioBufferSourceNode.res +5 -7
  277. package/src/WebAudio/AudioContext.res +59 -0
  278. package/src/WebAudio/AudioDestinationNode.res +1 -0
  279. package/src/{WebAudioAPI → WebAudio}/AudioNode.res +21 -12
  280. package/src/{WebAudioAPI → WebAudio}/AudioParam.res +23 -14
  281. package/src/WebAudio/AudioProcessingEvent.res +10 -0
  282. package/src/{WebAudioAPI → WebAudio}/AudioScheduledSourceNode.res +2 -4
  283. package/src/WebAudio/AudioWorkletNode.res +11 -0
  284. package/src/{WebAudioAPI → WebAudio}/BaseAudioContext.res +26 -25
  285. package/src/{WebAudioAPI → WebAudio}/BiquadFilterNode.res +6 -6
  286. package/src/WebAudio/ChannelMergerNode.res +10 -0
  287. package/src/WebAudio/ChannelSplitterNode.res +10 -0
  288. package/src/WebAudio/ConstantSourceNode.res +10 -0
  289. package/src/WebAudio/ConvolverNode.res +10 -0
  290. package/src/WebAudio/DelayNode.res +10 -0
  291. package/src/WebAudio/DynamicsCompressorNode.res +10 -0
  292. package/src/WebAudio/GainNode.res +10 -0
  293. package/src/{WebAudioAPI → WebAudio}/IIRFilterNode.res +6 -6
  294. package/src/WebAudio/MediaElementAudioSourceNode.res +10 -0
  295. package/src/WebAudio/MediaStreamAudioDestinationNode.res +10 -0
  296. package/src/WebAudio/MediaStreamAudioSourceNode.res +10 -0
  297. package/src/WebAudio/OfflineAudioCompletionEvent.res +10 -0
  298. package/src/WebAudio/OfflineAudioContext.res +58 -0
  299. package/src/WebAudio/OscillatorNode.res +17 -0
  300. package/src/WebAudio/PannerNode.res +10 -0
  301. package/src/WebAudio/PeriodicWave.res +8 -0
  302. package/src/WebAudio/StereoPannerNode.res +10 -0
  303. package/src/WebAudio/WaveShaperNode.res +10 -0
  304. package/src/{WebAudioAPI.res → WebAudio/WebAudioTypes.res} +55 -42
  305. package/src/{WebAudioAPI → WebAudio}/Worklet.res +5 -4
  306. package/src/{WebCryptoAPI → WebCrypto}/Crypto.res +2 -4
  307. package/src/WebCrypto/SubtleCrypto.res +173 -0
  308. package/src/{WebCryptoAPI.res → WebCrypto/WebCryptoTypes.res} +3 -5
  309. package/src/WebLocks/LockManager.res +26 -0
  310. package/src/{WebLocksAPI.res → WebLocks/WebLocksTypes.res} +2 -4
  311. package/src/WebMIDI/WebMIDI.res +7 -0
  312. package/src/{WebMIDIAPI.res → WebMIDI/WebMidiTypes.res} +1 -3
  313. package/src/WebSockets/CloseEvent.res +10 -0
  314. package/src/{WebSocketsAPI → WebSockets}/MessageEvent.res +14 -9
  315. package/src/WebSockets/WebSocket.res +71 -0
  316. package/src/{WebSocketsAPI.res → WebSockets/WebSocketsTypes.res} +12 -15
  317. package/src/{WebSpeechAPI → WebSpeech}/SpeechSynthesis.res +8 -8
  318. package/src/WebSpeech/SpeechSynthesisUtterance.res +8 -0
  319. package/src/{WebSpeechAPI.res → WebSpeech/WebSpeechTypes.res} +4 -5
  320. package/src/{WebStorageAPI → WebStorage}/Storage.res +8 -10
  321. package/src/WebStorage/StorageEvent.res +10 -0
  322. package/src/{WebStorageAPI.res → WebStorage/WebStorageTypes.res} +9 -11
  323. package/src/{WebVTTAPI → WebVTT}/TextTrack.res +3 -5
  324. package/src/{WebVTTAPI → WebVTT}/TextTrackCueList.res +2 -3
  325. package/src/{WebVTTAPI.res → WebVTT/WebVttTypes.res} +5 -5
  326. package/src/WebWorkers/CacheStorage.res +43 -0
  327. package/src/{WebWorkersAPI → WebWorkers}/SharedWorker.res +13 -12
  328. package/src/{WebWorkersAPI/SharedWorkerGlobalScope.res → WebWorkers/SharedWorkerScope.res} +6 -4
  329. package/src/{WebWorkersAPI.res → WebWorkers/WebWorkersTypes.res} +7 -10
  330. package/src/{WebWorkersAPI/WorkerGlobalScope.res → WebWorkers/Worker.res} +8 -8
  331. package/src/CSSFontLoadingAPI/FontFace.res +0 -34
  332. package/src/CSSFontLoadingAPI/FontFaceSet.res +0 -33
  333. package/src/CanvasAPI/FillStyle.res +0 -24
  334. package/src/ClipboardAPI/Clipboard.res +0 -27
  335. package/src/CredentialManagementAPI/CredentialsContainer.res +0 -29
  336. package/src/DOMAPI/CSSStyleSheet.res +0 -32
  337. package/src/DOMAPI/CaretPosition.res +0 -4
  338. package/src/DOMAPI/Comment.res +0 -9
  339. package/src/DOMAPI/DOMMatrix.res +0 -169
  340. package/src/DOMAPI/DOMMatrixReadOnly.res +0 -103
  341. package/src/DOMAPI/DOMPoint.res +0 -29
  342. package/src/DOMAPI/DOMRectList.res +0 -4
  343. package/src/DOMAPI/DOMRectReadOnly.res +0 -17
  344. package/src/DOMAPI/DocumentTimeline.res +0 -9
  345. package/src/DOMAPI/HTMLAnchorElement.res +0 -3
  346. package/src/DOMAPI/HTMLAreaElement.res +0 -3
  347. package/src/DOMAPI/HTMLAudioElement.res +0 -3
  348. package/src/DOMAPI/HTMLBRElement.res +0 -3
  349. package/src/DOMAPI/HTMLBaseElement.res +0 -3
  350. package/src/DOMAPI/HTMLBodyElement.res +0 -3
  351. package/src/DOMAPI/HTMLDListElement.res +0 -3
  352. package/src/DOMAPI/HTMLDataElement.res +0 -3
  353. package/src/DOMAPI/HTMLDataListElement.res +0 -3
  354. package/src/DOMAPI/HTMLDivElement.res +0 -3
  355. package/src/DOMAPI/HTMLEmbedElement.res +0 -6
  356. package/src/DOMAPI/HTMLFormControlsCollection.res +0 -16
  357. package/src/DOMAPI/HTMLFrameSetElement.res +0 -3
  358. package/src/DOMAPI/HTMLHRElement.res +0 -3
  359. package/src/DOMAPI/HTMLHeadElement.res +0 -3
  360. package/src/DOMAPI/HTMLHeadingElement.res +0 -3
  361. package/src/DOMAPI/HTMLHtmlElement.res +0 -3
  362. package/src/DOMAPI/HTMLIFrameElement.res +0 -6
  363. package/src/DOMAPI/HTMLImageElement.res +0 -9
  364. package/src/DOMAPI/HTMLLIElement.res +0 -3
  365. package/src/DOMAPI/HTMLLabelElement.res +0 -3
  366. package/src/DOMAPI/HTMLLegendElement.res +0 -3
  367. package/src/DOMAPI/HTMLLinkElement.res +0 -3
  368. package/src/DOMAPI/HTMLMapElement.res +0 -3
  369. package/src/DOMAPI/HTMLMenuElement.res +0 -3
  370. package/src/DOMAPI/HTMLMetaElement.res +0 -3
  371. package/src/DOMAPI/HTMLMeterElement.res +0 -3
  372. package/src/DOMAPI/HTMLModElement.res +0 -3
  373. package/src/DOMAPI/HTMLOListElement.res +0 -3
  374. package/src/DOMAPI/HTMLOptGroupElement.res +0 -3
  375. package/src/DOMAPI/HTMLOptionElement.res +0 -3
  376. package/src/DOMAPI/HTMLParagraphElement.res +0 -3
  377. package/src/DOMAPI/HTMLPictureElement.res +0 -3
  378. package/src/DOMAPI/HTMLPreElement.res +0 -3
  379. package/src/DOMAPI/HTMLProgressElement.res +0 -3
  380. package/src/DOMAPI/HTMLQuoteElement.res +0 -3
  381. package/src/DOMAPI/HTMLSlotElement.res +0 -29
  382. package/src/DOMAPI/HTMLSourceElement.res +0 -3
  383. package/src/DOMAPI/HTMLSpanElement.res +0 -3
  384. package/src/DOMAPI/HTMLStyleElement.res +0 -3
  385. package/src/DOMAPI/HTMLTableCaptionElement.res +0 -3
  386. package/src/DOMAPI/HTMLTableCellElement.res +0 -3
  387. package/src/DOMAPI/HTMLTemplateElement.res +0 -3
  388. package/src/DOMAPI/HTMLTimeElement.res +0 -3
  389. package/src/DOMAPI/HTMLTitleElement.res +0 -3
  390. package/src/DOMAPI/HTMLTrackElement.res +0 -3
  391. package/src/DOMAPI/HTMLUListElement.res +0 -3
  392. package/src/DOMAPI/HTMLVideoElement.res +0 -31
  393. package/src/DOMAPI/MediaQueryList.res +0 -3
  394. package/src/DOMAPI/Navigator.res +0 -115
  395. package/src/DOMAPI/NodeFilter.res +0 -4
  396. package/src/DOMAPI/SVGGraphicsElement.res +0 -17
  397. package/src/DOMAPI/ScreenOrientation.res +0 -9
  398. package/src/DOMAPI/ShadowRoot.res +0 -21
  399. package/src/DOMAPI/StylePropertyMap.res +0 -50
  400. package/src/DOMAPI/TextTrackList.res +0 -10
  401. package/src/DOMAPI/VideoFrame.res +0 -111
  402. package/src/DOMAPI/Window.res +0 -517
  403. package/src/EncryptedMediaExtensionsAPI/MediaKeySystemAccess.res +0 -13
  404. package/src/EncryptedMediaExtensionsAPI/MediaKeys.res +0 -27
  405. package/src/FetchAPI/FormDataEntryValue.res +0 -22
  406. package/src/FileAPI/FileSystemDirectoryHandle.res +0 -45
  407. package/src/FileAPI/FileSystemFileHandle.res +0 -23
  408. package/src/FileAPI/FileSystemHandle.res +0 -7
  409. package/src/FileAPI/FileSystemWritableFileStream.res +0 -62
  410. package/src/FileAPI/ReadableStream.res +0 -60
  411. package/src/FileAPI/WritableStream.res +0 -28
  412. package/src/FileAndDirectoryEntriesAPI/FileSystemDirectoryEntry.res +0 -42
  413. package/src/FileAndDirectoryEntriesAPI/FileSystemDirectoryReader.res +0 -11
  414. package/src/FileAndDirectoryEntriesAPI/FileSystemEntry.res +0 -11
  415. package/src/GamepadAPI/GamepadHapticActuator.res +0 -17
  416. package/src/GeolocationAPI/Geolocation.res +0 -29
  417. package/src/IntersectionObserverAPI/IntersectionObserver.res +0 -35
  418. package/src/IntersectionObserverAPI/IntersectionObserverRoot.res +0 -22
  419. package/src/MediaCapabilitiesAPI/MediaCapabilities.res +0 -19
  420. package/src/MediaCaptureAndStreamsAPI/MediaDeviceInfo.res +0 -7
  421. package/src/MediaCaptureAndStreamsAPI/MediaDevices.res +0 -34
  422. package/src/MediaCaptureAndStreamsAPI/MediaStream.res +0 -63
  423. package/src/MediaCaptureAndStreamsAPI/MediaStreamTrack.res +0 -42
  424. package/src/MediaSessionAPI/MediaMetadata.res +0 -7
  425. package/src/MediaSessionAPI/MediaSession.res +0 -17
  426. package/src/MutationObserverAPI/MutationObserver.res +0 -27
  427. package/src/NotificationAPI/Notification.res +0 -29
  428. package/src/PerformanceAPI/Performance.res +0 -90
  429. package/src/PerformanceAPI/PerformanceMark.res +0 -15
  430. package/src/PermissionsAPI/Permissions.res +0 -7
  431. package/src/Prelude/DOMException.res +0 -7
  432. package/src/Prelude.res +0 -37
  433. package/src/PushAPI/ApplicationServerKey.res +0 -4
  434. package/src/PushAPI/PushEvent.res +0 -3
  435. package/src/PushAPI/PushManager.res +0 -25
  436. package/src/RemotePlaybackAPI/RemotePlayback.res +0 -23
  437. package/src/ResizeObserverAPI/ResizeObserver.res +0 -27
  438. package/src/ScreenWakeLockAPI/WakeLock.res +0 -7
  439. package/src/ScreenWakeLockAPI/WakeLockSentinel.res +0 -9
  440. package/src/ServiceWorkerAPI/Cache.res +0 -100
  441. package/src/ServiceWorkerAPI/ServiceWorker.res +0 -21
  442. package/src/ServiceWorkerAPI/ServiceWorkerContainer.res +0 -35
  443. package/src/ServiceWorkerAPI/ServiceWorkerGlobalScope.res +0 -10
  444. package/src/UIEventsAPI/CompositionEvent.res +0 -10
  445. package/src/UIEventsAPI/FocusEvent.res +0 -9
  446. package/src/UIEventsAPI/InputEvent.res +0 -16
  447. package/src/UIEventsAPI/KeyboardEvent.res +0 -16
  448. package/src/UIEventsAPI/PointerEvent.res +0 -21
  449. package/src/UIEventsAPI/TouchEvent.res +0 -9
  450. package/src/UIEventsAPI/UIEvent.res +0 -19
  451. package/src/UIEventsAPI/WheelEvent.res +0 -9
  452. package/src/WebAudioAPI/AnalyserNode.res +0 -34
  453. package/src/WebAudioAPI/AudioContext.res +0 -56
  454. package/src/WebAudioAPI/AudioDestinationNode.res +0 -3
  455. package/src/WebAudioAPI/AudioProcessingEvent.res +0 -10
  456. package/src/WebAudioAPI/AudioWorkletNode.res +0 -13
  457. package/src/WebAudioAPI/ChannelMergerNode.res +0 -10
  458. package/src/WebAudioAPI/ChannelSplitterNode.res +0 -12
  459. package/src/WebAudioAPI/ConstantSourceNode.res +0 -12
  460. package/src/WebAudioAPI/ConvolverNode.res +0 -10
  461. package/src/WebAudioAPI/DelayNode.res +0 -9
  462. package/src/WebAudioAPI/DynamicsCompressorNode.res +0 -12
  463. package/src/WebAudioAPI/GainNode.res +0 -9
  464. package/src/WebAudioAPI/MediaElementAudioSourceNode.res +0 -12
  465. package/src/WebAudioAPI/MediaStreamAudioDestinationNode.res +0 -12
  466. package/src/WebAudioAPI/MediaStreamAudioSourceNode.res +0 -12
  467. package/src/WebAudioAPI/OfflineAudioCompletionEvent.res +0 -12
  468. package/src/WebAudioAPI/OfflineAudioContext.res +0 -34
  469. package/src/WebAudioAPI/OscillatorNode.res +0 -16
  470. package/src/WebAudioAPI/PannerNode.res +0 -9
  471. package/src/WebAudioAPI/PeriodicWave.res +0 -8
  472. package/src/WebAudioAPI/StereoPannerNode.res +0 -10
  473. package/src/WebAudioAPI/WaveShaperNode.res +0 -10
  474. package/src/WebCryptoAPI/SubtleCrypto.res +0 -173
  475. package/src/WebLocksAPI/LockManager.res +0 -25
  476. package/src/WebSocketsAPI/CloseEvent.res +0 -9
  477. package/src/WebSocketsAPI/WebSocket.res +0 -51
  478. package/src/WebSpeechAPI/SpeechSynthesisUtterance.res +0 -9
  479. package/src/WebStorageAPI/StorageEvent.res +0 -9
  480. package/src/WebWorkersAPI/CacheStorage.res +0 -46
@@ -0,0 +1,2105 @@
1
+ @@warning("-30")
2
+
3
+ type domStringList = DOM.domStringList
4
+ type eventTarget = EventTypes.eventTarget
5
+ type eventType = EventTypes.eventType
6
+ type file = FileTypes.file
7
+ type blob = FileTypes.blob
8
+ type fileSystemEntry = FileAndDirectoryEntriesTypes.fileSystemEntry
9
+ type remotePlayback = RemotePlaybackTypes.remotePlayback
10
+ type fontFaceSet = CssFontLoadingTypes.fontFaceSet
11
+ type structuredSerializeOptions = ChannelMessagingTypes.structuredSerializeOptions
12
+
13
+ type htmlElement = DOM.htmlElement
14
+ type mediaError = DOM.mediaError
15
+ type timeRanges = DOM.timeRanges
16
+ type textTrackList = DOM.textTrackList
17
+ type htmlFormElement = DOM.htmlFormElement
18
+ type htmlCollection<'a> = DOM.htmlCollection<'a>
19
+ type element = DOM.element
20
+ type validityState = DOM.validityState
21
+ type document = DOM.document
22
+ type cssStyleSheet = DOM.cssStyleSheet
23
+ type nodeList<'a> = DOM.nodeList<'a>
24
+ type htmlLabelElement = DOM.htmlLabelElement
25
+ type documentFragment = DOM.documentFragment
26
+ type node = DOM.node
27
+ type cssStyleDeclaration = DOM.cssStyleDeclaration
28
+ type domRectReadOnly = DOM.domRectReadOnly
29
+ type shadowRoot = DOM.shadowRoot
30
+ type styleSheet = DOM.styleSheet
31
+ type mediaQueryList = DOM.mediaQueryList
32
+ type domRect = DOM.domRect
33
+ type range = DOM.range
34
+ type documentType = DOM.documentType
35
+ type cssStyleValue = DOM.cssStyleValue
36
+ type treeWalker = DOM.treeWalker
37
+ type selection = DOM.selection
38
+ type abstractRange = DOM.abstractRange
39
+ type htmlOptionsCollection = DOM.htmlOptionsCollection
40
+ type styleSheetList = DOM.styleSheetList
41
+ type elementInternals = DOM.elementInternals
42
+ type nodeFilter = DOM.nodeFilter
43
+ type fileList = DOM.fileList
44
+ type cssRule = DOM.cssRule
45
+ type attr = DOM.attr
46
+ type domRectList = DOM.domRectList
47
+ type htmlFormControlsCollection = DOM.htmlFormControlsCollection
48
+ type domImplementation = DOM.domImplementation
49
+ type nodeIterator = DOM.nodeIterator
50
+ type xmlDocument = DOM.xmlDocument
51
+ type characterData = DOM.characterData
52
+ type text = DOM.text
53
+ type cdataSection = DOM.cdataSection
54
+ type comment = DOM.comment
55
+ type processingInstruction = DOM.processingInstruction
56
+ type caretPosition = DOM.caretPosition
57
+ type htmlTableElement = DOM.htmlTableElement
58
+ type htmlOutputElement = DOM.htmlOutputElement
59
+ type htmlTableCellElement = DOM.htmlTableCellElement
60
+ type htmlHeadElement = DOM.htmlHeadElement
61
+ type htmlSelectElement = DOM.htmlSelectElement
62
+ type htmlButtonElement = DOM.htmlButtonElement
63
+ type htmlTableSectionElement = DOM.htmlTableSectionElement
64
+ type htmlOptionElement = DOM.htmlOptionElement
65
+ type htmlEmbedElement = DOM.htmlEmbedElement
66
+ type htmlTextAreaElement = DOM.htmlTextAreaElement
67
+ type htmlTableCaptionElement = DOM.htmlTableCaptionElement
68
+ type htmlSlotElement = DOM.htmlSlotElement
69
+ type htmlDataListElement = DOM.htmlDataListElement
70
+ type htmlInputElement = DOM.htmlInputElement
71
+ type htmlScriptElement = DOM.htmlScriptElement
72
+ type htmlAnchorElement = DOM.htmlAnchorElement
73
+ type htmlTableRowElement = DOM.htmlTableRowElement
74
+ type htmlImageElement = DOM.htmlImageElement
75
+ type htmlAreaElement = DOM.htmlAreaElement
76
+ type videoPlaybackQuality = DOM.videoPlaybackQuality
77
+ type idleDeadline = DOM.idleDeadline
78
+ type cssRuleList = DOM.cssRuleList
79
+ type mediaKeySystemConfiguration = BaseEncryptedMediaExtensions.mediaKeySystemConfiguration
80
+
81
+ /**
82
+ A window containing a WebApiDOM document; the document property points to the WebApiDOM document loaded in that window.
83
+ [See Window on MDN](https://developer.mozilla.org/docs/Web/API/Window)
84
+ */
85
+ @editor.completeFrom(Window) type window = DOM.window
86
+
87
+ type shadowRootMode =
88
+ | @as("closed") Closed
89
+ | @as("open") Open
90
+
91
+ type slotAssignmentMode =
92
+ | @as("manual") Manual
93
+ | @as("named") Named
94
+
95
+ type autoFillBase =
96
+ | @as("off") Off
97
+ | @as("on") On
98
+
99
+ type documentReadyState =
100
+ | @as("complete") Complete
101
+ | @as("interactive") Interactive
102
+ | @as("loading") Loading
103
+
104
+ type documentVisibilityState =
105
+ | @as("hidden") Hidden
106
+ | @as("visible") Visible
107
+
108
+ type orientationType =
109
+ | @as("landscape-primary") LandscapePrimary
110
+ | @as("landscape-secondary") LandscapeSecondary
111
+ | @as("portrait-primary") PortraitPrimary
112
+ | @as("portrait-secondary") PortraitSecondary
113
+
114
+ type insertPosition =
115
+ | @as("afterbegin") Afterbegin
116
+ | @as("afterend") Afterend
117
+ | @as("beforebegin") Beforebegin
118
+ | @as("beforeend") Beforeend
119
+
120
+ type scrollBehavior =
121
+ | @as("auto") Auto
122
+ | @as("instant") Instant
123
+ | @as("smooth") Smooth
124
+
125
+ type fullscreenNavigationUI =
126
+ | @as("auto") Auto
127
+ | @as("hide") Hide
128
+ | @as("show") Show
129
+
130
+ type remotePlaybackState =
131
+ | @as("connected") Connected
132
+ | @as("connecting") Connecting
133
+ | @as("disconnected") Disconnected
134
+
135
+ type referrerPolicy =
136
+ | @as("no-referrer") NoReferrer
137
+ | @as("no-referrer-when-downgrade") NoReferrerWhenDowngrade
138
+ | @as("origin") Origin
139
+ | @as("origin-when-cross-origin") OriginWhenCrossOrigin
140
+ | @as("same-origin") SameOrigin
141
+ | @as("strict-origin") StrictOrigin
142
+ | @as("strict-origin-when-cross-origin") StrictOriginWhenCrossOrigin
143
+ | @as("unsafe-url") UnsafeUrl
144
+
145
+ type canPlayTypeResult =
146
+ | @as("maybe") Maybe
147
+ | @as("probably") Probably
148
+
149
+ type animationPlayState =
150
+ | @as("finished") Finished
151
+ | @as("idle") Idle
152
+ | @as("paused") Paused
153
+ | @as("running") Running
154
+
155
+ type animationReplaceState =
156
+ | @as("active") Active
157
+ | @as("persisted") Persisted
158
+ | @as("removed") Removed
159
+
160
+ type fillMode =
161
+ | @as("auto") Auto
162
+ | @as("backwards") Backwards
163
+ | @as("both") Both
164
+ | @as("forwards") Forwards
165
+ | @as("none") None
166
+
167
+ type playbackDirection =
168
+ | @as("alternate") Alternate
169
+ | @as("alternate-reverse") AlternateReverse
170
+ | @as("normal") Normal
171
+ | @as("reverse") Reverse
172
+
173
+ type imageOrientation =
174
+ | @as("flipY") FlipY
175
+ | @as("from-image") FromImage
176
+ | @as("none") None
177
+
178
+ type premultiplyAlpha =
179
+ | @as("default") Default
180
+ | @as("none") None
181
+ | @as("premultiply") Premultiply
182
+
183
+ type colorSpaceConversion =
184
+ | @as("default") Default
185
+ | @as("none") None
186
+
187
+ type resizeQuality =
188
+ | @as("high") High
189
+ | @as("low") Low
190
+ | @as("medium") Medium
191
+ | @as("pixelated") Pixelated
192
+
193
+ type scrollLogicalPosition =
194
+ | @as("center") Center
195
+ | @as("end") End
196
+ | @as("nearest") Nearest
197
+ | @as("start") Start
198
+
199
+ type selectionMode =
200
+ | @as("end") End
201
+ | @as("preserve") Preserve
202
+ | @as("select") Select
203
+ | @as("start") Start
204
+
205
+ type compositeOperation =
206
+ | @as("accumulate") Accumulate
207
+ | @as("add") Add
208
+ | @as("replace") Replace
209
+
210
+ type iterationCompositeOperation =
211
+ | @as("accumulate") Accumulate
212
+ | @as("replace") Replace
213
+
214
+ type videoPixelFormat =
215
+ | BGRA
216
+ | BGRX
217
+ | I420
218
+ | I420A
219
+ | I422
220
+ | I444
221
+ | NV12
222
+ | RGBA
223
+ | RGBX
224
+
225
+ type videoColorPrimaries =
226
+ | @as("bt470bg") Bt470bg
227
+ | @as("bt709") Bt709
228
+ | @as("smpte170m") Smpte170m
229
+
230
+ type videoTransferCharacteristics =
231
+ | @as("bt709") Bt709
232
+ | @as("iec61966-2-1") Iec6196621
233
+ | @as("smpte170m") Smpte170m
234
+
235
+ type videoMatrixCoefficients =
236
+ | @as("bt470bg") Bt470bg
237
+ | @as("bt709") Bt709
238
+ | @as("rgb") Rgb
239
+ | @as("smpte170m") Smpte170m
240
+
241
+ type alphaOption =
242
+ | @as("discard") Discard
243
+ | @as("keep") Keep
244
+
245
+ type predefinedColorSpace =
246
+ | @as("display-p3") DisplayP3
247
+ | @as("srgb") Srgb
248
+
249
+ type shareData = {
250
+ mutable files?: array<file>,
251
+ mutable title?: string,
252
+ mutable text?: string,
253
+ mutable url?: string,
254
+ }
255
+
256
+ /**
257
+ @editor.completeFrom(Window) The location (WebApiURL) of the object it is linked to. Changes done on it are reflected on the object it relates to. Both the Document and Window interface have such a linked Location, accessible via Document.location and Window.location respectively.
258
+ [See Location on MDN](https://developer.mozilla.org/docs/Web/API/Location)
259
+ */
260
+ @editor.completeFrom(Location)
261
+ type location = DOM.location = private {...DOM.location}
262
+
263
+ /**
264
+ [See UserActivation on MDN](https://developer.mozilla.org/docs/Web/API/UserActivation)
265
+ */
266
+ type userActivation = {
267
+ /**
268
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/UserActivation/hasBeenActive)
269
+ */
270
+ hasBeenActive: bool,
271
+ /**
272
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/UserActivation/isActive)
273
+ */
274
+ isActive: bool,
275
+ }
276
+
277
+ /**
278
+ The state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities.
279
+ [See Navigator on MDN](https://developer.mozilla.org/docs/Web/API/Navigator)
280
+ */
281
+ @editor.completeFrom(Navigator)
282
+ type navigator = DOM.navigator
283
+
284
+ // TODO: mark as private once mutating fields of private records is allowed
285
+ @editor.completeFrom(DOMTokenList)
286
+ type domTokenList = {
287
+ /**
288
+ Returns the number of tokens.
289
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMTokenList/length)
290
+ */
291
+ length: int,
292
+ /**
293
+ Returns the associated set as string.
294
+
295
+ Can be set, to change the associated attribute.
296
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMTokenList/value)
297
+ */
298
+ mutable value: string,
299
+ }
300
+
301
+ /**
302
+ A collection of Attr objects. Objects inside a NamedNodeMap are not in any particular order, unlike NodeList, although they may be accessed by an index as in an array.
303
+ [See NamedNodeMap on MDN](https://developer.mozilla.org/docs/Web/API/NamedNodeMap)
304
+ */
305
+ @editor.completeFrom(NamedNodeMap)
306
+ type namedNodeMap = private {
307
+ /**
308
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/length)
309
+ */
310
+ length: int,
311
+ }
312
+
313
+ /**
314
+ [See FragmentDirective on MDN](https://developer.mozilla.org/docs/Web/API/FragmentDirective)
315
+ */
316
+ type fragmentDirective = {}
317
+
318
+ /**
319
+ [See CustomElementRegistry on MDN](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry)
320
+ */
321
+ @editor.completeFrom(CustomElementRegistry)
322
+ type customElementRegistry = private {}
323
+
324
+ /**
325
+ [See BarProp on MDN](https://developer.mozilla.org/docs/Web/API/BarProp)
326
+ */
327
+ type barProp = {
328
+ /**
329
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/BarProp/visible)
330
+ */
331
+ visible: bool,
332
+ }
333
+
334
+ /**
335
+ [See ScreenOrientation on MDN](https://developer.mozilla.org/docs/Web/API/ScreenOrientation)
336
+ */
337
+ @editor.completeFrom(ScreenOrientation)
338
+ type screenOrientation = private {
339
+ ...eventTarget,
340
+ /**
341
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/type)
342
+ */
343
+ @as("type")
344
+ type_: orientationType,
345
+ /**
346
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/angle)
347
+ */
348
+ angle: int,
349
+ }
350
+
351
+ /**
352
+ A screen, usually the one on which the current window is being rendered, and is obtained using window.screen.
353
+ [See Screen on MDN](https://developer.mozilla.org/docs/Web/API/Screen)
354
+ */
355
+ type screen = {
356
+ /**
357
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Screen/availWidth)
358
+ */
359
+ availWidth: int,
360
+ /**
361
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Screen/availHeight)
362
+ */
363
+ availHeight: int,
364
+ /**
365
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Screen/width)
366
+ */
367
+ width: int,
368
+ /**
369
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Screen/height)
370
+ */
371
+ height: int,
372
+ /**
373
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Screen/colorDepth)
374
+ */
375
+ colorDepth: int,
376
+ /**
377
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Screen/pixelDepth)
378
+ */
379
+ pixelDepth: int,
380
+ /**
381
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Screen/orientation)
382
+ */
383
+ orientation: screenOrientation,
384
+ }
385
+
386
+ @unboxed
387
+ type vibratePattern =
388
+ | Int(int)
389
+ | IntArray(array<int>)
390
+
391
+ type renderingContext = unknown
392
+
393
+ type offscreenRenderingContext = unknown
394
+
395
+ /**
396
+ [See AnimationTimeline on MDN](https://developer.mozilla.org/docs/Web/API/AnimationTimeline)
397
+ */
398
+ @editor.completeFrom(Animation)
399
+ type rec animationTimeline = private {
400
+ /**
401
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationTimeline/currentTime)
402
+ */
403
+ currentTime: Null.t<float>,
404
+ }
405
+
406
+ /**
407
+ [See DocumentTimeline on MDN](https://developer.mozilla.org/docs/Web/API/DocumentTimeline)
408
+ */
409
+ @editor.completeFrom(DocumentTimeline) and documentTimeline = private {
410
+ // Base properties from AnimationTimeline
411
+ /**
412
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/AnimationTimeline/currentTime)
413
+ */
414
+ currentTime: Null.t<float>,
415
+ // End base properties from AnimationTimeline
416
+ }
417
+
418
+ /**
419
+ [See MediaList on MDN](https://developer.mozilla.org/docs/Web/API/MediaList)
420
+ TODO: mark as private once mutating fields of private records is allowed
421
+ */
422
+ @editor.completeFrom(MediaList)
423
+ type mediaList = {
424
+ /**
425
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaList/mediaText)
426
+ */
427
+ mutable mediaText: string,
428
+ /**
429
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/MediaList/length)
430
+ */
431
+ length: int,
432
+ }
433
+
434
+ /**
435
+ [See StylePropertyMapReadOnly on MDN](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly)
436
+ */
437
+ @editor.completeFrom(StylePropertyMapReadOnly)
438
+ type stylePropertyMapReadOnly = private {
439
+ /**
440
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/size)
441
+ */
442
+ size: int,
443
+ }
444
+
445
+ /**
446
+ [See StylePropertyMap on MDN](https://developer.mozilla.org/docs/Web/API/StylePropertyMap)
447
+ */
448
+ @editor.completeFrom(StylePropertyMap)
449
+ type stylePropertyMap = private {
450
+ ...stylePropertyMapReadOnly,
451
+ }
452
+
453
+ /**
454
+ Used by the dataset HTML attribute to represent data for custom attributes added to elements.
455
+ [See DOMStringMap on MDN](https://developer.mozilla.org/docs/Web/API/DOMStringMap)
456
+ */
457
+ type domStringMap = {}
458
+
459
+ type mediaProvider = unknown
460
+
461
+ /**
462
+ Adds to HTMLElement the properties and methods needed to support basic media-related capabilities that are common to audio and video.
463
+ [See HTMLMediaElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement)
464
+ TODO: mark as private once mutating fields of private records is allowed
465
+ */
466
+ @editor.completeFrom(HTMLMediaElement)
467
+ type htmlMediaElement = {
468
+ ...htmlElement,
469
+ /**
470
+ Returns an object representing the current error state of the audio or video element.
471
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/error)
472
+ */
473
+ error: Null.t<mediaError>,
474
+ /**
475
+ The address or WebApiURL of the a media resource that is to be considered.
476
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/src)
477
+ */
478
+ mutable src: string,
479
+ /**
480
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/srcObject)
481
+ */
482
+ mutable srcObject: Null.t<mediaProvider>,
483
+ /**
484
+ Gets the address or WebApiURL of the current media resource that is selected by IHTMLMediaElement.
485
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/currentSrc)
486
+ */
487
+ currentSrc: string,
488
+ /**
489
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/crossOrigin)
490
+ */
491
+ mutable crossOrigin: Null.t<string>,
492
+ /**
493
+ Gets the current network activity for the element.
494
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/networkState)
495
+ */
496
+ networkState: int,
497
+ /**
498
+ Gets or sets a value indicating what data should be preloaded, if any.
499
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/preload)
500
+ */
501
+ mutable preload: string,
502
+ /**
503
+ Gets a collection of buffered time ranges.
504
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/buffered)
505
+ */
506
+ buffered: timeRanges,
507
+ /**
508
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/readyState)
509
+ */
510
+ readyState: int,
511
+ /**
512
+ Gets or sets the current playback position, in seconds.
513
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/currentTime)
514
+ */
515
+ mutable currentTime: float,
516
+ /**
517
+ Returns the duration in seconds of the current media resource. A NaN value is returned if duration is not available, or Infinity if the media resource is streaming.
518
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/duration)
519
+ */
520
+ duration: float,
521
+ /**
522
+ Gets a flag that specifies whether playback is paused.
523
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/paused)
524
+ */
525
+ paused: bool,
526
+ /**
527
+ Gets or sets the default playback rate when the user is not using fast forward or reverse for a video or audio resource.
528
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/defaultPlaybackRate)
529
+ */
530
+ mutable defaultPlaybackRate: float,
531
+ /**
532
+ Gets or sets the current rate of speed for the media resource to play. This speed is expressed as a multiple of the normal speed of the media resource.
533
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playbackRate)
534
+ */
535
+ mutable playbackRate: float,
536
+ /**
537
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/preservesPitch)
538
+ */
539
+ mutable preservesPitch: bool,
540
+ /**
541
+ Returns a TimeRanges object that represents the ranges of the current media resource that can be seeked.
542
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seekable)
543
+ */
544
+ seekable: timeRanges,
545
+ /**
546
+ Gets information about whether the playback has ended or not.
547
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ended)
548
+ */
549
+ ended: bool,
550
+ /**
551
+ Gets or sets a value that indicates whether to start playing the media automatically.
552
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/autoplay)
553
+ */
554
+ mutable autoplay: bool,
555
+ /**
556
+ Gets or sets a flag to specify whether playback should restart after it completes.
557
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loop)
558
+ */
559
+ mutable loop: bool,
560
+ /**
561
+ Gets or sets a flag that indicates whether the client provides a set of controls for the media (in case the developer does not include controls for the player).
562
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/controls)
563
+ */
564
+ mutable controls: bool,
565
+ /**
566
+ Gets or sets the volume level for audio portions of the media element.
567
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volume)
568
+ */
569
+ mutable volume: float,
570
+ /**
571
+ Gets or sets a flag that indicates whether the audio (either audio or the audio track on video media) is muted.
572
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/muted)
573
+ */
574
+ mutable muted: bool,
575
+ /**
576
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/defaultMuted)
577
+ */
578
+ mutable defaultMuted: bool,
579
+ /**
580
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/textTracks)
581
+ */
582
+ textTracks: textTrackList,
583
+ /**
584
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/sinkId)
585
+ */
586
+ sinkId: string,
587
+ /**
588
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/remote)
589
+ */
590
+ remote: remotePlayback,
591
+ /**
592
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/disableRemotePlayback)
593
+ */
594
+ mutable disableRemotePlayback: bool,
595
+ }
596
+
597
+ /**
598
+ Provides access to the properties of <audio> elements, as well as methods to manipulate them. It derives from the HTMLMediaElement interface.
599
+ [See HTMLAudioElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLAudioElement)
600
+ */
601
+ @editor.completeFrom(HTMLAudioElement)
602
+ type htmlAudioElement = private {
603
+ ...htmlMediaElement,
604
+ }
605
+
606
+ /**
607
+ Contains the base URI for a document. This object inherits all of the properties and methods as described in the HTMLElement interface.
608
+ [See HTMLBaseElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement)
609
+ TODO: mark as private once mutating fields of private records is allowed
610
+ */
611
+ @editor.completeFrom(HTMLBaseElement)
612
+ type htmlBaseElement = {
613
+ ...htmlElement,
614
+ /**
615
+ Gets or sets the baseline WebApiURL on which relative links are based.
616
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/href)
617
+ */
618
+ mutable href: string,
619
+ /**
620
+ Sets or retrieves the window or frame at which to target content.
621
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/target)
622
+ */
623
+ mutable target: string,
624
+ }
625
+
626
+ /**
627
+ Provides special properties (beyond those inherited from the regular HTMLElement interface) for manipulating <body> elements.
628
+ [See HTMLBodyElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement)
629
+ */
630
+ @editor.completeFrom(HTMLBodyElement)
631
+ type htmlBodyElement = private {
632
+ ...htmlElement,
633
+ }
634
+
635
+ /**
636
+ A HTML line break element (<br>). It inherits from HTMLElement.
637
+ [See HTMLBRElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLBRElement)
638
+ */
639
+ @editor.completeFrom(HTMLBRElement)
640
+ type htmlbrElement = private {
641
+ ...htmlElement,
642
+ }
643
+
644
+ /**
645
+ Provides properties and methods for manipulating the layout and presentation of <canvas> elements. The HTMLCanvasElement interface also inherits the properties and methods of the HTMLElement interface.
646
+ [See HTMLCanvasElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement)
647
+ TODO: mark as private once mutating fields of private records is allowed
648
+ */
649
+ @editor.completeFrom(HTMLCanvasElement)
650
+ type htmlCanvasElement = {
651
+ ...htmlElement,
652
+ /**
653
+ Gets or sets the width of a canvas element on a document.
654
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/width)
655
+ */
656
+ mutable width: int,
657
+ /**
658
+ Gets or sets the height of a canvas element on a document.
659
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/height)
660
+ */
661
+ mutable height: int,
662
+ }
663
+
664
+ /**
665
+ Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <data> elements.
666
+ [See HTMLDataElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDataElement)
667
+ TODO: mark as private once mutating fields of private records is allowed
668
+ */
669
+ @editor.completeFrom(HTMLDataElement)
670
+ type htmlDataElement = {
671
+ ...htmlElement,
672
+ /**
673
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDataElement/value)
674
+ */
675
+ mutable value: string,
676
+ }
677
+
678
+ /**
679
+ [See HTMLDialogElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement)
680
+ TODO: mark as private once mutating fields of private records is allowed
681
+ */
682
+ @editor.completeFrom(HTMLDialogElement)
683
+ type htmlDialogElement = {
684
+ ...htmlElement,
685
+ /**
686
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/open)
687
+ */
688
+ @as("open")
689
+ mutable open_: bool,
690
+ /**
691
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/returnValue)
692
+ */
693
+ mutable returnValue: string,
694
+ }
695
+
696
+ /**
697
+ Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <div> elements.
698
+ [See HTMLDivElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDivElement)
699
+ */
700
+ @editor.completeFrom(HTMLDivElement)
701
+ type htmlDivElement = private {
702
+ ...htmlElement,
703
+ }
704
+
705
+ /**
706
+ Provides special properties (beyond those of the regular HTMLElement interface it also has available to it by inheritance) for manipulating definition list (<dl>) elements.
707
+ [See HTMLDListElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLDListElement)
708
+ */
709
+ @editor.completeFrom(HTMLDListElement)
710
+ type htmldListElement = private {
711
+ ...htmlElement,
712
+ }
713
+
714
+ /**
715
+ Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <fieldset> elements.
716
+ [See HTMLFieldSetElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement)
717
+ TODO: mark as private once mutating fields of private records is allowed
718
+ */
719
+ @editor.completeFrom(HTMLFieldSetElement)
720
+ type htmlFieldSetElement = {
721
+ ...htmlElement,
722
+ /**
723
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/disabled)
724
+ */
725
+ mutable disabled: bool,
726
+ /**
727
+ Retrieves a reference to the form that the object is embedded in.
728
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/form)
729
+ */
730
+ form: Null.t<htmlFormElement>,
731
+ /**
732
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/name)
733
+ */
734
+ mutable name: string,
735
+ /**
736
+ Returns the string "fieldset".
737
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/type)
738
+ */
739
+ @as("type")
740
+ type_: string,
741
+ /**
742
+ Returns an HTMLCollection of the form controls in the element.
743
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/elements)
744
+ */
745
+ elements: htmlCollection<element>,
746
+ /**
747
+ Returns whether an element will successfully validate based on forms validation rules and constraints.
748
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/willValidate)
749
+ */
750
+ willValidate: bool,
751
+ /**
752
+ Returns a ValidityState object that represents the validity states of an element.
753
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/validity)
754
+ */
755
+ validity: validityState,
756
+ /**
757
+ Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
758
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/validationMessage)
759
+ */
760
+ validationMessage: string,
761
+ }
762
+
763
+ /**
764
+ Provides special properties (beyond those of the regular HTMLElement interface they also inherit) for manipulating <frameset> elements.
765
+ [See HTMLFrameSetElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLFrameSetElement)
766
+ */
767
+ @editor.completeFrom(HTMLFrameSetElement)
768
+ type htmlFrameSetElement = private {
769
+ ...htmlElement,
770
+ }
771
+
772
+ /**
773
+ The different heading elements. It inherits methods and properties from the HTMLElement interface.
774
+ [See HTMLHeadingElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement)
775
+ */
776
+ @editor.completeFrom(HTMLHeadingElement)
777
+ type htmlHeadingElement = private {
778
+ ...htmlElement,
779
+ }
780
+
781
+ /**
782
+ Provides special properties (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating <hr> elements.
783
+ [See HTMLHRElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLHRElement)
784
+ */
785
+ @editor.completeFrom(HTMLHRElement)
786
+ type htmlhrElement = private {
787
+ ...htmlElement,
788
+ }
789
+
790
+ /**
791
+ Serves as the root node for a given HTML document. This object inherits the properties and methods described in the HTMLElement interface.
792
+ [See HTMLHtmlElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLHtmlElement)
793
+ */
794
+ @editor.completeFrom(HTMLHtmlElement)
795
+ type htmlHtmlElement = private {
796
+ ...htmlElement,
797
+ }
798
+
799
+ /**
800
+ Provides special properties and methods (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of inline frame elements.
801
+ [See HTMLIFrameElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement)
802
+ TODO: mark as private once mutating fields of private records is allowed
803
+ */
804
+ @editor.completeFrom(HTMLIFrameElement)
805
+ type htmliFrameElement = {
806
+ ...htmlElement,
807
+ /**
808
+ Sets or retrieves a WebApiURL to be loaded by the object.
809
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/src)
810
+ */
811
+ mutable src: string,
812
+ /**
813
+ Sets or retrives the content of the page that is to contain.
814
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/srcdoc)
815
+ */
816
+ mutable srcdoc: string,
817
+ /**
818
+ Sets or retrieves the frame name.
819
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/name)
820
+ */
821
+ mutable name: string,
822
+ /**
823
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/sandbox)
824
+ */
825
+ sandbox: domTokenList,
826
+ /**
827
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/allow)
828
+ */
829
+ mutable allow: string,
830
+ /**
831
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/allowFullscreen)
832
+ */
833
+ mutable allowFullscreen: bool,
834
+ /**
835
+ Sets or retrieves the width of the object.
836
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/width)
837
+ */
838
+ mutable width: string,
839
+ /**
840
+ Sets or retrieves the height of the object.
841
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/height)
842
+ */
843
+ mutable height: string,
844
+ /**
845
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/referrerPolicy)
846
+ */
847
+ mutable referrerPolicy: referrerPolicy,
848
+ /**
849
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/loading)
850
+ */
851
+ mutable loading: string,
852
+ /**
853
+ Retrieves the document object of the page or frame.
854
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentDocument)
855
+ */
856
+ contentDocument: Null.t<document>,
857
+ /**
858
+ Retrieves the object of the specified.
859
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentWindow)
860
+ */
861
+ contentWindow: Null.t<window>,
862
+ }
863
+
864
+ /**
865
+ The HTMLLegendElement is an interface allowing to access properties of the <legend> elements. It inherits properties and methods from the HTMLElement interface.
866
+ [See HTMLLegendElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLegendElement)
867
+ */
868
+ @editor.completeFrom(HTMLLegendElement)
869
+ type htmlLegendElement = private {
870
+ ...htmlElement,
871
+ /**
872
+ Retrieves a reference to the form that the object is embedded in.
873
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLegendElement/form)
874
+ */
875
+ form: Null.t<htmlFormElement>,
876
+ }
877
+
878
+ /**
879
+ Exposes specific properties and methods (beyond those defined by regular HTMLElement interface it also has available to it by inheritance) for manipulating list elements.
880
+ [See HTMLLIElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLIElement)
881
+ */
882
+ @editor.completeFrom(HTMLLIElement)
883
+ type htmlliElement = private {
884
+ ...htmlElement,
885
+ }
886
+
887
+ /**
888
+ Reference information for external resources and the relationship of those resources to a document and vice-versa. This object inherits all of the properties and methods of the HTMLElement interface.
889
+ [See HTMLLinkElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement)
890
+ TODO: mark as private once mutating fields of private records is allowed
891
+ */
892
+ @editor.completeFrom(HTMLLinkElement)
893
+ type htmlLinkElement = {
894
+ ...htmlElement,
895
+ /**
896
+ Sets or retrieves a destination WebApiURL or an anchor point.
897
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/href)
898
+ */
899
+ mutable href: string,
900
+ /**
901
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/crossOrigin)
902
+ */
903
+ mutable crossOrigin: Null.t<string>,
904
+ /**
905
+ Sets or retrieves the relationship between the object and the destination of the link.
906
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/rel)
907
+ */
908
+ mutable rel: string,
909
+ /**
910
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/as)
911
+ */
912
+ @as("as")
913
+ mutable as_: string,
914
+ /**
915
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/relList)
916
+ */
917
+ relList: domTokenList,
918
+ /**
919
+ Sets or retrieves the media type.
920
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/media)
921
+ */
922
+ mutable media: string,
923
+ /**
924
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/integrity)
925
+ */
926
+ mutable integrity: string,
927
+ /**
928
+ Sets or retrieves the language code of the object.
929
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/hreflang)
930
+ */
931
+ mutable hreflang: string,
932
+ /**
933
+ Sets or retrieves the MIME type of the object.
934
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/type)
935
+ */
936
+ @as("type")
937
+ mutable type_: string,
938
+ /**
939
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/referrerPolicy)
940
+ */
941
+ mutable referrerPolicy: string,
942
+ /**
943
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/disabled)
944
+ */
945
+ mutable disabled: bool,
946
+ /**
947
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/fetchPriority)
948
+ */
949
+ mutable fetchPriority: string,
950
+ /**
951
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/sheet)
952
+ */
953
+ sheet: Null.t<cssStyleSheet>,
954
+ }
955
+
956
+ /**
957
+ Provides special properties and methods (beyond those of the regular object HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of map elements.
958
+ [See HTMLMapElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMapElement)
959
+ TODO: mark as private once mutating fields of private records is allowed
960
+ */
961
+ @editor.completeFrom(HTMLMapElement)
962
+ type htmlMapElement = {
963
+ ...htmlElement,
964
+ /**
965
+ Sets or retrieves the name of the object.
966
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMapElement/name)
967
+ */
968
+ mutable name: string,
969
+ /**
970
+ Retrieves a collection of the area objects defined for the given map object.
971
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMapElement/areas)
972
+ */
973
+ areas: htmlCollection<element>,
974
+ }
975
+
976
+ /**
977
+ [See HTMLMenuElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMenuElement)
978
+ */
979
+ @editor.completeFrom(HTMLMenuElement)
980
+ type htmlMenuElement = private {
981
+ ...htmlElement,
982
+ }
983
+
984
+ /**
985
+ Contains descriptive metadata about a document. It inherits all of the properties and methods described in the HTMLElement interface.
986
+ [See HTMLMetaElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMetaElement)
987
+ TODO: mark as private once mutating fields of private records is allowed
988
+ */
989
+ @editor.completeFrom(HTMLMetaElement)
990
+ type htmlMetaElement = {
991
+ ...htmlElement,
992
+ /**
993
+ Sets or retrieves the value specified in the content attribute of the meta object.
994
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMetaElement/name)
995
+ */
996
+ mutable name: string,
997
+ /**
998
+ Gets or sets information used to bind the value of a content attribute of a meta element to an HTTP response header.
999
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMetaElement/httpEquiv)
1000
+ */
1001
+ mutable httpEquiv: string,
1002
+ /**
1003
+ Gets or sets meta-information to associate with httpEquiv or name.
1004
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMetaElement/content)
1005
+ */
1006
+ mutable content: string,
1007
+ /**
1008
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMetaElement/media)
1009
+ */
1010
+ mutable media: string,
1011
+ }
1012
+
1013
+ /**
1014
+ The HTML <meter> elements expose the HTMLMeterElement interface, which provides special properties and methods (beyond the HTMLElement object interface they also have available to them by inheritance) for manipulating the layout and presentation of <meter> elements.
1015
+ [See HTMLMeterElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement)
1016
+ TODO: mark as private once mutating fields of private records is allowed
1017
+ */
1018
+ @editor.completeFrom(HTMLMeterElement)
1019
+ type htmlMeterElement = {
1020
+ ...htmlElement,
1021
+ /**
1022
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/value)
1023
+ */
1024
+ mutable value: float,
1025
+ /**
1026
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/min)
1027
+ */
1028
+ mutable min: float,
1029
+ /**
1030
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/max)
1031
+ */
1032
+ mutable max: float,
1033
+ /**
1034
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/low)
1035
+ */
1036
+ mutable low: float,
1037
+ /**
1038
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/high)
1039
+ */
1040
+ mutable high: float,
1041
+ /**
1042
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/optimum)
1043
+ */
1044
+ mutable optimum: float,
1045
+ /**
1046
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/labels)
1047
+ */
1048
+ labels: nodeList<htmlLabelElement>,
1049
+ }
1050
+
1051
+ /**
1052
+ Provides special properties (beyond the regular methods and properties available through the HTMLElement interface they also have available to them by inheritance) for manipulating modification elements, that is <del> and <ins>.
1053
+ [See HTMLModElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLModElement)
1054
+ */
1055
+ @editor.completeFrom(HTMLModElement)
1056
+ type htmlModElement = private {
1057
+ ...htmlElement,
1058
+ }
1059
+
1060
+ /**
1061
+ Provides special properties and methods (beyond those on the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <object> element, representing external resources.
1062
+ [See HTMLObjectElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement)
1063
+ TODO: mark as private once mutating fields of private records is allowed
1064
+ */
1065
+ @editor.completeFrom(HTMLObjectElement)
1066
+ type htmlObjectElement = {
1067
+ ...htmlElement,
1068
+ /**
1069
+ Sets or retrieves the WebApiURL that references the data of the object.
1070
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/data)
1071
+ */
1072
+ mutable data: string,
1073
+ /**
1074
+ Sets or retrieves the MIME type of the object.
1075
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/type)
1076
+ */
1077
+ @as("type")
1078
+ mutable type_: string,
1079
+ /**
1080
+ Sets or retrieves the name of the object.
1081
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/name)
1082
+ */
1083
+ mutable name: string,
1084
+ /**
1085
+ Retrieves a reference to the form that the object is embedded in.
1086
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/form)
1087
+ */
1088
+ form: Null.t<htmlFormElement>,
1089
+ /**
1090
+ Sets or retrieves the width of the object.
1091
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/width)
1092
+ */
1093
+ mutable width: string,
1094
+ /**
1095
+ Sets or retrieves the height of the object.
1096
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/height)
1097
+ */
1098
+ mutable height: string,
1099
+ /**
1100
+ Retrieves the document object of the page or frame.
1101
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/contentDocument)
1102
+ */
1103
+ contentDocument: Null.t<document>,
1104
+ /**
1105
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/contentWindow)
1106
+ */
1107
+ contentWindow: Null.t<window>,
1108
+ /**
1109
+ Returns whether an element will successfully validate based on forms validation rules and constraints.
1110
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/willValidate)
1111
+ */
1112
+ willValidate: bool,
1113
+ /**
1114
+ Returns a ValidityState object that represents the validity states of an element.
1115
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/validity)
1116
+ */
1117
+ validity: validityState,
1118
+ /**
1119
+ Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
1120
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/validationMessage)
1121
+ */
1122
+ validationMessage: string,
1123
+ }
1124
+
1125
+ /**
1126
+ Provides special properties (beyond those defined on the regular HTMLElement interface it also has available to it by inheritance) for manipulating ordered list elements.
1127
+ [See HTMLOListElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLOListElement)
1128
+ TODO: mark as private once mutating fields of private records is allowed
1129
+ */
1130
+ @editor.completeFrom(HTMLOListElement)
1131
+ type htmloListElement = {
1132
+ ...htmlElement,
1133
+ /**
1134
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/reversed)
1135
+ */
1136
+ mutable reversed: bool,
1137
+ /**
1138
+ The starting number.
1139
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/start)
1140
+ */
1141
+ mutable start: int,
1142
+ /**
1143
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/type)
1144
+ */
1145
+ @as("type")
1146
+ mutable type_: string,
1147
+ }
1148
+
1149
+ /**
1150
+ Provides special properties and methods (beyond the regular HTMLElement object interface they also have available to them by inheritance) for manipulating the layout and presentation of <optgroup> elements.
1151
+ [See HTMLOptGroupElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement)
1152
+ TODO: mark as private once mutating fields of private records is allowed
1153
+ */
1154
+ @editor.completeFrom(HTMLOptGroupElement)
1155
+ type htmlOptGroupElement = {
1156
+ ...htmlElement,
1157
+ /**
1158
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement/disabled)
1159
+ */
1160
+ mutable disabled: bool,
1161
+ /**
1162
+ Sets or retrieves a value that you can use to implement your own label functionality for the object.
1163
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement/label)
1164
+ */
1165
+ mutable label: string,
1166
+ }
1167
+
1168
+ /**
1169
+ Provides special properties (beyond those of the regular HTMLElement object interface it inherits) for manipulating <p> elements.
1170
+ [See HTMLParagraphElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLParagraphElement)
1171
+ */
1172
+ @editor.completeFrom(HTMLParagraphElement)
1173
+ type htmlParagraphElement = private {
1174
+ ...htmlElement,
1175
+ }
1176
+
1177
+ /**
1178
+ A <picture> HTML element. It doesn't implement specific properties or methods.
1179
+ [See HTMLPictureElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLPictureElement)
1180
+ */
1181
+ @editor.completeFrom(HTMLPictureElement)
1182
+ type htmlPictureElement = private {
1183
+ ...htmlElement,
1184
+ }
1185
+
1186
+ /**
1187
+ Exposes specific properties and methods (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating a block of preformatted text (<pre>).
1188
+ [See HTMLPreElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLPreElement)
1189
+ */
1190
+ @editor.completeFrom(HTMLPreElement)
1191
+ type htmlPreElement = private {
1192
+ ...htmlElement,
1193
+ }
1194
+
1195
+ /**
1196
+ Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <progress> elements.
1197
+ [See HTMLProgressElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement)
1198
+ TODO: mark as private once mutating fields of private records is allowed
1199
+ */
1200
+ @editor.completeFrom(HTMLProgressElement)
1201
+ type htmlProgressElement = {
1202
+ ...htmlElement,
1203
+ /**
1204
+ Sets or gets the current value of a progress element. The value must be a non-negative number between 0 and the max value.
1205
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/value)
1206
+ */
1207
+ mutable value: float,
1208
+ /**
1209
+ Defines the maximum, or "done" value for a progress element.
1210
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/max)
1211
+ */
1212
+ mutable max: float,
1213
+ /**
1214
+ Returns the quotient of value/max when the value attribute is set (determinate progress bar), or -1 when the value attribute is missing (indeterminate progress bar).
1215
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/position)
1216
+ */
1217
+ position: float,
1218
+ /**
1219
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/labels)
1220
+ */
1221
+ labels: nodeList<htmlLabelElement>,
1222
+ }
1223
+
1224
+ /**
1225
+ Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating quoting elements, like <blockquote> and <q>, but not the <cite> element.
1226
+ [See HTMLQuoteElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLQuoteElement)
1227
+ */
1228
+ @editor.completeFrom(HTMLQuoteElement)
1229
+ type htmlQuoteElement = private {
1230
+ ...htmlElement,
1231
+ }
1232
+
1233
+ /**
1234
+ Provides special properties (beyond the regular HTMLElement object interface it also has available to it by inheritance) for manipulating <source> elements.
1235
+ [See HTMLSourceElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement)
1236
+ TODO: mark as private once mutating fields of private records is allowed
1237
+ */
1238
+ @editor.completeFrom(HTMLSourceElement)
1239
+ type htmlSourceElement = {
1240
+ ...htmlElement,
1241
+ /**
1242
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/width)
1243
+ */
1244
+ mutable width: int,
1245
+ /**
1246
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/height)
1247
+ */
1248
+ mutable height: int,
1249
+ }
1250
+
1251
+ /**
1252
+ A <span> element and derives from the HTMLElement interface, but without implementing any additional properties or methods.
1253
+ [See HTMLSpanElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLSpanElement)
1254
+ */
1255
+ @editor.completeFrom(HTMLSpanElement)
1256
+ type htmlSpanElement = private {
1257
+ ...htmlElement,
1258
+ }
1259
+
1260
+ /**
1261
+ A <style> element. It inherits properties and methods from its parent, HTMLElement, and from LinkStyle.
1262
+ [See HTMLStyleElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement)
1263
+ TODO: mark as private once mutating fields of private records is allowed
1264
+ */
1265
+ @editor.completeFrom(HTMLStyleElement)
1266
+ type htmlStyleElement = {
1267
+ ...htmlElement,
1268
+ /**
1269
+ Enables or disables the style sheet.
1270
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/disabled)
1271
+ */
1272
+ mutable disabled: bool,
1273
+ /**
1274
+ Sets or retrieves the media type.
1275
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/media)
1276
+ */
1277
+ mutable media: string,
1278
+ /**
1279
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/sheet)
1280
+ */
1281
+ sheet: Null.t<cssStyleSheet>,
1282
+ }
1283
+
1284
+ /**
1285
+ Enables access to the contents of an HTML <template> element.
1286
+ [See HTMLTemplateElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement)
1287
+ TODO: mark as private once mutating fields of private records is allowed
1288
+ */
1289
+ @editor.completeFrom(HTMLTemplateElement)
1290
+ type htmlTemplateElement = {
1291
+ ...htmlElement,
1292
+ /**
1293
+ Returns the template contents (a DocumentFragment).
1294
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement/content)
1295
+ */
1296
+ content: documentFragment,
1297
+ /**
1298
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement/shadowRootMode)
1299
+ */
1300
+ mutable shadowRootMode: string,
1301
+ /**
1302
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement/shadowRootDelegatesFocus)
1303
+ */
1304
+ mutable shadowRootDelegatesFocus: bool,
1305
+ /**
1306
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement/shadowRootClonable)
1307
+ */
1308
+ mutable shadowRootClonable: bool,
1309
+ /**
1310
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement/shadowRootSerializable)
1311
+ */
1312
+ mutable shadowRootSerializable: bool,
1313
+ }
1314
+
1315
+ /**
1316
+ Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <time> elements.
1317
+ [See HTMLTimeElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTimeElement)
1318
+ TODO: mark as private once mutating fields of private records is allowed
1319
+ */
1320
+ @editor.completeFrom(HTMLTimeElement)
1321
+ type htmlTimeElement = {
1322
+ ...htmlElement,
1323
+ /**
1324
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTimeElement/dateTime)
1325
+ */
1326
+ mutable dateTime: string,
1327
+ }
1328
+
1329
+ /**
1330
+ Contains the title for a document. This element inherits all of the properties and methods of the HTMLElement interface.
1331
+ [See HTMLTitleElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTitleElement)
1332
+ TODO: mark as private once mutating fields of private records is allowed
1333
+ */
1334
+ @editor.completeFrom(HTMLTitleElement)
1335
+ type htmlTitleElement = {
1336
+ ...htmlElement,
1337
+ /**
1338
+ Retrieves or sets the text of the object as a string.
1339
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTitleElement/text)
1340
+ */
1341
+ mutable text: string,
1342
+ }
1343
+
1344
+ /**
1345
+ The HTMLTrackElement
1346
+ [See HTMLTrackElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement)
1347
+ TODO: mark as private once mutating fields of private records is allowed
1348
+ */
1349
+ @editor.completeFrom(HTMLTrackElement)
1350
+ type htmlTrackElement = {
1351
+ ...htmlElement,
1352
+ /**
1353
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/src)
1354
+ */
1355
+ mutable src: string,
1356
+ }
1357
+
1358
+ /**
1359
+ Provides special properties (beyond those defined on the regular HTMLElement interface it also has available to it by inheritance) for manipulating unordered list elements.
1360
+ [See HTMLUListElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLUListElement)
1361
+ */
1362
+ @editor.completeFrom(HTMLUListElement)
1363
+ type htmluListElement = private {
1364
+ ...htmlElement,
1365
+ }
1366
+
1367
+ /**
1368
+ An invalid HTML element and derives from the HTMLElement interface, but without implementing any additional properties or methods.
1369
+ [See HTMLUnknownElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLUnknownElement)
1370
+ */
1371
+ type htmlUnknownElement = {
1372
+ ...htmlElement,
1373
+ }
1374
+
1375
+ /**
1376
+ Provides special properties and methods for manipulating video objects. It also inherits properties and methods of HTMLMediaElement and HTMLElement.
1377
+ [See HTMLVideoElement on MDN](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement)
1378
+ TODO: mark as private once mutating fields of private records is allowed
1379
+ */
1380
+ @editor.completeFrom(HTMLVideoElement)
1381
+ type htmlVideoElement = {
1382
+ ...htmlMediaElement,
1383
+ /**
1384
+ Gets or sets the width of the video element.
1385
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/width)
1386
+ */
1387
+ mutable width: int,
1388
+ /**
1389
+ Gets or sets the height of the video element.
1390
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/height)
1391
+ */
1392
+ mutable height: int,
1393
+ /**
1394
+ Gets the intrinsic width of a video in CSS pixels, or zero if the dimensions are not known.
1395
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/videoWidth)
1396
+ */
1397
+ videoWidth: int,
1398
+ /**
1399
+ Gets the intrinsic height of a video in CSS pixels, or zero if the dimensions are not known.
1400
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/videoHeight)
1401
+ */
1402
+ videoHeight: int,
1403
+ /**
1404
+ Gets or sets a WebApiURL of an image to display, for example, like a movie poster. This can be a still frame from the video, or another image if no video data is available.
1405
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/poster)
1406
+ */
1407
+ mutable poster: string,
1408
+ /**
1409
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/disablePictureInPicture)
1410
+ */
1411
+ mutable disablePictureInPicture: bool,
1412
+ }
1413
+
1414
+ /**
1415
+ [See AnimationEffect on MDN](https://developer.mozilla.org/docs/Web/API/AnimationEffect)
1416
+ */
1417
+ @editor.completeFrom(AnimationEffect)
1418
+ type animationEffect = private {}
1419
+
1420
+ /**
1421
+ This interface is a compiled XPath expression that can be evaluated on a document or specific node to return information its WebApiDOM tree.
1422
+ [See XPathExpression on MDN](https://developer.mozilla.org/docs/Web/API/XPathExpression)
1423
+ */
1424
+ @editor.completeFrom(XPathExpression)
1425
+ type xPathExpression = private {}
1426
+
1427
+ /**
1428
+ The results generated by evaluating an XPath expression within the context of a given node.
1429
+ [See XPathResult on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult)
1430
+ */
1431
+ @editor.completeFrom(XPathResult)
1432
+ type xPathResult = private {
1433
+ /**
1434
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult/resultType)
1435
+ */
1436
+ resultType: int,
1437
+ /**
1438
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult/numberValue)
1439
+ */
1440
+ numberValue: float,
1441
+ /**
1442
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult/stringValue)
1443
+ */
1444
+ stringValue: string,
1445
+ /**
1446
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult/booleanValue)
1447
+ */
1448
+ booleanValue: bool,
1449
+ /**
1450
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult/singleNodeValue)
1451
+ */
1452
+ singleNodeValue: Null.t<node>,
1453
+ /**
1454
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult/invalidIteratorState)
1455
+ */
1456
+ invalidIteratorState: bool,
1457
+ /**
1458
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/XPathResult/snapshotLength)
1459
+ */
1460
+ snapshotLength: int,
1461
+ }
1462
+
1463
+ /**
1464
+ Used for attributes of type SVGPreserveAspectRatio which can be animated.
1465
+ [See SVGAnimatedPreserveAspectRatio on MDN](https://developer.mozilla.org/docs/Web/API/SVGAnimatedPreserveAspectRatio)
1466
+ */
1467
+ type svgAnimatedPreserveAspectRatio = {}
1468
+
1469
+ /**
1470
+ Correspond to the <length> basic data type.
1471
+ [See SVGLength on MDN](https://developer.mozilla.org/docs/Web/API/SVGLength)
1472
+ */
1473
+ @editor.completeFrom(SVGLength)
1474
+ type svgLength = private {}
1475
+
1476
+ /**
1477
+ Used for attributes of basic type <length> which can be animated.
1478
+ [See SVGAnimatedLength on MDN](https://developer.mozilla.org/docs/Web/API/SVGAnimatedLength)
1479
+ */
1480
+ type svgAnimatedLength = {
1481
+ /**
1482
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SVGAnimatedLength/baseVal)
1483
+ */
1484
+ baseVal: svgLength,
1485
+ /**
1486
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SVGAnimatedLength/animVal)
1487
+ */
1488
+ animVal: svgLength,
1489
+ }
1490
+
1491
+ /**
1492
+ All of the SVG WebApiDOM interfaces that correspond directly to elements in the SVG language derive from the SVGElement interface.
1493
+ [See SVGElement on MDN](https://developer.mozilla.org/docs/Web/API/SVGElement)
1494
+ */
1495
+ type svgElement = {
1496
+ ...element,
1497
+ /**
1498
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/dataset)
1499
+ */
1500
+ dataset: domStringMap,
1501
+ /**
1502
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/nonce)
1503
+ */
1504
+ mutable nonce?: string,
1505
+ /**
1506
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/autofocus)
1507
+ */
1508
+ mutable autofocus: bool,
1509
+ /**
1510
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/tabIndex)
1511
+ */
1512
+ mutable tabIndex: int,
1513
+ /**
1514
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/style)
1515
+ */
1516
+ style: cssStyleDeclaration,
1517
+ /**
1518
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/HTMLElement/attributeStyleMap)
1519
+ */
1520
+ attributeStyleMap: stylePropertyMap,
1521
+ }
1522
+
1523
+ /**
1524
+ SVG elements whose primary purpose is to directly render graphics into a group.
1525
+ [See SVGGraphicsElement on MDN](https://developer.mozilla.org/docs/Web/API/SVGGraphicsElement)
1526
+ */
1527
+ @editor.completeFrom(SVGGraphicsElement)
1528
+ type svgGraphicsElement = private {
1529
+ ...svgElement,
1530
+ }
1531
+
1532
+ /**
1533
+ Corresponds to the <image> element.
1534
+ [See SVGImageElement on MDN](https://developer.mozilla.org/docs/Web/API/SVGImageElement)
1535
+ */
1536
+ type svgImageElement = {
1537
+ ...svgGraphicsElement,
1538
+ /**
1539
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SVGImageElement/x)
1540
+ */
1541
+ x: svgAnimatedLength,
1542
+ /**
1543
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SVGImageElement/y)
1544
+ */
1545
+ y: svgAnimatedLength,
1546
+ /**
1547
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SVGImageElement/width)
1548
+ */
1549
+ width: svgAnimatedLength,
1550
+ /**
1551
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SVGImageElement/height)
1552
+ */
1553
+ height: svgAnimatedLength,
1554
+ /**
1555
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/SVGImageElement/preserveAspectRatio)
1556
+ */
1557
+ preserveAspectRatio: svgAnimatedPreserveAspectRatio,
1558
+ }
1559
+
1560
+ /**
1561
+ [See DOMMatrixReadOnly on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly)
1562
+ */
1563
+ @editor.completeFrom(DOMMatrixReadOnly)
1564
+ type domMatrixReadOnly = private {
1565
+ /**
1566
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1567
+ */
1568
+ a: float,
1569
+ /**
1570
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1571
+ */
1572
+ b: float,
1573
+ /**
1574
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1575
+ */
1576
+ c: float,
1577
+ /**
1578
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1579
+ */
1580
+ d: float,
1581
+ /**
1582
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1583
+ */
1584
+ e: float,
1585
+ /**
1586
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1587
+ */
1588
+ f: float,
1589
+ /**
1590
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1591
+ */
1592
+ m11: float,
1593
+ /**
1594
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1595
+ */
1596
+ m12: float,
1597
+ /**
1598
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1599
+ */
1600
+ m13: float,
1601
+ /**
1602
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1603
+ */
1604
+ m14: float,
1605
+ /**
1606
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1607
+ */
1608
+ m21: float,
1609
+ /**
1610
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1611
+ */
1612
+ m22: float,
1613
+ /**
1614
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1615
+ */
1616
+ m23: float,
1617
+ /**
1618
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1619
+ */
1620
+ m24: float,
1621
+ /**
1622
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1623
+ */
1624
+ m31: float,
1625
+ /**
1626
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1627
+ */
1628
+ m32: float,
1629
+ /**
1630
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1631
+ */
1632
+ m33: float,
1633
+ /**
1634
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1635
+ */
1636
+ m34: float,
1637
+ /**
1638
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1639
+ */
1640
+ m41: float,
1641
+ /**
1642
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1643
+ */
1644
+ m42: float,
1645
+ /**
1646
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1647
+ */
1648
+ m43: float,
1649
+ /**
1650
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly#instance_properties)
1651
+ */
1652
+ m44: float,
1653
+ }
1654
+
1655
+ /**
1656
+ [See DOMMatrix on MDN](https://developer.mozilla.org/docs/Web/API/DOMMatrix)
1657
+ */
1658
+ @editor.completeFrom(DOMMatrix)
1659
+ type domMatrix = private {
1660
+ ...domMatrixReadOnly,
1661
+ }
1662
+
1663
+ /**
1664
+ [See VideoColorSpace on MDN](https://developer.mozilla.org/docs/Web/API/VideoColorSpace)
1665
+ */
1666
+ @editor.completeFrom(VideoColorSpace)
1667
+ type videoColorSpace = private {
1668
+ /**
1669
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/primaries)
1670
+ */
1671
+ primaries: Null.t<videoColorPrimaries>,
1672
+ /**
1673
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/transfer)
1674
+ */
1675
+ transfer: Null.t<videoTransferCharacteristics>,
1676
+ /**
1677
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/matrix)
1678
+ */
1679
+ matrix: Null.t<videoMatrixCoefficients>,
1680
+ /**
1681
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/fullRange)
1682
+ */
1683
+ fullRange: Null.t<bool>,
1684
+ }
1685
+
1686
+ /**
1687
+ [See VideoFrame on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame)
1688
+ */
1689
+ @editor.completeFrom(VideoFrame)
1690
+ type videoFrame = private {
1691
+ /**
1692
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/format)
1693
+ */
1694
+ format: Null.t<videoPixelFormat>,
1695
+ /**
1696
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedWidth)
1697
+ */
1698
+ codedWidth: int,
1699
+ /**
1700
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedHeight)
1701
+ */
1702
+ codedHeight: int,
1703
+ /**
1704
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedRect)
1705
+ */
1706
+ codedRect: Null.t<domRectReadOnly>,
1707
+ /**
1708
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/visibleRect)
1709
+ */
1710
+ visibleRect: Null.t<domRectReadOnly>,
1711
+ /**
1712
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayWidth)
1713
+ */
1714
+ displayWidth: int,
1715
+ /**
1716
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayHeight)
1717
+ */
1718
+ displayHeight: int,
1719
+ /**
1720
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/duration)
1721
+ */
1722
+ duration: Null.t<int>,
1723
+ /**
1724
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/timestamp)
1725
+ */
1726
+ timestamp: int,
1727
+ /**
1728
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/VideoFrame/colorSpace)
1729
+ */
1730
+ colorSpace: videoColorSpace,
1731
+ }
1732
+
1733
+ /**
1734
+ The underlying pixel data of an area of a <canvas> element. It is created using the ImageData() constructor or creator methods on the CanvasRenderingContext2D object associated with a canvas: createImageData() and getImageData(). It can also be used to set a part of the canvas by using putImageData().
1735
+ [See ImageData on MDN](https://developer.mozilla.org/docs/Web/API/ImageData)
1736
+ */
1737
+ @editor.completeFrom(ImageData)
1738
+ type imageData = private {
1739
+ /**
1740
+ Returns the actual dimensions of the data in the ImageData object, in pixels.
1741
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ImageData/width)
1742
+ */
1743
+ width: int,
1744
+ /**
1745
+ Returns the actual dimensions of the data in the ImageData object, in pixels.
1746
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ImageData/height)
1747
+ */
1748
+ height: int,
1749
+ /**
1750
+ Returns the one-dimensional array containing the data in RGBA order, as integers in the range 0 to 255.
1751
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ImageData/data)
1752
+ */
1753
+ data: Uint8ClampedArray.t,
1754
+ /**
1755
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/ImageData/colorSpace)
1756
+ */
1757
+ colorSpace: predefinedColorSpace,
1758
+ }
1759
+
1760
+ /**
1761
+ [See DOMPointReadOnly on MDN](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly)
1762
+ */
1763
+ @editor.completeFrom(DOMPointReadOnly)
1764
+ type domPointReadOnly = private {
1765
+ /**
1766
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/x)
1767
+ */
1768
+ x: float,
1769
+ /**
1770
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/y)
1771
+ */
1772
+ y: float,
1773
+ /**
1774
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/z)
1775
+ */
1776
+ z: float,
1777
+ /**
1778
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/w)
1779
+ */
1780
+ w: float,
1781
+ }
1782
+
1783
+ /**
1784
+ [See DOMPoint on MDN](https://developer.mozilla.org/docs/Web/API/DOMPoint)
1785
+ */
1786
+ @editor.completeFrom(DOMPoint)
1787
+ type domPoint = private {
1788
+ ...domPointReadOnly,
1789
+ }
1790
+
1791
+ /**
1792
+ [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/getContext#contextattributes)
1793
+ */
1794
+ type canvasContext2DAttributes = {
1795
+ alpha: bool,
1796
+ colorspace?: predefinedColorSpace,
1797
+ desynchronized: bool,
1798
+ willReadFrequently: bool,
1799
+ }
1800
+
1801
+ /**
1802
+ The CanvasRenderingContext2D interface, part of the WebApiCanvas API, provides the 2D rendering context for the drawing surface of a <canvas> element. It is used for drawing shapes, text, images, and other objects.
1803
+ [See CanvasRenderingContext2D on MDN](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D)
1804
+ */
1805
+ @editor.completeFrom(CanvasRenderingContext2D)
1806
+ type canvasRenderingContext2D
1807
+
1808
+ type rec animation = {
1809
+ ...eventTarget,
1810
+ /**
1811
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/id)
1812
+ */
1813
+ mutable id: string,
1814
+ /**
1815
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/effect)
1816
+ */
1817
+ mutable effect: Null.t<animationEffect>,
1818
+ /**
1819
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/timeline)
1820
+ */
1821
+ mutable timeline: Null.t<animationTimeline>,
1822
+ /**
1823
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/playbackRate)
1824
+ */
1825
+ mutable playbackRate: float,
1826
+ /**
1827
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/playState)
1828
+ */
1829
+ playState: animationPlayState,
1830
+ /**
1831
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/replaceState)
1832
+ */
1833
+ replaceState: animationReplaceState,
1834
+ /**
1835
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/pending)
1836
+ */
1837
+ pending: bool,
1838
+ /**
1839
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/ready)
1840
+ */
1841
+ ready: promise<animation>,
1842
+ /**
1843
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/finished)
1844
+ */
1845
+ finished: promise<animation>,
1846
+ /**
1847
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/startTime)
1848
+ */
1849
+ mutable startTime: Null.t<float>,
1850
+ /**
1851
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Animation/currentTime)
1852
+ */
1853
+ mutable currentTime: Null.t<float>,
1854
+ }
1855
+
1856
+ type elementDefinitionOptions = {mutable extends?: string}
1857
+
1858
+ type documentTimelineOptions = {mutable originTime?: float}
1859
+
1860
+ type getRootNodeOptions = {mutable composed?: bool}
1861
+
1862
+ type shadowRootInit = {
1863
+ mutable mode: shadowRootMode,
1864
+ mutable delegatesFocus?: bool,
1865
+ mutable slotAssignment?: slotAssignmentMode,
1866
+ mutable serializable?: bool,
1867
+ }
1868
+
1869
+ type checkVisibilityOptions = {
1870
+ mutable checkOpacity?: bool,
1871
+ mutable checkVisibilityCSS?: bool,
1872
+ mutable contentVisibilityAuto?: bool,
1873
+ mutable opacityProperty?: bool,
1874
+ mutable visibilityProperty?: bool,
1875
+ }
1876
+
1877
+ type scrollOptions = {mutable behavior?: scrollBehavior}
1878
+
1879
+ type scrollToOptions = {
1880
+ ...scrollOptions,
1881
+ mutable left?: float,
1882
+ mutable top?: float,
1883
+ }
1884
+
1885
+ type fullscreenOptions = {mutable navigationUI?: fullscreenNavigationUI}
1886
+
1887
+ type getHTMLOptions = {
1888
+ mutable serializableShadowRoots?: bool,
1889
+ mutable shadowRoots?: array<shadowRoot>,
1890
+ }
1891
+
1892
+ type pointerLockOptions = {mutable unadjustedMovement?: bool}
1893
+
1894
+ type caretPositionFromPointOptions = {mutable shadowRoots?: array<shadowRoot>}
1895
+
1896
+ type idleRequestOptions = {mutable timeout?: int}
1897
+
1898
+ type domRectInit = {
1899
+ mutable x?: float,
1900
+ mutable y?: float,
1901
+ mutable width?: float,
1902
+ mutable height?: float,
1903
+ }
1904
+
1905
+ type validityStateFlags = {
1906
+ mutable valueMissing?: bool,
1907
+ mutable typeMismatch?: bool,
1908
+ mutable patternMismatch?: bool,
1909
+ mutable tooLong?: bool,
1910
+ mutable tooShort?: bool,
1911
+ mutable rangeUnderflow?: bool,
1912
+ mutable rangeOverflow?: bool,
1913
+ mutable stepMismatch?: bool,
1914
+ mutable badInput?: bool,
1915
+ mutable customError?: bool,
1916
+ }
1917
+
1918
+ type cssStyleSheetInit = {
1919
+ mutable baseURL?: string,
1920
+ mutable media?: unknown,
1921
+ mutable disabled?: bool,
1922
+ }
1923
+
1924
+ type videoFrameCallbackMetadata = {
1925
+ mutable presentationTime: float,
1926
+ mutable expectedDisplayTime: float,
1927
+ mutable width: int,
1928
+ mutable height: int,
1929
+ mutable mediaTime: float,
1930
+ mutable presentedFrames: int,
1931
+ mutable processingDuration?: float,
1932
+ mutable captureTime?: float,
1933
+ mutable receiveTime?: float,
1934
+ mutable rtpTimestamp?: int,
1935
+ }
1936
+
1937
+ type assignedNodesOptions = {mutable flatten?: bool}
1938
+
1939
+ type focusOptions = {mutable preventScroll?: bool}
1940
+
1941
+ type effectTiming = {
1942
+ mutable fill?: fillMode,
1943
+ mutable iterationStart?: float,
1944
+ mutable iterations?: float,
1945
+ mutable direction?: playbackDirection,
1946
+ mutable easing?: string,
1947
+ mutable delay?: float,
1948
+ mutable endDelay?: float,
1949
+ mutable playbackRate?: float,
1950
+ mutable duration?: unknown,
1951
+ }
1952
+
1953
+ type getAnimationsOptions = {mutable subtree?: bool}
1954
+
1955
+ type computedEffectTiming = {
1956
+ ...effectTiming,
1957
+ mutable progress?: Null.t<float>,
1958
+ mutable currentIteration?: Null.t<float>,
1959
+ mutable startTime?: float,
1960
+ mutable endTime?: float,
1961
+ mutable activeDuration?: float,
1962
+ mutable localTime?: Null.t<float>,
1963
+ }
1964
+
1965
+ type optionalEffectTiming = {
1966
+ mutable delay?: float,
1967
+ mutable endDelay?: float,
1968
+ mutable fill?: fillMode,
1969
+ mutable iterationStart?: float,
1970
+ mutable iterations?: float,
1971
+ mutable duration?: unknown,
1972
+ mutable direction?: playbackDirection,
1973
+ mutable easing?: string,
1974
+ mutable playbackRate?: float,
1975
+ }
1976
+
1977
+ type imageBitmapOptions = {
1978
+ mutable imageOrientation?: imageOrientation,
1979
+ mutable premultiplyAlpha?: premultiplyAlpha,
1980
+ mutable colorSpaceConversion?: colorSpaceConversion,
1981
+ mutable resizeWidth?: int,
1982
+ mutable resizeHeight?: int,
1983
+ mutable resizeQuality?: resizeQuality,
1984
+ }
1985
+
1986
+ type scrollIntoViewOptions = {
1987
+ ...scrollOptions,
1988
+ mutable block?: scrollLogicalPosition,
1989
+ mutable inline?: scrollLogicalPosition,
1990
+ }
1991
+
1992
+ type windowPostMessageOptions = {
1993
+ ...structuredSerializeOptions,
1994
+ mutable targetOrigin?: string,
1995
+ }
1996
+
1997
+ type keyframeEffectOptions = {
1998
+ ...effectTiming,
1999
+ mutable composite?: compositeOperation,
2000
+ mutable pseudoElement?: Null.t<string>,
2001
+ mutable iterationComposite?: iterationCompositeOperation,
2002
+ }
2003
+
2004
+ type keyframeAnimationOptions = {
2005
+ ...keyframeEffectOptions,
2006
+ mutable id?: string,
2007
+ mutable timeline?: Null.t<animationTimeline>,
2008
+ }
2009
+
2010
+ type elementCreationOptions = {mutable is?: string}
2011
+
2012
+ type svgBoundingBoxOptions = {
2013
+ mutable fill?: bool,
2014
+ mutable stroke?: bool,
2015
+ mutable markers?: bool,
2016
+ mutable clipped?: bool,
2017
+ }
2018
+
2019
+ type domMatrix2DInit = {
2020
+ mutable a?: float,
2021
+ mutable b?: float,
2022
+ mutable c?: float,
2023
+ mutable d?: float,
2024
+ mutable e?: float,
2025
+ mutable f?: float,
2026
+ mutable m11?: float,
2027
+ mutable m12?: float,
2028
+ mutable m21?: float,
2029
+ mutable m22?: float,
2030
+ mutable m41?: float,
2031
+ mutable m42?: float,
2032
+ }
2033
+
2034
+ type domMatrixInit = {
2035
+ ...domMatrix2DInit,
2036
+ mutable m13?: float,
2037
+ mutable m14?: float,
2038
+ mutable m23?: float,
2039
+ mutable m24?: float,
2040
+ mutable m31?: float,
2041
+ mutable m32?: float,
2042
+ mutable m33?: float,
2043
+ mutable m34?: float,
2044
+ mutable m43?: float,
2045
+ mutable m44?: float,
2046
+ mutable is2D?: bool,
2047
+ }
2048
+
2049
+ type videoFrameInit = {
2050
+ mutable duration?: int,
2051
+ mutable timestamp?: int,
2052
+ mutable alpha?: alphaOption,
2053
+ mutable visibleRect?: domRectInit,
2054
+ mutable displayWidth?: int,
2055
+ mutable displayHeight?: int,
2056
+ }
2057
+
2058
+ type videoColorSpaceInit = {
2059
+ mutable primaries?: Null.t<videoColorPrimaries>,
2060
+ mutable transfer?: Null.t<videoTransferCharacteristics>,
2061
+ mutable matrix?: Null.t<videoMatrixCoefficients>,
2062
+ mutable fullRange?: Null.t<bool>,
2063
+ }
2064
+
2065
+ type planeLayout = {
2066
+ mutable offset: int,
2067
+ mutable stride: int,
2068
+ }
2069
+
2070
+ type videoFrameBufferInit = {
2071
+ mutable format: videoPixelFormat,
2072
+ mutable codedWidth: int,
2073
+ mutable codedHeight: int,
2074
+ mutable timestamp: int,
2075
+ mutable duration?: int,
2076
+ mutable layout?: array<planeLayout>,
2077
+ mutable visibleRect?: domRectInit,
2078
+ mutable displayWidth?: int,
2079
+ mutable displayHeight?: int,
2080
+ mutable colorSpace?: videoColorSpaceInit,
2081
+ }
2082
+
2083
+ type imageDataSettings = {mutable colorSpace?: predefinedColorSpace}
2084
+
2085
+ type videoFrameCopyToOptions = {
2086
+ mutable rect?: domRectInit,
2087
+ mutable layout?: array<planeLayout>,
2088
+ mutable format?: videoPixelFormat,
2089
+ mutable colorSpace?: predefinedColorSpace,
2090
+ }
2091
+
2092
+ type domPointInit = {
2093
+ mutable x?: float,
2094
+ mutable y?: float,
2095
+ mutable z?: float,
2096
+ mutable w?: float,
2097
+ }
2098
+
2099
+ type xPathNSResolver
2100
+
2101
+ type imageBitmapSource
2102
+
2103
+ type customElementConstructor
2104
+
2105
+ type timeoutId