ladybird/Userland/Libraries/LibWeb/WebSockets/WebSocket.idl

32 lines
1 KiB
Text

#import <DOM/EventTarget.idl>
#import <DOM/EventHandler.idl>
interface WebSocket : EventTarget {
// FIXME: A second "protocols" argument should be added once supported
constructor(USVString url);
readonly attribute USVString url;
const unsigned short CONNECTING = 0;
const unsigned short OPEN = 1;
const unsigned short CLOSING = 2;
const unsigned short CLOSED = 3;
readonly attribute unsigned short readyState;
// readonly attribute unsigned long long bufferedAmount;
attribute EventHandler onopen;
attribute EventHandler onerror;
attribute EventHandler onclose;
readonly attribute DOMString extensions;
readonly attribute DOMString protocol;
undefined close(optional unsigned short code, optional USVString reason);
attribute EventHandler onmessage;
attribute DOMString binaryType;
undefined send(USVString data);
// FIXME: Support other kinds of send() calls
// undefined send(Blob data);
// undefined send(ArrayBuffer data);
// undefined send(ArrayBufferView data);
};