flow-typed/environments/dom.js JAVASCRIPT 3,680 lines View on github.com → Search inside
File is large — showing lines 1–2,000 of 3,680.
1// flow-typed signature: 2872ddd56ba4b4bfefacac38ebdc60872// flow-typed version: 3e51657e95/dom/flow_>=v0.261.x34/* Files */56declare class Blob {7  constructor(8    blobParts?: Array<any>,9    options?: {10      type?: string,11      endings?: string,12      ...13    }14  ): void;15  isClosed: boolean;16  size: number;17  type: string;18  close(): void;19  slice(start?: number, end?: number, contentType?: string): Blob;20  arrayBuffer(): Promise<ArrayBuffer>;21  text(): Promise<string>;22  stream(): ReadableStream;23}2425declare class FileReader extends EventTarget {26  +EMPTY: 0;27  +LOADING: 1;28  +DONE: 2;29  +error: null | DOMError;30  +readyState: 0 | 1 | 2;31  +result: null | string | ArrayBuffer;32  abort(): void;33  onabort: null | ((ev: ProgressEvent) => any);34  onerror: null | ((ev: ProgressEvent) => any);35  onload: null | ((ev: ProgressEvent) => any);36  onloadend: null | ((ev: ProgressEvent) => any);37  onloadstart: null | ((ev: ProgressEvent) => any);38  onprogress: null | ((ev: ProgressEvent) => any);39  readAsArrayBuffer(blob: Blob): void;40  readAsBinaryString(blob: Blob): void;41  readAsDataURL(blob: Blob): void;42  readAsText(blob: Blob, encoding?: string): void;43}4445declare type FilePropertyBag = {46  type?: string,47  lastModified?: number,48  ...49};50declare class File extends Blob {51  constructor(52    fileBits: $ReadOnlyArray<string | BufferDataSource | Blob>,53    filename: string,54    options?: FilePropertyBag55  ): void;56  lastModified: number;57  name: string;58}5960declare class FileList {61  @@iterator(): Iterator<File>;62  length: number;63  item(index: number): File;64  [index: number]: File;65}6667declare class DOMError {68  name: string;69}7071declare interface ShadowRoot extends DocumentFragment {72  +delegatesFocus: boolean;73  +host: Element;74  // flowlint unsafe-getters-setters:off75  get innerHTML(): string;76  set innerHTML(value: string | TrustedHTML): void;77  // flowlint unsafe-getters-setters:error78  +mode: ShadowRootMode;7980  // From DocumentOrShadowRoot Mixin.81  +styleSheets: StyleSheetList;82  adoptedStyleSheets: Array<CSSStyleSheet>;83}8485declare type ShadowRootMode = 'open' | 'closed';8687declare type ShadowRootInit = {88  delegatesFocus?: boolean,89  mode: ShadowRootMode,90  ...91};9293declare type ScrollToOptions = {94  top?: number,95  left?: number,96  behavior?: 'auto' | 'smooth',97  ...98};99100type EventHandler = (event: Event) => mixed;101type EventListener = {handleEvent: EventHandler, ...} | EventHandler;102type MouseEventHandler = (event: MouseEvent) => mixed;103type MouseEventListener =104  | {handleEvent: MouseEventHandler, ...}105  | MouseEventHandler;106type FocusEventHandler = (event: FocusEvent) => mixed;107type FocusEventListener =108  | {handleEvent: FocusEventHandler, ...}109  | FocusEventHandler;110type KeyboardEventHandler = (event: KeyboardEvent) => mixed;111type KeyboardEventListener =112  | {handleEvent: KeyboardEventHandler, ...}113  | KeyboardEventHandler;114type InputEventHandler = (event: InputEvent) => mixed;115type InputEventListener =116  | {handleEvent: InputEventHandler, ...}117  | InputEventHandler;118type TouchEventHandler = (event: TouchEvent) => mixed;119type TouchEventListener =120  | {handleEvent: TouchEventHandler, ...}121  | TouchEventHandler;122type WheelEventHandler = (event: WheelEvent) => mixed;123type WheelEventListener =124  | {handleEvent: WheelEventHandler, ...}125  | WheelEventHandler;126type AbortProgressEventHandler = (event: ProgressEvent) => mixed;127type AbortProgressEventListener =128  | {handleEvent: AbortProgressEventHandler, ...}129  | AbortProgressEventHandler;130type ProgressEventHandler = (event: ProgressEvent) => mixed;131type ProgressEventListener =132  | {handleEvent: ProgressEventHandler, ...}133  | ProgressEventHandler;134type DragEventHandler = (event: DragEvent) => mixed;135type DragEventListener =136  | {handleEvent: DragEventHandler, ...}137  | DragEventHandler;138type PointerEventHandler = (event: PointerEvent) => mixed;139type PointerEventListener =140  | {handleEvent: PointerEventHandler, ...}141  | PointerEventHandler;142type AnimationEventHandler = (event: AnimationEvent) => mixed;143type AnimationEventListener =144  | {handleEvent: AnimationEventHandler, ...}145  | AnimationEventHandler;146type ClipboardEventHandler = (event: ClipboardEvent) => mixed;147type ClipboardEventListener =148  | {handleEvent: ClipboardEventHandler, ...}149  | ClipboardEventHandler;150type TransitionEventHandler = (event: TransitionEvent) => mixed;151type TransitionEventListener =152  | {handleEvent: TransitionEventHandler, ...}153  | TransitionEventHandler;154type MessageEventHandler = (event: MessageEvent<>) => mixed;155type MessageEventListener =156  | {handleEvent: MessageEventHandler, ...}157  | MessageEventHandler;158type BeforeUnloadEventHandler = (event: BeforeUnloadEvent) => mixed;159type BeforeUnloadEventListener =160  | {handleEvent: BeforeUnloadEventHandler, ...}161  | BeforeUnloadEventHandler;162type StorageEventHandler = (event: StorageEvent) => mixed;163type StorageEventListener =164  | {handleEvent: StorageEventHandler, ...}165  | StorageEventHandler;166type SecurityPolicyViolationEventHandler = (167  event: SecurityPolicyViolationEvent168) => mixed;169type SecurityPolicyViolationEventListener =170  | {handleEvent: SecurityPolicyViolationEventHandler, ...}171  | SecurityPolicyViolationEventHandler;172type USBConnectionEventHandler = (event: USBConnectionEvent) => mixed;173type USBConnectionEventListener =174  | {handleEvent: USBConnectionEventHandler, ...}175  | USBConnectionEventHandler;176177type MediaKeySessionType = 'temporary' | 'persistent-license';178type MediaKeyStatus =179  | 'usable'180  | 'expired'181  | 'released'182  | 'output-restricted'183  | 'output-downscaled'184  | 'status-pending'185  | 'internal-error';186type MouseEventTypes =187  | 'contextmenu'188  | 'mousedown'189  | 'mouseenter'190  | 'mouseleave'191  | 'mousemove'192  | 'mouseout'193  | 'mouseover'194  | 'mouseup'195  | 'click'196  | 'dblclick';197type FocusEventTypes = 'blur' | 'focus' | 'focusin' | 'focusout';198type KeyboardEventTypes = 'keydown' | 'keyup' | 'keypress';199type InputEventTypes = 'input' | 'beforeinput';200type TouchEventTypes = 'touchstart' | 'touchmove' | 'touchend' | 'touchcancel';201type WheelEventTypes = 'wheel';202type AbortProgressEventTypes = 'abort';203type ProgressEventTypes =204  | 'abort'205  | 'error'206  | 'load'207  | 'loadend'208  | 'loadstart'209  | 'progress'210  | 'timeout';211type DragEventTypes =212  | 'drag'213  | 'dragend'214  | 'dragenter'215  | 'dragexit'216  | 'dragleave'217  | 'dragover'218  | 'dragstart'219  | 'drop';220type PointerEventTypes =221  | 'pointerover'222  | 'pointerenter'223  | 'pointerdown'224  | 'pointermove'225  | 'pointerup'226  | 'pointercancel'227  | 'pointerout'228  | 'pointerleave'229  | 'gotpointercapture'230  | 'lostpointercapture';231type AnimationEventTypes =232  | 'animationstart'233  | 'animationend'234  | 'animationiteration';235type ClipboardEventTypes = 'clipboardchange' | 'cut' | 'copy' | 'paste';236type TransitionEventTypes =237  | 'transitionrun'238  | 'transitionstart'239  | 'transitionend'240  | 'transitioncancel';241type MessageEventTypes = string;242type BeforeUnloadEventTypes = 'beforeunload';243type StorageEventTypes = 'storage';244type SecurityPolicyViolationEventTypes = 'securitypolicyviolation';245type USBConnectionEventTypes = 'connect' | 'disconnect';246type ToggleEventTypes = 'beforetoggle' | 'toggle';247type EventListenerOptionsOrUseCapture =248  | boolean249  | {250      capture?: boolean,251      once?: boolean,252      passive?: boolean,253      signal?: AbortSignal,254      ...255    };256257declare class EventTarget {258  addEventListener(259    type: MouseEventTypes,260    listener: MouseEventListener,261    optionsOrUseCapture?: EventListenerOptionsOrUseCapture262  ): void;263  addEventListener(264    type: FocusEventTypes,265    listener: FocusEventListener,266    optionsOrUseCapture?: EventListenerOptionsOrUseCapture267  ): void;268  addEventListener(269    type: KeyboardEventTypes,270    listener: KeyboardEventListener,271    optionsOrUseCapture?: EventListenerOptionsOrUseCapture272  ): void;273  addEventListener(274    type: InputEventTypes,275    listener: InputEventListener,276    optionsOrUseCapture?: EventListenerOptionsOrUseCapture277  ): void;278  addEventListener(279    type: TouchEventTypes,280    listener: TouchEventListener,281    optionsOrUseCapture?: EventListenerOptionsOrUseCapture282  ): void;283  addEventListener(284    type: WheelEventTypes,285    listener: WheelEventListener,286    optionsOrUseCapture?: EventListenerOptionsOrUseCapture287  ): void;288  addEventListener(289    type: AbortProgressEventTypes,290    listener: AbortProgressEventListener,291    optionsOrUseCapture?: EventListenerOptionsOrUseCapture292  ): void;293  addEventListener(294    type: ProgressEventTypes,295    listener: ProgressEventListener,296    optionsOrUseCapture?: EventListenerOptionsOrUseCapture297  ): void;298  addEventListener(299    type: DragEventTypes,300    listener: DragEventListener,301    optionsOrUseCapture?: EventListenerOptionsOrUseCapture302  ): void;303  addEventListener(304    type: PointerEventTypes,305    listener: PointerEventListener,306    optionsOrUseCapture?: EventListenerOptionsOrUseCapture307  ): void;308  addEventListener(309    type: AnimationEventTypes,310    listener: AnimationEventListener,311    optionsOrUseCapture?: EventListenerOptionsOrUseCapture312  ): void;313  addEventListener(314    type: ClipboardEventTypes,315    listener: ClipboardEventListener,316    optionsOrUseCapture?: EventListenerOptionsOrUseCapture317  ): void;318  addEventListener(319    type: TransitionEventTypes,320    listener: TransitionEventListener,321    optionsOrUseCapture?: EventListenerOptionsOrUseCapture322  ): void;323  addEventListener(324    type: MessageEventTypes,325    listener: MessageEventListener,326    optionsOrUseCapture?: EventListenerOptionsOrUseCapture327  ): void;328  addEventListener(329    type: BeforeUnloadEventTypes,330    listener: BeforeUnloadEventListener,331    optionsOrUseCapture?: EventListenerOptionsOrUseCapture332  ): void;333  addEventListener(334    type: StorageEventTypes,335    listener: StorageEventListener,336    optionsOrUseCapture?: EventListenerOptionsOrUseCapture337  ): void;338  addEventListener(339    type: SecurityPolicyViolationEventTypes,340    listener: SecurityPolicyViolationEventListener,341    optionsOrUseCapture?: EventListenerOptionsOrUseCapture342  ): void;343  addEventListener(344    type: USBConnectionEventTypes,345    listener: USBConnectionEventListener,346    optionsOrUseCapture?: EventListenerOptionsOrUseCapture347  ): void;348  addEventListener(349    type: string,350    listener: EventListener,351    optionsOrUseCapture?: EventListenerOptionsOrUseCapture352  ): void;353354  removeEventListener(355    type: MouseEventTypes,356    listener: MouseEventListener,357    optionsOrUseCapture?: EventListenerOptionsOrUseCapture358  ): void;359  removeEventListener(360    type: FocusEventTypes,361    listener: FocusEventListener,362    optionsOrUseCapture?: EventListenerOptionsOrUseCapture363  ): void;364  removeEventListener(365    type: KeyboardEventTypes,366    listener: KeyboardEventListener,367    optionsOrUseCapture?: EventListenerOptionsOrUseCapture368  ): void;369  removeEventListener(370    type: InputEventTypes,371    listener: InputEventListener,372    optionsOrUseCapture?: EventListenerOptionsOrUseCapture373  ): void;374  removeEventListener(375    type: TouchEventTypes,376    listener: TouchEventListener,377    optionsOrUseCapture?: EventListenerOptionsOrUseCapture378  ): void;379  removeEventListener(380    type: WheelEventTypes,381    listener: WheelEventListener,382    optionsOrUseCapture?: EventListenerOptionsOrUseCapture383  ): void;384  removeEventListener(385    type: AbortProgressEventTypes,386    listener: AbortProgressEventListener,387    optionsOrUseCapture?: EventListenerOptionsOrUseCapture388  ): void;389  removeEventListener(390    type: ProgressEventTypes,391    listener: ProgressEventListener,392    optionsOrUseCapture?: EventListenerOptionsOrUseCapture393  ): void;394  removeEventListener(395    type: DragEventTypes,396    listener: DragEventListener,397    optionsOrUseCapture?: EventListenerOptionsOrUseCapture398  ): void;399  removeEventListener(400    type: PointerEventTypes,401    listener: PointerEventListener,402    optionsOrUseCapture?: EventListenerOptionsOrUseCapture403  ): void;404  removeEventListener(405    type: AnimationEventTypes,406    listener: AnimationEventListener,407    optionsOrUseCapture?: EventListenerOptionsOrUseCapture408  ): void;409  removeEventListener(410    type: ClipboardEventTypes,411    listener: ClipboardEventListener,412    optionsOrUseCapture?: EventListenerOptionsOrUseCapture413  ): void;414  removeEventListener(415    type: TransitionEventTypes,416    listener: TransitionEventListener,417    optionsOrUseCapture?: EventListenerOptionsOrUseCapture418  ): void;419  removeEventListener(420    type: MessageEventTypes,421    listener: MessageEventListener,422    optionsOrUseCapture?: EventListenerOptionsOrUseCapture423  ): void;424  removeEventListener(425    type: BeforeUnloadEventTypes,426    listener: BeforeUnloadEventListener,427    optionsOrUseCapture?: EventListenerOptionsOrUseCapture428  ): void;429  removeEventListener(430    type: StorageEventTypes,431    listener: StorageEventListener,432    optionsOrUseCapture?: EventListenerOptionsOrUseCapture433  ): void;434  removeEventListener(435    type: SecurityPolicyViolationEventTypes,436    listener: SecurityPolicyViolationEventListener,437    optionsOrUseCapture?: EventListenerOptionsOrUseCapture438  ): void;439  removeEventListener(440    type: USBConnectionEventTypes,441    listener: USBConnectionEventListener,442    optionsOrUseCapture?: EventListenerOptionsOrUseCapture443  ): void;444  removeEventListener(445    type: string,446    listener: EventListener,447    optionsOrUseCapture?: EventListenerOptionsOrUseCapture448  ): void;449450  attachEvent?: (type: MouseEventTypes, listener: MouseEventListener) => void;451  attachEvent?: (type: FocusEventTypes, listener: FocusEventListener) => void;452  attachEvent?: (453    type: KeyboardEventTypes,454    listener: KeyboardEventListener455  ) => void;456  attachEvent?: (type: InputEventTypes, listener: InputEventListener) => void;457  attachEvent?: (type: TouchEventTypes, listener: TouchEventListener) => void;458  attachEvent?: (type: WheelEventTypes, listener: WheelEventListener) => void;459  attachEvent?: (460    type: AbortProgressEventTypes,461    listener: AbortProgressEventListener462  ) => void;463  attachEvent?: (464    type: ProgressEventTypes,465    listener: ProgressEventListener466  ) => void;467  attachEvent?: (type: DragEventTypes, listener: DragEventListener) => void;468  attachEvent?: (469    type: PointerEventTypes,470    listener: PointerEventListener471  ) => void;472  attachEvent?: (473    type: AnimationEventTypes,474    listener: AnimationEventListener475  ) => void;476  attachEvent?: (477    type: ClipboardEventTypes,478    listener: ClipboardEventListener479  ) => void;480  attachEvent?: (481    type: TransitionEventTypes,482    listener: TransitionEventListener483  ) => void;484  attachEvent?: (485    type: MessageEventTypes,486    listener: MessageEventListener487  ) => void;488  attachEvent?: (489    type: BeforeUnloadEventTypes,490    listener: BeforeUnloadEventListener491  ) => void;492  attachEvent?: (493    type: StorageEventTypes,494    listener: StorageEventListener495  ) => void;496  attachEvent?: (497    type: USBConnectionEventTypes,498    listener: USBConnectionEventListener499  ) => void;500  attachEvent?: (type: string, listener: EventListener) => void;501502  detachEvent?: (type: MouseEventTypes, listener: MouseEventListener) => void;503  detachEvent?: (type: FocusEventTypes, listener: FocusEventListener) => void;504  detachEvent?: (505    type: KeyboardEventTypes,506    listener: KeyboardEventListener507  ) => void;508  detachEvent?: (type: InputEventTypes, listener: InputEventListener) => void;509  detachEvent?: (type: TouchEventTypes, listener: TouchEventListener) => void;510  detachEvent?: (type: WheelEventTypes, listener: WheelEventListener) => void;511  detachEvent?: (512    type: AbortProgressEventTypes,513    listener: AbortProgressEventListener514  ) => void;515  detachEvent?: (516    type: ProgressEventTypes,517    listener: ProgressEventListener518  ) => void;519  detachEvent?: (type: DragEventTypes, listener: DragEventListener) => void;520  detachEvent?: (521    type: PointerEventTypes,522    listener: PointerEventListener523  ) => void;524  detachEvent?: (525    type: AnimationEventTypes,526    listener: AnimationEventListener527  ) => void;528  detachEvent?: (529    type: ClipboardEventTypes,530    listener: ClipboardEventListener531  ) => void;532  detachEvent?: (533    type: TransitionEventTypes,534    listener: TransitionEventListener535  ) => void;536  detachEvent?: (537    type: MessageEventTypes,538    listener: MessageEventListener539  ) => void;540  detachEvent?: (541    type: BeforeUnloadEventTypes,542    listener: BeforeUnloadEventListener543  ) => void;544  detachEvent?: (545    type: StorageEventTypes,546    listener: StorageEventListener547  ) => void;548  detachEvent?: (549    type: USBConnectionEventTypes,550    listener: USBConnectionEventListener551  ) => void;552  detachEvent?: (type: string, listener: EventListener) => void;553554  dispatchEvent(evt: Event): boolean;555556  // Deprecated557558  cancelBubble: boolean;559  initEvent(560    eventTypeArg: string,561    canBubbleArg: boolean,562    cancelableArg: boolean563  ): void;564}565566// https://dom.spec.whatwg.org/#dictdef-eventinit567type Event$Init = {568  bubbles?: boolean,569  cancelable?: boolean,570  composed?: boolean,571  /** Non-standard. See `composed` instead. */572  scoped?: boolean,573  ...574};575576// https://dom.spec.whatwg.org/#interface-event577declare class Event {578  constructor(type: string, eventInitDict?: Event$Init): void;579  /**580   * Returns the type of event, e.g. "click", "hashchange", or "submit".581   */582  +type: string;583  /**584   * Returns the object to which event is dispatched (its target).585   */586  +target: EventTarget; // TODO: nullable587  /** @deprecated */588  +srcElement: Element; // TODO: nullable589  /**590   * Returns the object whose event listener's callback is currently being invoked.591   */592  +currentTarget: EventTarget; // TODO: nullable593  /**594   * Returns the invocation target objects of event's path (objects on which595   * listeners will be invoked), except for any nodes in shadow trees of which596   * the shadow root's mode is "closed" that are not reachable from event's597   * currentTarget.598   */599  composedPath(): Array<EventTarget>;600601  +NONE: number;602  +AT_TARGET: number;603  +BUBBLING_PHASE: number;604  +CAPTURING_PHASE: number;605  /**606   * Returns the event's phase, which is one of NONE, CAPTURING_PHASE, AT_TARGET,607   * and BUBBLING_PHASE.608   */609  +eventPhase: number;610611  /**612   * When dispatched in a tree, invoking this method prevents event from reaching613   * any objects other than the current object.614   */615  stopPropagation(): void;616  /**617   * Invoking this method prevents event from reaching any registered event618   * listeners after the current one finishes running and, when dispatched in a619   * tree, also prevents event from reaching any other objects.620   */621  stopImmediatePropagation(): void;622623  /**624   * Returns true or false depending on how event was initialized. True if625   * event goes through its target's ancestors in reverse tree order, and626   * false otherwise.627   */628  +bubbles: boolean;629  /**630   * Returns true or false depending on how event was initialized. Its631   * return value does not always carry meaning, but true can indicate632   * that part of the operation during which event was dispatched, can633   * be canceled by invoking the preventDefault() method.634   */635  +cancelable: boolean;636  // returnValue: boolean; // legacy, and some subclasses still define it as a string!637  /**638   * If invoked when the cancelable attribute value is true, and while639   * executing a listener for the event with passive set to false, signals to640   * the operation that caused event to be dispatched that it needs to be641   * canceled.642   */643  preventDefault(): void;644  /**645   * Returns true if preventDefault() was invoked successfully to indicate646   * cancelation, and false otherwise.647   */648  +defaultPrevented: boolean;649  /**650   * Returns true or false depending on how event was initialized. True if651   * event invokes listeners past a ShadowRoot node that is the root of its652   * target, and false otherwise.653   */654  +composed: boolean;655656  /**657   * Returns true if event was dispatched by the user agent, and false otherwise.658   */659  +isTrusted: boolean;660  /**661   * Returns the event's timestamp as the number of milliseconds measured relative662   * to the time origin.663   */664  +timeStamp: number;665666  /** Non-standard. See Event.prototype.composedPath */667  +deepPath?: () => EventTarget[];668  /** Non-standard. See Event.prototype.composed */669  +scoped: boolean;670671  /**672   * @deprecated673   */674  initEvent(type: string, bubbles: boolean, cancelable: boolean): void;675}676677type CustomEvent$Init = {...Event$Init, detail?: any, ...};678679declare class CustomEvent extends Event {680  constructor(type: string, eventInitDict?: CustomEvent$Init): void;681  detail: any;682683  // deprecated684  initCustomEvent(685    type: string,686    bubbles: boolean,687    cancelable: boolean,688    detail: any689  ): CustomEvent;690}691692type UIEvent$Init = {...Event$Init, detail?: number, view?: any, ...};693694declare class UIEvent extends Event {695  constructor(typeArg: string, uiEventInit?: UIEvent$Init): void;696  detail: number;697  view: any;698}699700declare class CompositionEvent extends UIEvent {701  data: string | null;702  locale: string;703}704705type MouseEvent$MouseEventInit = {706  screenX?: number,707  screenY?: number,708  clientX?: number,709  clientY?: number,710  ctrlKey?: boolean,711  shiftKey?: boolean,712  altKey?: boolean,713  metaKey?: boolean,714  button?: number,715  buttons?: number,716  region?: string | null,717  relatedTarget?: EventTarget | null,718  ...719};720721declare class MouseEvent extends UIEvent {722  constructor(723    typeArg: string,724    mouseEventInit?: MouseEvent$MouseEventInit725  ): void;726  altKey: boolean;727  button: number;728  buttons: number;729  clientX: number;730  clientY: number;731  ctrlKey: boolean;732  metaKey: boolean;733  movementX: number;734  movementY: number;735  offsetX: number;736  offsetY: number;737  pageX: number;738  pageY: number;739  region: string | null;740  relatedTarget: EventTarget | null;741  screenX: number;742  screenY: number;743  shiftKey: boolean;744  x: number;745  y: number;746  getModifierState(keyArg: string): boolean;747}748749declare class FocusEvent extends UIEvent {750  relatedTarget: ?EventTarget;751}752753type WheelEvent$Init = {754  ...MouseEvent$MouseEventInit,755  deltaX?: number,756  deltaY?: number,757  deltaZ?: number,758  deltaMode?: 0x00 | 0x01 | 0x02,759  ...760};761762declare class WheelEvent extends MouseEvent {763  static +DOM_DELTA_PIXEL: 0x00;764  static +DOM_DELTA_LINE: 0x01;765  static +DOM_DELTA_PAGE: 0x02;766767  constructor(type: string, eventInitDict?: WheelEvent$Init): void;768  +deltaX: number;769  +deltaY: number;770  +deltaZ: number;771  +deltaMode: 0x00 | 0x01 | 0x02;772}773774declare class DragEvent extends MouseEvent {775  dataTransfer: ?DataTransfer; // readonly776}777778type PointerEvent$PointerEventInit = MouseEvent$MouseEventInit & {779  pointerId?: number,780  width?: number,781  height?: number,782  pressure?: number,783  tangentialPressure?: number,784  tiltX?: number,785  tiltY?: number,786  twist?: number,787  pointerType?: string,788  isPrimary?: boolean,789  ...790};791792declare class PointerEvent extends MouseEvent {793  constructor(794    typeArg: string,795    pointerEventInit?: PointerEvent$PointerEventInit796  ): void;797  pointerId: number;798  width: number;799  height: number;800  pressure: number;801  tangentialPressure: number;802  tiltX: number;803  tiltY: number;804  twist: number;805  pointerType: string;806  isPrimary: boolean;807}808809declare class ProgressEvent extends Event {810  lengthComputable: boolean;811  loaded: number;812  total: number;813814  // Deprecated815  initProgressEvent(816    typeArg: string,817    canBubbleArg: boolean,818    cancelableArg: boolean,819    lengthComputableArg: boolean,820    loadedArg: number,821    totalArg: number822  ): void;823}824825declare class PromiseRejectionEvent extends Event {826  promise: Promise<any>;827  reason: any;828}829830type PageTransitionEventInit = {831  ...Event$Init,832  persisted: boolean,833  ...834};835836// https://html.spec.whatwg.org/multipage/browsing-the-web.html#the-pagetransitionevent-interface837declare class PageTransitionEvent extends Event {838  constructor(type: string, init?: PageTransitionEventInit): void;839  +persisted: boolean;840}841842// used for websockets and postMessage, for example. See:843// https://www.w3.org/TR/2011/WD-websockets-20110419/844// and845// https://www.w3.org/TR/2008/WD-html5-20080610/comms.html846// and847// https://html.spec.whatwg.org/multipage/comms.html#the-messageevent-interfaces848declare class MessageEvent<Data = mixed> extends Event {849  data: Data;850  origin: string;851  lastEventId: string;852  source: WindowProxy;853}854855// https://w3c.github.io/uievents/#idl-keyboardeventinit856type KeyboardEvent$Init = {857  ...UIEvent$Init,858  /**859   * Initializes the `key` attribute of the KeyboardEvent object to the unicode860   * character string representing the meaning of a key after taking into861   * account all keyboard modifiers (such as shift-state). This value is the862   * final effective value of the key. If the key is not a printable character,863   * then it should be one of the key values defined in [UIEvents-Key](https://www.w3.org/TR/uievents-key/).864   *865   * NOTE: not `null`, this results in `evt.key === 'null'`!866   */867  key?: string | void,868  /**869   * Initializes the `code` attribute of the KeyboardEvent object to the unicode870   * character string representing the key that was pressed, ignoring any871   * keyboard modifications such as keyboard layout. This value should be one872   * of the code values defined in [UIEvents-Code](https://www.w3.org/TR/uievents-code/).873   *874   * NOTE: not `null`, this results in `evt.code === 'null'`!875   */876  code?: string | void,877  /**878   * Initializes the `location` attribute of the KeyboardEvent object to one of879   * the following location numerical constants:880   *881   *   DOM_KEY_LOCATION_STANDARD (numerical value 0)882   *   DOM_KEY_LOCATION_LEFT (numerical value 1)883   *   DOM_KEY_LOCATION_RIGHT (numerical value 2)884   *   DOM_KEY_LOCATION_NUMPAD (numerical value 3)885   */886  location?: number,887  /**888   * Initializes the `ctrlKey` attribute of the KeyboardEvent object to true if889   * the Control key modifier is to be considered active, false otherwise.890   */891  ctrlKey?: boolean,892  /**893   * Initializes the `shiftKey` attribute of the KeyboardEvent object to true if894   * the Shift key modifier is to be considered active, false otherwise.895   */896  shiftKey?: boolean,897  /**898   * Initializes the `altKey` attribute of the KeyboardEvent object to true if899   * the Alt (alternative) (or Option) key modifier is to be considered active,900   * false otherwise.901   */902  altKey?: boolean,903  /**904   * Initializes the `metaKey` attribute of the KeyboardEvent object to true if905   * the Meta key modifier is to be considered active, false otherwise.906   */907  metaKey?: boolean,908  /**909   * Initializes the `repeat` attribute of the KeyboardEvent object. This910   * attribute should be set to true if the the current KeyboardEvent is911   * considered part of a repeating sequence of similar events caused by the912   * long depression of any single key, false otherwise.913   */914  repeat?: boolean,915  /**916   * Initializes the `isComposing` attribute of the KeyboardEvent object. This917   * attribute should be set to true if the event being constructed occurs as918   * part of a composition sequence, false otherwise.919   */920  isComposing?: boolean,921  /**922   * Initializes the `charCode` attribute of the KeyboardEvent to the Unicode923   * code point for the events character.924   */925  charCode?: number,926  /**927   * Initializes the `keyCode` attribute of the KeyboardEvent to the system-928   * and implementation-dependent numerical code signifying the unmodified929   * identifier associated with the key pressed.930   */931  keyCode?: number,932  /** Initializes the `which` attribute */933  which?: number,934  ...935};936937// https://w3c.github.io/uievents/#idl-keyboardevent938declare class KeyboardEvent extends UIEvent {939  constructor(typeArg: string, init?: KeyboardEvent$Init): void;940941  /** `true` if the Alt (alternative) (or "Option") key modifier was active. */942  +altKey: boolean;943  /**944   * Holds a string that identifies the physical key being pressed. The value945   * is not affected by the current keyboard layout or modifier state, so a946   * particular key will always return the same value.947   */948  +code: string;949  /** `true` if the Control (control) key modifier was active. */950  +ctrlKey: boolean;951  /**952   * `true` if the key event occurs as part of a composition session, i.e.,953   * after a `compositionstart` event and before the corresponding954   * `compositionend` event.955   */956  +isComposing: boolean;957  /**958   * Holds a [key attribute value](https://www.w3.org/TR/uievents-key/#key-attribute-value)959   * corresponding to the key pressed. */960  +key: string;961  /** An indication of the logical location of the key on the device. */962  +location: number;963  /** `true` if the meta (Meta) key (or "Command") modifier was active. */964  +metaKey: boolean;965  /** `true` if the key has been pressed in a sustained manner. */966  +repeat: boolean;967  /** `true` if the shift (Shift) key modifier was active. */968  +shiftKey: boolean;969970  /**971   * Queries the state of a modifier using a key value.972   *973   * Returns `true` if it is a modifier key and the modifier is activated,974   * `false` otherwise.975   */976  getModifierState(keyArg?: string): boolean;977978  /**979   * Holds a character value, for keypress events which generate character980   * input. The value is the Unicode reference number (code point) of that981   * character (e.g. event.charCode = event.key.charCodeAt(0) for printable982   * characters). For keydown or keyup events, the value of charCode is 0.983   *984   * @deprecated You should use KeyboardEvent.key instead, if available.985   */986  +charCode: number;987  /**988   * Holds a system- and implementation-dependent numerical code signifying989   * the unmodified identifier associated with the key pressed. Unlike the990   * `key` attribute, the set of possible values are not normatively defined.991   * Typically, these value of the keyCode SHOULD represent the decimal992   * codepoint in ASCII or Windows 1252, but MAY be drawn from a different993   * appropriate character set. Implementations that are unable to identify994   * a key use the key value 0.995   *996   * @deprecated You should use KeyboardEvent.key instead, if available.997   */998  +keyCode: number;999  /**1000   * Holds a system- and implementation-dependent numerical code signifying1001   * the unmodified identifier associated with the key pressed. In most cases,1002   * the value is identical to keyCode.1003   *1004   * @deprecated You should use KeyboardEvent.key instead, if available.1005   */1006  +which: number;1007}10081009type InputEvent$Init = {1010  ...UIEvent$Init,1011  inputType?: string,1012  data?: string,1013  dataTransfer?: DataTransfer,1014  isComposing?: boolean,1015  ranges?: Array<any>, // TODO: StaticRange1016  ...1017};10181019declare class InputEvent extends UIEvent {1020  constructor(typeArg: string, inputEventInit: InputEvent$Init): void;1021  +data: string | null;1022  +dataTransfer: DataTransfer | null;1023  +inputType: string;1024  +isComposing: boolean;1025  getTargetRanges(): Array<any>; // TODO: StaticRange1026}10271028declare class AnimationEvent extends Event {1029  animationName: string;1030  elapsedTime: number;1031  pseudoElement: string;10321033  // deprecated10341035  initAnimationEvent: (1036    type: 'animationstart' | 'animationend' | 'animationiteration',1037    canBubble: boolean,1038    cancelable: boolean,1039    animationName: string,1040    elapsedTime: number1041  ) => void;1042}10431044// https://www.w3.org/TR/touch-events/#idl-def-Touch1045declare class Touch {1046  clientX: number;1047  clientY: number;1048  identifier: number;1049  pageX: number;1050  pageY: number;1051  screenX: number;1052  screenY: number;1053  target: EventTarget;1054}10551056// https://www.w3.org/TR/touch-events/#idl-def-TouchList1057// TouchList#item(index) will return null if n > #length. Should #item's1058// return type just been Touch?1059declare class TouchList {1060  @@iterator(): Iterator<Touch>;1061  length: number;1062  item(index: number): null | Touch;1063  [index: number]: Touch;1064}10651066// https://www.w3.org/TR/touch-events/#touchevent-interface1067declare class TouchEvent extends UIEvent {1068  altKey: boolean;1069  changedTouches: TouchList;1070  ctrlKey: boolean;1071  metaKey: boolean;1072  shiftKey: boolean;1073  targetTouches: TouchList;1074  touches: TouchList;1075}10761077// https://www.w3.org/TR/clipboard-apis/#typedefdef-clipboarditemdata1078// Raw string | Blob are allowed per https://webidl.spec.whatwg.org/#es-promise1079type ClipboardItemData = string | Blob | Promise<string | Blob>;10801081type PresentationStyle = 'attachment' | 'inline' | 'unspecified';10821083type ClipboardItemOptions = {1084  presentationStyle?: PresentationStyle,1085  ...1086};10871088declare class ClipboardItem {1089  +types: $ReadOnlyArray<string>;1090  getType(type: string): Promise<Blob>;1091  constructor(1092    items: {[type: string]: ClipboardItemData},1093    options?: ClipboardItemOptions1094  ): void;1095}10961097// https://w3c.github.io/clipboard-apis/ as of 15 May 20181098type ClipboardEvent$Init = {1099  ...Event$Init,1100  clipboardData: DataTransfer | null,1101  ...1102};11031104declare class ClipboardEvent extends Event {1105  constructor(type: ClipboardEventTypes, eventInit?: ClipboardEvent$Init): void;1106  +clipboardData: ?DataTransfer; // readonly1107}11081109// https://www.w3.org/TR/2017/WD-css-transitions-1-20171130/#interface-transitionevent1110type TransitionEvent$Init = {1111  ...Event$Init,1112  propertyName: string,1113  elapsedTime: number,1114  pseudoElement: string,1115  ...1116};11171118declare class TransitionEvent extends Event {1119  constructor(1120    type: TransitionEventTypes,1121    eventInit?: TransitionEvent$Init1122  ): void;11231124  +propertyName: string; // readonly1125  +elapsedTime: number; // readonly1126  +pseudoElement: string; // readonly1127}11281129declare class SecurityPolicyViolationEvent extends Event {1130  +documentURI: string;1131  +referrer: string;1132  +blockedURI: string;1133  +effectiveDirective: string;1134  +violatedDirective: string;1135  +originalPolicy: string;1136  +sourceFile: string;1137  +sample: string;1138  +disposition: 'enforce' | 'report';1139  +statusCode: number;1140  +lineNumber: number;1141  +columnNumber: number;1142}11431144// https://developer.mozilla.org/en-US/docs/Web/API/USBConnectionEvent1145declare class USBConnectionEvent extends Event {1146  device: USBDevice;1147}11481149// TODO: *Event11501151declare class AbortController {1152  constructor(): void;1153  +signal: AbortSignal;1154  abort(reason?: any): void;1155}11561157declare class AbortSignal extends EventTarget {1158  +aborted: boolean;1159  +reason: any;1160  abort(reason?: any): AbortSignal;1161  onabort: (event: Event) => mixed;1162  throwIfAborted(): void;1163  timeout(time: number): AbortSignal;1164}11651166declare class Node extends EventTarget {1167  baseURI: ?string;1168  childNodes: NodeList<Node>;1169  firstChild: ?Node;1170  +isConnected: boolean;1171  lastChild: ?Node;1172  nextSibling: ?Node;1173  nodeName: string;1174  nodeType: number;1175  nodeValue: string;1176  ownerDocument: Document;1177  parentElement: ?Element;1178  parentNode: ?Node;1179  previousSibling: ?Node;1180  rootNode: Node;1181  textContent: string;1182  appendChild<T: Node>(newChild: T): T;1183  cloneNode(deep?: boolean): this;1184  compareDocumentPosition(other: Node): number;1185  contains(other: ?Node): boolean;1186  getRootNode(options?: {composed: boolean, ...}): Node;1187  hasChildNodes(): boolean;1188  insertBefore<T: Node>(newChild: T, refChild?: ?Node): T;1189  isDefaultNamespace(namespaceURI: string): boolean;1190  isEqualNode(arg: Node): boolean;1191  isSameNode(other: Node): boolean;1192  lookupNamespaceURI(prefix: string): string;1193  lookupPrefix(namespaceURI: string): string;1194  normalize(): void;1195  removeChild<T: Node>(oldChild: T): T;1196  replaceChild<T: Node>(newChild: Node, oldChild: T): T;1197  replaceChildren(...nodes: $ReadOnlyArray<Node | string>): void;1198  static ATTRIBUTE_NODE: number;1199  static CDATA_SECTION_NODE: number;1200  static COMMENT_NODE: number;1201  static DOCUMENT_FRAGMENT_NODE: number;1202  static DOCUMENT_NODE: number;1203  static DOCUMENT_POSITION_CONTAINED_BY: number;1204  static DOCUMENT_POSITION_CONTAINS: number;1205  static DOCUMENT_POSITION_DISCONNECTED: number;1206  static DOCUMENT_POSITION_FOLLOWING: number;1207  static DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;1208  static DOCUMENT_POSITION_PRECEDING: number;1209  static DOCUMENT_TYPE_NODE: number;1210  static ELEMENT_NODE: number;1211  static ENTITY_NODE: number;1212  static ENTITY_REFERENCE_NODE: number;1213  static NOTATION_NODE: number;1214  static PROCESSING_INSTRUCTION_NODE: number;1215  static TEXT_NODE: number;12161217  // Non-standard1218  innerText?: string;1219  outerText?: string;1220}12211222declare class NodeList<T> {1223  @@iterator(): Iterator<T>;1224  length: number;1225  item(index: number): T;1226  [index: number]: T;12271228  forEach<This>(1229    callbackfn: (this: This, value: T, index: number, list: NodeList<T>) => any,1230    thisArg: This1231  ): void;1232  entries(): Iterator<[number, T]>;1233  keys(): Iterator<number>;1234  values(): Iterator<T>;1235}12361237declare class NamedNodeMap {1238  @@iterator(): Iterator<Attr>;1239  length: number;1240  removeNamedItemNS(namespaceURI: string, localName: string): Attr;1241  item(index: number): Attr;1242  [index: number | string]: Attr;1243  removeNamedItem(name: string): Attr;1244  getNamedItem(name: string): Attr;1245  setNamedItem(arg: Attr): Attr;1246  getNamedItemNS(namespaceURI: string, localName: string): Attr;1247  setNamedItemNS(arg: Attr): Attr;1248}12491250declare class Attr extends Node {1251  isId: boolean;1252  specified: boolean;1253  ownerElement: Element | null;1254  value: string;1255  name: string;1256  namespaceURI: string | null;1257  prefix: string | null;1258  localName: string;1259}12601261declare class HTMLCollection<+Elem: Element> {1262  @@iterator(): Iterator<Elem>;1263  length: number;1264  item(nameOrIndex?: any, optionalIndex?: any): Elem | null;1265  namedItem(name: string): Elem | null;1266  // $FlowFixMe[incompatible-variance]1267  [index: number | string]: Elem;1268}12691270// from https://www.w3.org/TR/custom-elements/#extensions-to-document-interface-to-register1271// See also https://github.com/w3c/webcomponents/1272type ElementRegistrationOptions = {1273  +prototype?: {1274    // from https://www.w3.org/TR/custom-elements/#types-of-callbacks1275    // See also https://github.com/w3c/webcomponents/1276    +createdCallback?: () => mixed,1277    +attachedCallback?: () => mixed,1278    +detachedCallback?: () => mixed,1279    +attributeChangedCallback?: ((1280      // attribute is set1281      attributeLocalName: string,1282      oldAttributeValue: null,1283      newAttributeValue: string,1284      attributeNamespace: string1285    ) => mixed) &1286      // attribute is changed1287      ((1288        attributeLocalName: string,1289        oldAttributeValue: string,1290        newAttributeValue: string,1291        attributeNamespace: string1292      ) => mixed) &1293      // attribute is removed1294      ((1295        attributeLocalName: string,1296        oldAttributeValue: string,1297        newAttributeValue: null,1298        attributeNamespace: string1299      ) => mixed),1300    ...1301  },1302  +extends?: string,1303  ...1304};13051306type ElementCreationOptions = {is: string, ...};13071308declare class MutationRecord {1309  type: 'attributes' | 'characterData' | 'childList';1310  target: Node;1311  addedNodes: NodeList<Node>;1312  removedNodes: NodeList<Node>;1313  previousSibling: ?Node;1314  nextSibling: ?Node;1315  attributeName: ?string;1316  attributeNamespace: ?string;1317  oldValue: ?string;1318}13191320type MutationObserverInitRequired =1321  | {childList: true, ...}1322  | {attributes: true, ...}1323  | {characterData: true, ...};13241325declare type MutationObserverInit = MutationObserverInitRequired & {1326  subtree?: boolean,1327  attributeOldValue?: boolean,1328  characterDataOldValue?: boolean,1329  attributeFilter?: Array<string>,1330  ...1331};13321333declare class MutationObserver {1334  constructor(1335    callback: (arr: Array<MutationRecord>, observer: MutationObserver) => mixed1336  ): void;1337  observe(target: Node, options: MutationObserverInit): void;1338  takeRecords(): Array<MutationRecord>;1339  disconnect(): void;1340}13411342declare class Document extends Node {1343  +timeline: DocumentTimeline;1344  getAnimations(): Array<Animation>;1345  +URL: string;1346  adoptNode<T: Node>(source: T): T;1347  anchors: HTMLCollection<HTMLAnchorElement>;1348  applets: HTMLCollection<HTMLAppletElement>;1349  body: HTMLBodyElement | null;1350  +characterSet: string;1351  /**1352   * Legacy alias of `characterSet`1353   * @deprecated1354   */1355  +charset: string;1356  close(): void;1357  +contentType: string;1358  cookie: string;1359  createAttribute(name: string): Attr;1360  createAttributeNS(namespaceURI: string | null, qualifiedName: string): Attr;1361  createCDATASection(data: string): Text;1362  createComment(data: string): Comment;1363  createDocumentFragment(): DocumentFragment;1364  createElement<TName: $Keys<HTMLElementTagNameMap>>(1365    localName: TName,1366    options?: string | ElementCreationOptions1367  ): HTMLElementTagNameMap[TName];1368  createElementNS<TName: $Keys<HTMLElementTagNameMap>>(1369    namespaceURI: 'http://www.w3.org/1999/xhtml',1370    qualifiedName: TName,1371    options?: string | ElementCreationOptions1372  ): HTMLElementTagNameMap[TName];1373  createElementNS(1374    namespaceURI: string | null,1375    qualifiedName: string,1376    options?: string | ElementCreationOptions1377  ): Element;1378  createTextNode(data: string): Text;1379  currentScript: HTMLScriptElement | null;1380  dir: 'rtl' | 'ltr';1381  +doctype: DocumentType | null;1382  +documentElement: HTMLElement | null;1383  documentMode: number;1384  +documentURI: string;1385  domain: string | null;1386  embeds: HTMLCollection<HTMLEmbedElement>;1387  exitFullscreen(): Promise<void>;1388  queryCommandSupported(cmdID: string): boolean;1389  execCommand(cmdID: string, showUI?: boolean, value?: any): boolean;1390  forms: HTMLCollection<HTMLFormElement>;1391  fullscreenElement: Element | null;1392  fullscreenEnabled: boolean;1393  getElementsByClassName(classNames: string): HTMLCollection<HTMLElement>;1394  getElementsByName(elementName: string): HTMLCollection<HTMLElement>;1395  getElementsByTagName<TName: $Keys<HTMLElementTagNameMap>>(1396    qualifiedName: TName1397  ): HTMLCollection<HTMLElementTagNameMap[TName]>;1398  getElementsByTagNameNS<TName: $Keys<HTMLElementTagNameMap>>(1399    namespaceURI: 'http://www.w3.org/1999/xhtml',1400    qualifiedName: TName1401  ): HTMLCollection<HTMLElementTagNameMap[TName]>;1402  getElementsByTagNameNS(1403    namespaceURI: string | null,1404    qualifiedName: string1405  ): HTMLCollection<Element>;1406  head: HTMLHeadElement | null;1407  images: HTMLCollection<HTMLImageElement>;1408  +implementation: DOMImplementation;1409  importNode<T: Node>(importedNode: T, deep: boolean): T;1410  /**1411   * Legacy alias of `characterSet`1412   * @deprecated1413   */1414  +inputEncoding: string;1415  lastModified: string;1416  links: HTMLCollection<HTMLLinkElement>;1417  media: string;1418  open(url?: string, name?: string, features?: string, replace?: boolean): any;1419  /** @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Document/prerendering} */1420  prerendering: boolean;1421  readyState: string;1422  referrer: string;1423  scripts: HTMLCollection<HTMLScriptElement>;1424  scrollingElement: HTMLElement | null;1425  title: string;1426  visibilityState: 'visible' | 'hidden' | 'prerender' | 'unloaded';1427  write(...content: Array<string | TrustedHTML>): void;1428  writeln(...content: Array<string | TrustedHTML>): void;1429  xmlEncoding: string;1430  xmlStandalone: boolean;1431  xmlVersion: string;14321433  registerElement(type: string, options?: ElementRegistrationOptions): any;1434  getSelection(): Selection | null;14351436  // 6.4.6 Focus management APIs1437  activeElement: HTMLElement | null;1438  hasFocus(): boolean;14391440  // extension1441  location: Location;1442  createEvent(eventInterface: 'CustomEvent'): CustomEvent;1443  createEvent(eventInterface: string): Event;1444  createRange(): Range;1445  elementFromPoint(x: number, y: number): HTMLElement | null;1446  elementsFromPoint(x: number, y: number): Array<HTMLElement>;1447  defaultView: any;1448  +compatMode: 'BackCompat' | 'CSS1Compat';1449  hidden: boolean;14501451  // Pointer Lock specification1452  exitPointerLock(): void;1453  pointerLockElement: Element | null;14541455  // from ParentNode interface1456  childElementCount: number;1457  children: HTMLCollection<HTMLElement>;1458  firstElementChild: ?Element;1459  lastElementChild: ?Element;1460  append(...nodes: Array<string | Node>): void;1461  prepend(...nodes: Array<string | Node>): void;14621463  querySelector<TSelector: $Keys<HTMLElementTagNameMap>>(1464    selector: TSelector1465  ): HTMLElementTagNameMap[TSelector] | null;1466  querySelectorAll<TSelector: $Keys<HTMLElementTagNameMap>>(1467    selector: TSelector1468  ): NodeList<HTMLElementTagNameMap[TSelector]>;1469  // Interface DocumentTraversal1470  // http://www.w3.org/TR/2000/REC-DOM-Level-2-Traversal-Range-20001113/traversal.html#Traversal-Document14711472  // Not all combinations of RootNodeT and whatToShow are logically possible.1473  // The bitmasks NodeFilter.SHOW_CDATA_SECTION,1474  // NodeFilter.SHOW_ENTITY_REFERENCE, NodeFilter.SHOW_ENTITY, and1475  // NodeFilter.SHOW_NOTATION are deprecated and do not correspond to types1476  // that Flow knows about.14771478  // NodeFilter.SHOW_ATTRIBUTE is also deprecated, but corresponds to the1479  // type Attr. While there is no reason to prefer it to Node.attributes,1480  // it does have meaning and can be typed: When (whatToShow &1481  // NodeFilter.SHOW_ATTRIBUTE === 1), RootNodeT must be Attr, and when1482  // RootNodeT is Attr, bitmasks other than NodeFilter.SHOW_ATTRIBUTE are1483  // meaningless.1484  createNodeIterator<RootNodeT: Attr>(1485    root: RootNodeT,1486    whatToShow: 2,1487    filter?: NodeFilterInterface1488  ): NodeIterator<RootNodeT, Attr>;1489  createTreeWalker<RootNodeT: Attr>(1490    root: RootNodeT,1491    whatToShow: 2,1492    filter?: NodeFilterInterface,1493    entityReferenceExpansion?: boolean1494  ): TreeWalker<RootNodeT, Attr>;14951496  // NodeFilter.SHOW_PROCESSING_INSTRUCTION is not implemented because Flow1497  // does not currently define a ProcessingInstruction class.14981499  // When (whatToShow & NodeFilter.SHOW_DOCUMENT === 1 || whatToShow &1500  // NodeFilter.SHOW_DOCUMENT_TYPE === 1), RootNodeT must be Document.1501  createNodeIterator<RootNodeT: Document>(1502    root: RootNodeT,1503    whatToShow: 256,1504    filter?: NodeFilterInterface1505  ): NodeIterator<RootNodeT, Document>;1506  createNodeIterator<RootNodeT: Document>(1507    root: RootNodeT,1508    whatToShow: 257,1509    filter?: NodeFilterInterface1510  ): NodeIterator<RootNodeT, Document | Element>;1511  createNodeIterator<RootNodeT: Document>(1512    root: RootNodeT,1513    whatToShow: 260,1514    filter?: NodeFilterInterface1515  ): NodeIterator<RootNodeT, Document | Text>;1516  createNodeIterator<RootNodeT: Document>(1517    root: RootNodeT,1518    whatToShow: 261,1519    filter?: NodeFilterInterface1520  ): NodeIterator<RootNodeT, Document | Element | Text>;1521  createNodeIterator<RootNodeT: Document>(1522    root: RootNodeT,1523    whatToShow: 384,1524    filter?: NodeFilterInterface1525  ): NodeIterator<RootNodeT, Document | Comment>;1526  createNodeIterator<RootNodeT: Document>(1527    root: RootNodeT,1528    whatToShow: 385,1529    filter?: NodeFilterInterface1530  ): NodeIterator<RootNodeT, Document | Element | Comment>;1531  createNodeIterator<RootNodeT: Document>(1532    root: RootNodeT,1533    whatToShow: 388,1534    filter?: NodeFilterInterface1535  ): NodeIterator<RootNodeT, Document | Text | Comment>;1536  createNodeIterator<RootNodeT: Document>(1537    root: RootNodeT,1538    whatToShow: 389,1539    filter?: NodeFilterInterface1540  ): NodeIterator<RootNodeT, Document | Element | Text | Comment>;1541  createNodeIterator<RootNodeT: Document>(1542    root: RootNodeT,1543    whatToShow: 512,1544    filter?: NodeFilterInterface1545  ): NodeIterator<RootNodeT, DocumentType>;1546  createNodeIterator<RootNodeT: Document>(1547    root: RootNodeT,1548    whatToShow: 513,1549    filter?: NodeFilterInterface1550  ): NodeIterator<RootNodeT, DocumentType | Element>;1551  createNodeIterator<RootNodeT: Document>(1552    root: RootNodeT,1553    whatToShow: 516,1554    filter?: NodeFilterInterface1555  ): NodeIterator<RootNodeT, DocumentType | Text>;1556  createNodeIterator<RootNodeT: Document>(1557    root: RootNodeT,1558    whatToShow: 517,1559    filter?: NodeFilterInterface1560  ): NodeIterator<RootNodeT, DocumentType | Element | Text>;1561  createNodeIterator<RootNodeT: Document>(1562    root: RootNodeT,1563    whatToShow: 640,1564    filter?: NodeFilterInterface1565  ): NodeIterator<RootNodeT, DocumentType | Comment>;1566  createNodeIterator<RootNodeT: Document>(1567    root: RootNodeT,1568    whatToShow: 641,1569    filter?: NodeFilterInterface1570  ): NodeIterator<RootNodeT, DocumentType | Element | Comment>;1571  createNodeIterator<RootNodeT: Document>(1572    root: RootNodeT,1573    whatToShow: 644,1574    filter?: NodeFilterInterface1575  ): NodeIterator<RootNodeT, DocumentType | Text | Comment>;1576  createNodeIterator<RootNodeT: Document>(1577    root: RootNodeT,1578    whatToShow: 645,1579    filter?: NodeFilterInterface1580  ): NodeIterator<RootNodeT, DocumentType | Element | Text | Comment>;1581  createNodeIterator<RootNodeT: Document>(1582    root: RootNodeT,1583    whatToShow: 768,1584    filter?: NodeFilterInterface1585  ): NodeIterator<RootNodeT, DocumentType | Document>;1586  createNodeIterator<RootNodeT: Document>(1587    root: RootNodeT,1588    whatToShow: 769,1589    filter?: NodeFilterInterface1590  ): NodeIterator<RootNodeT, DocumentType | Document | Element>;1591  createNodeIterator<RootNodeT: Document>(1592    root: RootNodeT,1593    whatToShow: 772,1594    filter?: NodeFilterInterface1595  ): NodeIterator<RootNodeT, DocumentType | Document | Text>;1596  createNodeIterator<RootNodeT: Document>(1597    root: RootNodeT,1598    whatToShow: 773,1599    filter?: NodeFilterInterface1600  ): NodeIterator<RootNodeT, DocumentType | Document | Element | Text>;1601  createNodeIterator<RootNodeT: Document>(1602    root: RootNodeT,1603    whatToShow: 896,1604    filter?: NodeFilterInterface1605  ): NodeIterator<RootNodeT, DocumentType | Document | Comment>;1606  createNodeIterator<RootNodeT: Document>(1607    root: RootNodeT,1608    whatToShow: 897,1609    filter?: NodeFilterInterface1610  ): NodeIterator<RootNodeT, DocumentType | Document | Element | Comment>;1611  createNodeIterator<RootNodeT: Document>(1612    root: RootNodeT,1613    whatToShow: 900,1614    filter?: NodeFilterInterface1615  ): NodeIterator<RootNodeT, DocumentType | Document | Text | Comment>;1616  createNodeIterator<RootNodeT: Document>(1617    root: RootNodeT,1618    whatToShow: 901,1619    filter?: NodeFilterInterface1620  ): NodeIterator<1621    RootNodeT,1622    DocumentType | Document | Element | Text | Comment,1623  >;1624  createTreeWalker<RootNodeT: Document>(1625    root: RootNodeT,1626    whatToShow: 256,1627    filter?: NodeFilterInterface,1628    entityReferenceExpansion?: boolean1629  ): TreeWalker<RootNodeT, Document>;1630  createTreeWalker<RootNodeT: Document>(1631    root: RootNodeT,1632    whatToShow: 257,1633    filter?: NodeFilterInterface,1634    entityReferenceExpansion?: boolean1635  ): TreeWalker<RootNodeT, Document | Element>;1636  createTreeWalker<RootNodeT: Document>(1637    root: RootNodeT,1638    whatToShow: 260,1639    filter?: NodeFilterInterface,1640    entityReferenceExpansion?: boolean1641  ): TreeWalker<RootNodeT, Document | Text>;1642  createTreeWalker<RootNodeT: Document>(1643    root: RootNodeT,1644    whatToShow: 261,1645    filter?: NodeFilterInterface,1646    entityReferenceExpansion?: boolean1647  ): TreeWalker<RootNodeT, Document | Element | Text>;1648  createTreeWalker<RootNodeT: Document>(1649    root: RootNodeT,1650    whatToShow: 384,1651    filter?: NodeFilterInterface,1652    entityReferenceExpansion?: boolean1653  ): TreeWalker<RootNodeT, Document | Comment>;1654  createTreeWalker<RootNodeT: Document>(1655    root: RootNodeT,1656    whatToShow: 385,1657    filter?: NodeFilterInterface,1658    entityReferenceExpansion?: boolean1659  ): TreeWalker<RootNodeT, Document | Element | Comment>;1660  createTreeWalker<RootNodeT: Document>(1661    root: RootNodeT,1662    whatToShow: 388,1663    filter?: NodeFilterInterface,1664    entityReferenceExpansion?: boolean1665  ): TreeWalker<RootNodeT, Document | Text | Comment>;1666  createTreeWalker<RootNodeT: Document>(1667    root: RootNodeT,1668    whatToShow: 389,1669    filter?: NodeFilterInterface,1670    entityReferenceExpansion?: boolean1671  ): TreeWalker<RootNodeT, Document | Element | Text | Comment>;1672  createTreeWalker<RootNodeT: Document>(1673    root: RootNodeT,1674    whatToShow: 512,1675    filter?: NodeFilterInterface,1676    entityReferenceExpansion?: boolean1677  ): TreeWalker<RootNodeT, DocumentType>;1678  createTreeWalker<RootNodeT: Document>(1679    root: RootNodeT,1680    whatToShow: 513,1681    filter?: NodeFilterInterface,1682    entityReferenceExpansion?: boolean1683  ): TreeWalker<RootNodeT, DocumentType | Element>;1684  createTreeWalker<RootNodeT: Document>(1685    root: RootNodeT,1686    whatToShow: 516,1687    filter?: NodeFilterInterface,1688    entityReferenceExpansion?: boolean1689  ): TreeWalker<RootNodeT, DocumentType | Text>;1690  createTreeWalker<RootNodeT: Document>(1691    root: RootNodeT,1692    whatToShow: 517,1693    filter?: NodeFilterInterface,1694    entityReferenceExpansion?: boolean1695  ): TreeWalker<RootNodeT, DocumentType | Element | Text>;1696  createTreeWalker<RootNodeT: Document>(1697    root: RootNodeT,1698    whatToShow: 640,1699    filter?: NodeFilterInterface,1700    entityReferenceExpansion?: boolean1701  ): TreeWalker<RootNodeT, DocumentType | Comment>;1702  createTreeWalker<RootNodeT: Document>(1703    root: RootNodeT,1704    whatToShow: 641,1705    filter?: NodeFilterInterface,1706    entityReferenceExpansion?: boolean1707  ): TreeWalker<RootNodeT, DocumentType | Element | Comment>;1708  createTreeWalker<RootNodeT: Document>(1709    root: RootNodeT,1710    whatToShow: 644,1711    filter?: NodeFilterInterface,1712    entityReferenceExpansion?: boolean1713  ): TreeWalker<RootNodeT, DocumentType | Text | Comment>;1714  createTreeWalker<RootNodeT: Document>(1715    root: RootNodeT,1716    whatToShow: 645,1717    filter?: NodeFilterInterface,1718    entityReferenceExpansion?: boolean1719  ): TreeWalker<RootNodeT, DocumentType | Element | Text | Comment>;1720  createTreeWalker<RootNodeT: Document>(1721    root: RootNodeT,1722    whatToShow: 768,1723    filter?: NodeFilterInterface,1724    entityReferenceExpansion?: boolean1725  ): TreeWalker<RootNodeT, DocumentType | Document>;1726  createTreeWalker<RootNodeT: Document>(1727    root: RootNodeT,1728    whatToShow: 769,1729    filter?: NodeFilterInterface,1730    entityReferenceExpansion?: boolean1731  ): TreeWalker<RootNodeT, DocumentType | Document | Element>;1732  createTreeWalker<RootNodeT: Document>(1733    root: RootNodeT,1734    whatToShow: 772,1735    filter?: NodeFilterInterface,1736    entityReferenceExpansion?: boolean1737  ): TreeWalker<RootNodeT, DocumentType | Document | Text>;1738  createTreeWalker<RootNodeT: Document>(1739    root: RootNodeT,1740    whatToShow: 773,1741    filter?: NodeFilterInterface,1742    entityReferenceExpansion?: boolean1743  ): TreeWalker<RootNodeT, DocumentType | Document | Element | Text>;1744  createTreeWalker<RootNodeT: Document>(1745    root: RootNodeT,1746    whatToShow: 896,1747    filter?: NodeFilterInterface,1748    entityReferenceExpansion?: boolean1749  ): TreeWalker<RootNodeT, DocumentType | Document | Comment>;1750  createTreeWalker<RootNodeT: Document>(1751    root: RootNodeT,1752    whatToShow: 897,1753    filter?: NodeFilterInterface,1754    entityReferenceExpansion?: boolean1755  ): TreeWalker<RootNodeT, DocumentType | Document | Element | Comment>;1756  createTreeWalker<RootNodeT: Document>(1757    root: RootNodeT,1758    whatToShow: 900,1759    filter?: NodeFilterInterface,1760    entityReferenceExpansion?: boolean1761  ): TreeWalker<RootNodeT, DocumentType | Document | Text | Comment>;1762  createTreeWalker<RootNodeT: Document>(1763    root: RootNodeT,1764    whatToShow: 901,1765    filter?: NodeFilterInterface,1766    entityReferenceExpansion?: boolean1767  ): TreeWalker<RootNodeT, DocumentType | Document | Element | Text | Comment>;17681769  // When (whatToShow & NodeFilter.SHOW_DOCUMENT_FRAGMENT === 1), RootNodeT1770  // must be a DocumentFragment.1771  createNodeIterator<RootNodeT: DocumentFragment>(1772    root: RootNodeT,1773    whatToShow: 1024,1774    filter?: NodeFilterInterface1775  ): NodeIterator<RootNodeT, DocumentFragment>;1776  createNodeIterator<RootNodeT: DocumentFragment>(1777    root: RootNodeT,1778    whatToShow: 1025,1779    filter?: NodeFilterInterface1780  ): NodeIterator<RootNodeT, DocumentFragment | Element>;1781  createNodeIterator<RootNodeT: DocumentFragment>(1782    root: RootNodeT,1783    whatToShow: 1028,1784    filter?: NodeFilterInterface1785  ): NodeIterator<RootNodeT, DocumentFragment | Text>;1786  createNodeIterator<RootNodeT: DocumentFragment>(1787    root: RootNodeT,1788    whatToShow: 1029,1789    filter?: NodeFilterInterface1790  ): NodeIterator<RootNodeT, DocumentFragment | Element | Text>;1791  createNodeIterator<RootNodeT: DocumentFragment>(1792    root: RootNodeT,1793    whatToShow: 1152,1794    filter?: NodeFilterInterface1795  ): NodeIterator<RootNodeT, DocumentFragment | Comment>;1796  createNodeIterator<RootNodeT: DocumentFragment>(1797    root: RootNodeT,1798    whatToShow: 1153,1799    filter?: NodeFilterInterface1800  ): NodeIterator<RootNodeT, DocumentFragment | Element | Comment>;1801  createNodeIterator<RootNodeT: DocumentFragment>(1802    root: RootNodeT,1803    whatToShow: 1156,1804    filter?: NodeFilterInterface1805  ): NodeIterator<RootNodeT, DocumentFragment | Text | Comment>;1806  createNodeIterator<RootNodeT: DocumentFragment>(1807    root: RootNodeT,1808    whatToShow: 1157,1809    filter?: NodeFilterInterface1810  ): NodeIterator<RootNodeT, DocumentFragment | Element | Text | Comment>;1811  createTreeWalker<RootNodeT: DocumentFragment>(1812    root: RootNodeT,1813    whatToShow: 1024,1814    filter?: NodeFilterInterface,1815    entityReferenceExpansion?: boolean1816  ): TreeWalker<RootNodeT, DocumentFragment>;1817  createTreeWalker<RootNodeT: DocumentFragment>(1818    root: RootNodeT,1819    whatToShow: 1025,1820    filter?: NodeFilterInterface,1821    entityReferenceExpansion?: boolean1822  ): TreeWalker<RootNodeT, DocumentFragment | Element>;1823  createTreeWalker<RootNodeT: DocumentFragment>(1824    root: RootNodeT,1825    whatToShow: 1028,1826    filter?: NodeFilterInterface,1827    entityReferenceExpansion?: boolean1828  ): TreeWalker<RootNodeT, DocumentFragment | Text>;1829  createTreeWalker<RootNodeT: DocumentFragment>(1830    root: RootNodeT,1831    whatToShow: 1029,1832    filter?: NodeFilterInterface,1833    entityReferenceExpansion?: boolean1834  ): TreeWalker<RootNodeT, DocumentFragment | Element | Text>;1835  createTreeWalker<RootNodeT: DocumentFragment>(1836    root: RootNodeT,1837    whatToShow: 1152,1838    filter?: NodeFilterInterface,1839    entityReferenceExpansion?: boolean1840  ): TreeWalker<RootNodeT, DocumentFragment | Comment>;1841  createTreeWalker<RootNodeT: DocumentFragment>(1842    root: RootNodeT,1843    whatToShow: 1153,1844    filter?: NodeFilterInterface,1845    entityReferenceExpansion?: boolean1846  ): TreeWalker<RootNodeT, DocumentFragment | Element | Comment>;1847  createTreeWalker<RootNodeT: DocumentFragment>(1848    root: RootNodeT,1849    whatToShow: 1156,1850    filter?: NodeFilterInterface,1851    entityReferenceExpansion?: boolean1852  ): TreeWalker<RootNodeT, DocumentFragment | Text | Comment>;1853  createTreeWalker<RootNodeT: DocumentFragment>(1854    root: RootNodeT,1855    whatToShow: 1157,1856    filter?: NodeFilterInterface,1857    entityReferenceExpansion?: boolean1858  ): TreeWalker<RootNodeT, DocumentFragment | Element | Text | Comment>;18591860  // In the general case, RootNodeT may be any Node and whatToShow may be1861  // NodeFilter.SHOW_ALL or any combination of NodeFilter.SHOW_ELEMENT,1862  // NodeFilter.SHOW_TEXT and/or NodeFilter.SHOW_COMMENT1863  createNodeIterator<RootNodeT: Node>(1864    root: RootNodeT,1865    whatToShow: 1,1866    filter?: NodeFilterInterface1867  ): NodeIterator<RootNodeT, Element>;1868  createNodeIterator<RootNodeT: Node>(1869    root: RootNodeT,1870    whatToShow: 4,1871    filter?: NodeFilterInterface1872  ): NodeIterator<RootNodeT, Text>;1873  createNodeIterator<RootNodeT: Node>(1874    root: RootNodeT,1875    whatToShow: 5,1876    filter?: NodeFilterInterface1877  ): NodeIterator<RootNodeT, Element | Text>;1878  createNodeIterator<RootNodeT: Node>(1879    root: RootNodeT,1880    whatToShow: 128,1881    filter?: NodeFilterInterface1882  ): NodeIterator<RootNodeT, Comment>;1883  createNodeIterator<RootNodeT: Node>(1884    root: RootNodeT,1885    whatToShow: 129,1886    filter?: NodeFilterInterface1887  ): NodeIterator<RootNodeT, Element | Comment>;1888  createNodeIterator<RootNodeT: Node>(1889    root: RootNodeT,1890    whatToShow: 132,1891    filter?: NodeFilterInterface1892  ): NodeIterator<RootNodeT, Text | Comment>;1893  createNodeIterator<RootNodeT: Node>(1894    root: RootNodeT,1895    whatToShow: 133,1896    filter?: NodeFilterInterface1897  ): NodeIterator<RootNodeT, Text | Element | Comment>;1898  createTreeWalker<RootNodeT: Node>(1899    root: RootNodeT,1900    whatToShow: 1,1901    filter?: NodeFilterInterface,1902    entityReferenceExpansion?: boolean1903  ): TreeWalker<RootNodeT, Element>;1904  createTreeWalker<RootNodeT: Node>(1905    root: RootNodeT,1906    whatToShow: 4,1907    filter?: NodeFilterInterface,1908    entityReferenceExpansion?: boolean1909  ): TreeWalker<RootNodeT, Text>;1910  createTreeWalker<RootNodeT: Node>(1911    root: RootNodeT,1912    whatToShow: 5,1913    filter?: NodeFilterInterface,1914    entityReferenceExpansion?: boolean1915  ): TreeWalker<RootNodeT, Element | Text>;1916  createTreeWalker<RootNodeT: Node>(1917    root: RootNodeT,1918    whatToShow: 128,1919    filter?: NodeFilterInterface,1920    entityReferenceExpansion?: boolean1921  ): TreeWalker<RootNodeT, Comment>;1922  createTreeWalker<RootNodeT: Node>(1923    root: RootNodeT,1924    whatToShow: 129,1925    filter?: NodeFilterInterface,1926    entityReferenceExpansion?: boolean1927  ): TreeWalker<RootNodeT, Element | Comment>;1928  createTreeWalker<RootNodeT: Node>(1929    root: RootNodeT,1930    whatToShow: 132,1931    filter?: NodeFilterInterface,1932    entityReferenceExpansion?: boolean1933  ): TreeWalker<RootNodeT, Text | Comment>;1934  createTreeWalker<RootNodeT: Node>(1935    root: RootNodeT,1936    whatToShow: 133,1937    filter?: NodeFilterInterface,1938    entityReferenceExpansion?: boolean1939  ): TreeWalker<RootNodeT, Text | Element | Comment>;19401941  // Catch all for when we don't know the value of `whatToShow`1942  // And for when whatToShow is not provided, it is assumed to be SHOW_ALL1943  createNodeIterator<RootNodeT: Node>(1944    root: RootNodeT,1945    whatToShow?: number,1946    filter?: NodeFilterInterface1947  ): NodeIterator<RootNodeT, Node>;1948  createTreeWalker<RootNodeT: Node>(1949    root: RootNodeT,1950    whatToShow?: number,1951    filter?: NodeFilterInterface,1952    entityReferenceExpansion?: boolean1953  ): TreeWalker<RootNodeT, Node>;19541955  // From NonElementParentNode Mixin.1956  getElementById(elementId: string): HTMLElement | null;19571958  // From DocumentOrShadowRoot Mixin.1959  +styleSheets: StyleSheetList;1960  adoptedStyleSheets: Array<CSSStyleSheet>;1961}19621963declare class DocumentFragment extends Node {1964  // from ParentNode interface1965  childElementCount: number;1966  children: HTMLCollection<HTMLElement>;1967  firstElementChild: ?Element;1968  lastElementChild: ?Element;1969  append(...nodes: Array<string | Node>): void;1970  prepend(...nodes: Array<string | Node>): void;19711972  querySelector(selector: string): HTMLElement | null;1973  querySelectorAll(selector: string): NodeList<HTMLElement>;19741975  // From NonElementParentNode Mixin.1976  getElementById(elementId: string): HTMLElement | null;1977}19781979declare class Selection {1980  anchorNode: Node | null;1981  anchorOffset: number;1982  focusNode: Node | null;1983  focusOffset: number;1984  isCollapsed: boolean;1985  rangeCount: number;1986  type: string;1987  addRange(range: Range): void;1988  getRangeAt(index: number): Range;1989  removeRange(range: Range): void;1990  removeAllRanges(): void;1991  collapse(parentNode: Node | null, offset?: number): void;1992  collapseToStart(): void;1993  collapseToEnd(): void;1994  containsNode(aNode: Node, aPartlyContained?: boolean): boolean;1995  deleteFromDocument(): void;1996  extend(parentNode: Node, offset?: number): void;1997  empty(): void;1998  selectAllChildren(parentNode: Node): void;1999  setPosition(aNode: Node | null, offset?: number): void;2000  setBaseAndExtent(

Findings

✓ No findings reported for this file.

Get this view in your editor

Same data, no extra tab — call code_get_file + code_get_findings over MCP from Claude/Cursor/Copilot.