[
CheckSecurity,
CustomDeleteProperty,
CustomEnumerateProperty,
CustomGetOwnPropertySlot,
CustomGetPrototype,
CustomPreventExtensions,
CustomProxyToJSObject,
CustomPutFunction,
ExportMacro=WEBCORE_EXPORT,
ImplicitThis,
InterfaceName=Window,
IsImmutablePrototypeExoticObject,
IsImmutablePrototypeExoticObjectOnPrototype,
JSCustomDefineOwnProperty,
JSCustomMarkFunction,
JSCustomToNativeObject,
JSLegacyParent=JSDOMWindowBase,
PrimaryGlobal,
] interface DOMWindow : EventTarget {
[Replaceable] readonly attribute Screen screen;
readonly attribute History history;
[Replaceable] readonly attribute BarProp locationbar;
[Replaceable] readonly attribute BarProp menubar;
[Replaceable] readonly attribute BarProp personalbar;
[Replaceable] readonly attribute BarProp scrollbars;
[Replaceable] readonly attribute BarProp statusbar;
[Replaceable] readonly attribute BarProp toolbar;
readonly attribute Navigator navigator;
[Replaceable] readonly attribute Navigator clientInformation;
[DoNotCheckSecurity, CustomSetter, Unforgeable] attribute Location location;
[Replaceable, CustomGetter] readonly attribute Event event;
DOMSelection getSelection();
[CheckSecurityForNode] readonly attribute Element frameElement;
[DoNotCheckSecurity, CallWith=CallerWindow, ForwardDeclareInHeader] void focus();
[DoNotCheckSecurity, ForwardDeclareInHeader] void blur();
[DoNotCheckSecurity, CallWith=CallerDocument, ForwardDeclareInHeader] void close();
void print();
void stop();
[Custom] DOMWindow open(optional USVString url = "about:blank", optional DOMString target = "_blank", [TreatNullAs=EmptyString] optional DOMString features = "");
[Custom] any showModalDialog(DOMString url, optional any dialogArgs, optional DOMString featureArgs);
void alert();
void alert(DOMString message);
boolean confirm(optional DOMString message = "");
DOMString? prompt(optional DOMString message = "", optional DOMString defaultValue = "");
boolean find(optional DOMString string = "undefined", optional boolean caseSensitive = false, optional boolean backwards = false, optional boolean wrap = false, optional boolean wholeWord = false, optional boolean searchInFrames = false, optional boolean showDialog = false);
[Replaceable] readonly attribute boolean offscreenBuffering;
[Replaceable] readonly attribute long outerHeight;
[Replaceable] readonly attribute long outerWidth;
[Replaceable] readonly attribute long innerHeight;
[Replaceable] readonly attribute long innerWidth;
[Replaceable] readonly attribute long screenX;
[Replaceable] readonly attribute long screenY;
[Replaceable] readonly attribute long screenLeft;
[Replaceable] readonly attribute long screenTop;
[Replaceable] readonly attribute double scrollX;
[Replaceable] readonly attribute double scrollY;
[Replaceable, ImplementedAs=scrollX] readonly attribute double pageXOffset;
[Replaceable, ImplementedAs=scrollY] readonly attribute double pageYOffset;
void scrollBy(unrestricted double x, unrestricted double y);
void scrollTo(unrestricted double x, unrestricted double y);
[ImplementedAs=scrollTo] void scroll(unrestricted double x, unrestricted double y);
void scrollBy(optional ScrollToOptions option);
void scrollTo(optional ScrollToOptions options);
[ImplementedAs=scrollTo] void scroll(optional ScrollToOptions options);
void moveBy(optional unrestricted float x = NaN, optional unrestricted float y = NaN); void moveTo(optional unrestricted float x = NaN, optional unrestricted float y = NaN); void resizeBy(optional unrestricted float x = NaN, optional unrestricted float y = NaN); void resizeTo(optional unrestricted float width = NaN, optional unrestricted float height = NaN);
[DoNotCheckSecurity, ForwardDeclareInHeader] readonly attribute boolean closed;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute unsigned long length;
attribute DOMString name;
attribute DOMString status;
attribute DOMString defaultStatus;
[ImplementedAs=defaultStatus] attribute DOMString defaultstatus;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute DOMWindow self;
[DoNotCheckSecurity, Unforgeable] readonly attribute DOMWindow window;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute DOMWindow frames;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute DOMWindow opener;
[Replaceable, DoNotCheckSecurityOnGetter] readonly attribute DOMWindow parent;
[DoNotCheckSecurityOnGetter, Unforgeable] readonly attribute DOMWindow top;
[Unforgeable] readonly attribute Document document;
MediaQueryList matchMedia(DOMString query);
readonly attribute StyleMedia styleMedia;
[NewObject] CSSStyleDeclaration getComputedStyle(Element element, optional DOMString? pseudoElement = null);
[NewObject, MayThrowException] CSSStyleDeclaration? getComputedStyle(Document document, optional DOMString? pseudoElement = null);
CSSRuleList getMatchedCSSRules(optional Element? element = null, optional DOMString? pseudoElement = null);
[Replaceable] readonly attribute unrestricted double devicePixelRatio;
WebKitPoint webkitConvertPointFromPageToNode(optional Node? node = null, optional WebKitPoint? p = null);
WebKitPoint webkitConvertPointFromNodeToPage(optional Node? node = null, optional WebKitPoint? p = null);
readonly attribute DOMApplicationCache applicationCache;
[GetterMayThrowException] readonly attribute Storage sessionStorage;
[GetterMayThrowException] readonly attribute Storage localStorage;
[Conditional=ORIENTATION_EVENTS] readonly attribute long orientation;
[CallWith=ScriptState&CallerWindow, DoNotCheckSecurity, ForwardDeclareInHeader, MayThrowException] void postMessage(any message, USVString targetOrigin, optional sequence<object> transfer = []);
[Conditional=WEB_TIMING, Replaceable] readonly attribute Performance performance;
[Conditional=REQUEST_ANIMATION_FRAME] long requestAnimationFrame(RequestAnimationFrameCallback callback);
[Conditional=REQUEST_ANIMATION_FRAME] void cancelAnimationFrame(long id);
[Conditional=REQUEST_ANIMATION_FRAME] long webkitRequestAnimationFrame(RequestAnimationFrameCallback callback);
[Conditional=REQUEST_ANIMATION_FRAME, ImplementedAs=cancelAnimationFrame] void webkitCancelAnimationFrame(long id);
[Conditional=REQUEST_ANIMATION_FRAME, ImplementedAs=cancelAnimationFrame] void webkitCancelRequestAnimationFrame(long id);
void captureEvents(); void releaseEvents();
[CustomGetter, CustomConstructor] attribute HTMLImageElementNamedConstructor Image;
attribute XMLDocumentConstructor SVGDocument;
attribute DOMURLConstructor webkitURL; attribute MutationObserverConstructor WebKitMutationObserver;
[EnabledAtRuntime=CustomElements, ImplementedAs=ensureCustomElementRegistry] readonly attribute CustomElementRegistry customElements;
[MayThrowException, EnabledForWorld=shadowRootIsAlwaysOpen]
NodeList collectMatchingElementsInFlatTree(Node scope, DOMString selectors);
[NotEnumerable] attribute EventHandler onanimationend;
[NotEnumerable] attribute EventHandler onanimationiteration;
[NotEnumerable] attribute EventHandler onanimationstart;
[NotEnumerable] attribute EventHandler ontransitionend;
[NotEnumerable, ImplementedAs=onwebkitAnimationEnd] attribute EventHandler onwebkitanimationend;
[NotEnumerable, ImplementedAs=onwebkitAnimationIteration] attribute EventHandler onwebkitanimationiteration;
[NotEnumerable, ImplementedAs=onwebkitAnimationStart] attribute EventHandler onwebkitanimationstart;
[NotEnumerable, ImplementedAs=onwebkitTransitionEnd] attribute EventHandler onwebkittransitionend;
[NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongesturechange;
[NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongestureend;
[NotEnumerable, Conditional=IOS_GESTURE_EVENTS] attribute EventHandler ongesturestart;
[NotEnumerable, Conditional=DEVICE_ORIENTATION] attribute EventHandler ondevicemotion;
[NotEnumerable, Conditional=DEVICE_ORIENTATION] attribute EventHandler ondeviceorientation;
[NotEnumerable, Conditional=PROXIMITY_EVENTS] attribute EventHandler onwebkitdeviceproximity;
};
DOMWindow implements GlobalCrypto;
DOMWindow implements GlobalEventHandlers;
DOMWindow implements WindowEventHandlers;
DOMWindow implements WindowOrWorkerGlobalScope;