package def.dom;
@jsweet.lang.Extends({WindowTimers.class,WindowSessionStorage.class,WindowLocalStorage.class,WindowConsole.class,GlobalEventHandlers.class,IDBEnvironment.class,WindowBase64.class})
public class Window extends EventTarget implements Iterable<Window> {
    public double animationStartTime;
    public ApplicationCache applicationCache;
    public Navigator clientInformation;
    public Boolean closed;
    public Crypto crypto;
    public String defaultStatus;
    public double devicePixelRatio;
    public String doNotTrack;
    public Document document;
    public Event event;
    public External external;
    public Element frameElement;
    public Window frames;
    public History history;
    public double innerHeight;
    public double innerWidth;
    public double length;
    public Location location;
    public BarProp locationbar;
    public BarProp menubar;
    public double msAnimationStartTime;
    public String name;
    public Navigator navigator;
    public jsweet.util.union.Union<String,Boolean> offscreenBuffering;
    public java.util.function.Function<Event,Object> onabort;
    public java.util.function.Function<Event,Object> onafterprint;
    public java.util.function.Function<Event,Object> onbeforeprint;
    public java.util.function.Function<BeforeUnloadEvent,Object> onbeforeunload;
    public java.util.function.Function<FocusEvent,Object> onblur;
    public java.util.function.Function<Event,Object> oncanplay;
    public java.util.function.Function<Event,Object> oncanplaythrough;
    public java.util.function.Function<Event,Object> onchange;
    public java.util.function.Function<MouseEvent,Object> onclick;
    public java.util.function.Function<Event,Object> oncompassneedscalibration;
    public java.util.function.Function<PointerEvent,Object> oncontextmenu;
    public java.util.function.Function<MouseEvent,Object> ondblclick;
    public java.util.function.Function<DeviceMotionEvent,Object> ondevicemotion;
    public java.util.function.Function<DeviceOrientationEvent,Object> ondeviceorientation;
    public java.util.function.Function<DragEvent,Object> ondrag;
    public java.util.function.Function<DragEvent,Object> ondragend;
    public java.util.function.Function<DragEvent,Object> ondragenter;
    public java.util.function.Function<DragEvent,Object> ondragleave;
    public java.util.function.Function<DragEvent,Object> ondragover;
    public java.util.function.Function<DragEvent,Object> ondragstart;
    public java.util.function.Function<DragEvent,Object> ondrop;
    public java.util.function.Function<Event,Object> ondurationchange;
    public java.util.function.Function<Event,Object> onemptied;
    public java.util.function.Function<Event,Object> onended;
    public ErrorEventHandler onerror;
    public java.util.function.Function<FocusEvent,Object> onfocus;
    public java.util.function.Function<HashChangeEvent,Object> onhashchange;
    public java.util.function.Function<Event,Object> oninput;
    public java.util.function.Function<KeyboardEvent,Object> onkeydown;
    public java.util.function.Function<KeyboardEvent,Object> onkeypress;
    public java.util.function.Function<KeyboardEvent,Object> onkeyup;
    public java.util.function.Function<Event,Object> onload;
    public java.util.function.Function<Event,Object> onloadeddata;
    public java.util.function.Function<Event,Object> onloadedmetadata;
    public java.util.function.Function<Event,Object> onloadstart;
    public java.util.function.Function<MessageEvent,Object> onmessage;
    public java.util.function.Function<MouseEvent,Object> onmousedown;
    public java.util.function.Function<MouseEvent,Object> onmouseenter;
    public java.util.function.Function<MouseEvent,Object> onmouseleave;
    public java.util.function.Function<MouseEvent,Object> onmousemove;
    public java.util.function.Function<MouseEvent,Object> onmouseout;
    public java.util.function.Function<MouseEvent,Object> onmouseover;
    public java.util.function.Function<MouseEvent,Object> onmouseup;
    public java.util.function.Function<MouseWheelEvent,Object> onmousewheel;
    public java.util.function.Function<MSGestureEvent,Object> onmsgesturechange;
    public java.util.function.Function<MSGestureEvent,Object> onmsgesturedoubletap;
    public java.util.function.Function<MSGestureEvent,Object> onmsgestureend;
    public java.util.function.Function<MSGestureEvent,Object> onmsgesturehold;
    public java.util.function.Function<MSGestureEvent,Object> onmsgesturestart;
    public java.util.function.Function<MSGestureEvent,Object> onmsgesturetap;
    public java.util.function.Function<MSGestureEvent,Object> onmsinertiastart;
    public java.util.function.Function<MSPointerEvent,Object> onmspointercancel;
    public java.util.function.Function<MSPointerEvent,Object> onmspointerdown;
    public java.util.function.Function<MSPointerEvent,Object> onmspointerenter;
    public java.util.function.Function<MSPointerEvent,Object> onmspointerleave;
    public java.util.function.Function<MSPointerEvent,Object> onmspointermove;
    public java.util.function.Function<MSPointerEvent,Object> onmspointerout;
    public java.util.function.Function<MSPointerEvent,Object> onmspointerover;
    public java.util.function.Function<MSPointerEvent,Object> onmspointerup;
    public java.util.function.Function<Event,Object> onoffline;
    public java.util.function.Function<Event,Object> ononline;
    public java.util.function.Function<Event,Object> onorientationchange;
    public java.util.function.Function<PageTransitionEvent,Object> onpagehide;
    public java.util.function.Function<PageTransitionEvent,Object> onpageshow;
    public java.util.function.Function<Event,Object> onpause;
    public java.util.function.Function<Event,Object> onplay;
    public java.util.function.Function<Event,Object> onplaying;
    public java.util.function.Function<PopStateEvent,Object> onpopstate;
    public java.util.function.Function<ProgressEvent,Object> onprogress;
    public java.util.function.Function<Event,Object> onratechange;
    public java.util.function.Function<ProgressEvent,Object> onreadystatechange;
    public java.util.function.Function<Event,Object> onreset;
    public java.util.function.Function<UIEvent,Object> onresize;
    public java.util.function.Function<UIEvent,Object> onscroll;
    public java.util.function.Function<Event,Object> onseeked;
    public java.util.function.Function<Event,Object> onseeking;
    public java.util.function.Function<UIEvent,Object> onselect;
    public java.util.function.Function<Event,Object> onstalled;
    public java.util.function.Function<StorageEvent,Object> onstorage;
    public java.util.function.Function<Event,Object> onsubmit;
    public java.util.function.Function<Event,Object> onsuspend;
    public java.util.function.Function<Event,Object> ontimeupdate;
    public Object ontouchcancel;
    public Object ontouchend;
    public Object ontouchmove;
    public Object ontouchstart;
    public java.util.function.Function<Event,Object> onunload;
    public java.util.function.Function<Event,Object> onvolumechange;
    public java.util.function.Function<Event,Object> onwaiting;
    public Window opener;
    public jsweet.util.union.Union<String,Double> orientation;
    public double outerHeight;
    public double outerWidth;
    public double pageXOffset;
    public double pageYOffset;
    public Window parent;
    public Performance performance;
    public BarProp personalbar;
    public Screen screen;
    public double screenLeft;
    public double screenTop;
    public double screenX;
    public double screenY;
    public double scrollX;
    public double scrollY;
    public BarProp scrollbars;
    public Window self;
    public String status;
    public BarProp statusbar;
    public StyleMedia styleMedia;
    public BarProp toolbar;
    public Window top;
    public Window window;
    public URL URL;
    native public void alert(Object message);
    native public void blur();
    native public void cancelAnimationFrame(double handle);
    native public void captureEvents();
    native public void close();
    native public Boolean confirm(String message);
    native public void focus();
    native public CSSStyleDeclaration getComputedStyle(Element elt, String pseudoElt);
    native public CSSRuleList getMatchedCSSRules(Element elt, String pseudoElt);
    native public Selection getSelection();
    native public MediaQueryList matchMedia(String mediaQuery);
    native public void moveBy(double x, double y);
    native public void moveTo(double x, double y);
    native public void msCancelRequestAnimationFrame(double handle);
    native public MediaQueryList msMatchMedia(String mediaQuery);
    native public double msRequestAnimationFrame(FrameRequestCallback callback);
    native public void msWriteProfilerMark(String profilerMarkName);
    native public Window open(String url, String target, String features, Boolean replace);
    native public void postMessage(Object message, String targetOrigin, Object ports);
    native public void print();
    native public String prompt(String message, String _default);
    native public void releaseEvents();
    native public double requestAnimationFrame(FrameRequestCallback callback);
    native public void resizeBy(double x, double y);
    native public void resizeTo(double x, double y);
    native public void scroll(double x, double y);
    native public void scrollBy(double x, double y);
    native public void scrollTo(double x, double y);
    native public WebKitPoint webkitConvertPointFromNodeToPage(Node node, WebKitPoint pt);
    native public WebKitPoint webkitConvertPointFromPageToNode(Node node, WebKitPoint pt);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureChange type, java.util.function.Function<MSGestureEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureDoubleTap type, java.util.function.Function<MSGestureEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureEnd type, java.util.function.Function<MSGestureEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureHold type, java.util.function.Function<MSGestureEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureStart type, java.util.function.Function<MSGestureEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureTap type, java.util.function.Function<MSGestureEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSInertiaStart type, java.util.function.Function<MSGestureEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerCancel type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerDown type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerEnter type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerLeave type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerMove type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerOut type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerOver type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerUp type, java.util.function.Function<MSPointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.abort type, java.util.function.Function<UIEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.afterprint type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.beforeprint type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.beforeunload type, java.util.function.Function<BeforeUnloadEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.blur type, java.util.function.Function<FocusEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.canplay type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.canplaythrough type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.change type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.click type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.compassneedscalibration type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.contextmenu type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.dblclick type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.devicemotion type, java.util.function.Function<DeviceMotionEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.deviceorientation type, java.util.function.Function<DeviceOrientationEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.drag type, java.util.function.Function<DragEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.dragend type, java.util.function.Function<DragEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.dragenter type, java.util.function.Function<DragEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.dragleave type, java.util.function.Function<DragEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.dragover type, java.util.function.Function<DragEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.dragstart type, java.util.function.Function<DragEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.drop type, java.util.function.Function<DragEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.durationchange type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.emptied type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.ended type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.focus type, java.util.function.Function<FocusEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.hashchange type, java.util.function.Function<HashChangeEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.input type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.keydown type, java.util.function.Function<KeyboardEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.keypress type, java.util.function.Function<KeyboardEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.keyup type, java.util.function.Function<KeyboardEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.load type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.loadeddata type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.loadedmetadata type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.loadstart type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.message type, java.util.function.Function<MessageEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mousedown type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mouseenter type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mouseleave type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mousemove type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mouseout type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mouseover type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mouseup type, java.util.function.Function<MouseEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.mousewheel type, java.util.function.Function<MouseWheelEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.offline type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.online type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.orientationchange type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pagehide type, java.util.function.Function<PageTransitionEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pageshow type, java.util.function.Function<PageTransitionEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pause type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.play type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.playing type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.popstate type, java.util.function.Function<PopStateEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.progress type, java.util.function.Function<ProgressEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.ratechange type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.readystatechange type, java.util.function.Function<ProgressEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.reset type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.resize type, java.util.function.Function<UIEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.scroll type, java.util.function.Function<UIEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.seeked type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.seeking type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.select type, java.util.function.Function<UIEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.stalled type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.storage type, java.util.function.Function<StorageEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.submit type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.suspend type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.timeupdate type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.unload type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.volumechange type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.waiting type, java.util.function.Function<Event,Object> listener, Boolean useCapture);
    native public Window $get(double index);
    public static Window prototype;
    public Window(){}
    native public void clearInterval(double handle);
    native public void clearTimeout(double handle);
    native public double setInterval(Object handler, Object timeout, Object... args);
    native public double setTimeout(Object handler, Object timeout, Object... args);
    native public void clearImmediate(double handle);
    native public void msClearImmediate(double handle);
    native public double msSetImmediate(Object expression, Object... args);
    native public double setImmediate(Object expression, Object... args);
    public Storage sessionStorage;
    public Storage localStorage;
    public Console console;
    public java.util.function.Function<PointerEvent,Object> onpointercancel;
    public java.util.function.Function<PointerEvent,Object> onpointerdown;
    public java.util.function.Function<PointerEvent,Object> onpointerenter;
    public java.util.function.Function<PointerEvent,Object> onpointerleave;
    public java.util.function.Function<PointerEvent,Object> onpointermove;
    public java.util.function.Function<PointerEvent,Object> onpointerout;
    public java.util.function.Function<PointerEvent,Object> onpointerover;
    public java.util.function.Function<PointerEvent,Object> onpointerup;
    public java.util.function.Function<WheelEvent,Object> onwheel;
    native public void addEventListener(jsweet.util.StringTypes.pointercancel type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pointerdown type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pointerenter type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pointerleave type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pointermove type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pointerout type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pointerover type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.pointerup type, java.util.function.Function<PointerEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(jsweet.util.StringTypes.wheel type, java.util.function.Function<WheelEvent,Object> listener, Boolean useCapture);
    native public void addEventListener(String type, EventListener listener, Boolean useCapture);
    public IDBFactory indexedDB;
    public IDBFactory msIndexedDB;
    native public String atob(String encodedString);
    native public String btoa(String rawString);
    native public void alert();
    native public Boolean confirm();
    native public CSSStyleDeclaration getComputedStyle(Element elt);
    native public CSSRuleList getMatchedCSSRules(Element elt);
    native public void moveBy(double x);
    native public void moveBy();
    native public void moveTo(double x);
    native public void moveTo();
    native public Window open(String url, String target, String features);
    native public Window open(String url, String target);
    native public Window open(String url);
    native public Window open();
    native public void postMessage(Object message, String targetOrigin);
    native public String prompt(String message);
    native public String prompt();
    native public void resizeBy(double x);
    native public void resizeBy();
    native public void resizeTo(double x);
    native public void resizeTo();
    native public void scroll(double x);
    native public void scroll();
    native public void scrollBy(double x);
    native public void scrollBy();
    native public void scrollTo(double x);
    native public void scrollTo();
    native public void addEventListener(jsweet.util.StringTypes.MSGestureChange type, java.util.function.Function<MSGestureEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureDoubleTap type, java.util.function.Function<MSGestureEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureEnd type, java.util.function.Function<MSGestureEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureHold type, java.util.function.Function<MSGestureEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureStart type, java.util.function.Function<MSGestureEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSGestureTap type, java.util.function.Function<MSGestureEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSInertiaStart type, java.util.function.Function<MSGestureEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerCancel type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerDown type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerEnter type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerLeave type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerMove type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerOut type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerOver type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.MSPointerUp type, java.util.function.Function<MSPointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.abort type, java.util.function.Function<UIEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.afterprint type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.beforeprint type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.beforeunload type, java.util.function.Function<BeforeUnloadEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.blur type, java.util.function.Function<FocusEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.canplay type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.canplaythrough type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.change type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.click type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.compassneedscalibration type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.contextmenu type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.dblclick type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.devicemotion type, java.util.function.Function<DeviceMotionEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.deviceorientation type, java.util.function.Function<DeviceOrientationEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.drag type, java.util.function.Function<DragEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.dragend type, java.util.function.Function<DragEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.dragenter type, java.util.function.Function<DragEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.dragleave type, java.util.function.Function<DragEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.dragover type, java.util.function.Function<DragEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.dragstart type, java.util.function.Function<DragEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.drop type, java.util.function.Function<DragEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.durationchange type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.emptied type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.ended type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.focus type, java.util.function.Function<FocusEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.hashchange type, java.util.function.Function<HashChangeEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.input type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.keydown type, java.util.function.Function<KeyboardEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.keypress type, java.util.function.Function<KeyboardEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.keyup type, java.util.function.Function<KeyboardEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.load type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.loadeddata type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.loadedmetadata type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.loadstart type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.message type, java.util.function.Function<MessageEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mousedown type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mouseenter type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mouseleave type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mousemove type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mouseout type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mouseover type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mouseup type, java.util.function.Function<MouseEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.mousewheel type, java.util.function.Function<MouseWheelEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.offline type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.online type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.orientationchange type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pagehide type, java.util.function.Function<PageTransitionEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pageshow type, java.util.function.Function<PageTransitionEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pause type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.play type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.playing type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointercancel type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointerdown type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointerenter type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointerleave type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointermove type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointerout type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointerover type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.pointerup type, java.util.function.Function<PointerEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.popstate type, java.util.function.Function<PopStateEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.progress type, java.util.function.Function<ProgressEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.ratechange type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.readystatechange type, java.util.function.Function<ProgressEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.reset type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.resize type, java.util.function.Function<UIEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.scroll type, java.util.function.Function<UIEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.seeked type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.seeking type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.select type, java.util.function.Function<UIEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.stalled type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.storage type, java.util.function.Function<StorageEvent,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.submit type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.suspend type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.timeupdate type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.unload type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.volumechange type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.waiting type, java.util.function.Function<Event,Object> listener);
    native public void addEventListener(jsweet.util.StringTypes.wheel type, java.util.function.Function<WheelEvent,Object> listener);
    native public void addEventListener(String type, EventListener listener);
    native public double setInterval(Object handler);
    native public double setTimeout(Object handler);
    native public void addEventListener(String type, EventListenerObject listener, Boolean useCapture);
    native public void addEventListener(String type, EventListenerObject listener);
    native public void onerror(java.lang.String message, java.lang.String filename, double lineno, double colno, def.js.Error error);
    native public void onerror(java.lang.String message, java.lang.String filename, double lineno, double colno);
    native public void onerror(java.lang.String message, java.lang.String filename, double lineno);
    native public void onerror(java.lang.String message, java.lang.String filename);
    native public void onerror(java.lang.String message);
    /** From Iterable, to allow foreach loop (do not use directly). */
    @jsweet.lang.Erased
    native public java.util.Iterator<Window> iterator();
}

