diff options
Diffstat (limited to 'testing/web-platform/tests/interfaces/serial.idl')
-rw-r--r-- | testing/web-platform/tests/interfaces/serial.idl | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/testing/web-platform/tests/interfaces/serial.idl b/testing/web-platform/tests/interfaces/serial.idl new file mode 100644 index 0000000000..ee46a8562b --- /dev/null +++ b/testing/web-platform/tests/interfaces/serial.idl @@ -0,0 +1,85 @@ +// GENERATED CONTENT - DO NOT EDIT +// Content was automatically extracted by Reffy into webref +// (https://github.com/w3c/webref) +// Source: Web Serial API (https://wicg.github.io/serial/) + +[Exposed=Window, SecureContext] +partial interface Navigator { + [SameObject] readonly attribute Serial serial; +}; + +[Exposed=DedicatedWorker, SecureContext] +partial interface WorkerNavigator { + [SameObject] readonly attribute Serial serial; +}; + +[Exposed=(DedicatedWorker, Window), SecureContext] +interface Serial : EventTarget { + attribute EventHandler onconnect; + attribute EventHandler ondisconnect; + Promise<sequence<SerialPort>> getPorts(); + [Exposed=Window] Promise<SerialPort> requestPort(optional SerialPortRequestOptions options = {}); +}; + +dictionary SerialPortRequestOptions { + sequence<SerialPortFilter> filters; +}; + +dictionary SerialPortFilter { + unsigned short usbVendorId; + unsigned short usbProductId; +}; + +[Exposed=(DedicatedWorker,Window), SecureContext] +interface SerialPort : EventTarget { + attribute EventHandler onconnect; + attribute EventHandler ondisconnect; + readonly attribute ReadableStream readable; + readonly attribute WritableStream writable; + + SerialPortInfo getInfo(); + + Promise<undefined> open(SerialOptions options); + Promise<undefined> setSignals(optional SerialOutputSignals signals = {}); + Promise<SerialInputSignals> getSignals(); + Promise<undefined> close(); + Promise<undefined> forget(); +}; + +dictionary SerialPortInfo { + unsigned short usbVendorId; + unsigned short usbProductId; +}; + +dictionary SerialOptions { + [EnforceRange] required unsigned long baudRate; + [EnforceRange] octet dataBits = 8; + [EnforceRange] octet stopBits = 1; + ParityType parity = "none"; + [EnforceRange] unsigned long bufferSize = 255; + FlowControlType flowControl = "none"; +}; + +enum ParityType { + "none", + "even", + "odd" +}; + +enum FlowControlType { + "none", + "hardware" +}; + +dictionary SerialOutputSignals { + boolean dataTerminalReady; + boolean requestToSend; + boolean break; +}; + +dictionary SerialInputSignals { + required boolean dataCarrierDetect; + required boolean clearToSend; + required boolean ringIndicator; + required boolean dataSetReady; +}; |