Update interfaces/serial.idl (#26754)

Source: https://github.com/w3c/webref/blob/a46b798/ed/idl/serial.idl
Build: https://travis-ci.org/w3c/webref/builds/206503415
diff --git a/interfaces/serial.idl b/interfaces/serial.idl
index 7bca747..8612f6f 100644
--- a/interfaces/serial.idl
+++ b/interfaces/serial.idl
@@ -1,7 +1,7 @@
 // GENERATED CONTENT - DO NOT EDIT
 // Content was automatically extracted by Reffy into webref
 // (https://github.com/w3c/webref)
-// Source: Serial API (https://wicg.github.io/serial/)
+// Source: Web Serial API (https://wicg.github.io/serial/)
 
 [Exposed=Window, SecureContext]
 partial interface Navigator {
@@ -18,40 +18,67 @@
   attribute EventHandler onconnect;
   attribute EventHandler ondisconnect;
   Promise<sequence<SerialPort>> getPorts();
-  [Exposed=Window] Promise<SerialPort> requestPort(optional SerialOptions options = {});
+  [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 {
-  Promise<undefined> open(optional SerialOptions options = {});
-  readonly attribute ReadableStream in;
-  readonly attribute WritableStream out;
+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();
 };
 
-[Exposed=(DedicatedWorker,Window), SecureContext]
-interface SerialPortInfo {
-  maplike<DOMString, DOMString?>;
+dictionary SerialPortInfo {
+  unsigned short usbVendorId;
+  unsigned short usbProductId;
 };
 
 dictionary SerialOptions {
-  long baudRate = 9600;
-  octet dataBits = 8;
-  octet stopBits = 1;
+  required [EnforceRange] unsigned long baudRate;
+  [EnforceRange] octet dataBits = 8;
+  [EnforceRange] octet stopBits = 1;
   ParityType parity = "none";
-  long bufferSize = 255;
+  [EnforceRange] unsigned long bufferSize = 255;
   FlowControlType flowControl = "none";
 };
 
 enum ParityType {
   "none",
   "even",
-  "odd",
-  "mark",
-  "space"
+  "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;
+};