mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-10-17 21:49:42 +00:00
65 lines
1.8 KiB
Text
65 lines
1.8 KiB
Text
#import <DOM/EventHandler.idl>
|
|
|
|
// https://wicg.github.io/serial/#serialport-interface
|
|
[Exposed=(DedicatedWorker,Window), SecureContext]
|
|
interface SerialPort : EventTarget {
|
|
attribute EventHandler onconnect;
|
|
attribute EventHandler ondisconnect;
|
|
readonly attribute boolean connected;
|
|
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();
|
|
};
|
|
|
|
// https://wicg.github.io/serial/#serialoptions-dictionary
|
|
dictionary SerialOptions {
|
|
[EnforceRange] unsigned long baudRate;
|
|
[EnforceRange] octet dataBits = 8;
|
|
[EnforceRange] octet stopBits = 1;
|
|
ParityType parity = "none";
|
|
[EnforceRange] unsigned long bufferSize = 255;
|
|
FlowControlType flowControl = "none";
|
|
};
|
|
|
|
// https://wicg.github.io/serial/#serialoutputsignals-dictionary
|
|
dictionary SerialOutputSignals {
|
|
boolean dataTerminalReady;
|
|
boolean requestToSend;
|
|
boolean break;
|
|
};
|
|
|
|
// https://wicg.github.io/serial/#serialinputsignals-dictionary
|
|
dictionary SerialInputSignals {
|
|
required boolean dataCarrierDetect;
|
|
required boolean clearToSend;
|
|
required boolean ringIndicator;
|
|
required boolean dataSetReady;
|
|
};
|
|
|
|
// https://wicg.github.io/serial/#serialportinfo-dictionary
|
|
dictionary SerialPortInfo {
|
|
unsigned short usbVendorId;
|
|
unsigned short usbProductId;
|
|
// FIXME: Should be a BluetoothServiceUUID
|
|
DOMString bluetoothServiceClassId;
|
|
};
|
|
|
|
// https://wicg.github.io/serial/#paritytype-enum
|
|
enum ParityType {
|
|
"none",
|
|
"even",
|
|
"odd"
|
|
};
|
|
|
|
// https://wicg.github.io/serial/#flowcontroltype-enum
|
|
enum FlowControlType {
|
|
"none",
|
|
"hardware"
|
|
};
|