@rescript/webapi 0.1.0-experimental-61b1074 → 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
@@ -1,61 +1,59 @@
1
- open FetchAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers)
5
3
  */
6
4
  @new
7
- external make: unit => headers = "Headers"
5
+ external make: unit => FetchTypes.headers = "Headers"
8
6
 
9
7
  /**
10
8
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers)
11
9
  */
12
10
  @new
13
- external fromDict: dict<string> => headers = "Headers"
11
+ external fromDict: dict<string> => FetchTypes.headers = "Headers"
14
12
 
15
13
  /**
16
14
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers)
17
15
  */
18
16
  @new
19
- external fromHeaders: headers => headers = "Headers"
17
+ external fromHeaders: FetchTypes.headers => FetchTypes.headers = "Headers"
20
18
 
21
19
  /**
22
20
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers)
23
21
  */
24
22
  @new
25
- external fromKeyValueArray: array<(string, string)> => headers = "Headers"
23
+ external fromKeyValueArray: array<(string, string)> => FetchTypes.headers = "Headers"
26
24
 
27
25
  /**
28
26
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers/append)
29
27
  */
30
28
  @send
31
- external append: (headers, ~name: string, ~value: string) => unit = "append"
29
+ external append: (FetchTypes.headers, ~name: string, ~value: string) => unit = "append"
32
30
 
33
31
  /**
34
32
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers/delete)
35
33
  */
36
34
  @send
37
- external delete: (headers, string) => unit = "delete"
35
+ external delete: (FetchTypes.headers, string) => unit = "delete"
38
36
 
39
37
  /**
40
38
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers/get)
41
39
  */
42
40
  @send
43
- external get: (headers, string) => null<string> = "get"
41
+ external get: (FetchTypes.headers, string) => null<string> = "get"
44
42
 
45
43
  /**
46
44
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers/getSetCookie)
47
45
  */
48
46
  @send
49
- external getSetCookie: headers => array<string> = "getSetCookie"
47
+ external getSetCookie: FetchTypes.headers => array<string> = "getSetCookie"
50
48
 
51
49
  /**
52
50
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers/has)
53
51
  */
54
52
  @send
55
- external has: (headers, string) => bool = "has"
53
+ external has: (FetchTypes.headers, string) => bool = "has"
56
54
 
57
55
  /**
58
56
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Headers/set)
59
57
  */
60
58
  @send
61
- external set: (headers, ~name: string, ~value: string) => unit = "set"
59
+ external set: (FetchTypes.headers, ~name: string, ~value: string) => unit = "set"
@@ -1,16 +1,16 @@
1
- open FetchAPI
1
+ type t = FetchTypes.headersInit
2
2
 
3
3
  /**
4
4
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_headers)
5
5
  */
6
- external fromDict: dict<string> => headersInit = "%identity"
6
+ external fromDict: dict<string> => t = "%identity"
7
7
 
8
8
  /**
9
9
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_headers)
10
10
  */
11
- external fromHeaders: headers => headersInit = "%identity"
11
+ external fromHeaders: FetchTypes.headers => t = "%identity"
12
12
 
13
13
  /**
14
14
  [Read more on MDN](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch#setting_headers)
15
15
  */
16
- external fromKeyValueArray: array<(string, string)> => headersInit = "%identity"
16
+ external fromKeyValueArray: array<(string, string)> => t = "%identity"
@@ -1,56 +1,61 @@
1
- open FetchAPI
2
- open FileAPI
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request)
3
+ */
4
+ type t = FetchTypes.request = private {...FetchTypes.request}
5
+ type requestInit = FetchTypes.requestInit
6
+ type bodyInit = BodyInit.t
7
+ type headersInit = HeadersInit.t
3
8
 
4
9
  /**
5
10
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request)
6
11
  */
7
12
  @new
8
- external fromURL: (string, ~init: requestInit=?) => request = "Request"
13
+ external fromURL: (string, ~init: requestInit=?) => t = "Request"
9
14
 
10
15
  /**
11
16
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request)
12
17
  */
13
18
  @new
14
- external fromRequest: (request, ~init: requestInit=?) => request = "Request"
19
+ external fromRequest: (t, ~init: requestInit=?) => t = "Request"
15
20
 
16
21
  /**
17
22
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer)
18
23
  */
19
24
  @send
20
- external arrayBuffer: request => promise<ArrayBuffer.t> = "arrayBuffer"
25
+ external arrayBuffer: t => promise<ArrayBuffer.t> = "arrayBuffer"
21
26
 
22
27
  /**
23
28
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/blob)
24
29
  */
25
30
  @send
26
- external blob: request => promise<blob> = "blob"
31
+ external blob: t => promise<Blob.t> = "blob"
27
32
 
28
33
  /**
29
34
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/bytes)
30
35
  */
31
36
  @send
32
- external bytes: request => promise<array<int>> = "bytes"
37
+ external bytes: t => promise<array<int>> = "bytes"
33
38
 
34
39
  /**
35
40
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/formData)
36
41
  */
37
42
  @send
38
- external formData: request => promise<formData> = "formData"
43
+ external formData: t => promise<FormData.t> = "formData"
39
44
 
40
45
  /**
41
46
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/json)
42
47
  */
43
48
  @send
44
- external json: request => promise<JSON.t> = "json"
49
+ external json: t => promise<JSON.t> = "json"
45
50
 
46
51
  /**
47
52
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/text)
48
53
  */
49
54
  @send
50
- external text: request => promise<string> = "text"
55
+ external text: t => promise<string> = "text"
51
56
 
52
57
  /**
53
58
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/clone)
54
59
  */
55
60
  @send
56
- external clone: request => request = "clone"
61
+ external clone: t => t = "clone"
@@ -1,123 +1,127 @@
1
- open FetchAPI
2
- open FileAPI
3
- open URLAPI
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
3
+ */
4
+ type t = FetchTypes.response = private {...FetchTypes.response}
5
+ type responseInit = FetchTypes.responseInit
6
+ type bodyInit = BodyInit.t
7
+ type headersInit = HeadersInit.t
4
8
 
5
9
  /**
6
10
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
7
11
  */
8
12
  @new
9
- external fromNull: (@as(json`null`) _, ~init: responseInit=?) => response = "Response"
13
+ external fromNull: (@as(json`null`) _, ~init: responseInit=?) => t = "Response"
10
14
 
11
15
  /**
12
16
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
13
17
  */
14
18
  @new
15
- external fromString: (string, ~init: responseInit=?) => response = "Response"
19
+ external fromString: (string, ~init: responseInit=?) => t = "Response"
16
20
 
17
21
  /**
18
22
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
19
23
  */
20
24
  @new
21
- external fromArrayBuffer: (ArrayBuffer.t, ~init: responseInit=?) => response = "Response"
25
+ external fromArrayBuffer: (ArrayBuffer.t, ~init: responseInit=?) => t = "Response"
22
26
 
23
27
  /**
24
28
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
25
29
  */
26
30
  @new
27
- external fromTypedArray: (TypedArray.t<'t>, ~init: responseInit=?) => response = "Response"
31
+ external fromTypedArray: (TypedArray.t<'t>, ~init: responseInit=?) => t = "Response"
28
32
 
29
33
  /**
30
34
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
31
35
  */
32
36
  @new
33
- external fromDataView: (DataView.t, ~init: responseInit=?) => response = "Response"
37
+ external fromDataView: (DataView.t, ~init: responseInit=?) => t = "Response"
34
38
 
35
39
  /**
36
40
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
37
41
  */
38
42
  @new
39
- external fromBlob: (blob, ~init: responseInit=?) => response = "Response"
43
+ external fromBlob: (Blob.t, ~init: responseInit=?) => t = "Response"
40
44
 
41
45
  /**
42
46
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
43
47
  */
44
48
  @new
45
- external fromFile: (file, ~init: responseInit=?) => response = "Response"
49
+ external fromFile: (File.t, ~init: responseInit=?) => t = "Response"
46
50
 
47
51
  /**
48
52
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
49
53
  */
50
54
  @new
51
- external fromURLSearchParams: (urlSearchParams, ~init: responseInit=?) => response = "Response"
55
+ external fromURLSearchParams: (URLSearchParams.t, ~init: responseInit=?) => t = "Response"
52
56
 
53
57
  /**
54
58
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
55
59
  */
56
60
  @new
57
- external fromFormData: (formData, ~init: responseInit=?) => response = "Response"
61
+ external fromFormData: (FormData.t, ~init: responseInit=?) => t = "Response"
58
62
 
59
63
  /**
60
64
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response)
61
65
  */
62
66
  @new
63
- external fromReadableStream: (readableStream<'t>, ~init: responseInit=?) => response = "Response"
67
+ external fromReadableStream: (ReadableStream.t<'t>, ~init: responseInit=?) => t = "Response"
64
68
 
65
69
  /**
66
70
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer)
67
71
  */
68
72
  @send
69
- external arrayBuffer: response => promise<ArrayBuffer.t> = "arrayBuffer"
73
+ external arrayBuffer: t => promise<ArrayBuffer.t> = "arrayBuffer"
70
74
 
71
75
  /**
72
76
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/blob)
73
77
  */
74
78
  @send
75
- external blob: response => promise<blob> = "blob"
79
+ external blob: t => promise<Blob.t> = "blob"
76
80
 
77
81
  /**
78
82
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/bytes)
79
83
  */
80
84
  @send
81
- external bytes: response => promise<array<int>> = "bytes"
85
+ external bytes: t => promise<array<int>> = "bytes"
82
86
 
83
87
  /**
84
88
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/formData)
85
89
  */
86
90
  @send
87
- external formData: response => promise<formData> = "formData"
91
+ external formData: t => promise<FormData.t> = "formData"
88
92
 
89
93
  /**
90
94
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/json)
91
95
  */
92
96
  @send
93
- external json: response => promise<JSON.t> = "json"
97
+ external json: t => promise<JSON.t> = "json"
94
98
 
95
99
  /**
96
100
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Request/text)
97
101
  */
98
102
  @send
99
- external text: response => promise<string> = "text"
103
+ external text: t => promise<string> = "text"
100
104
 
101
105
  /**
102
106
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response/error_static)
103
107
  */
104
108
  @scope("Response")
105
- external error: unit => response = "error"
109
+ external error: unit => t = "error"
106
110
 
107
111
  /**
108
112
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response/redirect_static)
109
113
  */
110
114
  @scope("Response")
111
- external redirect: (~url: string, ~status: int=?) => response = "redirect"
115
+ external redirect: (~url: string, ~status: int=?) => t = "redirect"
112
116
 
113
117
  /**
114
118
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response/json_static)
115
119
  */
116
120
  @scope("Response")
117
- external jsonR: (~data: JSON.t, ~init: responseInit=?) => response = "json"
121
+ external jsonR: (~data: JSON.t, ~init: responseInit=?) => t = "json"
118
122
 
119
123
  /**
120
124
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Response/clone)
121
125
  */
122
126
  @send
123
- external clone: response => response = "clone"
127
+ external clone: t => t = "clone"
@@ -1,28 +1,30 @@
1
- open FileAPI
2
-
3
1
  /**
4
2
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Blob)
5
3
  */
4
+ type t = FileTypes.blob = private {...FileTypes.blob}
5
+ type blobPart = FileTypes.blobPart
6
+ type blobPropertyBag = FileTypes.blobPropertyBag
7
+
6
8
  @new
7
- external make: (~blobParts: array<blobPart>=?, ~options: blobPropertyBag=?) => blob = "Blob"
9
+ external make: (~blobParts: array<blobPart>=?, ~options: blobPropertyBag=?) => t = "Blob"
8
10
 
9
11
  module Impl = (
10
12
  T: {
11
13
  type t
12
14
  },
13
15
  ) => {
14
- external asBlob: T.t => blob = "%identity"
16
+ external asBlob: T.t => t = "%identity"
15
17
  /**
16
18
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Blob/slice)
17
19
  */
18
20
  @send
19
- external slice: (T.t, ~start: int=?, ~end: int=?, ~contentType: string=?) => blob = "slice"
21
+ external slice: (T.t, ~start: int=?, ~end: int=?, ~contentType: string=?) => t = "slice"
20
22
 
21
23
  /**
22
24
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Blob/stream)
23
25
  */
24
26
  @send
25
- external stream: T.t => readableStream<array<int>> = "stream"
27
+ external stream: T.t => ReadableStream.t<array<int>> = "stream"
26
28
 
27
29
  /**
28
30
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Blob/text)
@@ -43,4 +45,4 @@ module Impl = (
43
45
  external bytes: T.t => promise<array<int>> = "bytes"
44
46
  }
45
47
 
46
- include Impl({type t = blob})
48
+ include Impl({type t = t})
@@ -1,15 +1,15 @@
1
- open FileAPI
1
+ type t = FileTypes.file = private {...FileTypes.file}
2
2
 
3
- include Blob.Impl({type t = file})
3
+ include Blob.Impl({type t = t})
4
4
 
5
5
  /**
6
6
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/File)
7
7
  */
8
8
  @new
9
9
  external make: (
10
- ~fileBits: array<blobPart>,
10
+ ~fileBits: array<FileTypes.blobPart>,
11
11
  ~fileName: string,
12
- ~options: filePropertyBag=?,
13
- ) => file = "File"
12
+ ~options: FileTypes.filePropertyBag=?,
13
+ ) => t = "File"
14
14
 
15
15
  let isInstanceOf = (_: 't): bool => %raw(`param instanceof File`)
@@ -0,0 +1,49 @@
1
+ external asFileSystemHandle: FileTypes.fileSystemDirectoryHandle => FileTypes.fileSystemHandle =
2
+ "%identity"
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/isSameEntry)
5
+ */
6
+ @send
7
+ external isSameEntry: (
8
+ FileTypes.fileSystemDirectoryHandle,
9
+ FileTypes.fileSystemHandle,
10
+ ) => promise<bool> = "isSameEntry"
11
+
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getFileHandle)
14
+ */
15
+ @send
16
+ external getFileHandle: (
17
+ FileTypes.fileSystemDirectoryHandle,
18
+ ~name: string,
19
+ ~options: FileTypes.fileSystemGetFileOptions=?,
20
+ ) => promise<FileTypes.fileSystemFileHandle> = "getFileHandle"
21
+
22
+ /**
23
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getDirectoryHandle)
24
+ */
25
+ @send
26
+ external getDirectoryHandle: (
27
+ FileTypes.fileSystemDirectoryHandle,
28
+ ~name: string,
29
+ ~options: FileTypes.fileSystemGetDirectoryOptions=?,
30
+ ) => promise<FileTypes.fileSystemDirectoryHandle> = "getDirectoryHandle"
31
+
32
+ /**
33
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/removeEntry)
34
+ */
35
+ @send
36
+ external removeEntry: (
37
+ FileTypes.fileSystemDirectoryHandle,
38
+ ~name: string,
39
+ ~options: FileTypes.fileSystemRemoveOptions=?,
40
+ ) => promise<unit> = "removeEntry"
41
+
42
+ /**
43
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/resolve)
44
+ */
45
+ @send
46
+ external resolve: (
47
+ FileTypes.fileSystemDirectoryHandle,
48
+ FileTypes.fileSystemHandle,
49
+ ) => promise<array<string>> = "resolve"
@@ -0,0 +1,25 @@
1
+ external asFileSystemHandle: FileTypes.fileSystemFileHandle => FileTypes.fileSystemHandle =
2
+ "%identity"
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/isSameEntry)
5
+ */
6
+ @send
7
+ external isSameEntry: (
8
+ FileTypes.fileSystemFileHandle,
9
+ FileTypes.fileSystemHandle,
10
+ ) => promise<bool> = "isSameEntry"
11
+
12
+ /**
13
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/getFile)
14
+ */
15
+ @send
16
+ external getFile: FileTypes.fileSystemFileHandle => promise<FileTypes.file> = "getFile"
17
+
18
+ /**
19
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/createWritable)
20
+ */
21
+ @send
22
+ external createWritable: (
23
+ FileTypes.fileSystemFileHandle,
24
+ ~options: FileTypes.fileSystemCreateWritableOptions=?,
25
+ ) => promise<FileTypes.fileSystemWritableFileStream> = "createWritable"
@@ -0,0 +1,6 @@
1
+ /**
2
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/isSameEntry)
3
+ */
4
+ @send
5
+ external isSameEntry: (FileTypes.fileSystemHandle, FileTypes.fileSystemHandle) => promise<bool> =
6
+ "isSameEntry"
@@ -0,0 +1,65 @@
1
+ external asWritableStream: FileTypes.fileSystemWritableFileStream => FileTypes.writableStream<'w> =
2
+ "%identity"
3
+ /**
4
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStream/abort)
5
+ */
6
+ @send
7
+ external abort: (FileTypes.fileSystemWritableFileStream, ~reason: JSON.t=?) => promise<unit> =
8
+ "abort"
9
+
10
+ /**
11
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStream/close)
12
+ */
13
+ @send
14
+ external close: FileTypes.fileSystemWritableFileStream => promise<unit> = "close"
15
+
16
+ /**
17
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStream/getWriter)
18
+ */
19
+ @send
20
+ external getWriter: FileTypes.fileSystemWritableFileStream => FileTypes.writableStreamDefaultWriter<
21
+ 'w,
22
+ > = "getWriter"
23
+
24
+ /**
25
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write)
26
+ */
27
+ @send
28
+ external write: (FileTypes.fileSystemWritableFileStream, DataView.t) => promise<unit> = "write"
29
+
30
+ /**
31
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write)
32
+ */
33
+ @send
34
+ external write2: (FileTypes.fileSystemWritableFileStream, ArrayBuffer.t) => promise<unit> = "write"
35
+
36
+ /**
37
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write)
38
+ */
39
+ @send
40
+ external write3: (FileTypes.fileSystemWritableFileStream, FileTypes.blob) => promise<unit> = "write"
41
+
42
+ /**
43
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write)
44
+ */
45
+ @send
46
+ external write4: (FileTypes.fileSystemWritableFileStream, string) => promise<unit> = "write"
47
+
48
+ /**
49
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write)
50
+ */
51
+ @send
52
+ external write5: (FileTypes.fileSystemWritableFileStream, FileTypes.writeParams) => promise<unit> =
53
+ "write"
54
+
55
+ /**
56
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/seek)
57
+ */
58
+ @send
59
+ external seek: (FileTypes.fileSystemWritableFileStream, int) => promise<unit> = "seek"
60
+
61
+ /**
62
+ [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/truncate)
63
+ */
64
+ @send
65
+ external truncate: (FileTypes.fileSystemWritableFileStream, int) => promise<unit> = "truncate"
@@ -1,8 +1,5 @@
1
1
  @@warning("-30")
2
2
 
3
- open Prelude
4
- open EventAPI
5
-
6
3
  type endingType =
7
4
  | @as("native") Native
8
5
  | @as("transparent") Transparent
@@ -19,11 +16,11 @@ type writeCommandType =
19
16
  | @as("write") Write
20
17
 
21
18
  /**
22
- A file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The File interface is based on Blob, inheriting blob functionality and expanding it to support files on the user's system.
19
+ A file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The WebApiFile interface is based on Blob, inheriting blob functionality and expanding it to support files on the user's system.
23
20
  [See Blob on MDN](https://developer.mozilla.org/docs/Web/API/Blob)
24
21
  */
25
22
  @editor.completeFrom(Blob)
26
- type blob = {
23
+ type blob = BaseFile.blob = private {
27
24
  /**
28
25
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/Blob/size)
29
26
  */
@@ -36,7 +33,7 @@ type blob = {
36
33
  }
37
34
 
38
35
  /**
39
- This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object.
36
+ This Streams API interface represents a readable stream of byte data. The WebApiFetch API offers a concrete instance of a ReadableStream through the body property of a Response object.
40
37
  [See ReadableStream on MDN](https://developer.mozilla.org/docs/Web/API/ReadableStream)
41
38
  */
42
39
  type readableStream<'r> = {
@@ -62,19 +59,19 @@ This Streams API interface represents a controller allowing control of a Writab
62
59
  [See WritableStreamDefaultController on MDN](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController)
63
60
  */
64
61
  @editor.completeFrom(WritableStreamDefaultController)
65
- type writableStreamDefaultController = {
62
+ type writableStreamDefaultController = private {
66
63
  /**
67
64
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/signal)
68
65
  */
69
- signal: abortSignal,
66
+ signal: EventTypes.abortSignal,
70
67
  }
71
68
 
72
69
  /**
73
70
  Provides information about files and allows JavaScript in a web page to access their content.
74
- [See File on MDN](https://developer.mozilla.org/docs/Web/API/File)
71
+ [See WebApiFile on MDN](https://developer.mozilla.org/docs/Web/API/File)
75
72
  */
76
- @editor.completeFrom(File)
77
- type file = {
73
+ @editor.completeFrom(WebApiFile)
74
+ type file = BaseFile.file = private {
78
75
  ...blob,
79
76
  /**
80
77
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/File/name)
@@ -94,7 +91,7 @@ type file = {
94
91
  [See FileSystemHandle on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemHandle)
95
92
  */
96
93
  @editor.completeFrom(FileSystemHandle)
97
- type fileSystemHandle = {
94
+ type fileSystemHandle = private {
98
95
  /**
99
96
  [Read more on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/kind)
100
97
  */
@@ -109,7 +106,7 @@ type fileSystemHandle = {
109
106
  [See FileSystemDirectoryHandle on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle)
110
107
  */
111
108
  @editor.completeFrom(FileSystemDirectoryHandle)
112
- type fileSystemDirectoryHandle = {
109
+ type fileSystemDirectoryHandle = private {
113
110
  ...fileSystemHandle,
114
111
  }
115
112
 
@@ -117,7 +114,7 @@ type fileSystemDirectoryHandle = {
117
114
  [See FileSystemFileHandle on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle)
118
115
  */
119
116
  @editor.completeFrom(FileSystemFileHandle)
120
- type fileSystemFileHandle = {
117
+ type fileSystemFileHandle = private {
121
118
  ...fileSystemHandle,
122
119
  }
123
120
 
@@ -125,8 +122,8 @@ type fileSystemFileHandle = {
125
122
  [See FileSystemWritableFileStream on MDN](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream)
126
123
  */
127
124
  @editor.completeFrom(FileSystemWritableFileStream)
128
- type fileSystemWritableFileStream = {
129
- ...writableStream<any>,
125
+ type fileSystemWritableFileStream = private {
126
+ ...writableStream<unknown>,
130
127
  }
131
128
 
132
129
  @unboxed
@@ -136,15 +133,17 @@ type blobPart =
136
133
  // | ArrayBuffer(ArrayBuffer.t)
137
134
  // | TypedArray(TypedArray.t<int>)
138
135
 
139
- type queuingStrategy<'t> = any
136
+ type queuingStrategy<'t> = unknown
137
+
138
+ type underlyingSink<'t> = unknown
140
139
 
141
- type underlyingSink<'t> = any
140
+ type underlyingSource<'t> = unknown
142
141
 
143
- type readableStreamReader<'t> = any
142
+ type readableStreamReader<'t> = unknown
144
143
 
145
- type writableStreamDefaultWriter<'t> = any
144
+ type writableStreamDefaultWriter<'t> = unknown
146
145
 
147
- type fileSystemWriteChunkType = any
146
+ type fileSystemWriteChunkType = unknown
148
147
 
149
148
  type underlyingSourceCancelCallback = JSON.t => promise<unit>
150
149
 
@@ -196,12 +195,12 @@ When this source readable stream closes, destination will be closed, unless prev
196
195
 
197
196
  If destination starts out closed or closing, this source readable stream will be canceled, unless preventCancel is true. The returned promise will be rejected with an error indicating piping to a closed stream failed, or with any error that occurs during canceling the source.
198
197
 
199
- The signal option can be set to an AbortSignal to allow aborting an ongoing pipe operation via the corresponding AbortController. In this case, this source readable stream will be canceled, and destination aborted, unless the respective options preventCancel or preventAbort are set.
198
+ The signal option can be set to an AbortSignal to allow aborting an ongoing pipe operation via the corresponding Event.AbortController. In this case, this source readable stream will be canceled, and destination aborted, unless the respective options preventCancel or preventAbort are set.
200
199
  */
201
200
  mutable preventClose?: bool,
202
201
  mutable preventAbort?: bool,
203
202
  mutable preventCancel?: bool,
204
- mutable signal?: abortSignal,
203
+ mutable signal?: EventTypes.abortSignal,
205
204
  }
206
205
 
207
206
  type filePropertyBag = {