@webref/idl 3.29.0 → 3.30.0

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 (292) hide show
  1. package/ANGLE_instanced_arrays.idl +12 -0
  2. package/CSP.idl +56 -0
  3. package/DOM-Parsing.idl +26 -0
  4. package/EXT_blend_minmax.idl +10 -0
  5. package/EXT_color_buffer_float.idl +8 -0
  6. package/EXT_color_buffer_half_float.idl +12 -0
  7. package/EXT_disjoint_timer_query.idl +30 -0
  8. package/EXT_disjoint_timer_query_webgl2.idl +14 -0
  9. package/EXT_float_blend.idl +8 -0
  10. package/EXT_frag_depth.idl +8 -0
  11. package/EXT_sRGB.idl +12 -0
  12. package/EXT_shader_texture_lod.idl +8 -0
  13. package/EXT_texture_compression_bptc.idl +12 -0
  14. package/EXT_texture_compression_rgtc.idl +12 -0
  15. package/EXT_texture_filter_anisotropic.idl +10 -0
  16. package/EXT_texture_norm16.idl +16 -0
  17. package/FedCM.idl +67 -0
  18. package/FileAPI.idl +100 -0
  19. package/IndexedDB.idl +226 -0
  20. package/KHR_parallel_shader_compile.idl +9 -0
  21. package/OES_draw_buffers_indexed.idl +26 -0
  22. package/OES_element_index_uint.idl +8 -0
  23. package/OES_fbo_render_mipmap.idl +8 -0
  24. package/OES_standard_derivatives.idl +9 -0
  25. package/OES_texture_float.idl +7 -0
  26. package/OES_texture_float_linear.idl +7 -0
  27. package/OES_texture_half_float.idl +9 -0
  28. package/OES_texture_half_float_linear.idl +7 -0
  29. package/OES_vertex_array_object.idl +18 -0
  30. package/OVR_multiview2.idl +14 -0
  31. package/SVG.idl +693 -0
  32. package/WEBGL_blend_equation_advanced_coherent.idl +23 -0
  33. package/WEBGL_clip_cull_distance.idl +20 -0
  34. package/WEBGL_color_buffer_float.idl +11 -0
  35. package/WEBGL_compressed_texture_astc.idl +41 -0
  36. package/WEBGL_compressed_texture_etc.idl +19 -0
  37. package/WEBGL_compressed_texture_etc1.idl +10 -0
  38. package/WEBGL_compressed_texture_pvrtc.idl +13 -0
  39. package/WEBGL_compressed_texture_s3tc.idl +13 -0
  40. package/WEBGL_compressed_texture_s3tc_srgb.idl +13 -0
  41. package/WEBGL_debug_renderer_info.idl +12 -0
  42. package/WEBGL_debug_shaders.idl +11 -0
  43. package/WEBGL_depth_texture.idl +9 -0
  44. package/WEBGL_draw_buffers.idl +46 -0
  45. package/WEBGL_draw_instanced_base_vertex_base_instance.idl +14 -0
  46. package/WEBGL_lose_context.idl +10 -0
  47. package/WEBGL_multi_draw.idl +32 -0
  48. package/WEBGL_multi_draw_instanced_base_vertex_base_instance.idl +26 -0
  49. package/WEBGL_provoking_vertex.idl +13 -0
  50. package/WebCryptoAPI.idl +237 -0
  51. package/accelerometer.idl +40 -0
  52. package/ambient-light.idl +14 -0
  53. package/anchors.idl +37 -0
  54. package/attribution-reporting-api.idl +12 -0
  55. package/audio-output.idl +17 -0
  56. package/autoplay-detection.idl +19 -0
  57. package/background-fetch.idl +89 -0
  58. package/background-sync.idl +30 -0
  59. package/badging.idl +19 -0
  60. package/battery-status.idl +21 -0
  61. package/beacon.idl +8 -0
  62. package/capture-handle-identity.idl +27 -0
  63. package/clipboard-apis.idl +51 -0
  64. package/close-watcher.idl +19 -0
  65. package/compat.idl +13 -0
  66. package/compression.idl +16 -0
  67. package/compute-pressure.idl +40 -0
  68. package/console.idl +34 -0
  69. package/contact-picker.idl +44 -0
  70. package/content-index.idl +46 -0
  71. package/cookie-store.idl +110 -0
  72. package/crash-reporting.idl +10 -0
  73. package/credential-management.idl +105 -0
  74. package/csp-embedded-enforcement.idl +8 -0
  75. package/csp-next.idl +21 -0
  76. package/css-animation-worklet.idl +37 -0
  77. package/css-animations-2.idl +9 -0
  78. package/css-animations.idl +47 -0
  79. package/css-cascade-6.idl +10 -0
  80. package/css-cascade.idl +18 -0
  81. package/css-color-5.idl +12 -0
  82. package/css-conditional.idl +27 -0
  83. package/css-contain-3.idl +10 -0
  84. package/css-contain.idl +13 -0
  85. package/css-counter-styles.idl +23 -0
  86. package/css-font-loading.idl +134 -0
  87. package/css-fonts.idl +36 -0
  88. package/css-highlight-api.idl +27 -0
  89. package/css-images-4.idl +8 -0
  90. package/css-layout-api.idl +144 -0
  91. package/css-masking.idl +20 -0
  92. package/css-nav.idl +48 -0
  93. package/css-nesting.idl +10 -0
  94. package/css-paint-api.idl +39 -0
  95. package/css-parser-api.idl +76 -0
  96. package/css-properties-values-api.idl +23 -0
  97. package/css-pseudo.idl +16 -0
  98. package/css-regions.idl +29 -0
  99. package/css-shadow-parts.idl +8 -0
  100. package/css-transitions-2.idl +9 -0
  101. package/css-transitions.idl +25 -0
  102. package/css-typed-om.idl +423 -0
  103. package/css-view-transitions.idl +18 -0
  104. package/cssom-view.idl +200 -0
  105. package/cssom.idl +159 -0
  106. package/custom-state-pseudo-class.idl +14 -0
  107. package/datacue.idl +12 -0
  108. package/deprecation-reporting.idl +15 -0
  109. package/device-memory.idl +14 -0
  110. package/device-posture.idl +21 -0
  111. package/digital-goods.idl +44 -0
  112. package/dom.idl +645 -0
  113. package/edit-context.idl +111 -0
  114. package/element-timing.idl +22 -0
  115. package/encoding.idl +59 -0
  116. package/encrypted-media.idl +125 -0
  117. package/entries-api.idl +71 -0
  118. package/event-timing.idl +29 -0
  119. package/eyedropper-api.idl +18 -0
  120. package/fenced-frame.idl +49 -0
  121. package/fetch.idl +117 -0
  122. package/fido.idl +47 -0
  123. package/file-system-access.idl +72 -0
  124. package/filter-effects.idl +341 -0
  125. package/font-metrics-api.idl +42 -0
  126. package/fs.idl +97 -0
  127. package/fullscreen.idl +35 -0
  128. package/gamepad-extensions.idl +71 -0
  129. package/gamepad.idl +49 -0
  130. package/generic-sensor.idl +60 -0
  131. package/geolocation-sensor.idl +47 -0
  132. package/geolocation.idl +65 -0
  133. package/geometry.idl +290 -0
  134. package/get-installed-related-apps.idl +16 -0
  135. package/gpc-spec.idl +10 -0
  136. package/gyroscope.idl +24 -0
  137. package/hr-time.idl +19 -0
  138. package/html-media-capture.idl +8 -0
  139. package/html.idl +2716 -0
  140. package/idle-detection.idl +31 -0
  141. package/image-capture.idl +160 -0
  142. package/image-resource.idl +11 -0
  143. package/ink-enhancement.idl +32 -0
  144. package/input-device-capabilities.idl +24 -0
  145. package/input-events.idl +14 -0
  146. package/intersection-observer.idl +46 -0
  147. package/intervention-reporting.idl +14 -0
  148. package/is-input-pending.idl +16 -0
  149. package/js-self-profiling.idl +44 -0
  150. package/keyboard-lock.idl +14 -0
  151. package/keyboard-map.idl +15 -0
  152. package/largest-contentful-paint.idl +15 -0
  153. package/layout-instability.idl +20 -0
  154. package/local-font-access.idl +24 -0
  155. package/longtasks.idl +19 -0
  156. package/magnetometer.idl +46 -0
  157. package/manifest-incubations.idl +24 -0
  158. package/mathml-core.idl +9 -0
  159. package/media-capabilities.idl +115 -0
  160. package/media-playback-quality.idl +18 -0
  161. package/media-source.idl +91 -0
  162. package/mediacapture-automation.idl +36 -0
  163. package/mediacapture-fromelement.idl +17 -0
  164. package/mediacapture-handle-actions.idl +31 -0
  165. package/mediacapture-region.idl +15 -0
  166. package/mediacapture-streams.idl +248 -0
  167. package/mediacapture-transform.idl +23 -0
  168. package/mediacapture-viewport.idl +14 -0
  169. package/mediasession.idl +84 -0
  170. package/mediastream-recording.idl +60 -0
  171. package/model-element.idl +9 -0
  172. package/mst-content-hint.idl +18 -0
  173. package/navigation-timing.idl +71 -0
  174. package/netinfo.idl +43 -0
  175. package/notifications.idl +101 -0
  176. package/orientation-event.idl +82 -0
  177. package/orientation-sensor.idl +35 -0
  178. package/package.json +1 -1
  179. package/page-lifecycle.idl +19 -0
  180. package/paint-timing.idl +7 -0
  181. package/payment-handler.idl +131 -0
  182. package/payment-request.idl +112 -0
  183. package/performance-measure-memory.idl +30 -0
  184. package/performance-timeline.idl +49 -0
  185. package/periodic-background-sync.idl +34 -0
  186. package/permissions-policy.idl +29 -0
  187. package/permissions-request.idl +8 -0
  188. package/permissions-revoke.idl +8 -0
  189. package/permissions.idl +41 -0
  190. package/picture-in-picture.idl +41 -0
  191. package/pointerevents.idl +64 -0
  192. package/pointerlock.idl +28 -0
  193. package/portals.idl +50 -0
  194. package/prefer-current-tab.idl +8 -0
  195. package/prerendering-revamped.idl +15 -0
  196. package/presentation-api.idl +95 -0
  197. package/private-click-measurement.idl +8 -0
  198. package/proximity.idl +18 -0
  199. package/push-api.idl +93 -0
  200. package/raw-camera-access.idl +18 -0
  201. package/referrer-policy.idl +16 -0
  202. package/remote-playback.idl +32 -0
  203. package/reporting.idl +39 -0
  204. package/requestStorageAccessForOrigin.idl +12 -0
  205. package/requestidlecallback.idl +20 -0
  206. package/resize-observer.idl +37 -0
  207. package/resource-timing.idl +40 -0
  208. package/sanitizer-api.idl +38 -0
  209. package/savedata.idl +10 -0
  210. package/scheduling-apis.idl +57 -0
  211. package/screen-capture.idl +85 -0
  212. package/screen-orientation.idl +35 -0
  213. package/screen-wake-lock.idl +24 -0
  214. package/scroll-animations.idl +41 -0
  215. package/scroll-to-text-fragment.idl +12 -0
  216. package/secure-payment-confirmation.idl +52 -0
  217. package/selection-api.idl +46 -0
  218. package/serial.idl +85 -0
  219. package/server-timing.idl +17 -0
  220. package/service-workers.idl +240 -0
  221. package/shape-detection-api.idl +69 -0
  222. package/speech-api.idl +202 -0
  223. package/storage-access.idl +9 -0
  224. package/storage.idl +25 -0
  225. package/streams.idl +222 -0
  226. package/svg-animations.idl +68 -0
  227. package/testutils.idl +9 -0
  228. package/text-detection-api.idl +18 -0
  229. package/touch-events.idl +79 -0
  230. package/trust-token-api.idl +29 -0
  231. package/trusted-types.idl +71 -0
  232. package/turtledove.idl +63 -0
  233. package/ua-client-hints.idl +44 -0
  234. package/uievents.idl +248 -0
  235. package/url.idl +44 -0
  236. package/urlpattern.idl +59 -0
  237. package/user-timing.idl +34 -0
  238. package/vibration.idl +10 -0
  239. package/video-rvfc.idl +27 -0
  240. package/virtual-keyboard.idl +21 -0
  241. package/wai-aria.idl +59 -0
  242. package/wasm-js-api.idl +110 -0
  243. package/wasm-web-api.idl +11 -0
  244. package/web-animations-2.idl +102 -0
  245. package/web-animations.idl +149 -0
  246. package/web-app-launch.idl +19 -0
  247. package/web-bluetooth.idl +251 -0
  248. package/web-locks.idl +50 -0
  249. package/web-nfc.idl +81 -0
  250. package/web-otp.idl +21 -0
  251. package/web-share.idl +16 -0
  252. package/webaudio.idl +674 -0
  253. package/webauthn.idl +349 -0
  254. package/webcodecs-aac-codec-registration.idl +17 -0
  255. package/webcodecs-avc-codec-registration.idl +17 -0
  256. package/webcodecs-flac-codec-registration.idl +13 -0
  257. package/webcodecs-hevc-codec-registration.idl +17 -0
  258. package/webcodecs-opus-codec-registration.idl +22 -0
  259. package/webcodecs-vp9-codec-registration.idl +12 -0
  260. package/webcodecs.idl +500 -0
  261. package/webcrypto-secure-curves.idl +8 -0
  262. package/webdriver.idl +9 -0
  263. package/webgl1.idl +745 -0
  264. package/webgl2.idl +582 -0
  265. package/webgpu.idl +1267 -0
  266. package/webhid.idl +127 -0
  267. package/webidl.idl +48 -0
  268. package/webmidi.idl +91 -0
  269. package/webnn.idl +549 -0
  270. package/webrtc-encoded-transform.idl +127 -0
  271. package/webrtc-ice.idl +24 -0
  272. package/webrtc-identity.idl +97 -0
  273. package/webrtc-priority.idl +24 -0
  274. package/webrtc-stats.idl +288 -0
  275. package/webrtc-svc.idl +8 -0
  276. package/webrtc.idl +628 -0
  277. package/websockets.idl +48 -0
  278. package/webtransport.idl +143 -0
  279. package/webusb.idl +249 -0
  280. package/webvtt.idl +40 -0
  281. package/webxr-ar-module.idl +29 -0
  282. package/webxr-depth-sensing.idl +57 -0
  283. package/webxr-dom-overlays.idl +31 -0
  284. package/webxr-gamepads-module.idl +8 -0
  285. package/webxr-hand-input.idl +66 -0
  286. package/webxr-hit-test.idl +69 -0
  287. package/webxr-lighting-estimation.idl +39 -0
  288. package/webxr.idl +295 -0
  289. package/webxrlayers.idl +212 -0
  290. package/window-controls-overlay.idl +28 -0
  291. package/window-placement.idl +42 -0
  292. package/xhr.idl +99 -0
package/webhid.idl ADDED
@@ -0,0 +1,127 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: WebHID API (https://wicg.github.io/webhid/)
5
+
6
+ [SecureContext] partial interface Navigator {
7
+ [SameObject] readonly attribute HID hid;
8
+ };
9
+
10
+ [Exposed=ServiceWorker, SecureContext]
11
+ partial interface WorkerNavigator {
12
+ [SameObject] readonly attribute HID hid;
13
+ };
14
+
15
+ [Exposed=(Window,ServiceWorker), SecureContext]
16
+ interface HID : EventTarget {
17
+ attribute EventHandler onconnect;
18
+ attribute EventHandler ondisconnect;
19
+ Promise<sequence<HIDDevice>> getDevices();
20
+ Promise<sequence<HIDDevice>> requestDevice(
21
+ HIDDeviceRequestOptions options);
22
+ };
23
+
24
+ dictionary HIDDeviceRequestOptions {
25
+ required sequence<HIDDeviceFilter> filters;
26
+ sequence<HIDDeviceFilter> exclusionFilters;
27
+ };
28
+
29
+ dictionary HIDDeviceFilter {
30
+ unsigned long vendorId;
31
+ unsigned short productId;
32
+ unsigned short usagePage;
33
+ unsigned short usage;
34
+ };
35
+
36
+ [Exposed=Window, SecureContext]
37
+ interface HIDDevice : EventTarget {
38
+ attribute EventHandler oninputreport;
39
+ readonly attribute boolean opened;
40
+ readonly attribute unsigned short vendorId;
41
+ readonly attribute unsigned short productId;
42
+ readonly attribute DOMString productName;
43
+ readonly attribute FrozenArray<HIDCollectionInfo> collections;
44
+ Promise<undefined> open();
45
+ Promise<undefined> close();
46
+ Promise<undefined> forget();
47
+ Promise<undefined> sendReport([EnforceRange] octet reportId, BufferSource data);
48
+ Promise<undefined> sendFeatureReport(
49
+ [EnforceRange] octet reportId,
50
+ BufferSource data);
51
+ Promise<DataView> receiveFeatureReport([EnforceRange] octet reportId);
52
+ };
53
+
54
+ [Exposed=Window, SecureContext]
55
+ interface HIDConnectionEvent : Event {
56
+ constructor(DOMString type, HIDConnectionEventInit eventInitDict);
57
+ [SameObject] readonly attribute HIDDevice device;
58
+ };
59
+
60
+ dictionary HIDConnectionEventInit : EventInit {
61
+ required HIDDevice device;
62
+ };
63
+
64
+ [Exposed=Window, SecureContext]
65
+ interface HIDInputReportEvent : Event {
66
+ constructor(DOMString type, HIDInputReportEventInit eventInitDict);
67
+ [SameObject] readonly attribute HIDDevice device;
68
+ readonly attribute octet reportId;
69
+ readonly attribute DataView data;
70
+ };
71
+
72
+ dictionary HIDInputReportEventInit : EventInit {
73
+ required HIDDevice device;
74
+ required octet reportId;
75
+ required DataView data;
76
+ };
77
+
78
+ dictionary HIDCollectionInfo {
79
+ unsigned short usagePage;
80
+ unsigned short usage;
81
+ octet type;
82
+ sequence<HIDCollectionInfo> children;
83
+ sequence<HIDReportInfo> inputReports;
84
+ sequence<HIDReportInfo> outputReports;
85
+ sequence<HIDReportInfo> featureReports;
86
+ };
87
+
88
+ dictionary HIDReportInfo {
89
+ octet reportId;
90
+ sequence<HIDReportItem> items;
91
+ };
92
+
93
+ dictionary HIDReportItem {
94
+ boolean isAbsolute;
95
+ boolean isArray;
96
+ boolean isBufferedBytes;
97
+ boolean isConstant;
98
+ boolean isLinear;
99
+ boolean isRange;
100
+ boolean isVolatile;
101
+ boolean hasNull;
102
+ boolean hasPreferredState;
103
+ boolean wrap;
104
+ sequence<unsigned long> usages;
105
+ unsigned long usageMinimum;
106
+ unsigned long usageMaximum;
107
+ unsigned short reportSize;
108
+ unsigned short reportCount;
109
+ byte unitExponent;
110
+ HIDUnitSystem unitSystem;
111
+ byte unitFactorLengthExponent;
112
+ byte unitFactorMassExponent;
113
+ byte unitFactorTimeExponent;
114
+ byte unitFactorTemperatureExponent;
115
+ byte unitFactorCurrentExponent;
116
+ byte unitFactorLuminousIntensityExponent;
117
+ long logicalMinimum;
118
+ long logicalMaximum;
119
+ long physicalMinimum;
120
+ long physicalMaximum;
121
+ sequence<DOMString> strings;
122
+ };
123
+
124
+ enum HIDUnitSystem {
125
+ "none", "si-linear", "si-rotation", "english-linear",
126
+ "english-rotation", "vendor-defined", "reserved"
127
+ };
package/webidl.idl ADDED
@@ -0,0 +1,48 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: Web IDL Standard (https://webidl.spec.whatwg.org/)
5
+
6
+ typedef (Int8Array or Int16Array or Int32Array or
7
+ Uint8Array or Uint16Array or Uint32Array or Uint8ClampedArray or
8
+ BigInt64Array or BigUint64Array or
9
+ Float32Array or Float64Array or DataView) ArrayBufferView;
10
+
11
+ typedef (ArrayBufferView or ArrayBuffer) BufferSource;
12
+ [Exposed=*,
13
+ Serializable]
14
+ interface DOMException { // but see below note about ECMAScript binding
15
+ constructor(optional DOMString message = "", optional DOMString name = "Error");
16
+ readonly attribute DOMString name;
17
+ readonly attribute DOMString message;
18
+ readonly attribute unsigned short code;
19
+
20
+ const unsigned short INDEX_SIZE_ERR = 1;
21
+ const unsigned short DOMSTRING_SIZE_ERR = 2;
22
+ const unsigned short HIERARCHY_REQUEST_ERR = 3;
23
+ const unsigned short WRONG_DOCUMENT_ERR = 4;
24
+ const unsigned short INVALID_CHARACTER_ERR = 5;
25
+ const unsigned short NO_DATA_ALLOWED_ERR = 6;
26
+ const unsigned short NO_MODIFICATION_ALLOWED_ERR = 7;
27
+ const unsigned short NOT_FOUND_ERR = 8;
28
+ const unsigned short NOT_SUPPORTED_ERR = 9;
29
+ const unsigned short INUSE_ATTRIBUTE_ERR = 10;
30
+ const unsigned short INVALID_STATE_ERR = 11;
31
+ const unsigned short SYNTAX_ERR = 12;
32
+ const unsigned short INVALID_MODIFICATION_ERR = 13;
33
+ const unsigned short NAMESPACE_ERR = 14;
34
+ const unsigned short INVALID_ACCESS_ERR = 15;
35
+ const unsigned short VALIDATION_ERR = 16;
36
+ const unsigned short TYPE_MISMATCH_ERR = 17;
37
+ const unsigned short SECURITY_ERR = 18;
38
+ const unsigned short NETWORK_ERR = 19;
39
+ const unsigned short ABORT_ERR = 20;
40
+ const unsigned short URL_MISMATCH_ERR = 21;
41
+ const unsigned short QUOTA_EXCEEDED_ERR = 22;
42
+ const unsigned short TIMEOUT_ERR = 23;
43
+ const unsigned short INVALID_NODE_TYPE_ERR = 24;
44
+ const unsigned short DATA_CLONE_ERR = 25;
45
+ };
46
+
47
+ callback Function = any (any... arguments);
48
+ callback VoidFunction = undefined ();
package/webmidi.idl ADDED
@@ -0,0 +1,91 @@
1
+ // GENERATED CONTENT - DO NOT EDIT
2
+ // Content was automatically extracted by Reffy into webref
3
+ // (https://github.com/w3c/webref)
4
+ // Source: Web MIDI API (https://webaudio.github.io/web-midi-api/)
5
+
6
+ dictionary MidiPermissionDescriptor : PermissionDescriptor {
7
+ boolean sysex = false;
8
+ };
9
+
10
+ partial interface Navigator {
11
+ [SecureContext]
12
+ Promise <MIDIAccess> requestMIDIAccess(optional MIDIOptions options = {});
13
+ };
14
+
15
+ dictionary MIDIOptions {
16
+ boolean sysex;
17
+ boolean software;
18
+ };
19
+
20
+ [SecureContext, Exposed=Window] interface MIDIInputMap {
21
+ readonly maplike <DOMString, MIDIInput>;
22
+ };
23
+
24
+ [SecureContext, Exposed=Window] interface MIDIOutputMap {
25
+ readonly maplike <DOMString, MIDIOutput>;
26
+ };
27
+
28
+ [SecureContext, Exposed=Window] interface MIDIAccess: EventTarget {
29
+ readonly attribute MIDIInputMap inputs;
30
+ readonly attribute MIDIOutputMap outputs;
31
+ attribute EventHandler onstatechange;
32
+ readonly attribute boolean sysexEnabled;
33
+ };
34
+
35
+ [SecureContext, Exposed=Window] interface MIDIPort: EventTarget {
36
+ readonly attribute DOMString id;
37
+ readonly attribute DOMString? manufacturer;
38
+ readonly attribute DOMString? name;
39
+ readonly attribute MIDIPortType type;
40
+ readonly attribute DOMString? version;
41
+ readonly attribute MIDIPortDeviceState state;
42
+ readonly attribute MIDIPortConnectionState connection;
43
+ attribute EventHandler onstatechange;
44
+ Promise <MIDIPort> open();
45
+ Promise <MIDIPort> close();
46
+ };
47
+
48
+ [SecureContext, Exposed=Window] interface MIDIInput: MIDIPort {
49
+ attribute EventHandler onmidimessage;
50
+ };
51
+
52
+ [SecureContext, Exposed=Window] interface MIDIOutput : MIDIPort {
53
+ undefined send(sequence<octet> data, optional DOMHighResTimeStamp timestamp = 0);
54
+ undefined clear();
55
+ };
56
+
57
+ enum MIDIPortType {
58
+ "input",
59
+ "output",
60
+ };
61
+
62
+ enum MIDIPortDeviceState {
63
+ "disconnected",
64
+ "connected",
65
+ };
66
+
67
+ enum MIDIPortConnectionState {
68
+ "open",
69
+ "closed",
70
+ "pending",
71
+ };
72
+
73
+ [SecureContext, Exposed=Window]
74
+ interface MIDIMessageEvent : Event {
75
+ constructor(DOMString type, optional MIDIMessageEventInit eventInitDict = {});
76
+ readonly attribute Uint8Array data;
77
+ };
78
+
79
+ dictionary MIDIMessageEventInit: EventInit {
80
+ Uint8Array data;
81
+ };
82
+
83
+ [SecureContext, Exposed=Window]
84
+ interface MIDIConnectionEvent : Event {
85
+ constructor(DOMString type, optional MIDIConnectionEventInit eventInitDict = {});
86
+ readonly attribute MIDIPort port;
87
+ };
88
+
89
+ dictionary MIDIConnectionEventInit: EventInit {
90
+ MIDIPort port;
91
+ };