mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 13:02:45 +00:00 
			
		
		
		
	 1ceba560f4
			
		
	
	
		1ceba560f4
		
	
	
	
	
		
			
			Not used for anything currently other than exposing it on the Window object. This allows Web Components Polyfills to patch its prototype.
		
			
				
	
	
		
			607 lines
		
	
	
	
		
			14 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			607 lines
		
	
	
	
		
			14 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2020-2022, Andreas Kling <kling@serenityos.org>
 | |
|  * Copyright (c) 2021, the SerenityOS developers.
 | |
|  *
 | |
|  * SPDX-License-Identifier: BSD-2-Clause
 | |
|  */
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| namespace Web {
 | |
| class XMLDocumentBuilder;
 | |
| }
 | |
| 
 | |
| namespace Web::Cookie {
 | |
| struct Cookie;
 | |
| struct ParsedCookie;
 | |
| enum class Source;
 | |
| }
 | |
| 
 | |
| namespace Web::Crypto {
 | |
| class Crypto;
 | |
| class SubtleCrypto;
 | |
| }
 | |
| 
 | |
| namespace Web::CSS {
 | |
| class Angle;
 | |
| class AnglePercentage;
 | |
| class AngleStyleValue;
 | |
| class BackgroundRepeatStyleValue;
 | |
| class BackgroundSizeStyleValue;
 | |
| class BackgroundStyleValue;
 | |
| class BorderRadiusStyleValue;
 | |
| class BorderRadiusShorthandStyleValue;
 | |
| class BorderStyleValue;
 | |
| class CalculatedStyleValue;
 | |
| class ColorStyleValue;
 | |
| class ContentStyleValue;
 | |
| class CSSConditionRule;
 | |
| class CSSGroupingRule;
 | |
| class CSSImportRule;
 | |
| class CSSFontFaceRule;
 | |
| class CSSMediaRule;
 | |
| class CSSRule;
 | |
| class CSSRuleList;
 | |
| class CSSStyleDeclaration;
 | |
| class CSSStyleRule;
 | |
| class CSSStyleSheet;
 | |
| class CSSSupportsRule;
 | |
| class Display;
 | |
| class ElementInlineCSSStyleDeclaration;
 | |
| class FlexFlowStyleValue;
 | |
| class FlexStyleValue;
 | |
| class FontFace;
 | |
| class FontStyleValue;
 | |
| class Frequency;
 | |
| class FrequencyPercentage;
 | |
| class FrequencyStyleValue;
 | |
| class IdentifierStyleValue;
 | |
| class ImageStyleValue;
 | |
| class InheritStyleValue;
 | |
| class InitialStyleValue;
 | |
| class Length;
 | |
| class LengthPercentage;
 | |
| class LengthStyleValue;
 | |
| class ListStyleStyleValue;
 | |
| class MediaList;
 | |
| class MediaQuery;
 | |
| class MediaQueryList;
 | |
| class MediaQueryListEvent;
 | |
| class Number;
 | |
| class NumericStyleValue;
 | |
| class OverflowStyleValue;
 | |
| class Percentage;
 | |
| class PercentageStyleValue;
 | |
| class PositionStyleValue;
 | |
| class PropertyOwningCSSStyleDeclaration;
 | |
| class Resolution;
 | |
| class ResolutionStyleValue;
 | |
| class Screen;
 | |
| class Selector;
 | |
| class ShadowStyleValue;
 | |
| class StringStyleValue;
 | |
| class StyleComputer;
 | |
| class StyleProperties;
 | |
| class StyleSheet;
 | |
| class StyleSheetList;
 | |
| class StyleValue;
 | |
| class StyleValueList;
 | |
| class Supports;
 | |
| class TextDecorationStyleValue;
 | |
| class Time;
 | |
| class TimePercentage;
 | |
| class TimeStyleValue;
 | |
| class TransformationStyleValue;
 | |
| class UnicodeRange;
 | |
| class UnresolvedStyleValue;
 | |
| class UnsetStyleValue;
 | |
| 
 | |
| enum class MediaFeatureID;
 | |
| enum class PropertyID;
 | |
| enum class ValueID;
 | |
| }
 | |
| 
 | |
| namespace Web::CSS::Parser {
 | |
| class Block;
 | |
| class ComponentValue;
 | |
| class Declaration;
 | |
| class DeclarationOrAtRule;
 | |
| class Function;
 | |
| class Parser;
 | |
| class Rule;
 | |
| class Token;
 | |
| class Tokenizer;
 | |
| }
 | |
| 
 | |
| namespace Web::DOM {
 | |
| class AbstractRange;
 | |
| class AbortController;
 | |
| class AbortSignal;
 | |
| class Attribute;
 | |
| class CDATASection;
 | |
| class CharacterData;
 | |
| class Comment;
 | |
| class CustomEvent;
 | |
| class Document;
 | |
| class DocumentFragment;
 | |
| class DocumentLoadEventDelayer;
 | |
| class DocumentType;
 | |
| class DOMEventListener;
 | |
| class DOMException;
 | |
| class DOMImplementation;
 | |
| class DOMTokenList;
 | |
| class Element;
 | |
| class Event;
 | |
| class EventHandler;
 | |
| class EventTarget;
 | |
| class HTMLCollection;
 | |
| class IDLEventListener;
 | |
| class LiveNodeList;
 | |
| class NamedNodeMap;
 | |
| class Node;
 | |
| class NodeFilter;
 | |
| class NodeIterator;
 | |
| class NodeList;
 | |
| class ParentNode;
 | |
| class Position;
 | |
| class ProcessingInstruction;
 | |
| class Range;
 | |
| class ShadowRoot;
 | |
| class StaticNodeList;
 | |
| class StaticRange;
 | |
| class Text;
 | |
| class TreeWalker;
 | |
| enum class QuirksMode;
 | |
| struct EventListenerOptions;
 | |
| struct AddEventListenerOptions;
 | |
| 
 | |
| template<typename ValueType>
 | |
| class ExceptionOr;
 | |
| }
 | |
| 
 | |
| namespace Web::Encoding {
 | |
| class TextEncoder;
 | |
| }
 | |
| 
 | |
| namespace Web::Geometry {
 | |
| class DOMRect;
 | |
| class DOMRectList;
 | |
| class DOMRectReadOnly;
 | |
| }
 | |
| 
 | |
| namespace Web::HTML {
 | |
| class BrowsingContext;
 | |
| class BrowsingContextContainer;
 | |
| class CanvasRenderingContext2D;
 | |
| class ClassicScript;
 | |
| class CloseEvent;
 | |
| class DOMParser;
 | |
| class DOMStringMap;
 | |
| struct Environment;
 | |
| struct EnvironmentSettingsObject;
 | |
| class ErrorEvent;
 | |
| struct EventHandler;
 | |
| class EventLoop;
 | |
| class HTMLAnchorElement;
 | |
| class HTMLAreaElement;
 | |
| class HTMLAudioElement;
 | |
| class HTMLBaseElement;
 | |
| class HTMLBlinkElement;
 | |
| class HTMLBodyElement;
 | |
| class HTMLBRElement;
 | |
| class HTMLButtonElement;
 | |
| class HTMLCanvasElement;
 | |
| class HTMLDataElement;
 | |
| class HTMLDataListElement;
 | |
| class HTMLDetailsElement;
 | |
| class HTMLDialogElement;
 | |
| class HTMLDirectoryElement;
 | |
| class HTMLDivElement;
 | |
| class HTMLDListElement;
 | |
| class HTMLElement;
 | |
| class HTMLEmbedElement;
 | |
| class HTMLFieldSetElement;
 | |
| class HTMLFontElement;
 | |
| class HTMLFormElement;
 | |
| class HTMLFrameElement;
 | |
| class HTMLFrameSetElement;
 | |
| class HTMLHeadElement;
 | |
| class HTMLHeadingElement;
 | |
| class HTMLHRElement;
 | |
| class HTMLHtmlElement;
 | |
| class HTMLIFrameElement;
 | |
| class HTMLImageElement;
 | |
| class HTMLInputElement;
 | |
| class HTMLLabelElement;
 | |
| class HTMLLegendElement;
 | |
| class HTMLLIElement;
 | |
| class HTMLLinkElement;
 | |
| class HTMLMapElement;
 | |
| class HTMLMarqueeElement;
 | |
| class HTMLMediaElement;
 | |
| class HTMLMenuElement;
 | |
| class HTMLMetaElement;
 | |
| class HTMLMeterElement;
 | |
| class HTMLModElement;
 | |
| class HTMLObjectElement;
 | |
| class HTMLOListElement;
 | |
| class HTMLOptGroupElement;
 | |
| class HTMLOptionElement;
 | |
| class HTMLOptionsCollection;
 | |
| class HTMLOutputElement;
 | |
| class HTMLParagraphElement;
 | |
| class HTMLParamElement;
 | |
| class HTMLParser;
 | |
| class HTMLPictureElement;
 | |
| class HTMLPreElement;
 | |
| class HTMLProgressElement;
 | |
| class HTMLQuoteElement;
 | |
| class HTMLScriptElement;
 | |
| class HTMLSelectElement;
 | |
| class HTMLSlotElement;
 | |
| class HTMLSourceElement;
 | |
| class HTMLSpanElement;
 | |
| class HTMLStyleElement;
 | |
| class HTMLTableCaptionElement;
 | |
| class HTMLTableCellElement;
 | |
| class HTMLTableColElement;
 | |
| class HTMLTableElement;
 | |
| class HTMLTableRowElement;
 | |
| class HTMLTableSectionElement;
 | |
| class HTMLTemplateElement;
 | |
| class HTMLTextAreaElement;
 | |
| class HTMLTimeElement;
 | |
| class HTMLTitleElement;
 | |
| class HTMLTrackElement;
 | |
| class HTMLUListElement;
 | |
| class HTMLUnknownElement;
 | |
| class HTMLVideoElement;
 | |
| class ImageData;
 | |
| class MessageChannel;
 | |
| class MessageEvent;
 | |
| class MessagePort;
 | |
| class PageTransitionEvent;
 | |
| class PromiseRejectionEvent;
 | |
| class WorkerDebugConsoleClient;
 | |
| class Storage;
 | |
| class SubmitEvent;
 | |
| class TextMetrics;
 | |
| class Timer;
 | |
| class Window;
 | |
| class WindowEnvironmentSettingsObject;
 | |
| class Worker;
 | |
| class WorkerEnvironmentSettingsObject;
 | |
| class WorkerGlobalScope;
 | |
| class WorkerLocation;
 | |
| class WorkerNavigator;
 | |
| }
 | |
| 
 | |
| namespace Web::HighResolutionTime {
 | |
| class Performance;
 | |
| }
 | |
| 
 | |
| namespace Web::IntersectionObserver {
 | |
| class IntersectionObserver;
 | |
| }
 | |
| 
 | |
| namespace Web::MimeSniff {
 | |
| class MimeType;
 | |
| }
 | |
| 
 | |
| namespace Web::NavigationTiming {
 | |
| class PerformanceTiming;
 | |
| }
 | |
| 
 | |
| namespace Web::Painting {
 | |
| enum class PaintPhase;
 | |
| class ButtonPaintable;
 | |
| class CheckBoxPaintable;
 | |
| class LabelablePaintable;
 | |
| class Paintable;
 | |
| class PaintableBox;
 | |
| class PaintableWithLines;
 | |
| class StackingContext;
 | |
| class TextPaintable;
 | |
| struct BorderRadiusData;
 | |
| struct BorderRadiiData;
 | |
| }
 | |
| 
 | |
| namespace Web::RequestIdleCallback {
 | |
| class IdleDeadline;
 | |
| }
 | |
| 
 | |
| namespace Web::ResizeObserver {
 | |
| class ResizeObserver;
 | |
| }
 | |
| 
 | |
| namespace Web::SVG {
 | |
| class SVGAnimatedLength;
 | |
| class SVGCircleElement;
 | |
| class SVGClipPathElement;
 | |
| class SVGDefsElement;
 | |
| class SVGElement;
 | |
| class SVGEllipseElement;
 | |
| class SVGGeometryElement;
 | |
| class SVGGraphicsElement;
 | |
| class SVGLength;
 | |
| class SVGLineElement;
 | |
| class SVGPathElement;
 | |
| class SVGPolygonElement;
 | |
| class SVGPolylineElement;
 | |
| class SVGRectElement;
 | |
| class SVGSVGElement;
 | |
| }
 | |
| 
 | |
| namespace Web::Selection {
 | |
| class Selection;
 | |
| }
 | |
| 
 | |
| namespace Web::WebSockets {
 | |
| class WebSocket;
 | |
| }
 | |
| 
 | |
| namespace Web::Layout {
 | |
| enum class LayoutMode;
 | |
| class BlockContainer;
 | |
| class BlockFormattingContext;
 | |
| class Box;
 | |
| class ButtonBox;
 | |
| class CheckBox;
 | |
| class FlexFormattingContext;
 | |
| class FormattingContext;
 | |
| struct FormattingState;
 | |
| class InitialContainingBlock;
 | |
| class InlineFormattingContext;
 | |
| class Label;
 | |
| class LabelableNode;
 | |
| class LineBox;
 | |
| class LineBoxFragment;
 | |
| class ListItemBox;
 | |
| class ListItemMarkerBox;
 | |
| class Node;
 | |
| class NodeWithStyle;
 | |
| class NodeWithStyleAndBoxModelMetrics;
 | |
| class RadioButton;
 | |
| class ReplacedBox;
 | |
| class TextNode;
 | |
| }
 | |
| 
 | |
| namespace Web {
 | |
| class EditEventHandler;
 | |
| class EventHandler;
 | |
| class FrameLoader;
 | |
| class LoadRequest;
 | |
| class Origin;
 | |
| class Page;
 | |
| class PageClient;
 | |
| class PaintContext;
 | |
| class Resource;
 | |
| class ResourceLoader;
 | |
| }
 | |
| 
 | |
| namespace Web::WebGL {
 | |
| class WebGLContextEvent;
 | |
| class WebGLRenderingContext;
 | |
| class WebGLRenderingContextBase;
 | |
| }
 | |
| 
 | |
| namespace Web::XHR {
 | |
| class ProgressEvent;
 | |
| class XMLHttpRequest;
 | |
| class XMLHttpRequestEventTarget;
 | |
| }
 | |
| 
 | |
| namespace Web::UIEvents {
 | |
| class MouseEvent;
 | |
| class KeyboardEvent;
 | |
| class UIEvents;
 | |
| }
 | |
| 
 | |
| namespace Web::URL {
 | |
| class URL;
 | |
| class URLSearchParams;
 | |
| class URLSearchParamsIterator;
 | |
| }
 | |
| 
 | |
| namespace Web::Bindings {
 | |
| class AbstractRangeWrapper;
 | |
| class AbortControllerWrapper;
 | |
| class AbortSignalWrapper;
 | |
| class AttributeWrapper;
 | |
| struct CallbackType;
 | |
| class CanvasGradientWrapper;
 | |
| class CanvasRenderingContext2DWrapper;
 | |
| class CDATASectionWrapper;
 | |
| class CharacterDataWrapper;
 | |
| class CloseEventWrapper;
 | |
| class CommentWrapper;
 | |
| class CryptoWrapper;
 | |
| class CSSConditionRuleWrapper;
 | |
| class CSSFontFaceRuleWrapper;
 | |
| class CSSGroupingRuleWrapper;
 | |
| class CSSImportRuleWrapper;
 | |
| class CSSMediaRuleWrapper;
 | |
| class CSSRuleListWrapper;
 | |
| class CSSRuleWrapper;
 | |
| class CSSStyleDeclarationWrapper;
 | |
| class CSSStyleRuleWrapper;
 | |
| class CSSStyleSheetWrapper;
 | |
| class CSSSupportsRuleWrapper;
 | |
| class CustomEventWrapper;
 | |
| class DocumentFragmentWrapper;
 | |
| class DocumentTypeWrapper;
 | |
| class DocumentWrapper;
 | |
| class DOMExceptionWrapper;
 | |
| class DOMImplementationWrapper;
 | |
| class DOMParserWrapper;
 | |
| class DOMRectListWrapper;
 | |
| class DOMRectReadOnlyWrapper;
 | |
| class DOMRectWrapper;
 | |
| class DOMStringMapWrapper;
 | |
| class DOMTokenListWrapper;
 | |
| class ElementWrapper;
 | |
| class ErrorEventWrapper;
 | |
| class EventListenerWrapper;
 | |
| class EventTargetWrapper;
 | |
| class EventWrapper;
 | |
| class FocusEventWrapper;
 | |
| class HistoryWrapper;
 | |
| class HTMLAnchorElementWrapper;
 | |
| class HTMLAreaElementWrapper;
 | |
| class HTMLAudioElementWrapper;
 | |
| class HTMLBaseElementWrapper;
 | |
| class HTMLBodyElementWrapper;
 | |
| class HTMLBRElementWrapper;
 | |
| class HTMLButtonElementWrapper;
 | |
| class HTMLCanvasElementWrapper;
 | |
| class HTMLCollectionWrapper;
 | |
| class HTMLDataElementWrapper;
 | |
| class HTMLDataListElementWrapper;
 | |
| class HTMLDetailsElementWrapper;
 | |
| class HTMLDialogElementWrapper;
 | |
| class HTMLDirectoryElementWrapper;
 | |
| class HTMLDivElementWrapper;
 | |
| class HTMLDListElementWrapper;
 | |
| class HTMLElementWrapper;
 | |
| class HTMLEmbedElementWrapper;
 | |
| class HTMLFieldSetElementWrapper;
 | |
| class HTMLFontElementWrapper;
 | |
| class HTMLFormElementWrapper;
 | |
| class HTMLFrameElementWrapper;
 | |
| class HTMLFrameSetElementWrapper;
 | |
| class HTMLHeadElementWrapper;
 | |
| class HTMLHeadingElementWrapper;
 | |
| class HTMLHRElementWrapper;
 | |
| class HTMLHtmlElementWrapper;
 | |
| class HTMLIFrameElementWrapper;
 | |
| class HTMLImageElementWrapper;
 | |
| class HTMLInputElementWrapper;
 | |
| class HTMLLabelElementWrapper;
 | |
| class HTMLLegendElementWrapper;
 | |
| class HTMLLIElementWrapper;
 | |
| class HTMLLinkElementWrapper;
 | |
| class HTMLMapElementWrapper;
 | |
| class HTMLMarqueeElementWrapper;
 | |
| class HTMLMediaElementWrapper;
 | |
| class HTMLMenuElementWrapper;
 | |
| class HTMLMetaElementWrapper;
 | |
| class HTMLMeterElementWrapper;
 | |
| class HTMLModElementWrapper;
 | |
| class HTMLObjectElementWrapper;
 | |
| class HTMLOListElementWrapper;
 | |
| class HTMLOptGroupElementWrapper;
 | |
| class HTMLOptionElementWrapper;
 | |
| class HTMLOptionsCollectionWrapper;
 | |
| class HTMLOutputElementWrapper;
 | |
| class HTMLParagraphElementWrapper;
 | |
| class HTMLParamElementWrapper;
 | |
| class HTMLPictureElementWrapper;
 | |
| class HTMLPreElementWrapper;
 | |
| class HTMLProgressElementWrapper;
 | |
| class HTMLQuoteElementWrapper;
 | |
| class HTMLScriptElementWrapper;
 | |
| class HTMLSelectElementWrapper;
 | |
| class HTMLSlotElementWrapper;
 | |
| class HTMLSourceElementWrapper;
 | |
| class HTMLSpanElementWrapper;
 | |
| class HTMLStyleElementWrapper;
 | |
| class HTMLTableCaptionElementWrapper;
 | |
| class HTMLTableCellElementWrapper;
 | |
| class HTMLTableColElementWrapper;
 | |
| class HTMLTableElementWrapper;
 | |
| class HTMLTableRowElementWrapper;
 | |
| class HTMLTableSectionElementWrapper;
 | |
| class HTMLTemplateElementWrapper;
 | |
| class HTMLTextAreaElementWrapper;
 | |
| class HTMLTimeElementWrapper;
 | |
| class HTMLTitleElementWrapper;
 | |
| class HTMLTrackElementWrapper;
 | |
| class HTMLUListElementWrapper;
 | |
| class HTMLUnknownElementWrapper;
 | |
| class HTMLVideoElementWrapper;
 | |
| class IdleDeadlineWrapper;
 | |
| class ImageDataWrapper;
 | |
| class IntersectionObserverWrapper;
 | |
| class KeyboardEventWrapper;
 | |
| class LocationObject;
 | |
| class MediaListWrapper;
 | |
| class MediaQueryListEventWrapper;
 | |
| class MediaQueryListWrapper;
 | |
| class MessageChannelWrapper;
 | |
| class MessageEventWrapper;
 | |
| class MessagePortWrapper;
 | |
| class MouseEventWrapper;
 | |
| class NamedNodeMapWrapper;
 | |
| class NodeFilterWrapper;
 | |
| class NodeIteratorWrapper;
 | |
| class NodeListWrapper;
 | |
| class NodeWrapper;
 | |
| class OptionConstructor;
 | |
| class PageTransitionEventWrapper;
 | |
| class PerformanceTimingWrapper;
 | |
| class PerformanceWrapper;
 | |
| class ProcessingInstructionWrapper;
 | |
| class ProgressEventWrapper;
 | |
| class PromiseRejectionEventWrapper;
 | |
| class RangeConstructor;
 | |
| class RangePrototype;
 | |
| class RangeWrapper;
 | |
| class ResizeObserverWrapper;
 | |
| class ScreenWrapper;
 | |
| class SelectionWrapper;
 | |
| class StaticRangeWrapper;
 | |
| class StorageWrapper;
 | |
| class StyleSheetListWrapper;
 | |
| class StyleSheetWrapper;
 | |
| class SubmitEventWrapper;
 | |
| class SubtleCryptoWrapper;
 | |
| class SVGAnimatedLengthWrapper;
 | |
| class SVGCircleElementWrapper;
 | |
| class SVGDefsElementWrapper;
 | |
| class SVGClipPathElementWrapper;
 | |
| class SVGElementWrapper;
 | |
| class SVGEllipseElementWrapper;
 | |
| class SVGGeometryElementWrapper;
 | |
| class SVGGraphicsElementWrapper;
 | |
| class SVGLengthWrapper;
 | |
| class SVGLineElementWrapper;
 | |
| class SVGPathElementWrapper;
 | |
| class SVGPolygonElementWrapper;
 | |
| class SVGPolylineElementWrapper;
 | |
| class SVGRectElementWrapper;
 | |
| class SVGSVGElementWrapper;
 | |
| class SVGTextContentElementWrapper;
 | |
| class TextDecoderWrapper;
 | |
| class TextEncoderWrapper;
 | |
| class TextMetricsWrapper;
 | |
| class TextWrapper;
 | |
| class TreeWalkerWrapper;
 | |
| class UIEventWrapper;
 | |
| class URLConstructor;
 | |
| class URLPrototype;
 | |
| class URLSearchParamsConstructor;
 | |
| class URLSearchParamsIteratorPrototype;
 | |
| class URLSearchParamsIteratorWrapper;
 | |
| class URLSearchParamsPrototype;
 | |
| class URLSearchParamsWrapper;
 | |
| class URLWrapper;
 | |
| class WebGLContextEventWrapper;
 | |
| class WebGLRenderingContextWrapper;
 | |
| class WebSocketWrapper;
 | |
| class WindowObject;
 | |
| class WindowProxy;
 | |
| class WorkerWrapper;
 | |
| class WorkerGlobalScopeWrapper;
 | |
| class WorkerLocationWrapper;
 | |
| class WorkerNavigatorWrapper;
 | |
| class Wrappable;
 | |
| class Wrapper;
 | |
| class XMLHttpRequestConstructor;
 | |
| class XMLHttpRequestEventTargetWrapper;
 | |
| class XMLHttpRequestPrototype;
 | |
| class XMLHttpRequestWrapper;
 | |
| enum class CanPlayTypeResult;
 | |
| enum class DOMParserSupportedType;
 | |
| enum class ResizeObserverBoxOptions;
 | |
| enum class XMLHttpRequestResponseType;
 | |
| }
 |