blob: 0dfcb7771a871ff9a3568afc99a564c1e06b71a2 [file] [log] [blame]
// GENERATED CONTENT - DO NOT EDIT
// Content was automatically extracted by Reffy into reffy-reports
// (https://github.com/tidoust/reffy-reports)
// Source: Web MIDI API (http://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 {
void send(sequence<octet> data, optional DOMHighResTimeStamp timestamp = 0);
void clear();
};
enum MIDIPortType {
"input",
"output",
};
enum MIDIPortDeviceState {
"disconnected",
"connected",
};
enum MIDIPortConnectionState {
"open",
"closed",
"pending",
};
[SecureContext, Exposed=Window, Constructor(DOMString type, optional MIDIMessageEventInit eventInitDict = {})]
interface MIDIMessageEvent : Event {
readonly attribute Uint8Array data;
};
dictionary MIDIMessageEventInit : EventInit {
Uint8Array data;
};
[SecureContext, Exposed=Window, Constructor(DOMString type, optional MIDIConnectionEventInit eventInitDict = {})]
interface MIDIConnectionEvent : Event {
readonly attribute MIDIPort port;
};
dictionary MIDIConnectionEventInit : EventInit {
MIDIPort port;
};