This repository has been archived on 2023-06-18. You can view files and clone it, but cannot push or open issues or pull requests.
ima02/resources/defects4j-checkout-closure-1f/externs/gecko_dom.js

1167 lines
26 KiB
JavaScript
Raw Permalink Normal View History

2023-04-25 11:33:41 +00:00
/*
* Copyright 2008 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview Definitions for all the extensions over
* W3C's DOM specification by Gecko. This file depends on
* w3c_dom2.js.
*
* When a non-standard extension appears in both Gecko and IE, we put
* it in gecko_dom.js
*
* @externs
*/
// TODO: Almost all of it has not been annotated with types.
// Gecko DOM;
/**
* Mozilla only???
* @constructor
* @extends {HTMLElement}
*/
function HTMLSpanElement() {}
/**
* @see https://developer.mozilla.org/en/Components_object
*/
Window.prototype.Components;
/**
* @type Window
* @see https://developer.mozilla.org/en/DOM/window.content
*/
Window.prototype.content;
/**
* @type {boolean}
* @see https://developer.mozilla.org/en/DOM/window.closed
*/
Window.prototype.closed;
/** @see https://developer.mozilla.org/en/DOM/window.controllers */
Window.prototype.controllers;
/** @see https://developer.mozilla.org/en/DOM/window.crypto */
Window.prototype.crypto;
/**
* Gets/sets the status bar text for the given window.
* @type {string}
* @see https://developer.mozilla.org/en/DOM/window.defaultStatus
*/
Window.prototype.defaultStatus;
/** @see https://developer.mozilla.org/en/DOM/window.dialogArguments */
Window.prototype.dialogArguments;
/** @see https://developer.mozilla.org/en/DOM/window.directories */
Window.prototype.directories;
/**
* @type {!Document}
* @see https://developer.mozilla.org/en/DOM/window.document
*/
Window.prototype.document;
Window.prototype.eval;
/**
* @type {HTMLObjectElement|HTMLIFrameElement|null}
* @see https://developer.mozilla.org/en/DOM/window.frameElement
*/
Window.prototype.frameElement;
/**
* Allows lookup of frames by index or by name.
* @type {?Object}
* @see https://developer.mozilla.org/en/DOM/window.frames
*/
Window.prototype.frames;
/**
* @type {boolean}
* @see https://developer.mozilla.org/en/DOM/window.fullScreen
*/
Window.prototype.fullScreen;
/**
* @see https://developer.mozilla.org/en/DOM/Storage#globalStorage
*/
Window.prototype.globalStorage;
/**
* @type {!History}
* @see https://developer.mozilla.org/en/DOM/window.history
*/
Window.prototype.history;
/**
* Returns the number of frames (either frame or iframe elements) in the
* window.
*
* @type {number}
* @see https://developer.mozilla.org/en/DOM/window.length
*/
Window.prototype.length;
/**
* @type {!Location}
* @implicitCast
* @see https://developer.mozilla.org/en/DOM/window.location
*/
Window.prototype.location;
/**
* @see https://developer.mozilla.org/en/DOM/window.locationbar
*/
Window.prototype.locationbar;
/**
* @see https://developer.mozilla.org/en/DOM/window.menubar
*/
Window.prototype.menubar;
/**
* @type {string}
* @see https://developer.mozilla.org/en/DOM/window.name
*/
Window.prototype.name;
/**
* @type {Navigator}
* @see https://developer.mozilla.org/en/DOM/window.navigator
*/
Window.prototype.navigator;
/**
* @type {?Window}
* @see https://developer.mozilla.org/en/DOM/window.opener
*/
Window.prototype.opener;
/**
* @type {!Window}
* @see https://developer.mozilla.org/en/DOM/window.parent
*/
Window.prototype.parent;
/** @see https://developer.mozilla.org/en/DOM/window.personalbar */
Window.prototype.personalbar;
/** @see https://developer.mozilla.org/en/DOM/window.pkcs11 */
Window.prototype.pkcs11;
/** @see https://developer.mozilla.org/en/DOM/window */
Window.prototype.returnValue;
/** @see https://developer.mozilla.org/en/DOM/window.scrollbars */
Window.prototype.scrollbars;
/**
* @type {number}
* @see https://developer.mozilla.org/En/DOM/window.scrollMaxX
*/
Window.prototype.scrollMaxX;
/**
* @type {number}
* @see https://developer.mozilla.org/En/DOM/window.scrollMaxY
*/
Window.prototype.scrollMaxY;
/**
* @type {!Window}
* @see https://developer.mozilla.org/en/DOM/window.self
*/
Window.prototype.self;
/** @see https://developer.mozilla.org/en/DOM/Storage#sessionStorage */
Window.prototype.sessionStorage;
/** @see https://developer.mozilla.org/en/DOM/window.sidebar */
Window.prototype.sidebar;
/**
* @type {?string}
* @see https://developer.mozilla.org/en/DOM/window.status
*/
Window.prototype.status;
/** @see https://developer.mozilla.org/en/DOM/window.statusbar */
Window.prototype.statusbar;
/** @see https://developer.mozilla.org/en/DOM/window.toolbar */
Window.prototype.toolbar;
/**
* @type {!Window}
* @see https://developer.mozilla.org/en/DOM/window.self
*/
Window.prototype.top;
/**
* @type {!Window}
* @see https://developer.mozilla.org/en/DOM/window.self
*/
Window.prototype.window;
/**
* @param {*} message
* @see https://developer.mozilla.org/en/DOM/window.alert
*/
Window.prototype.alert = function(message) {};
/**
* Decodes a string of data which has been encoded using base-64 encoding.
*
* @param {string} encodedData
* @see https://developer.mozilla.org/en/DOM/window.atob
* @nosideeffects
*/
Window.prototype.atob = function(encodedData) {};
/** @see https://developer.mozilla.org/en/DOM/window.back */
Window.prototype.back = function() {};
/** @see https://developer.mozilla.org/en/DOM/window.blur */
Window.prototype.blur = function() {};
/**
* @param {string} stringToEncode
* @return {string}
* @see https://developer.mozilla.org/en/DOM/window.btoa
* @nosideeffects
*/
Window.prototype.btoa = function(stringToEncode) {};
/** @deprecated */
Window.prototype.captureEvents;
/**
* @param {number|undefined?} intervalID
* @see https://developer.mozilla.org/en/DOM/window.clearInterval
*/
Window.prototype.clearInterval = function(intervalID) {};
/**
* @param {number|undefined?} timeoutID
* @see https://developer.mozilla.org/en/DOM/window.clearTimeout
*/
Window.prototype.clearTimeout = function(timeoutID) {};
/** @see https://developer.mozilla.org/en/DOM/window.close */
Window.prototype.close = function() {};
/**
* @param {*} message
* @return {boolean}
*/
Window.prototype.confirm = function(message) {};
/**
* @param {string} regular
* @return {string}
* @see https://developer.mozilla.org/en/DOM/window.escape
* @nosideeffects
*/
Window.prototype.escape = function(regular) {};
/** @see https://developer.mozilla.org/en/DOM/window.find */
Window.prototype.find;
/** @see https://developer.mozilla.org/en/DOM/window.focus */
Window.prototype.focus = function() {};
/** @see https://developer.mozilla.org/en/DOM/window.forward */
Window.prototype.forward = function() {};
/** @see https://developer.mozilla.org/en/DOM/window.getAttention */
Window.prototype.getAttention = function() {};
/**
* @param {Element} element
* @param {?string} pseudoElt
* @return {CSSStyleDeclaration}
* @nosideeffects
*/
Window.prototype.getComputedStyle = function(element, pseudoElt) {};
/**
* @return {Selection}
* @see https://developer.mozilla.org/en/DOM/window.getSelection
* @nosideeffects
*/
Window.prototype.getSelection = function() {};
/** @see https://developer.mozilla.org/en/DOM/window.home */
Window.prototype.home = function() {};
Window.prototype.openDialog;
Window.prototype.releaseEvents;
Window.prototype.scrollByLines;
Window.prototype.scrollByPages;
/**
* @param {Function|string} callback
* @param {number} delay
* @param {...*} var_args
* @return {number}
*/
Window.prototype.setInterval;
/**
* @param {Function|string} callback
* @param {number} delay
* @param {...*} var_args
* @return {number}
*/
Window.prototype.setTimeout = function(callback, delay, var_args) {};
/**
* @param {string} uri
* @param {?=} opt_arguments
* @param {string=} opt_options
* @see https://developer.mozilla.org/en/DOM/window.showModalDialog
*/
Window.prototype.showModalDialog;
Window.prototype.sizeToContent;
/**
* @see http://msdn.microsoft.com/en-us/library/ms536769(VS.85).aspx
*/
Window.prototype.stop = function() {};
/**
* @param {string} escaped
* @return {string}
* @see https://developer.mozilla.org/en/DOM/window.unescape
* @nosideeffects
*/
Window.prototype.unescape = function(escaped) {};
Window.prototype.updateCommands;
// properties of Document
/**
* @see https://developer.mozilla.org/en/DOM/document.alinkColor
* @type {string}
*/
Document.prototype.alinkColor;
/**
* @see https://developer.mozilla.org/en/DOM/document.anchors
* @type {HTMLCollection}
*/
Document.prototype.anchors;
/**
* @see https://developer.mozilla.org/en/DOM/document.applets
* @type {HTMLCollection}
*/
Document.prototype.applets;
/** @type {boolean} */ Document.prototype.async;
/** @type {string?} */ Document.prototype.baseURI;
Document.prototype.baseURIObject;
/**
* @see https://developer.mozilla.org/en/DOM/document.bgColor
* @type {string}
*/
Document.prototype.bgColor;
/** @type {HTMLBodyElement} */ Document.prototype.body;
Document.prototype.characterSet;
/**
* @see https://developer.mozilla.org/en/DOM/document.compatMode
* @type {string}
*/
Document.prototype.compatMode;
Document.prototype.contentType;
/** @type {string} */ Document.prototype.cookie;
Document.prototype.defaultView;
/**
* @see https://developer.mozilla.org/en/DOM/document.designMode
* @type {string}
*/
Document.prototype.designMode;
Document.prototype.documentURIObject;
/**
* @see https://developer.mozilla.org/en/DOM/document.domain
* @type {string}
*/
Document.prototype.domain;
/**
* @see https://developer.mozilla.org/en/DOM/document.embeds
* @type {HTMLCollection}
*/
Document.prototype.embeds;
/**
* @see https://developer.mozilla.org/en/DOM/document.fgColor
* @type {string}
*/
Document.prototype.fgColor;
/** @type {Element} */ Document.prototype.firstChild;
/**
* @see https://developer.mozilla.org/en/DOM/document.forms
* @type {HTMLCollection}
*/
Document.prototype.forms;
/** @type {number} */ Document.prototype.height;
/** @type {Array} */ Document.prototype.images;
/**
* @type {string}
* @see https://developer.mozilla.org/en/DOM/document.lastModified
*/
Document.prototype.lastModified;
/**
* @type {string}
* @see https://developer.mozilla.org/en/DOM/document.linkColor
*/
Document.prototype.linkColor;
/**
* @see https://developer.mozilla.org/en/DOM/document.links
* @type {HTMLCollection}
*/
Document.prototype.links;
/**
* @type {!Location}
* @implicitCast
*/
Document.prototype.location;
/**
* @type {string}
* @see https://developer.mozilla.org/en/DOM/Using_the_Page_Visibility_API
*/
Document.prototype.mozVisibilityState;
Document.prototype.namespaceURI;
Document.prototype.nodePrincipal;
Document.prototype.plugins;
Document.prototype.popupNode;
/**
* @type {string}
* @see https://developer.mozilla.org/en/DOM/document.referrer
*/
Document.prototype.referrer;
/**
* @see https://developer.mozilla.org/en/DOM/document.styleSheets
*/
Document.prototype.styleSheets;
/** @type {?string} */ Document.prototype.title;
Document.prototype.tooltipNode;
/** @type {string} */ Document.prototype.URL;
/**
* @type {string}
* @see https://developer.mozilla.org/en/DOM/document.vlinkColor
*/
Document.prototype.vlinkColor;
/** @type {number} */ Document.prototype.width;
// Methods of Document
/**
* @see https://developer.mozilla.org/en/DOM/document.clear
*/
Document.prototype.clear = function() {};
/**
* @see https://developer.mozilla.org/en/DOM/document.close
*/
Document.prototype.close;
/**
* @see https://developer.mozilla.org/en/DOM/document.createElementNS
* @param {string} namespaceURI
* @param {string} qualifiedName
* @return {!Element}
*/
Document.prototype.createElementNS = function(namespaceURI, qualifiedName) {};
/**
* @param {string} type
* @return {Event}
*/
Document.prototype.createEvent = function(type) {};
Document.prototype.createNSResolver;
/** @return {Range} */ Document.prototype.createRange = function() {};
Document.prototype.createTreeWalker;
Document.prototype.evaluate;
/**
* @param {string} commandName
* @param {?boolean=} opt_showUi
* @param {*=} opt_value
* @see https://developer.mozilla.org/en/Rich-Text_Editing_in_Mozilla#Executing_Commands
*/
Document.prototype.execCommand;
/**
* @param {string} s id.
* @return {HTMLElement}
* @nosideeffects
* @see https://developer.mozilla.org/en/DOM/document.getElementById
*/
Document.prototype.getElementById = function(s) {};
/**
* @param {string} name
* @return {!NodeList}
* @nosideeffects
* @see https://developer.mozilla.org/en/DOM/document.getElementsByClassName
*/
Document.prototype.getElementsByClassName = function(name) {};
/**
* @param {string} name
* @return {!NodeList}
* @nosideeffects
* @see https://developer.mozilla.org/en/DOM/document.getElementsByName
*/
Document.prototype.getElementsByName = function(name) {};
/**
* @param {string} namespace
* @param {string} name
* @return {!NodeList}
* @nosideeffects
* @see https://developer.mozilla.org/en/DOM/document.getElementsByTagNameNS
*/
Document.prototype.getElementsByTagNameNS = function(namespace, name) {};
/**
* @param {Node} externalNode
* @param {boolean} deep
* @return {Node}
*/
Document.prototype.importNode = function(externalNode, deep) {};
/** @param {string} uri */
Document.prototype.load = function(uri) {};
Document.prototype.loadOverlay;
/**
* @see https://developer.mozilla.org/en/DOM/document.open
*/
Document.prototype.open;
/**
* @see https://developer.mozilla.org/en/Midas
* @see http://msdn.microsoft.com/en-us/library/ms536676(VS.85).aspx
*/
Document.prototype.queryCommandEnabled;
/**
* @see https://developer.mozilla.org/en/Midas
* @see http://msdn.microsoft.com/en-us/library/ms536678(VS.85).aspx
*/
Document.prototype.queryCommandIndeterm;
/**
* @see https://developer.mozilla.org/en/Midas
* @see http://msdn.microsoft.com/en-us/library/ms536679(VS.85).aspx
*/
Document.prototype.queryCommandState;
/**
* @see https://developer.mozilla.org/en/DOM/document.queryCommandSupported
* @see http://msdn.microsoft.com/en-us/library/ms536681(VS.85).aspx
* @param {string} command
* @return {?} Implementation-specific.
*/
Document.prototype.queryCommandSupported;
/**
* @see https://developer.mozilla.org/en/Midas
* @see http://msdn.microsoft.com/en-us/library/ms536683(VS.85).aspx
*/
Document.prototype.queryCommandValue;
/**
* @see https://developer.mozilla.org/en/DOM/document.write
* @param {string} text
*/
Document.prototype.write = function(text) {};
/**
* @see https://developer.mozilla.org/en/DOM/document.writeln
* @param {string} text
*/
Document.prototype.writeln = function(text) {};
Document.prototype.ononline;
Document.prototype.onoffline;
// XUL
/**
* @see http://developer.mozilla.org/en/DOM/document.getBoxObjectFor
* @return {BoxObject}
* @nosideeffects
*/
Document.prototype.getBoxObjectFor = function(element) {};
// From:
// http://lxr.mozilla.org/mozilla1.8/source/dom/public/idl/range/nsIDOMNSRange.idl
/**
* @param {string} tag
* @return {DocumentFragment}
*/
Range.prototype.createContextualFragment;
/**
* @param {Node} parent
* @param {number} offset
* @return {boolean}
* @nosideeffects
*/
Range.prototype.isPointInRange;
/**
* @param {Node} parent
* @param {number} offset
* @return {number}
* @nosideeffects
*/
Range.prototype.comparePoint;
/**
* @param {Node} n
* @return {boolean}
* @nosideeffects
*/
Range.prototype.intersectsNode;
/**
* @param {Node} n
* @return {number}
* @nosideeffects
*/
Range.prototype.compareNode;
/** @constructor */
function Selection() {}
/**
* @type {Node}
* @see https://developer.mozilla.org/en/DOM/Selection/anchorNode
*/
Selection.prototype.anchorNode;
/**
* @type {number}
* @see https://developer.mozilla.org/en/DOM/Selection/anchorOffset
*/
Selection.prototype.anchorOffset;
/**
* @type {Node}
* @see https://developer.mozilla.org/en/DOM/Selection/focusNode
*/
Selection.prototype.focusNode;
/**
* @type {number}
* @see https://developer.mozilla.org/en/DOM/Selection/focusOffset
*/
Selection.prototype.focusOffset;
/**
* @type {boolean}
* @see https://developer.mozilla.org/en/DOM/Selection/isCollapsed
*/
Selection.prototype.isCollapsed;
/**
* @type {number}
* @see https://developer.mozilla.org/en/DOM/Selection/rangeCount
*/
Selection.prototype.rangeCount;
/**
* @param {Range} range
* @return {undefined}
* @see https://developer.mozilla.org/en/DOM/Selection/addRange
*/
Selection.prototype.addRange = function(range) {};
/**
* @param {number} index
* @return {Range}
* @see https://developer.mozilla.org/en/DOM/Selection/getRangeAt
* @nosideeffects
*/
Selection.prototype.getRangeAt = function(index) {};
/**
* @param {Node} node
* @param {number} index
* @return {undefined}
* @see https://developer.mozilla.org/en/DOM/Selection/collapse
*/
Selection.prototype.collapse = function(node, index) {};
/**
* @return {undefined}
* @see https://developer.mozilla.org/en/DOM/Selection/collapseToEnd
*/
Selection.prototype.collapseToEnd = function() {};
/**
* @return {undefined}
* @see https://developer.mozilla.org/en/DOM/Selection/collapseToStart
*/
Selection.prototype.collapseToStart = function() {};
/**
* @param {Node} node
* @param {boolean} partlyContained
* @return {boolean}
* @see https://developer.mozilla.org/en/DOM/Selection/containsNode
* @nosideeffects
*/
Selection.prototype.containsNode = function(node, partlyContained) {};
/**
* @see https://developer.mozilla.org/en/DOM/Selection/deleteFromDocument
*/
Selection.prototype.deleteFromDocument = function() {};
/**
* @param {Node} parentNode
* @param {number} offset
* @see https://developer.mozilla.org/en/DOM/Selection/extend
*/
Selection.prototype.extend = function(parentNode, offset) {};
/**
* @see https://developer.mozilla.org/en/DOM/Selection/removeAllRanges
*/
Selection.prototype.removeAllRanges = function() {};
/**
* @param {Range} range
* @see https://developer.mozilla.org/en/DOM/Selection/removeRange
*/
Selection.prototype.removeRange = function(range) {};
/**
* @param {Node} parentNode
* @see https://developer.mozilla.org/en/DOM/Selection/selectAllChildren
*/
Selection.prototype.selectAllChildren;
/**
* @see https://developer.mozilla.org/en/DOM/Selection/selectionLanguageChange
*/
Selection.prototype.selectionLanguageChange;
/** @type {NamedNodeMap} */ Element.prototype.attributes;
Element.prototype.baseURIObject;
/** @type {!NodeList} */ Element.prototype.childNodes;
/**
* @type {!NodeList}
* @see https://developer.mozilla.org/en/DOM/element.children
*/
Element.prototype.children;
/**
* @type {string}
* @implicitCast
*/
Element.prototype.className;
/** @type {string} */ Element.prototype.dir;
/**
* Firebug sets this property on elements it is inserting into the DOM.
* @type {boolean}
*/
Element.prototype.firebugIgnore;
/** @type {Node} */ Element.prototype.firstChild;
/**
* @type {string}
* @implicitCast
*/
Element.prototype.id;
/**
* @type {string}
* @implicitCast
*/
Element.prototype.innerHTML;
/** @type {string} */ Element.prototype.lang;
/** @type {Node} */ Element.prototype.lastChild;
Element.prototype.localName;
Element.prototype.name;
Element.prototype.namespaceURI;
/** @type {Node} */ Element.prototype.nextSibling;
Element.prototype.nodeName;
Element.prototype.nodePrincipal;
/** @type {number} */ Element.prototype.nodeType;
Element.prototype.nodeValue;
/** @type {Document} */ Element.prototype.ownerDocument;
/** @type {Node} */ Element.prototype.parentNode;
Element.prototype.prefix;
/** @type {Node} */ Element.prototype.previousSibling;
/** @type {CSSStyleDeclaration} */ Element.prototype.style;
/**
* @type {number}
* @implicitCast
*/
Element.prototype.tabIndex;
/**
* @type {string}
* @implicitCast
*/
Element.prototype.textContent;
/** @type {string} */ Element.prototype.title;
/**
* @param {Node} child
* @return {Node} appendedElement.
* @override
*/
Element.prototype.appendChild = function(child) {};
/**
* @override
* @return {Element}
*/
Element.prototype.cloneNode = function(deep) {};
/** @override */
Element.prototype.dispatchEvent = function(event) {};
/** @return {undefined} */
Element.prototype.blur = function() {};
/** @return {undefined} */
Element.prototype.click = function() {};
/** @return {undefined} */
Element.prototype.focus = function() {};
/**
* @return {boolean}
* @override
* @nosideeffects
*/
Element.prototype.hasAttributes = function() {};
/**
* @return {boolean}
* @override
* @nosideeffects
*/
Element.prototype.hasChildNodes = function() {};
/** @override */
Element.prototype.insertBefore = function(insertedNode, adjacentNode) {};
/**
* @return {undefined}
* @override
*/
Element.prototype.normalize = function() {};
/**
* @param {Node} removedNode
* @return {Node}
* @override
*/
Element.prototype.removeChild = function(removedNode) {};
/** @override */
Element.prototype.removeEventListener = function(type, handler, useCapture) {};
/** @override */
Element.prototype.replaceChild = function(insertedNode, replacedNode) {};
/** @type {number} */
HTMLInputElement.prototype.selectionStart;
/** @type {number} */
HTMLInputElement.prototype.selectionEnd;
/**
* @param {number} selectionStart
* @param {number} selectionEnd
* @see http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#dom-textarea/input-setselectionrange
*/
HTMLInputElement.prototype.setSelectionRange =
function(selectionStart, selectionEnd) {};
/** @type {number} */
HTMLTextAreaElement.prototype.selectionStart;
/** @type {number} */
HTMLTextAreaElement.prototype.selectionEnd;
/**
* @param {number} selectionStart
* @param {number} selectionEnd
* @see http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#dom-textarea/input-setselectionrange
*/
HTMLTextAreaElement.prototype.setSelectionRange =
function(selectionStart, selectionEnd) {};
/** @constructor */
function Navigator() {}
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.appCodeName
*/
Navigator.prototype.appCodeName;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.appVersion
*/
Navigator.prototype.appName;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.appVersion
*/
Navigator.prototype.appVersion;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.buildID
*/
Navigator.prototype.buildID;
/**
* @type {boolean}
* @see https://developer.mozilla.org/en/Navigator.cookieEnabled
*/
Navigator.prototype.cookieEnabled;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.language
*/
Navigator.prototype.language;
/**
* @type {MimeTypeArray}
* @see https://developer.mozilla.org/en/Navigator.mimeTypes
*/
Navigator.prototype.mimeTypes;
/**
* @type {boolean}
* @see https://developer.mozilla.org/en/Navigator.onLine
*/
Navigator.prototype.onLine;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.oscpu
*/
Navigator.prototype.oscpu;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.platform
*/
Navigator.prototype.platform;
/**
* @type {PluginArray}
* @see https://developer.mozilla.org/en/Navigator.plugins
*/
Navigator.prototype.plugins;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.product
*/
Navigator.prototype.product;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.productSub
*/
Navigator.prototype.productSub;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.securityPolicy
*/
Navigator.prototype.securityPolicy;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.userAgent
*/
Navigator.prototype.userAgent;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.vendor
*/
Navigator.prototype.vendor;
/**
* @type {string}
* @see https://developer.mozilla.org/en/Navigator.vendorSub
*/
Navigator.prototype.vendorSub;
/**
* @type {function(): boolean}
* @see https://developer.mozilla.org/en/Navigator.javaEnabled
* @nosideeffects
*/
Navigator.prototype.javaEnabled = function() {};
/**
* @constructor
* @see https://developer.mozilla.org/en/DOM/PluginArray
*/
function PluginArray() {}
/** @type {number} */
PluginArray.prototype.length;
/**
* @param {number} index
* @return {Plugin}
*/
PluginArray.prototype.item = function(index) {};
/**
* @param {string} name
* @return {Plugin}
*/
PluginArray.prototype.namedItem = function(name) {};
/** @param {boolean=} reloadDocuments */
PluginArray.prototype.refresh = function(reloadDocuments) {};
/** @constructor */
function MimeTypeArray() {}
/**
* @param {number} index
* @return {MimeType}
*/
MimeTypeArray.prototype.item = function(index) {};
/**
* @type {number}
* @see https://developer.mozilla.org/en/DOM/window.navigator.mimeTypes
*/
MimeTypeArray.prototype.length;
/**
* @param {string} name
* @return {MimeType}
*/
MimeTypeArray.prototype.namedItem = function(name) {};
/** @constructor */
function MimeType() {}
/** @type {string} */
MimeType.prototype.description;
/** @type {Plugin} */
MimeType.prototype.enabledPlugin;
/** @type {string} */
MimeType.prototype.suffixes;
/** @type {string} */
MimeType.prototype.type;
/** @constructor */
function Plugin() {}
/** @type {string} */
Plugin.prototype.description;
/** @type {string} */
Plugin.prototype.filename;
/** @type {number} */
Plugin.prototype.length;
/** @type {string} */
Plugin.prototype.name;
/** @constructor */
function BoxObject() {}
/** @type {Element} */
BoxObject.prototype.element;
/** @type {number} */
BoxObject.prototype.screenX;
/** @type {number} */
BoxObject.prototype.screenY;
/** @type {number} */
BoxObject.prototype.x;
/** @type {number} */
BoxObject.prototype.y;
/** @type {number} */
BoxObject.prototype.width;
/**
* @type {number}
* @see http://www.google.com/codesearch/p?hl=en#eksvcKKj5Ng/mozilla/dom/public/idl/html/nsIDOMNSHTMLImageElement.idl&q=naturalWidth
*/
HTMLImageElement.prototype.naturalWidth;
/**
* @type {number}
* @see http://www.google.com/codesearch/p?hl=en#eksvcKKj5Ng/mozilla/dom/public/idl/html/nsIDOMNSHTMLImageElement.idl&q=naturalHeight
*/
HTMLImageElement.prototype.naturalHeight;