js.web.webrtc.RTCSctpTransport Maven / Gradle / Ivy
package js.web.webrtc;
import js.web.dom.*;
import org.teavm.jso.JSBody;
import org.teavm.jso.JSProperty;
import javax.annotation.Nullable;
/**
* Created by Artem Godin on 1/22/2020.
*/
public interface RTCSctpTransport extends EventTarget {
@JSBody(script = "return RTCSctpTransport.prototype")
static RTCSctpTransport prototype() {
throw new UnsupportedOperationException("Available only in JavaScript");
}
@JSBody(script = "return new RTCSctpTransport()")
static RTCSctpTransport create() {
throw new UnsupportedOperationException("Available only in JavaScript");
}
@JSProperty
@Nullable
int getMaxChannels();
@JSProperty
int getMaxMessageSize();
@JSProperty
@Nullable
EventListener getOnstatechange();
@JSProperty
void setOnstatechange(EventListener onstatechange);
default void addStateChangeEventListener(EventListener listener, AddEventListenerOptions options) {
addEventListener("statechange", listener, options);
}
default void addStateChangeEventListener(EventListener listener, boolean options) {
addEventListener("statechange", listener, options);
}
default void addStateChangeEventListener(EventListener listener) {
addEventListener("statechange", listener);
}
default void removeStateChangeEventListener(EventListener listener, EventListenerOptions options) {
removeEventListener("statechange", listener, options);
}
default void removeStateChangeEventListener(EventListener listener, boolean options) {
removeEventListener("statechange", listener, options);
}
default void removeStateChangeEventListener(EventListener listener) {
removeEventListener("statechange", listener);
}
@JSProperty
RTCSctpTransportState getState();
@JSProperty
RTCDtlsTransport getTransport();
}