// See jsdom's lib/jsdom/living/index.js var LIVING_KEYS = [ 'DOMException', 'NamedNodeMap', 'Attr', 'Node', 'Element', 'DocumentFragment', 'HTMLDocument', 'Document', 'CharacterData', 'Comment', 'DocumentType', 'DOMImplementation', 'ProcessingInstruction', 'Image', 'Text', 'Event', 'CustomEvent', 'MessageEvent', 'ErrorEvent', 'HashChangeEvent', 'PopStateEvent', 'UIEvent', 'MouseEvent', 'KeyboardEvent', 'TouchEvent', 'ProgressEvent', 'EventTarget', 'Location', 'History', 'HTMLElement', 'HTMLAnchorElement', 'HTMLAppletElement', 'HTMLAreaElement', 'HTMLAudioElement', 'HTMLBaseElement', 'HTMLBodyElement', 'HTMLBRElement', 'HTMLButtonElement', 'HTMLCanvasElement', 'HTMLDataElement', 'HTMLDataListElement', 'HTMLDialogElement', 'HTMLDirectoryElement', 'HTMLDivElement', 'HTMLDListElement', 'HTMLEmbedElement', 'HTMLFieldSetElement', 'HTMLFontElement', 'HTMLFormElement', 'HTMLFrameElement', 'HTMLFrameSetElement', 'HTMLHeadingElement', 'HTMLHeadElement', 'HTMLHRElement', 'HTMLHtmlElement', 'HTMLIFrameElement', 'HTMLImageElement', 'HTMLInputElement', 'HTMLLabelElement', 'HTMLLegendElement', 'HTMLLIElement', 'HTMLLinkElement', 'HTMLMapElement', 'HTMLMediaElement', 'HTMLMenuElement', 'HTMLMetaElement', 'HTMLMeterElement', 'HTMLModElement', 'HTMLObjectElement', 'HTMLOListElement', 'HTMLOptGroupElement', 'HTMLOptionElement', 'HTMLOutputElement', 'HTMLParagraphElement', 'HTMLParamElement', 'HTMLPreElement', 'HTMLProgressElement', 'HTMLQuoteElement', 'HTMLScriptElement', 'HTMLSelectElement', 'HTMLSourceElement', 'HTMLSpanElement', 'HTMLStyleElement', 'HTMLTableCaptionElement', 'HTMLTableCellElement', 'HTMLTableColElement', 'HTMLTableDataCellElement', 'HTMLTableElement', 'HTMLTableHeaderCellElement', 'HTMLTimeElement', 'HTMLTitleElement', 'HTMLTableRowElement', 'HTMLTableSectionElement', 'HTMLTemplateElement', 'HTMLTextAreaElement', 'HTMLTrackElement', 'HTMLUListElement', 'HTMLUnknownElement', 'HTMLVideoElement', 'StyleSheet', 'MediaList', 'CSSStyleSheet', 'CSSRule', 'CSSStyleRule', 'CSSMediaRule', 'CSSImportRule', 'CSSStyleDeclaration', 'StyleSheetList', 'XPathException', 'XPathExpression', 'XPathResult', 'XPathEvaluator', 'HTMLCollection', 'NodeFilter', 'NodeIterator', 'NodeList', 'Blob', 'File', 'FileList', 'FormData', 'XMLHttpRequest', 'XMLHttpRequestEventTarget', 'XMLHttpRequestUpload', 'DOMTokenList', 'URL' ] var OTHER_KEYS = [ 'addEventListener', 'alert', 'atob', 'blur', 'btoa', /* 'clearInterval', */ /* 'clearTimeout', */ 'close', 'confirm', /* 'console', */ 'createPopup', 'dispatchEvent', 'document', 'focus', 'frames', 'getComputedStyle', 'history', 'innerHeight', 'innerWidth', 'length', 'location', 'moveBy', 'moveTo', 'name', 'navigator', 'open', 'outerHeight', 'outerWidth', 'pageXOffset', 'pageYOffset', 'parent', 'postMessage', 'print', 'prompt', 'removeEventListener', 'resizeBy', 'resizeTo', 'screen', 'screenLeft', 'screenTop', 'screenX', 'screenY', 'scroll', 'scrollBy', 'scrollLeft', 'scrollTo', 'scrollTop', 'scrollX', 'scrollY', 'self', /* 'setInterval', */ /* 'setTimeout', */ 'stop', /* 'toString', */ 'top', 'window' ] module.exports = LIVING_KEYS.concat(OTHER_KEYS)