blob: 89847c3d4597b06c59924f64d71a2555b68359a8 [file] [log] [blame]
// GENERATED CONTENT - DO NOT EDIT
// Content was automatically extracted by Reffy into webref
// (https://github.com/w3c/webref)
// Source: Web MIDI API (https://webaudio.github.io/web-midi-api/)
partial interface Navigator {
[SecureContext]
Promise <MIDIAccess> requestMIDIAccess(optional MIDIOptions options = {});
};
dictionary MIDIOptions {
boolean sysex;
boolean software;
};
[SecureContext, Exposed=Window] interface MIDIInputMap {
readonly maplike <DOMString, MIDIInput>;
};
[SecureContext, Exposed=Window] interface MIDIOutputMap {
readonly maplike <DOMString, MIDIOutput>;
};
[SecureContext, Exposed=Window] interface MIDIAccess: EventTarget {
readonly attribute MIDIInputMap inputs;
readonly attribute MIDIOutputMap outputs;
attribute EventHandler onstatechange;
readonly attribute boolean sysexEnabled;
};
[SecureContext, Exposed=Window] interface MIDIPort: EventTarget {
readonly attribute DOMString id;
readonly attribute DOMString? manufacturer;
readonly attribute DOMString? name;
readonly attribute MIDIPortType type;
readonly attribute DOMString? version;
readonly attribute MIDIPortDeviceState state;
readonly attribute MIDIPortConnectionState connection;
attribute EventHandler onstatechange;
Promise <MIDIPort> open();
Promise <MIDIPort> close();
};
[SecureContext, Exposed=Window] interface MIDIInput: MIDIPort {
attribute EventHandler onmidimessage;
};
[SecureContext, Exposed=Window] interface MIDIOutput : MIDIPort {
undefined send(sequence<octet> data, optional DOMHighResTimeStamp timestamp = 0);
undefined clear();
};
enum MIDIPortType {
"input",
"output",
};
enum MIDIPortDeviceState {
"disconnected",
"connected",
};
enum MIDIPortConnectionState {
"open",
"closed",
"pending",
};
[SecureContext, Exposed=Window]
interface MIDIMessageEvent : Event {
constructor(DOMString type, optional MIDIMessageEventInit eventInitDict = {});
readonly attribute Uint8Array data;
};
dictionary MIDIMessageEventInit: EventInit {
Uint8Array data;
};
[SecureContext, Exposed=Window]
interface MIDIConnectionEvent : Event {
constructor(DOMString type, optional MIDIConnectionEventInit eventInitDict = {});
readonly attribute MIDIPort port;
};
dictionary MIDIConnectionEventInit: EventInit {
MIDIPort port;
};