no bug - Import translations from android-l10n r=release a=l10n CLOSED TREE
[gecko.git] / tools / @types / lib.gecko.dom.d.ts
blob2f6028d43b35c1e99149de3dde0bdffac1ea69f3
1 /////////////////////////////
2 /// Window APIs
3 /////////////////////////////
5 /// <reference no-default-lib="true" />
6 /// <reference types="gecko" />
7 /// <reference lib="es2023" />
9 interface ActivateMenuItemOptions {
10     altKey?: boolean;
11     button?: number;
12     ctrlKey?: boolean;
13     metaKey?: boolean;
14     shiftKey?: boolean;
17 interface AddEventListenerOptions extends EventListenerOptions {
18     once?: boolean;
19     passive?: boolean;
20     signal?: AbortSignal;
21     wantUntrusted?: boolean;
24 interface AddonEventInit extends EventInit {
25     id: string;
28 interface AddressErrors {
29     addressLine?: string;
30     city?: string;
31     country?: string;
32     dependentLocality?: string;
33     organization?: string;
34     phone?: string;
35     postalCode?: string;
36     recipient?: string;
37     region?: string;
38     regionCode?: string;
39     sortingCode?: string;
42 interface AnalyserOptions extends AudioNodeOptions {
43     fftSize?: number;
44     maxDecibels?: number;
45     minDecibels?: number;
46     smoothingTimeConstant?: number;
49 interface AnimationEventInit extends EventInit {
50     animationName?: string;
51     elapsedTime?: number;
52     pseudoElement?: string;
55 interface AnimationPlaybackEventInit extends EventInit {
56     currentTime?: number | null;
57     timelineTime?: number | null;
60 interface AnimationPropertyDetails {
61     property: string;
62     runningOnCompositor: boolean;
63     values: AnimationPropertyValueDetails[];
64     warning?: string;
67 interface AnimationPropertyValueDetails {
68     composite: CompositeOperation;
69     easing?: UTF8String;
70     offset: number;
71     value?: UTF8String;
74 interface AssignedNodesOptions {
75     flatten?: boolean;
78 interface AttributeNameValue {
79     name: UTF8String;
80     value: UTF8String;
83 interface AudioBufferOptions {
84     length: number;
85     numberOfChannels?: number;
86     sampleRate: number;
89 interface AudioBufferSourceOptions {
90     buffer?: AudioBuffer | null;
91     detune?: number;
92     loop?: boolean;
93     loopEnd?: number;
94     loopStart?: number;
95     playbackRate?: number;
98 interface AudioConfiguration {
99     bitrate?: number;
100     channels?: string;
101     contentType: string;
102     samplerate?: number;
105 interface AudioContextOptions {
106     sampleRate?: number;
109 interface AudioNodeOptions {
110     channelCount?: number;
111     channelCountMode?: ChannelCountMode;
112     channelInterpretation?: ChannelInterpretation;
115 interface AudioOutputOptions {
116     deviceId?: string;
119 interface AudioSinkDebugInfo {
120     audioEnded?: boolean;
121     hasErrored?: boolean;
122     isPlaying?: boolean;
123     isStarted?: boolean;
124     lastGoodPosition?: number;
125     outputRate?: number;
126     playbackComplete?: boolean;
127     startTime?: number;
128     written?: number;
131 interface AudioSinkWrapperDebugInfo {
132     audioEnded?: boolean;
133     audioSink?: AudioSinkDebugInfo;
134     isPlaying?: boolean;
135     isStarted?: boolean;
138 interface AudioTimestamp {
139     contextTime?: number;
140     performanceTime?: DOMHighResTimeStamp;
143 interface AudioWorkletNodeOptions extends AudioNodeOptions {
144     numberOfInputs?: number;
145     numberOfOutputs?: number;
146     outputChannelCount?: number[];
147     parameterData?: Record<string, number>;
148     processorOptions?: any;
151 interface AuthenticationExtensionsClientInputs {
152     appid?: string;
153     credProps?: boolean;
154     hmacCreateSecret?: boolean;
155     minPinLength?: boolean;
158 interface AuthenticationExtensionsClientInputsJSON {
159     appid?: string;
160     credProps?: boolean;
161     hmacCreateSecret?: boolean;
162     minPinLength?: boolean;
165 interface AuthenticationExtensionsClientOutputs {
166     appid?: boolean;
167     credProps?: CredentialPropertiesOutput;
168     hmacCreateSecret?: boolean;
171 interface AuthenticatorSelectionCriteria {
172     authenticatorAttachment?: string;
173     requireResidentKey?: boolean;
174     residentKey?: string;
175     userVerification?: string;
178 interface AutocompleteInfo {
179     addressType?: string;
180     canAutomaticallyPersist?: boolean;
181     contactType?: string;
182     credentialType?: string;
183     fieldName?: string;
184     section?: string;
187 interface AvcEncoderConfig {
188     format?: AvcBitstreamFormat;
191 interface Base64URLDecodeOptions {
192     padding: Base64URLDecodePadding;
195 interface Base64URLEncodeOptions {
196     pad: boolean;
199 interface BiquadFilterOptions extends AudioNodeOptions {
200     Q?: number;
201     detune?: number;
202     frequency?: number;
203     gain?: number;
204     type?: BiquadFilterType;
207 interface BlobEventInit extends EventInit {
208     data: Blob;
211 interface BlobPropertyBag {
212     endings?: EndingType;
213     type?: string;
216 interface BlockParsingOptions {
217     blockScriptCreated?: boolean;
220 interface BoxQuadOptions {
221     box?: CSSBoxType;
222     createFramesForSuppressedWhitespace?: boolean;
223     relativeTo?: GeometryNode;
226 interface BufferRange {
227     end?: number;
228     start?: number;
231 interface CDMInformation {
232     capabilities: string;
233     clearlead: boolean;
234     keySystemName: string;
237 interface CSSStyleSheetInit {
238     baseURL?: UTF8String;
239     disabled?: boolean;
240     media?: MediaList | UTF8String;
243 interface CacheQueryOptions {
244     ignoreMethod?: boolean;
245     ignoreSearch?: boolean;
246     ignoreVary?: boolean;
249 interface CanvasRenderingContext2DSettings {
250     alpha?: boolean;
251     colorSpace?: PredefinedColorSpace;
252     desynchronized?: boolean;
253     willReadFrequently?: boolean;
256 interface CaretStateChangedEventInit extends EventInit {
257     boundingClientRect?: DOMRectReadOnly | null;
258     caretVisible?: boolean;
259     caretVisuallyVisible?: boolean;
260     clientX?: number;
261     clientY?: number;
262     collapsed?: boolean;
263     reason?: CaretChangedReason;
264     selectedTextContent?: string;
265     selectionEditable?: boolean;
266     selectionVisible?: boolean;
269 interface ChannelMergerOptions extends AudioNodeOptions {
270     numberOfInputs?: number;
273 interface ChannelSplitterOptions extends AudioNodeOptions {
274     numberOfOutputs?: number;
277 interface CheckVisibilityOptions {
278     checkOpacity?: boolean;
279     checkVisibilityCSS?: boolean;
280     contentVisibilityAuto?: boolean;
281     flush?: boolean;
282     opacityProperty?: boolean;
283     visibilityProperty?: boolean;
286 interface CheckerboardReport {
287     log?: string;
288     reason?: CheckerboardReason;
289     severity?: number;
290     timestamp?: DOMTimeStamp;
293 interface ChildProcInfoDictionary {
294     childID?: number;
295     cpuCycleCount?: number;
296     cpuTime?: number;
297     memory?: number;
298     origin?: UTF8String;
299     pid?: number;
300     threads?: ThreadInfoDictionary[];
301     type?: WebIDLProcType;
302     utilityActors?: UtilityActorsDictionary[];
303     windows?: WindowInfoDictionary[];
306 interface ChromeFilePropertyBag extends FilePropertyBag {
307     existenceCheck?: boolean;
308     name?: string;
311 interface ClientQueryOptions {
312     includeUncontrolled?: boolean;
313     type?: ClientType;
316 interface ClientRectsAndTexts {
317     rectList: DOMRectList;
318     textList: string[];
321 interface ClipboardEventInit extends EventInit {
322     data?: string;
323     dataType?: string;
326 interface ClipboardItemOptions {
327     presentationStyle?: PresentationStyle;
330 interface CloseEventInit extends EventInit {
331     code?: number;
332     reason?: string;
333     wasClean?: boolean;
336 interface CollectedData {
337     children?: any[];
338     id?: Record<string, CollectedFormDataValue>;
339     innerHTML?: string;
340     scroll?: string;
341     url?: string;
342     xpath?: Record<string, CollectedFormDataValue>;
345 interface CompileScriptOptionsDictionary {
346     charset?: string;
347     hasReturnValue?: boolean;
348     lazilyParse?: boolean;
351 interface CompositionEventInit extends UIEventInit {
352     data?: string;
355 interface ComputedEffectTiming extends EffectTiming {
356     activeDuration?: number;
357     currentIteration?: number | null;
358     endTime?: number;
359     localTime?: number | null;
360     progress?: number | null;
363 interface ConsoleInstanceOptions {
364     consoleID?: string;
365     dump?: ConsoleInstanceDumpCallback;
366     innerID?: string;
367     maxLogLevel?: ConsoleLogLevel;
368     maxLogLevelPref?: string;
369     prefix?: string;
372 interface ConstantSourceOptions {
373     offset?: number;
376 interface ConstrainBooleanParameters {
377     exact?: boolean;
378     ideal?: boolean;
381 interface ConstrainDOMStringParameters {
382     exact?: string | string[];
383     ideal?: string | string[];
386 interface ConstrainDoubleRange {
387     exact?: number;
388     ideal?: number;
389     max?: number;
390     min?: number;
393 interface ConstrainLongRange {
394     exact?: number;
395     ideal?: number;
396     max?: number;
397     min?: number;
400 interface ContentVisibilityAutoStateChangeEventInit extends EventInit {
401     skipped?: boolean;
404 interface ConvertCoordinateOptions {
405     fromBox?: CSSBoxType;
406     toBox?: CSSBoxType;
409 interface ConvolverOptions extends AudioNodeOptions {
410     buffer?: AudioBuffer | null;
411     disableNormalization?: boolean;
414 interface CopyOptions {
415     noOverwrite?: boolean;
416     recursive?: boolean;
419 interface CredentialCreationOptions {
420     publicKey?: PublicKeyCredentialCreationOptions;
421     signal?: AbortSignal;
424 interface CredentialPropertiesOutput {
425     rk?: boolean;
428 interface CredentialRequestOptions {
429     identity?: IdentityCredentialRequestOptions;
430     mediation?: CredentialMediationRequirement;
431     publicKey?: PublicKeyCredentialRequestOptions;
432     signal?: AbortSignal;
435 interface CustomEventInit extends EventInit {
436     detail?: any;
439 interface DOMMatrix2DInit {
440     a?: number;
441     b?: number;
442     c?: number;
443     d?: number;
444     e?: number;
445     f?: number;
446     m11?: number;
447     m12?: number;
448     m21?: number;
449     m22?: number;
450     m41?: number;
451     m42?: number;
454 interface DOMMatrixInit extends DOMMatrix2DInit {
455     is2D?: boolean;
456     m13?: number;
457     m14?: number;
458     m23?: number;
459     m24?: number;
460     m31?: number;
461     m32?: number;
462     m33?: number;
463     m34?: number;
464     m43?: number;
465     m44?: number;
468 interface DOMPointInit {
469     w?: number;
470     x?: number;
471     y?: number;
472     z?: number;
475 interface DOMQuadInit {
476     p1?: DOMPointInit;
477     p2?: DOMPointInit;
478     p3?: DOMPointInit;
479     p4?: DOMPointInit;
482 interface DOMRectInit {
483     height?: number;
484     width?: number;
485     x?: number;
486     y?: number;
489 interface DateTimeValue {
490     day?: number;
491     hour?: number;
492     minute?: number;
493     month?: number;
494     year?: number;
497 interface DecodedStreamDataDebugInfo {
498     audioFramesWritten?: number;
499     haveSentFinishAudio?: boolean;
500     haveSentFinishVideo?: boolean;
501     instance?: string;
502     lastVideoEndTime?: number;
503     lastVideoStartTime?: number;
504     nextAudioTime?: number;
505     streamAudioWritten?: number;
506     streamVideoWritten?: number;
509 interface DecodedStreamDebugInfo {
510     audioQueueFinished?: boolean;
511     audioQueueSize?: number;
512     data?: DecodedStreamDataDebugInfo;
513     instance?: string;
514     lastAudio?: number;
515     lastOutputTime?: number;
516     playing?: number;
517     startTime?: number;
520 interface DelayOptions extends AudioNodeOptions {
521     delayTime?: number;
522     maxDelayTime?: number;
525 interface DeviceAccelerationInit {
526     x?: number | null;
527     y?: number | null;
528     z?: number | null;
531 interface DeviceLightEventInit extends EventInit {
532     value?: number;
535 interface DeviceMotionEventInit extends EventInit {
536     acceleration?: DeviceAccelerationInit;
537     accelerationIncludingGravity?: DeviceAccelerationInit;
538     interval?: number | null;
539     rotationRate?: DeviceRotationRateInit;
542 interface DeviceOrientationEventInit extends EventInit {
543     absolute?: boolean;
544     alpha?: number | null;
545     beta?: number | null;
546     gamma?: number | null;
549 interface DeviceRotationRateInit {
550     alpha?: number | null;
551     beta?: number | null;
552     gamma?: number | null;
555 interface DictWithAllowSharedBufferSource {
556     allowSharedArrayBuffer?: ArrayBuffer;
557     allowSharedArrayBufferView?: ArrayBufferView;
558     arrayBuffer?: ArrayBuffer;
559     arrayBufferView?: ArrayBufferView;
562 interface DisplayMediaStreamConstraints {
563     audio?: boolean | MediaTrackConstraints;
564     video?: boolean | MediaTrackConstraints;
567 interface DisplayNameOptions {
568     calendar?: string;
569     keys?: string[];
570     style?: string;
571     type?: string;
574 interface DisplayNameResult {
575     calendar?: string;
576     locale?: string;
577     style?: string;
578     type?: string;
579     values?: string[];
582 interface DocumentTimelineOptions {
583     originTime?: DOMHighResTimeStamp;
586 interface DragEventInit extends MouseEventInit {
587     dataTransfer?: DataTransfer | null;
590 interface DynamicsCompressorOptions extends AudioNodeOptions {
591     attack?: number;
592     knee?: number;
593     ratio?: number;
594     release?: number;
595     threshold?: number;
598 interface EMEDebugInfo {
599     keySystem?: string;
600     sessionsInfo?: string;
603 interface EffectTiming {
604     delay?: number;
605     direction?: PlaybackDirection;
606     duration?: number | string;
607     easing?: UTF8String;
608     endDelay?: number;
609     fill?: FillMode;
610     iterationStart?: number;
611     iterations?: number;
614 interface ElementCreationOptions {
615     is?: string;
616     pseudo?: string;
619 interface ElementDefinitionOptions {
620     extends?: string;
623 interface EncodedVideoChunkInit {
624     data: ArrayBufferView | ArrayBuffer;
625     duration?: number;
626     timestamp: number;
627     type: EncodedVideoChunkType;
630 interface EncodedVideoChunkMetadata {
631     decoderConfig?: VideoDecoderConfig;
632     svc?: SvcOutputMetadata;
635 interface ErrorEventInit extends EventInit {
636     colno?: number;
637     error?: any;
638     filename?: string;
639     lineno?: number;
640     message?: string;
643 interface EventInit {
644     bubbles?: boolean;
645     cancelable?: boolean;
646     composed?: boolean;
649 interface EventListenerOptions {
650     capture?: boolean;
651     mozSystemGroup?: boolean;
654 interface EventModifierInit extends UIEventInit {
655     altKey?: boolean;
656     ctrlKey?: boolean;
657     metaKey?: boolean;
658     modifierAltGraph?: boolean;
659     modifierCapsLock?: boolean;
660     modifierFn?: boolean;
661     modifierFnLock?: boolean;
662     modifierNumLock?: boolean;
663     modifierOS?: boolean;
664     modifierScrollLock?: boolean;
665     modifierSymbol?: boolean;
666     modifierSymbolLock?: boolean;
667     shiftKey?: boolean;
670 interface EventSourceInit {
671     withCredentials?: boolean;
674 interface ExecuteInGlobalOptions {
675     reportExceptions?: boolean;
678 interface ExtendableEventInit extends EventInit {
681 interface ExtendableMessageEventInit extends ExtendableEventInit {
682     data?: any;
683     lastEventId?: string;
684     origin?: string;
685     ports?: MessagePort[];
686     source?: Client | ServiceWorker | MessagePort | null;
689 interface FailedCertSecurityInfo {
690     certChainStrings?: string[];
691     certValidityRangeNotAfter?: DOMTimeStamp;
692     certValidityRangeNotBefore?: DOMTimeStamp;
693     errorCodeString?: string;
694     errorMessage?: string;
695     hasHPKP?: boolean;
696     hasHSTS?: boolean;
697     issuerCommonName?: string;
698     overridableErrorCategory?: OverridableErrorCategory;
699     validNotAfter?: DOMTimeStamp;
700     validNotBefore?: DOMTimeStamp;
703 interface FdMapping {
704     dst: number;
705     src: number;
708 interface FetchEventInit extends EventInit {
709     clientId?: string;
710     request: Request;
711     resultingClientId?: string;
714 interface FileInfo {
715     creationTime?: number;
716     lastAccessed?: number;
717     lastModified?: number;
718     path?: string;
719     permissions?: number;
720     size?: number;
721     type?: FileType;
724 interface FilePropertyBag extends BlobPropertyBag {
725     lastModified?: number;
728 interface FileSourceOptions {
729     addResourceOptions?: FluentBundleAddResourceOptions;
732 interface FileSystemCreateWritableOptions {
733     keepExistingData?: boolean;
736 interface FileSystemFlags {
737     create?: boolean;
738     exclusive?: boolean;
741 interface FileSystemGetDirectoryOptions {
742     create?: boolean;
745 interface FileSystemGetFileOptions {
746     create?: boolean;
749 interface FileSystemReadWriteOptions {
750     at?: number;
753 interface FileSystemRemoveOptions {
754     recursive?: boolean;
757 interface FluentBundleAddResourceOptions {
758     allowOverrides?: boolean;
761 interface FluentBundleIteratorResult {
762     done: boolean;
763     value: FluentBundle | null;
766 interface FluentBundleOptions {
767     pseudoStrategy?: UTF8String;
768     useIsolating?: boolean;
771 interface FluentMessage {
772     attributes: Record<UTF8String, FluentPattern>;
773     value?: FluentPattern | null;
776 interface FluentTextElementItem {
777     attr?: UTF8String;
778     id?: UTF8String;
779     text?: UTF8String;
782 interface FocusEventInit extends UIEventInit {
783     relatedTarget?: EventTarget | null;
786 interface FocusOptions {
787     focusVisible?: boolean;
788     preventScroll?: boolean;
791 interface FontFaceDescriptors {
792     ascentOverride?: UTF8String;
793     descentOverride?: UTF8String;
794     display?: UTF8String;
795     featureSettings?: UTF8String;
796     lineGapOverride?: UTF8String;
797     sizeAdjust?: UTF8String;
798     stretch?: UTF8String;
799     style?: UTF8String;
800     unicodeRange?: UTF8String;
801     variant?: UTF8String;
802     variationSettings?: UTF8String;
803     weight?: UTF8String;
806 interface FontFaceSetIteratorResult {
807     done: boolean;
808     value: any;
811 interface FontFaceSetLoadEventInit extends EventInit {
812     fontfaces?: FontFace[];
815 interface FormAutofillConfidences {
816     ccName?: number;
817     ccNumber?: number;
820 interface FormDataEventInit extends EventInit {
821     formData: FormData;
824 interface FrameCrashedEventInit extends EventInit {
825     browsingContextId?: number;
826     childID?: number;
827     isTopFrame?: boolean;
830 interface GPUBindGroupDescriptor extends GPUObjectDescriptorBase {
831     entries: GPUBindGroupEntry[];
832     layout: GPUBindGroupLayout;
835 interface GPUBindGroupEntry {
836     binding: GPUIndex32;
837     resource: GPUBindingResource;
840 interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase {
841     entries: GPUBindGroupLayoutEntry[];
844 interface GPUBindGroupLayoutEntry {
845     binding: GPUIndex32;
846     buffer?: GPUBufferBindingLayout;
847     sampler?: GPUSamplerBindingLayout;
848     storageTexture?: GPUStorageTextureBindingLayout;
849     texture?: GPUTextureBindingLayout;
850     visibility: GPUShaderStageFlags;
853 interface GPUBlendComponent {
854     dstFactor?: GPUBlendFactor;
855     operation?: GPUBlendOperation;
856     srcFactor?: GPUBlendFactor;
859 interface GPUBlendState {
860     alpha: GPUBlendComponent;
861     color: GPUBlendComponent;
864 interface GPUBufferBinding {
865     buffer: GPUBuffer;
866     offset?: GPUSize64;
867     size?: GPUSize64;
870 interface GPUBufferBindingLayout {
871     hasDynamicOffset?: boolean;
872     minBindingSize?: GPUSize64;
873     type?: GPUBufferBindingType;
876 interface GPUBufferDescriptor extends GPUObjectDescriptorBase {
877     mappedAtCreation?: boolean;
878     size: GPUSize64;
879     usage: GPUBufferUsageFlags;
882 interface GPUCanvasConfiguration {
883     alphaMode?: GPUCanvasAlphaMode;
884     device: GPUDevice;
885     format: GPUTextureFormat;
886     usage?: GPUTextureUsageFlags;
887     viewFormats?: GPUTextureFormat[];
890 interface GPUColorDict {
891     a: number;
892     b: number;
893     g: number;
894     r: number;
897 interface GPUColorTargetState {
898     blend?: GPUBlendState;
899     format: GPUTextureFormat;
900     writeMask?: GPUColorWriteFlags;
903 interface GPUCommandBufferDescriptor extends GPUObjectDescriptorBase {
906 interface GPUCommandEncoderDescriptor extends GPUObjectDescriptorBase {
909 interface GPUComputePassDescriptor extends GPUObjectDescriptorBase {
912 interface GPUComputePipelineDescriptor extends GPUPipelineDescriptorBase {
913     compute: GPUProgrammableStage;
916 interface GPUDepthStencilState {
917     depthBias?: GPUDepthBias;
918     depthBiasClamp?: number;
919     depthBiasSlopeScale?: number;
920     depthCompare?: GPUCompareFunction;
921     depthWriteEnabled?: boolean;
922     format: GPUTextureFormat;
923     stencilBack?: GPUStencilFaceState;
924     stencilFront?: GPUStencilFaceState;
925     stencilReadMask?: GPUStencilValue;
926     stencilWriteMask?: GPUStencilValue;
929 interface GPUDeviceDescriptor extends GPUObjectDescriptorBase {
930     defaultQueue?: GPUQueueDescriptor;
931     requiredFeatures?: GPUFeatureName[];
932     requiredLimits?: Record<string, GPUSize64>;
935 interface GPUExtent3DDict {
936     depthOrArrayLayers?: GPUIntegerCoordinate;
937     height?: GPUIntegerCoordinate;
938     width: GPUIntegerCoordinate;
941 interface GPUFragmentState extends GPUProgrammableStage {
942     targets: GPUColorTargetState[];
945 interface GPUImageCopyBuffer extends GPUImageDataLayout {
946     buffer: GPUBuffer;
949 interface GPUImageCopyExternalImage {
950     flipY?: boolean;
951     origin?: GPUOrigin2D;
952     source: ImageBitmap | HTMLCanvasElement | OffscreenCanvas;
955 interface GPUImageCopyTexture {
956     aspect?: GPUTextureAspect;
957     mipLevel?: GPUIntegerCoordinate;
958     origin?: GPUOrigin3D;
959     texture: GPUTexture;
962 interface GPUImageCopyTextureTagged extends GPUImageCopyTexture {
963     premultipliedAlpha?: boolean;
966 interface GPUImageDataLayout {
967     bytesPerRow?: GPUSize32;
968     offset?: GPUSize64;
969     rowsPerImage?: GPUSize32;
972 interface GPUMultisampleState {
973     alphaToCoverageEnabled?: boolean;
974     count?: GPUSize32;
975     mask?: GPUSampleMask;
978 interface GPUObjectDescriptorBase {
979     label?: string;
982 interface GPUOrigin2DDict {
983     x?: GPUIntegerCoordinate;
984     y?: GPUIntegerCoordinate;
987 interface GPUOrigin3DDict {
988     x?: GPUIntegerCoordinate;
989     y?: GPUIntegerCoordinate;
990     z?: GPUIntegerCoordinate;
993 interface GPUPipelineDescriptorBase extends GPUObjectDescriptorBase {
994     layout: GPUPipelineLayout | GPUAutoLayoutMode;
997 interface GPUPipelineLayoutDescriptor extends GPUObjectDescriptorBase {
998     bindGroupLayouts: GPUBindGroupLayout[];
1001 interface GPUPrimitiveState {
1002     cullMode?: GPUCullMode;
1003     frontFace?: GPUFrontFace;
1004     stripIndexFormat?: GPUIndexFormat;
1005     topology?: GPUPrimitiveTopology;
1006     unclippedDepth?: boolean;
1009 interface GPUProgrammableStage {
1010     entryPoint: string;
1011     module: GPUShaderModule;
1014 interface GPUQueueDescriptor extends GPUObjectDescriptorBase {
1017 interface GPURenderBundleDescriptor extends GPUObjectDescriptorBase {
1020 interface GPURenderBundleEncoderDescriptor extends GPURenderPassLayout {
1021     depthReadOnly?: boolean;
1022     stencilReadOnly?: boolean;
1025 interface GPURenderPassColorAttachment {
1026     clearValue?: GPUColor;
1027     loadOp: GPULoadOp;
1028     resolveTarget?: GPUTextureView;
1029     storeOp: GPUStoreOp;
1030     view: GPUTextureView;
1033 interface GPURenderPassDepthStencilAttachment {
1034     depthClearValue?: number;
1035     depthLoadOp?: GPULoadOp;
1036     depthReadOnly?: boolean;
1037     depthStoreOp?: GPUStoreOp;
1038     stencilClearValue?: GPUStencilValue;
1039     stencilLoadOp?: GPULoadOp;
1040     stencilReadOnly?: boolean;
1041     stencilStoreOp?: GPUStoreOp;
1042     view: GPUTextureView;
1045 interface GPURenderPassDescriptor extends GPUObjectDescriptorBase {
1046     colorAttachments: GPURenderPassColorAttachment[];
1047     depthStencilAttachment?: GPURenderPassDepthStencilAttachment;
1048     occlusionQuerySet?: GPUQuerySet;
1051 interface GPURenderPassLayout extends GPUObjectDescriptorBase {
1052     colorFormats: GPUTextureFormat[];
1053     depthStencilFormat?: GPUTextureFormat;
1054     sampleCount?: GPUSize32;
1057 interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase {
1058     depthStencil?: GPUDepthStencilState;
1059     fragment?: GPUFragmentState;
1060     multisample?: GPUMultisampleState;
1061     primitive?: GPUPrimitiveState;
1062     vertex: GPUVertexState;
1065 interface GPURequestAdapterOptions {
1066     forceFallbackAdapter?: boolean;
1067     powerPreference?: GPUPowerPreference;
1070 interface GPUSamplerBindingLayout {
1071     type?: GPUSamplerBindingType;
1074 interface GPUSamplerDescriptor extends GPUObjectDescriptorBase {
1075     addressModeU?: GPUAddressMode;
1076     addressModeV?: GPUAddressMode;
1077     addressModeW?: GPUAddressMode;
1078     compare?: GPUCompareFunction;
1079     lodMaxClamp?: number;
1080     lodMinClamp?: number;
1081     magFilter?: GPUFilterMode;
1082     maxAnisotropy?: number;
1083     minFilter?: GPUFilterMode;
1084     mipmapFilter?: GPUMipmapFilterMode;
1087 interface GPUShaderModuleDescriptor extends GPUObjectDescriptorBase {
1088     code: UTF8String;
1089     sourceMap?: any;
1092 interface GPUStencilFaceState {
1093     compare?: GPUCompareFunction;
1094     depthFailOp?: GPUStencilOperation;
1095     failOp?: GPUStencilOperation;
1096     passOp?: GPUStencilOperation;
1099 interface GPUStorageTextureBindingLayout {
1100     access?: GPUStorageTextureAccess;
1101     format: GPUTextureFormat;
1102     viewDimension?: GPUTextureViewDimension;
1105 interface GPUTextureBindingLayout {
1106     multisampled?: boolean;
1107     sampleType?: GPUTextureSampleType;
1108     viewDimension?: GPUTextureViewDimension;
1111 interface GPUTextureDescriptor extends GPUObjectDescriptorBase {
1112     dimension?: GPUTextureDimension;
1113     format: GPUTextureFormat;
1114     mipLevelCount?: GPUIntegerCoordinate;
1115     sampleCount?: GPUSize32;
1116     size: GPUExtent3D;
1117     usage: GPUTextureUsageFlags;
1118     viewFormats?: GPUTextureFormat[];
1121 interface GPUTextureViewDescriptor extends GPUObjectDescriptorBase {
1122     arrayLayerCount?: GPUIntegerCoordinate;
1123     aspect?: GPUTextureAspect;
1124     baseArrayLayer?: GPUIntegerCoordinate;
1125     baseMipLevel?: GPUIntegerCoordinate;
1126     dimension?: GPUTextureViewDimension;
1127     format?: GPUTextureFormat;
1128     mipLevelCount?: GPUIntegerCoordinate;
1131 interface GPUUncapturedErrorEventInit extends EventInit {
1132     error: GPUError;
1135 interface GPUVertexAttribute {
1136     format: GPUVertexFormat;
1137     offset: GPUSize64;
1138     shaderLocation: GPUIndex32;
1141 interface GPUVertexBufferLayout {
1142     arrayStride: GPUSize64;
1143     attributes: GPUVertexAttribute[];
1144     stepMode?: GPUVertexStepMode;
1147 interface GPUVertexState extends GPUProgrammableStage {
1148     buffers?: (GPUVertexBufferLayout | null)[];
1151 interface GainOptions extends AudioNodeOptions {
1152     gain?: number;
1155 interface GamepadAxisMoveEventInit extends GamepadEventInit {
1156     axis?: number;
1157     value?: number;
1160 interface GamepadButtonEventInit extends GamepadEventInit {
1161     button?: number;
1164 interface GamepadEventInit extends EventInit {
1165     gamepad?: Gamepad | null;
1168 interface GamepadLightColor {
1169     blue: number;
1170     green: number;
1171     red: number;
1174 interface GetAnimationsOptions {
1175     subtree?: boolean;
1178 interface GetChildrenOptions {
1179     ignoreAbsent?: boolean;
1182 interface GetNotificationOptions {
1183     tag?: string;
1186 interface GetRootNodeOptions {
1187     composed?: boolean;
1190 interface GleanDistributionData {
1191     sum: number;
1192     values: Record<UTF8String, number>;
1195 interface GleanEventRecord {
1196     category: UTF8String;
1197     extra?: Record<UTF8String, UTF8String>;
1198     name: UTF8String;
1199     timestamp: number;
1202 interface GleanRateData {
1203     denominator: number;
1204     numerator: number;
1207 interface HTMLMediaElementDebugInfo {
1208     EMEInfo?: EMEDebugInfo;
1209     compositorDroppedFrames?: number;
1210     decoder?: MediaDecoderDebugInfo;
1213 interface HashChangeEventInit extends EventInit {
1214     newURL?: string;
1215     oldURL?: string;
1218 interface HeapSnapshotBoundaries {
1219     debugger?: any;
1220     globals?: any[];
1221     runtime?: boolean;
1224 interface IDBIndexParameters {
1225     locale?: string | null;
1226     multiEntry?: boolean;
1227     unique?: boolean;
1230 interface IDBObjectStoreParameters {
1231     autoIncrement?: boolean;
1232     keyPath?: string | string[] | null;
1235 interface IDBOpenDBOptions {
1236     version?: number;
1239 interface IDBVersionChangeEventInit extends EventInit {
1240     newVersion?: number | null;
1241     oldVersion?: number;
1244 interface IIRFilterOptions extends AudioNodeOptions {
1245     feedback: number[];
1246     feedforward: number[];
1249 interface IOActivityDataDictionary {
1250     location?: string;
1251     rx?: number;
1252     tx?: number;
1255 interface IdentityCredentialLogoutRPsRequest {
1256     accountId: UTF8String;
1257     url: UTF8String;
1260 interface IdentityCredentialRequestOptions {
1261     providers?: IdentityProviderConfig[];
1264 interface IdentityProviderConfig {
1265     clientId: string;
1266     configURL: UTF8String;
1267     nonce?: string;
1270 interface IdleRequestOptions {
1271     timeout?: number;
1274 interface ImageBitmapOptions {
1275     colorSpaceConversion?: ColorSpaceConversion;
1276     imageOrientation?: ImageOrientation;
1277     premultiplyAlpha?: PremultiplyAlpha;
1278     resizeHeight?: number;
1279     resizeWidth?: number;
1282 interface ImageCaptureErrorEventInit extends EventInit {
1283     imageCaptureError?: ImageCaptureError | null;
1286 interface ImageEncodeOptions {
1287     quality?: number;
1288     type?: string;
1291 interface ImageText {
1292     confidence: number;
1293     quad: DOMQuad;
1294     string: string;
1297 interface ImportESModuleOptionsDictionary {
1298     loadInDevToolsLoader?: boolean;
1301 interface InputEventInit extends UIEventInit {
1302     data?: string | null;
1303     dataTransfer?: DataTransfer | null;
1304     inputType?: string;
1305     isComposing?: boolean;
1306     targetRanges?: StaticRange[];
1309 interface InspectorCSSPropertyDefinition {
1310     fromJS: boolean;
1311     inherits: boolean;
1312     initialValue: UTF8String | null;
1313     name: UTF8String;
1314     syntax: UTF8String;
1317 interface InspectorFontFeature {
1318     languageSystem: string;
1319     script: string;
1320     tag: string;
1323 interface InspectorRGBATuple {
1324     a?: number;
1325     b?: number;
1326     g?: number;
1327     r?: number;
1330 interface InspectorVariationAxis {
1331     defaultValue: number;
1332     maxValue: number;
1333     minValue: number;
1334     name: string;
1335     tag: string;
1338 interface InspectorVariationInstance {
1339     name: string;
1340     values: InspectorVariationValue[];
1343 interface InspectorVariationValue {
1344     axis: string;
1345     value: number;
1348 interface InstallTriggerData {
1349     Hash?: string | null;
1350     IconURL?: string | null;
1351     URL?: string;
1354 interface InteractionData {
1355     interactionCount?: number;
1356     interactionTimeInMilliseconds?: number;
1357     scrollingDistanceInPixels?: number;
1360 interface IntersectionObserverInit {
1361     root?: Element | Document | null;
1362     rootMargin?: UTF8String;
1363     threshold?: number | number[];
1366 interface InvokeEventInit extends EventInit {
1367     action?: string;
1368     invoker?: Element | null;
1371 interface KeyboardEventInit extends EventModifierInit {
1372     charCode?: number;
1373     code?: string;
1374     isComposing?: boolean;
1375     key?: string;
1376     keyCode?: number;
1377     location?: number;
1378     repeat?: boolean;
1379     which?: number;
1382 interface KeyframeAnimationOptions extends KeyframeEffectOptions {
1383     id?: string;
1386 interface KeyframeEffectOptions extends EffectTiming {
1387     composite?: CompositeOperation;
1388     iterationComposite?: IterationCompositeOperation;
1389     pseudoElement?: string | null;
1392 interface L10nFileSourceMockFile {
1393     path: UTF8String;
1394     source: UTF8String;
1397 interface L10nIdArgs {
1398     args?: L10nArgs | null;
1399     id?: UTF8String | null;
1402 interface L10nMessage {
1403     attributes?: AttributeNameValue[] | null;
1404     value?: UTF8String | null;
1407 interface L10nOverlaysError {
1408     code?: number;
1409     l10nName?: string;
1410     sourceElementName?: string;
1411     translatedElementName?: string;
1414 interface L10nRegistryOptions {
1415     bundleOptions?: FluentBundleOptions;
1418 interface LaunchOptions {
1419     disclaim?: boolean;
1420     environment: UnixString[];
1421     fdMap?: FdMapping[];
1422     workdir?: UnixString;
1425 interface LibcConstants {
1426     AT_EACCESS?: number;
1427     EACCES?: number;
1428     EAGAIN?: number;
1429     EINTR?: number;
1430     EINVAL?: number;
1431     ENOSYS?: number;
1432     FD_CLOEXEC?: number;
1433     F_SETFD?: number;
1434     F_SETFL?: number;
1435     O_CREAT?: number;
1436     O_NONBLOCK?: number;
1437     O_WRONLY?: number;
1438     POLLERR?: number;
1439     POLLHUP?: number;
1440     POLLIN?: number;
1441     POLLNVAL?: number;
1442     POLLOUT?: number;
1443     PR_CAPBSET_READ?: number;
1444     WNOHANG?: number;
1447 interface LoadURIOptions {
1448     baseURI?: URI | null;
1449     cancelContentJSEpoch?: number;
1450     csp?: ContentSecurityPolicy | null;
1451     hasValidUserGestureActivation?: boolean;
1452     headers?: InputStream | null;
1453     loadFlags?: number;
1454     postData?: InputStream | null;
1455     referrerInfo?: ReferrerInfo | null;
1456     remoteTypeOverride?: UTF8String | null;
1457     triggeringPrincipal?: Principal | null;
1458     triggeringRemoteType?: UTF8String | null;
1459     triggeringSandboxFlags?: number;
1460     triggeringStorageAccess?: boolean;
1461     triggeringWindowId?: number;
1462     wasSchemelessInput?: boolean;
1465 interface LockInfo {
1466     clientId?: string;
1467     mode?: LockMode;
1468     name?: string;
1471 interface LockManagerSnapshot {
1472     held?: LockInfo[];
1473     pending?: LockInfo[];
1476 interface LockOptions {
1477     ifAvailable?: boolean;
1478     mode?: LockMode;
1479     signal?: AbortSignal;
1480     steal?: boolean;
1483 interface MIDIConnectionEventInit extends EventInit {
1484     port?: MIDIPort | null;
1487 interface MIDIMessageEventInit extends EventInit {
1488     data?: Uint8Array;
1491 interface MIDIOptions {
1492     software?: boolean;
1493     sysex?: boolean;
1496 interface MakeDirectoryOptions {
1497     createAncestors?: boolean;
1498     ignoreExisting?: boolean;
1499     permissions?: number;
1502 interface MatchPatternOptions {
1503     ignorePath?: boolean;
1504     restrictSchemes?: boolean;
1507 interface MediaCacheStreamDebugInfo {
1508     cacheSuspended?: boolean;
1509     channelEnded?: boolean;
1510     channelOffset?: number;
1511     loadID?: number;
1512     streamLength?: number;
1515 interface MediaConfiguration {
1516     audio?: AudioConfiguration;
1517     video?: VideoConfiguration;
1520 interface MediaDecoderDebugInfo {
1521     PlayState?: string;
1522     channels?: number;
1523     containerType?: string;
1524     hasAudio?: boolean;
1525     hasVideo?: boolean;
1526     instance?: string;
1527     rate?: number;
1528     reader?: MediaFormatReaderDebugInfo;
1529     resource?: MediaResourceDebugInfo;
1530     stateMachine?: MediaDecoderStateMachineDebugInfo;
1533 interface MediaDecoderStateMachineDebugInfo {
1534     audioCompleted?: boolean;
1535     audioRequestStatus?: string;
1536     clock?: number;
1537     decodedAudioEndTime?: number;
1538     decodedVideoEndTime?: number;
1539     duration?: number;
1540     isPlaying?: boolean;
1541     mediaSink?: MediaSinkDebugInfo;
1542     mediaTime?: number;
1543     playState?: number;
1544     sentFirstFrameLoadedEvent?: boolean;
1545     state?: string;
1546     stateObj?: MediaDecoderStateMachineDecodingStateDebugInfo;
1547     videoCompleted?: boolean;
1548     videoRequestStatus?: string;
1551 interface MediaDecoderStateMachineDecodingStateDebugInfo {
1552     isPrerolling?: boolean;
1555 interface MediaDecodingConfiguration extends MediaConfiguration {
1556     type: MediaDecodingType;
1559 interface MediaElementAudioSourceOptions {
1560     mediaElement: HTMLMediaElement;
1563 interface MediaEncodingConfiguration extends MediaConfiguration {
1564     type: MediaEncodingType;
1567 interface MediaFormatReaderDebugInfo {
1568     audioChannels?: number;
1569     audioDecoderName?: string;
1570     audioFramesDecoded?: number;
1571     audioRate?: number;
1572     audioState?: MediaStateDebugInfo;
1573     audioType?: string;
1574     frameStats?: MediaFrameStats;
1575     videoDecoderName?: string;
1576     videoHardwareAccelerated?: boolean;
1577     videoHeight?: number;
1578     videoNumSamplesOutputTotal?: number;
1579     videoNumSamplesSkippedTotal?: number;
1580     videoRate?: number;
1581     videoState?: MediaStateDebugInfo;
1582     videoType?: string;
1583     videoWidth?: number;
1586 interface MediaFrameStats {
1587     droppedCompositorFrames?: number;
1588     droppedDecodedFrames?: number;
1589     droppedSinkFrames?: number;
1592 interface MediaImage {
1593     sizes?: string;
1594     src: string;
1595     type?: string;
1598 interface MediaKeyMessageEventInit extends EventInit {
1599     message: ArrayBuffer;
1600     messageType: MediaKeyMessageType;
1603 interface MediaKeyNeededEventInit extends EventInit {
1604     initData?: ArrayBuffer | null;
1605     initDataType?: string;
1608 interface MediaKeySystemConfiguration {
1609     audioCapabilities?: MediaKeySystemMediaCapability[];
1610     distinctiveIdentifier?: MediaKeysRequirement;
1611     initDataTypes?: string[];
1612     label?: string;
1613     persistentState?: MediaKeysRequirement;
1614     sessionTypes?: string[];
1615     videoCapabilities?: MediaKeySystemMediaCapability[];
1618 interface MediaKeySystemMediaCapability {
1619     contentType?: string;
1620     encryptionScheme?: string | null;
1621     robustness?: string;
1624 interface MediaKeysPolicy {
1625     minHdcpVersion?: string;
1628 interface MediaMetadataInit {
1629     album?: string;
1630     artist?: string;
1631     artwork?: MediaImage[];
1632     title?: string;
1635 interface MediaPositionState {
1636     duration?: number;
1637     playbackRate?: number;
1638     position?: number;
1641 interface MediaQueryListEventInit extends EventInit {
1642     matches?: boolean;
1643     media?: UTF8String;
1646 interface MediaRecorderErrorEventInit extends EventInit {
1647     error: DOMException;
1650 interface MediaRecorderOptions {
1651     audioBitsPerSecond?: number;
1652     bitsPerSecond?: number;
1653     mimeType?: string;
1654     videoBitsPerSecond?: number;
1657 interface MediaResourceDebugInfo {
1658     cacheStream?: MediaCacheStreamDebugInfo;
1661 interface MediaSessionActionDetails {
1662     action: MediaSessionAction;
1663     fastSeek?: boolean;
1664     seekOffset?: number;
1665     seekTime?: number;
1668 interface MediaSinkDebugInfo {
1669     audioSinkWrapper?: AudioSinkWrapperDebugInfo;
1670     decodedStream?: DecodedStreamDebugInfo;
1671     videoSink?: VideoSinkDebugInfo;
1674 interface MediaSourceDecoderDebugInfo {
1675     demuxer?: MediaSourceDemuxerDebugInfo;
1676     reader?: MediaFormatReaderDebugInfo;
1679 interface MediaSourceDemuxerDebugInfo {
1680     audioTrack?: TrackBuffersManagerDebugInfo;
1681     videoTrack?: TrackBuffersManagerDebugInfo;
1684 interface MediaStateDebugInfo {
1685     demuxEOS?: number;
1686     demuxQueueSize?: number;
1687     drainState?: number;
1688     hasDecoder?: boolean;
1689     hasDemuxRequest?: boolean;
1690     hasPromise?: boolean;
1691     lastStreamSourceID?: number;
1692     needInput?: boolean;
1693     numSamplesInput?: number;
1694     numSamplesOutput?: number;
1695     pending?: number;
1696     queueSize?: number;
1697     timeTreshold?: number;
1698     timeTresholdHasSeeked?: boolean;
1699     waitingForData?: boolean;
1700     waitingForKey?: boolean;
1701     waitingPromise?: boolean;
1704 interface MediaStreamAudioSourceOptions {
1705     mediaStream: MediaStream;
1708 interface MediaStreamConstraints {
1709     audio?: boolean | MediaTrackConstraints;
1710     fake?: boolean;
1711     peerIdentity?: string | null;
1712     picture?: boolean;
1713     video?: boolean | MediaTrackConstraints;
1716 interface MediaStreamEventInit extends EventInit {
1717     stream?: MediaStream | null;
1720 interface MediaStreamTrackAudioSourceOptions {
1721     mediaStreamTrack: MediaStreamTrack;
1724 interface MediaStreamTrackEventInit extends EventInit {
1725     track: MediaStreamTrack;
1728 interface MediaTrackConstraintSet {
1729     autoGainControl?: ConstrainBoolean;
1730     browserWindow?: number;
1731     channelCount?: ConstrainLong;
1732     deviceId?: ConstrainDOMString;
1733     echoCancellation?: ConstrainBoolean;
1734     facingMode?: ConstrainDOMString;
1735     frameRate?: ConstrainDouble;
1736     groupId?: ConstrainDOMString;
1737     height?: ConstrainLong;
1738     mediaSource?: string;
1739     noiseSuppression?: ConstrainBoolean;
1740     scrollWithPage?: boolean;
1741     viewportHeight?: ConstrainLong;
1742     viewportOffsetX?: ConstrainLong;
1743     viewportOffsetY?: ConstrainLong;
1744     viewportWidth?: ConstrainLong;
1745     width?: ConstrainLong;
1748 interface MediaTrackConstraints extends MediaTrackConstraintSet {
1749     advanced?: MediaTrackConstraintSet[];
1752 interface MediaTrackSettings {
1753     autoGainControl?: boolean;
1754     browserWindow?: number;
1755     channelCount?: number;
1756     deviceId?: string;
1757     echoCancellation?: boolean;
1758     facingMode?: string;
1759     frameRate?: number;
1760     groupId?: string;
1761     height?: number;
1762     mediaSource?: string;
1763     noiseSuppression?: boolean;
1764     scrollWithPage?: boolean;
1765     viewportHeight?: number;
1766     viewportOffsetX?: number;
1767     viewportOffsetY?: number;
1768     viewportWidth?: number;
1769     width?: number;
1772 interface MediaTrackSupportedConstraints {
1773     aspectRatio?: boolean;
1774     autoGainControl?: boolean;
1775     browserWindow?: boolean;
1776     channelCount?: boolean;
1777     deviceId?: boolean;
1778     echoCancellation?: boolean;
1779     facingMode?: boolean;
1780     frameRate?: boolean;
1781     groupId?: boolean;
1782     height?: boolean;
1783     latency?: boolean;
1784     mediaSource?: boolean;
1785     noiseSuppression?: boolean;
1786     sampleRate?: boolean;
1787     sampleSize?: boolean;
1788     scrollWithPage?: boolean;
1789     viewportHeight?: boolean;
1790     viewportOffsetX?: boolean;
1791     viewportOffsetY?: boolean;
1792     viewportWidth?: boolean;
1793     volume?: boolean;
1794     width?: boolean;
1797 interface MerchantValidationEventInit extends EventInit {
1798     methodName?: string;
1799     validationURL?: string;
1802 interface MessageEventInit extends EventInit {
1803     data?: any;
1804     lastEventId?: string;
1805     origin?: string;
1806     ports?: MessagePort[];
1807     source?: MessageEventSource | null;
1810 interface MouseEventInit extends EventModifierInit {
1811     button?: number;
1812     buttons?: number;
1813     clientX?: number;
1814     clientY?: number;
1815     movementX?: number;
1816     movementY?: number;
1817     relatedTarget?: EventTarget | null;
1818     screenX?: number;
1819     screenY?: number;
1822 interface MoveOptions {
1823     noOverwrite?: boolean;
1826 interface MozApplicationEventInit extends EventInit {
1827     application?: DOMApplication | null;
1830 interface MozDocumentMatcherInit {
1831     allFrames?: boolean;
1832     checkPermissions?: boolean;
1833     excludeGlobs?: MatchGlobOrString[] | null;
1834     excludeMatches?: MatchPatternSetOrStringSequence | null;
1835     frameID?: number | null;
1836     hasActiveTabPermission?: boolean;
1837     includeGlobs?: MatchGlobOrString[] | null;
1838     matchAboutBlank?: boolean;
1839     matches: MatchPatternSetOrStringSequence;
1840     originAttributesPatterns?: OriginAttributesPatternDictionary[] | null;
1843 interface MozFrameAncestorInfo {
1844     frameId: number;
1845     url: string;
1848 interface MozHTTPHeader {
1849     name: string;
1850     value: string;
1853 interface MozPluginParameter {
1854     name?: string;
1855     value?: string;
1858 interface MozProxyInfo {
1859     connectionIsolationKey?: string | null;
1860     failoverTimeout?: number;
1861     host: string;
1862     port: number;
1863     proxyAuthorizationHeader?: string | null;
1864     proxyDNS: boolean;
1865     type: string;
1866     username?: string | null;
1869 interface MozRequestFilter {
1870     incognito?: boolean | null;
1871     types?: MozContentPolicyType[] | null;
1872     urls?: MatchPatternSet | null;
1875 interface MozRequestMatchOptions {
1876     isProxy?: boolean;
1879 interface MozUrlClassification {
1880     firstParty: MozUrlClassificationFlags[];
1881     thirdParty: MozUrlClassificationFlags[];
1884 interface MozXMLHttpRequestParameters {
1885     mozAnon?: boolean;
1886     mozSystem?: boolean;
1889 interface MultiCacheQueryOptions extends CacheQueryOptions {
1890     cacheName?: string;
1893 interface MutationObserverInit {
1894     animations?: boolean;
1895     attributeFilter?: string[];
1896     attributeOldValue?: boolean;
1897     attributes?: boolean;
1898     characterData?: boolean;
1899     characterDataOldValue?: boolean;
1900     childList?: boolean;
1901     chromeOnlyNodes?: boolean;
1902     subtree?: boolean;
1905 interface MutationObservingInfo extends MutationObserverInit {
1906     observedNode?: Node | null;
1909 interface NavigationPreloadState {
1910     enabled?: boolean;
1911     headerValue?: string;
1914 interface NetErrorInfo {
1915     errorCodeString?: string;
1918 interface NotificationBehavior {
1919     noclear?: boolean;
1920     noscreen?: boolean;
1921     showOnlyOnce?: boolean;
1922     soundFile?: string;
1923     vibrationPattern?: number[];
1926 interface NotificationEventInit extends ExtendableEventInit {
1927     notification: Notification;
1930 interface NotificationOptions {
1931     body?: string;
1932     data?: any;
1933     dir?: NotificationDirection;
1934     icon?: string;
1935     lang?: string;
1936     mozbehavior?: NotificationBehavior;
1937     requireInteraction?: boolean;
1938     silent?: boolean;
1939     tag?: string;
1940     vibrate?: VibratePattern;
1943 interface ObservableArrayCallbacks {
1944     deleteBooleanCallback?: SetDeleteBooleanCallback;
1945     deleteInterfaceCallback?: SetDeleteInterfaceCallback;
1946     deleteObjectCallback?: SetDeleteObjectCallback;
1947     setBooleanCallback?: SetDeleteBooleanCallback;
1948     setInterfaceCallback?: SetDeleteInterfaceCallback;
1949     setObjectCallback?: SetDeleteObjectCallback;
1952 interface OfflineAudioCompletionEventInit extends EventInit {
1953     renderedBuffer: AudioBuffer;
1956 interface OfflineAudioContextOptions {
1957     length: number;
1958     numberOfChannels?: number;
1959     sampleRate: number;
1962 interface OpenPopupOptions {
1963     attributesOverride?: boolean;
1964     isContextMenu?: boolean;
1965     position?: string;
1966     triggerEvent?: Event | null;
1967     x?: number;
1968     y?: number;
1971 interface OptionalEffectTiming {
1972     delay?: number;
1973     direction?: PlaybackDirection;
1974     duration?: number | string;
1975     easing?: UTF8String;
1976     endDelay?: number;
1977     fill?: FillMode;
1978     iterationStart?: number;
1979     iterations?: number;
1982 interface OriginAttributesDictionary {
1983     firstPartyDomain?: string;
1984     geckoViewSessionContextId?: string;
1985     inIsolatedMozBrowser?: boolean;
1986     partitionKey?: string;
1987     privateBrowsingId?: number;
1988     userContextId?: number;
1991 interface OriginAttributesPatternDictionary {
1992     firstPartyDomain?: string;
1993     geckoViewSessionContextId?: string;
1994     inIsolatedMozBrowser?: boolean;
1995     partitionKey?: string;
1996     partitionKeyPattern?: PartitionKeyPatternDictionary;
1997     privateBrowsingId?: number;
1998     userContextId?: number;
2001 interface OscillatorOptions extends AudioNodeOptions {
2002     detune?: number;
2003     frequency?: number;
2004     periodicWave?: PeriodicWave;
2005     type?: OscillatorType;
2008 interface PCErrorData {
2009     message: string;
2010     name: PCError;
2013 interface PageTransitionEventInit extends EventInit {
2014     inFrameSwap?: boolean;
2015     persisted?: boolean;
2018 interface PannerOptions extends AudioNodeOptions {
2019     coneInnerAngle?: number;
2020     coneOuterAngle?: number;
2021     coneOuterGain?: number;
2022     distanceModel?: DistanceModelType;
2023     maxDistance?: number;
2024     orientationX?: number;
2025     orientationY?: number;
2026     orientationZ?: number;
2027     panningModel?: PanningModelType;
2028     positionX?: number;
2029     positionY?: number;
2030     positionZ?: number;
2031     refDistance?: number;
2032     rolloffFactor?: number;
2035 interface ParentProcInfoDictionary {
2036     children?: ChildProcInfoDictionary[];
2037     cpuCycleCount?: number;
2038     cpuTime?: number;
2039     memory?: number;
2040     pid?: number;
2041     threads?: ThreadInfoDictionary[];
2042     type?: WebIDLProcType;
2045 interface PartitionKeyPatternDictionary {
2046     baseDomain?: string;
2047     port?: number;
2048     scheme?: string;
2051 interface PayerErrors {
2052     email?: string;
2053     name?: string;
2054     phone?: string;
2057 interface PaymentCurrencyAmount {
2058     currency: string;
2059     value: string;
2062 interface PaymentDetailsBase {
2063     displayItems?: PaymentItem[];
2064     modifiers?: PaymentDetailsModifier[];
2065     shippingOptions?: PaymentShippingOption[];
2068 interface PaymentDetailsInit extends PaymentDetailsBase {
2069     id?: string;
2070     total: PaymentItem;
2073 interface PaymentDetailsModifier {
2074     additionalDisplayItems?: PaymentItem[];
2075     data?: any;
2076     supportedMethods: string;
2077     total?: PaymentItem;
2080 interface PaymentDetailsUpdate extends PaymentDetailsBase {
2081     error?: string;
2082     payerErrors?: PayerErrors;
2083     paymentMethodErrors?: any;
2084     shippingAddressErrors?: AddressErrors;
2085     total?: PaymentItem;
2088 interface PaymentItem {
2089     amount: PaymentCurrencyAmount;
2090     label: string;
2091     pending?: boolean;
2094 interface PaymentMethodChangeEventInit extends PaymentRequestUpdateEventInit {
2095     methodDetails?: any;
2096     methodName?: string;
2099 interface PaymentMethodData {
2100     data?: any;
2101     supportedMethods: string;
2104 interface PaymentOptions {
2105     requestBillingAddress?: boolean;
2106     requestPayerEmail?: boolean;
2107     requestPayerName?: boolean;
2108     requestPayerPhone?: boolean;
2109     requestShipping?: boolean;
2110     shippingType?: PaymentShippingType;
2113 interface PaymentRequestUpdateEventInit extends EventInit {
2116 interface PaymentShippingOption {
2117     amount: PaymentCurrencyAmount;
2118     id: string;
2119     label: string;
2120     selected?: boolean;
2123 interface PaymentValidationErrors {
2124     error?: string;
2125     payer?: PayerErrors;
2126     paymentMethod?: any;
2127     shippingAddress?: AddressErrors;
2130 interface PerformanceEntryEventInit extends EventInit {
2131     duration?: DOMHighResTimeStamp;
2132     entryType?: string;
2133     epoch?: number;
2134     name?: string;
2135     origin?: string;
2136     startTime?: DOMHighResTimeStamp;
2139 interface PerformanceEntryFilterOptions {
2140     entryType?: string;
2141     initiatorType?: string;
2142     name?: string;
2145 interface PerformanceMarkOptions {
2146     detail?: any;
2147     startTime?: DOMHighResTimeStamp;
2150 interface PerformanceMeasureOptions {
2151     detail?: any;
2152     duration?: DOMHighResTimeStamp;
2153     end?: string | DOMHighResTimeStamp;
2154     start?: string | DOMHighResTimeStamp;
2157 interface PerformanceObserverInit {
2158     buffered?: boolean;
2159     durationThreshold?: DOMHighResTimeStamp;
2160     entryTypes?: string[];
2161     type?: string;
2164 interface PeriodicWaveConstraints {
2165     disableNormalization?: boolean;
2168 interface PeriodicWaveOptions extends PeriodicWaveConstraints {
2169     imag?: number[] | Float32Array;
2170     real?: number[] | Float32Array;
2173 interface PlacesBookmarkAdditionInit {
2174     dateAdded: number;
2175     frecency: number;
2176     guid: string;
2177     hidden: boolean;
2178     id: number;
2179     index: number;
2180     isTagging: boolean;
2181     itemType: number;
2182     lastVisitDate: number | null;
2183     parentGuid: string;
2184     parentId: number;
2185     source: number;
2186     tags: string | null;
2187     targetFolderGuid: string | null;
2188     targetFolderItemId: number;
2189     targetFolderTitle: string | null;
2190     title: string;
2191     url: string;
2192     visitCount: number;
2195 interface PlacesBookmarkGuidInit {
2196     guid: string;
2197     id: number;
2198     isTagging: boolean;
2199     itemType: number;
2200     lastModified: number;
2201     parentGuid: string;
2202     source: number;
2203     url?: string | null;
2206 interface PlacesBookmarkKeywordInit {
2207     guid: string;
2208     id: number;
2209     isTagging: boolean;
2210     itemType: number;
2211     keyword: string;
2212     lastModified: number;
2213     parentGuid: string;
2214     source: number;
2215     url?: string | null;
2218 interface PlacesBookmarkMovedInit {
2219     dateAdded: number;
2220     frecency: number;
2221     guid: string;
2222     hidden: boolean;
2223     id: number;
2224     index: number;
2225     isTagging: boolean;
2226     itemType: number;
2227     lastVisitDate: number | null;
2228     oldIndex: number;
2229     oldParentGuid: string;
2230     parentGuid: string;
2231     source: number;
2232     tags: string | null;
2233     title: string;
2234     url?: string | null;
2235     visitCount: number;
2238 interface PlacesBookmarkRemovedInit {
2239     guid: string;
2240     id: number;
2241     index: number;
2242     isDescendantRemoval?: boolean;
2243     isTagging: boolean;
2244     itemType: number;
2245     parentGuid: string;
2246     parentId: number;
2247     source: number;
2248     title: string;
2249     url: string;
2252 interface PlacesBookmarkTagsInit {
2253     guid: string;
2254     id: number;
2255     isTagging: boolean;
2256     itemType: number;
2257     lastModified: number;
2258     parentGuid: string;
2259     source: number;
2260     tags: string[];
2261     url?: string | null;
2264 interface PlacesBookmarkTimeInit {
2265     dateAdded: number;
2266     guid: string;
2267     id: number;
2268     isTagging: boolean;
2269     itemType: number;
2270     lastModified: number;
2271     parentGuid: string;
2272     source: number;
2273     url?: string | null;
2276 interface PlacesBookmarkTitleInit {
2277     guid: string;
2278     id: number;
2279     isTagging: boolean;
2280     itemType: number;
2281     lastModified: number;
2282     parentGuid: string;
2283     source: number;
2284     title: string;
2285     url?: string | null;
2288 interface PlacesBookmarkUrlInit {
2289     guid: string;
2290     id: number;
2291     isTagging: boolean;
2292     itemType: number;
2293     lastModified: number;
2294     parentGuid: string;
2295     source: number;
2296     url: string;
2299 interface PlacesFaviconInit {
2300     faviconUrl: string;
2301     pageGuid: string;
2302     url: string;
2305 interface PlacesVisitRemovedInit {
2306     isPartialVisistsRemoval?: boolean;
2307     isRemovedFromStore?: boolean;
2308     pageGuid: string;
2309     reason: number;
2310     transitionType?: number;
2311     url: string;
2314 interface PlacesVisitTitleInit {
2315     pageGuid: string;
2316     title: string;
2317     url: string;
2320 interface PlaneLayout {
2321     offset: number;
2322     stride: number;
2325 interface PluginCrashedEventInit extends EventInit {
2326     gmpPlugin?: boolean;
2327     pluginDumpID?: string;
2328     pluginFilename?: string | null;
2329     pluginID?: number;
2330     pluginName?: string;
2331     submittedCrashReport?: boolean;
2334 interface PointerEventInit extends MouseEventInit {
2335     coalescedEvents?: PointerEvent[];
2336     height?: number;
2337     isPrimary?: boolean;
2338     pointerId?: number;
2339     pointerType?: string;
2340     predictedEvents?: PointerEvent[];
2341     pressure?: number;
2342     tangentialPressure?: number;
2343     tiltX?: number;
2344     tiltY?: number;
2345     twist?: number;
2346     width?: number;
2349 interface PopStateEventInit extends EventInit {
2350     state?: any;
2353 interface PopupBlockedEventInit extends EventInit {
2354     popupWindowFeatures?: string;
2355     popupWindowName?: string;
2356     popupWindowURI?: URI | null;
2357     requestingWindow?: Window | null;
2360 interface PopupPositionedEventInit extends EventInit {
2361     alignmentOffset?: number;
2362     alignmentPosition?: string;
2363     isAnchored?: boolean;
2364     popupAlignment?: string;
2367 interface PositionOptions {
2368     enableHighAccuracy?: boolean;
2369     maximumAge?: number;
2370     timeout?: number;
2373 interface PositionStateEventInit extends EventInit {
2374     duration: number;
2375     playbackRate: number;
2376     position: number;
2379 interface ProcessActorChildOptions extends ProcessActorSidedOptions {
2380     observers?: string[];
2383 interface ProcessActorOptions {
2384     child?: ProcessActorChildOptions;
2385     includeParent?: boolean;
2386     loadInDevToolsLoader?: boolean;
2387     parent?: ProcessActorSidedOptions;
2388     remoteTypes?: UTF8String[];
2391 interface ProcessActorSidedOptions {
2392     esModuleURI?: string;
2393     moduleURI?: string;
2396 interface ProfilerMarkerOptions {
2397     captureStack?: boolean;
2398     category?: string;
2399     innerWindowId?: number;
2400     startTime?: DOMHighResTimeStamp;
2403 interface ProgressEventInit extends EventInit {
2404     lengthComputable?: boolean;
2405     loaded?: number;
2406     total?: number;
2409 interface PromiseDebuggingStateHolder {
2410     reason?: any;
2411     state?: PromiseDebuggingState;
2412     value?: any;
2415 interface PromiseRejectionEventInit extends EventInit {
2416     promise: Promise<any>;
2417     reason?: any;
2420 interface PropertyDefinition {
2421     inherits: boolean;
2422     initialValue?: UTF8String;
2423     name: UTF8String;
2424     syntax?: UTF8String;
2427 interface PropertyNamesOptions {
2428     includeAliases?: boolean;
2429     includeExperimentals?: boolean;
2430     includeShorthands?: boolean;
2433 interface PropertyPref {
2434     name: string;
2435     pref: string;
2438 interface PublicKeyCredentialCreationOptions {
2439     attestation?: string;
2440     authenticatorSelection?: AuthenticatorSelectionCriteria;
2441     challenge: BufferSource;
2442     excludeCredentials?: PublicKeyCredentialDescriptor[];
2443     extensions?: AuthenticationExtensionsClientInputs;
2444     pubKeyCredParams: PublicKeyCredentialParameters[];
2445     rp: PublicKeyCredentialRpEntity;
2446     timeout?: number;
2447     user: PublicKeyCredentialUserEntity;
2450 interface PublicKeyCredentialCreationOptionsJSON {
2451     attestation?: string;
2452     attestationFormats?: string[];
2453     authenticatorSelection?: AuthenticatorSelectionCriteria;
2454     challenge: Base64URLString;
2455     excludeCredentials?: PublicKeyCredentialDescriptorJSON[];
2456     extensions?: AuthenticationExtensionsClientInputsJSON;
2457     hints?: string[];
2458     pubKeyCredParams: PublicKeyCredentialParameters[];
2459     rp: PublicKeyCredentialRpEntity;
2460     timeout?: number;
2461     user: PublicKeyCredentialUserEntityJSON;
2464 interface PublicKeyCredentialDescriptor {
2465     id: BufferSource;
2466     transports?: string[];
2467     type: string;
2470 interface PublicKeyCredentialDescriptorJSON {
2471     id: Base64URLString;
2472     transports?: string[];
2473     type: string;
2476 interface PublicKeyCredentialEntity {
2477     name: string;
2480 interface PublicKeyCredentialParameters {
2481     alg: COSEAlgorithmIdentifier;
2482     type: string;
2485 interface PublicKeyCredentialRequestOptions {
2486     allowCredentials?: PublicKeyCredentialDescriptor[];
2487     challenge: BufferSource;
2488     extensions?: AuthenticationExtensionsClientInputs;
2489     rpId?: string;
2490     timeout?: number;
2491     userVerification?: string;
2494 interface PublicKeyCredentialRequestOptionsJSON {
2495     allowCredentials?: PublicKeyCredentialDescriptorJSON[];
2496     attestation?: string;
2497     attestationFormats?: string[];
2498     challenge: Base64URLString;
2499     extensions?: AuthenticationExtensionsClientInputsJSON;
2500     hints?: string[];
2501     rpId?: string;
2502     timeout?: number;
2503     userVerification?: string;
2506 interface PublicKeyCredentialRpEntity extends PublicKeyCredentialEntity {
2507     id?: string;
2510 interface PublicKeyCredentialUserEntity extends PublicKeyCredentialEntity {
2511     displayName: string;
2512     id: BufferSource;
2515 interface PublicKeyCredentialUserEntityJSON {
2516     displayName: string;
2517     id: Base64URLString;
2518     name: string;
2521 interface PushEventInit extends ExtendableEventInit {
2522     data?: PushMessageDataInit;
2525 interface PushSubscriptionInit {
2526     appServerKey?: BufferSource | null;
2527     authSecret?: ArrayBuffer | null;
2528     endpoint: string;
2529     expirationTime?: EpochTimeStamp | null;
2530     p256dhKey?: ArrayBuffer | null;
2531     scope: string;
2534 interface PushSubscriptionJSON {
2535     endpoint?: string;
2536     expirationTime?: EpochTimeStamp | null;
2537     keys?: PushSubscriptionKeys;
2540 interface PushSubscriptionKeys {
2541     auth?: string;
2542     p256dh?: string;
2545 interface PushSubscriptionOptionsInit {
2546     applicationServerKey?: BufferSource | string | null;
2549 interface QueuingStrategy {
2550     highWaterMark?: number;
2551     size?: QueuingStrategySize;
2554 interface QueuingStrategyInit {
2555     highWaterMark: number;
2558 interface RTCBandwidthEstimationInternal {
2559     maxPaddingBps?: number;
2560     pacerDelayMs?: number;
2561     receiveBandwidthBps?: number;
2562     rttMs?: number;
2563     sendBandwidthBps?: number;
2564     trackIdentifier: string;
2567 interface RTCCodecStats extends RTCStats {
2568     channels?: number;
2569     clockRate?: number;
2570     codecType?: RTCCodecType;
2571     mimeType: string;
2572     payloadType: number;
2573     sdpFmtpLine?: string;
2574     transportId: string;
2577 interface RTCConfiguration {
2578     bundlePolicy?: RTCBundlePolicy;
2579     certificates?: RTCCertificate[];
2580     iceServers?: RTCIceServer[];
2581     iceTransportPolicy?: RTCIceTransportPolicy;
2582     peerIdentity?: string | null;
2583     sdpSemantics?: string;
2586 interface RTCConfigurationInternal {
2587     bundlePolicy?: RTCBundlePolicy;
2588     certificatesProvided: boolean;
2589     iceServers?: RTCIceServerInternal[];
2590     iceTransportPolicy?: RTCIceTransportPolicy;
2591     peerIdentityProvided: boolean;
2592     sdpSemantics?: string;
2595 interface RTCDTMFToneChangeEventInit extends EventInit {
2596     tone?: string;
2599 interface RTCDataChannelEventInit extends EventInit {
2600     channel: RTCDataChannel;
2603 interface RTCDataChannelInit {
2604     id?: number;
2605     maxPacketLifeTime?: number;
2606     maxRetransmitTime?: number;
2607     maxRetransmits?: number;
2608     negotiated?: boolean;
2609     ordered?: boolean;
2610     protocol?: string;
2613 interface RTCDataChannelStats extends RTCStats {
2614     bytesReceived?: number;
2615     bytesSent?: number;
2616     dataChannelIdentifier?: number;
2617     label?: string;
2618     messagesReceived?: number;
2619     messagesSent?: number;
2620     protocol?: string;
2621     state?: RTCDataChannelState;
2624 interface RTCEncodedAudioFrameMetadata {
2625     contributingSources?: number[];
2626     payloadType?: number;
2627     sequenceNumber?: number;
2628     synchronizationSource?: number;
2631 interface RTCEncodedVideoFrameMetadata {
2632     contributingSources?: number[];
2633     dependencies?: number[];
2634     frameId?: number;
2635     height?: number;
2636     payloadType?: number;
2637     spatialIndex?: number;
2638     synchronizationSource?: number;
2639     temporalIndex?: number;
2640     timestamp?: number;
2641     width?: number;
2644 interface RTCFecParameters {
2645     ssrc?: number;
2648 interface RTCIceCandidateInit {
2649     candidate?: string;
2650     sdpMLineIndex?: number | null;
2651     sdpMid?: string | null;
2652     usernameFragment?: string | null;
2655 interface RTCIceCandidatePairStats extends RTCStats {
2656     bytesReceived?: number;
2657     bytesSent?: number;
2658     componentId?: number;
2659     lastPacketReceivedTimestamp?: DOMHighResTimeStamp;
2660     lastPacketSentTimestamp?: DOMHighResTimeStamp;
2661     localCandidateId?: string;
2662     nominated?: boolean;
2663     priority?: number;
2664     readable?: boolean;
2665     remoteCandidateId?: string;
2666     selected?: boolean;
2667     state?: RTCStatsIceCandidatePairState;
2668     transportId?: string;
2669     writable?: boolean;
2672 interface RTCIceCandidateStats extends RTCStats {
2673     address?: string;
2674     candidateType?: RTCIceCandidateType;
2675     port?: number;
2676     priority?: number;
2677     protocol?: string;
2678     proxied?: string;
2679     relayProtocol?: string;
2680     transportId?: string;
2683 interface RTCIceServer {
2684     credential?: string;
2685     credentialType?: RTCIceCredentialType;
2686     url?: string;
2687     urls?: string | string[];
2688     username?: string;
2691 interface RTCIceServerInternal {
2692     credentialProvided: boolean;
2693     urls?: string[];
2694     userNameProvided: boolean;
2697 interface RTCIdentityAssertion {
2698     idp?: string;
2699     name?: string;
2702 interface RTCIdentityAssertionResult {
2703     assertion: string;
2704     idp: RTCIdentityProviderDetails;
2707 interface RTCIdentityProvider {
2708     generateAssertion: GenerateAssertionCallback;
2709     validateAssertion: ValidateAssertionCallback;
2712 interface RTCIdentityProviderDetails {
2713     domain: string;
2714     protocol?: string;
2717 interface RTCIdentityProviderOptions {
2718     peerIdentity?: string;
2719     protocol?: string;
2720     usernameHint?: string;
2723 interface RTCIdentityValidationResult {
2724     contents: string;
2725     identity: string;
2728 interface RTCInboundRtpStreamStats extends RTCReceivedRtpStreamStats {
2729     audioLevel?: number;
2730     bytesReceived?: number;
2731     concealedSamples?: number;
2732     concealmentEvents?: number;
2733     fecPacketsDiscarded?: number;
2734     fecPacketsReceived?: number;
2735     firCount?: number;
2736     frameHeight?: number;
2737     frameWidth?: number;
2738     framesDecoded?: number;
2739     framesDropped?: number;
2740     framesPerSecond?: number;
2741     framesReceived?: number;
2742     headerBytesReceived?: number;
2743     insertedSamplesForDeceleration?: number;
2744     jitterBufferDelay?: number;
2745     jitterBufferEmittedCount?: number;
2746     lastPacketReceivedTimestamp?: DOMHighResTimeStamp;
2747     nackCount?: number;
2748     pliCount?: number;
2749     qpSum?: number;
2750     remoteId?: string;
2751     removedSamplesForAcceleration?: number;
2752     silentConcealedSamples?: number;
2753     totalAudioEnergy?: number;
2754     totalDecodeTime?: number;
2755     totalInterFrameDelay?: number;
2756     totalProcessingDelay?: number;
2757     totalSamplesDuration?: number;
2758     totalSamplesReceived?: number;
2759     totalSquaredInterFrameDelay?: number;
2760     trackIdentifier: string;
2763 interface RTCMediaSourceStats extends RTCStats {
2764     kind: string;
2765     trackIdentifier: string;
2768 interface RTCOfferAnswerOptions {
2771 interface RTCOfferOptions extends RTCOfferAnswerOptions {
2772     iceRestart?: boolean;
2773     offerToReceiveAudio?: boolean;
2774     offerToReceiveVideo?: boolean;
2777 interface RTCOutboundRtpStreamStats extends RTCSentRtpStreamStats {
2778     firCount?: number;
2779     frameHeight?: number;
2780     frameWidth?: number;
2781     framesEncoded?: number;
2782     framesPerSecond?: number;
2783     framesSent?: number;
2784     headerBytesSent?: number;
2785     hugeFramesSent?: number;
2786     nackCount?: number;
2787     pliCount?: number;
2788     qpSum?: number;
2789     remoteId?: string;
2790     retransmittedBytesSent?: number;
2791     retransmittedPacketsSent?: number;
2792     totalEncodeTime?: number;
2793     totalEncodedBytesTarget?: number;
2796 interface RTCPeerConnectionIceEventInit extends EventInit {
2797     candidate?: RTCIceCandidate | null;
2800 interface RTCPeerConnectionStats extends RTCStats {
2801     dataChannelsClosed?: number;
2802     dataChannelsOpened?: number;
2805 interface RTCRTPContributingSourceStats extends RTCStats {
2806     contributorSsrc?: number;
2807     inboundRtpStreamId?: string;
2810 interface RTCReceivedRtpStreamStats extends RTCRtpStreamStats {
2811     discardedPackets?: number;
2812     jitter?: number;
2813     packetsDiscarded?: number;
2814     packetsLost?: number;
2815     packetsReceived?: number;
2818 interface RTCRemoteInboundRtpStreamStats extends RTCReceivedRtpStreamStats {
2819     fractionLost?: number;
2820     localId?: string;
2821     roundTripTime?: number;
2822     roundTripTimeMeasurements?: number;
2823     totalRoundTripTime?: number;
2826 interface RTCRemoteOutboundRtpStreamStats extends RTCSentRtpStreamStats {
2827     localId?: string;
2828     remoteTimestamp?: DOMHighResTimeStamp;
2831 interface RTCRtcpParameters {
2832     cname?: string;
2833     reducedSize?: boolean;
2836 interface RTCRtpCapabilities {
2837     codecs: RTCRtpCodecCapability[];
2838     headerExtensions: RTCRtpHeaderExtensionCapability[];
2841 interface RTCRtpCodec {
2842     channels?: number;
2843     clockRate: number;
2844     mimeType: string;
2845     sdpFmtpLine?: string;
2848 interface RTCRtpCodecCapability extends RTCRtpCodec {
2851 interface RTCRtpCodecParameters {
2852     channels?: number;
2853     clockRate?: number;
2854     mimeType?: string;
2855     payloadType?: number;
2856     sdpFmtpLine?: string;
2859 interface RTCRtpContributingSource {
2860     audioLevel?: number;
2861     rtpTimestamp: number;
2862     source: number;
2863     timestamp: DOMHighResTimeStamp;
2866 interface RTCRtpEncodingParameters {
2867     active?: boolean;
2868     fec?: RTCFecParameters;
2869     maxBitrate?: number;
2870     maxFramerate?: number;
2871     priority?: RTCPriorityType;
2872     rid?: string;
2873     rtx?: RTCRtxParameters;
2874     scaleResolutionDownBy?: number;
2875     ssrc?: number;
2878 interface RTCRtpHeaderExtensionCapability {
2879     uri: string;
2882 interface RTCRtpHeaderExtensionParameters {
2883     encrypted?: boolean;
2884     id?: number;
2885     uri?: string;
2888 interface RTCRtpParameters {
2889     codecs?: RTCRtpCodecParameters[];
2890     headerExtensions?: RTCRtpHeaderExtensionParameters[];
2891     rtcp?: RTCRtcpParameters;
2894 interface RTCRtpSendParameters extends RTCRtpParameters {
2895     encodings: RTCRtpEncodingParameters[];
2896     transactionId?: string;
2899 interface RTCRtpStreamStats extends RTCStats {
2900     codecId?: string;
2901     kind: string;
2902     mediaType?: string;
2903     ssrc: number;
2904     transportId?: string;
2907 interface RTCRtpSynchronizationSource extends RTCRtpContributingSource {
2908     voiceActivityFlag?: boolean | null;
2911 interface RTCRtpTransceiverInit {
2912     direction?: RTCRtpTransceiverDirection;
2913     sendEncodings?: RTCRtpEncodingParameters[];
2914     streams?: MediaStream[];
2917 interface RTCRtxParameters {
2918     ssrc?: number;
2921 interface RTCSdpHistoryEntryInternal {
2922     errors?: RTCSdpParsingErrorInternal[];
2923     isLocal: boolean;
2924     sdp: string;
2925     timestamp: DOMHighResTimeStamp;
2928 interface RTCSdpHistoryInternal {
2929     pcid: string;
2930     sdpHistory?: RTCSdpHistoryEntryInternal[];
2933 interface RTCSdpParsingErrorInternal {
2934     error: string;
2935     lineNumber: number;
2938 interface RTCSentRtpStreamStats extends RTCRtpStreamStats {
2939     bytesSent?: number;
2940     packetsSent?: number;
2943 interface RTCSessionDescriptionInit {
2944     sdp?: string;
2945     type?: RTCSdpType;
2948 interface RTCStats {
2949     id?: string;
2950     timestamp?: DOMHighResTimeStamp;
2951     type?: RTCStatsType;
2954 interface RTCStatsCollection {
2955     bandwidthEstimations?: RTCBandwidthEstimationInternal[];
2956     codecStats?: RTCCodecStats[];
2957     dataChannelStats?: RTCDataChannelStats[];
2958     iceCandidatePairStats?: RTCIceCandidatePairStats[];
2959     iceCandidateStats?: RTCIceCandidateStats[];
2960     inboundRtpStreamStats?: RTCInboundRtpStreamStats[];
2961     mediaSourceStats?: RTCMediaSourceStats[];
2962     outboundRtpStreamStats?: RTCOutboundRtpStreamStats[];
2963     peerConnectionStats?: RTCPeerConnectionStats[];
2964     rawLocalCandidates?: string[];
2965     rawRemoteCandidates?: string[];
2966     remoteInboundRtpStreamStats?: RTCRemoteInboundRtpStreamStats[];
2967     remoteOutboundRtpStreamStats?: RTCRemoteOutboundRtpStreamStats[];
2968     rtpContributingSourceStats?: RTCRTPContributingSourceStats[];
2969     trickledIceCandidateStats?: RTCIceCandidateStats[];
2970     videoFrameHistories?: RTCVideoFrameHistoryInternal[];
2971     videoSourceStats?: RTCVideoSourceStats[];
2974 interface RTCStatsReportInternal extends RTCStatsCollection {
2975     browserId: number;
2976     callDurationMs?: number;
2977     closed: boolean;
2978     configuration?: RTCConfigurationInternal;
2979     iceRestarts: number;
2980     iceRollbacks: number;
2981     jsepSessionErrors?: string;
2982     offerer?: boolean;
2983     pcid: string;
2984     sdpHistory?: RTCSdpHistoryEntryInternal[];
2985     timestamp: DOMHighResTimeStamp;
2988 interface RTCTrackEventInit extends EventInit {
2989     receiver: RTCRtpReceiver;
2990     streams?: MediaStream[];
2991     track: MediaStreamTrack;
2992     transceiver: RTCRtpTransceiver;
2995 interface RTCTransformEventInit extends EventInit {
2996     transformer: RTCRtpScriptTransformer;
2999 interface RTCVideoFrameHistoryEntryInternal {
3000     consecutiveFrames: number;
3001     firstFrameTimestamp: DOMHighResTimeStamp;
3002     height: number;
3003     lastFrameTimestamp: DOMHighResTimeStamp;
3004     localSsrc: number;
3005     remoteSsrc: number;
3006     rotationAngle: number;
3007     width: number;
3010 interface RTCVideoFrameHistoryInternal {
3011     entries?: RTCVideoFrameHistoryEntryInternal[];
3012     trackIdentifier: string;
3015 interface RTCVideoSourceStats extends RTCMediaSourceStats {
3016     frames?: number;
3017     framesPerSecond?: number;
3018     height?: number;
3019     width?: number;
3022 interface ReadOptions extends ReadUTF8Options {
3023     maxBytes?: number | null;
3024     offset?: number;
3027 interface ReadUTF8Options {
3028     decompress?: boolean;
3031 interface ReadableStreamGetReaderOptions {
3032     mode?: ReadableStreamReaderMode;
3035 interface ReadableStreamIteratorOptions {
3036     preventCancel?: boolean;
3039 interface ReadableStreamReadResult {
3040     done?: boolean;
3041     value?: any;
3044 interface ReadableWritablePair {
3045     readable: ReadableStream;
3046     writable: WritableStream;
3049 interface ReceiveMessageArgument {
3050     data?: any;
3051     json?: any;
3052     name: string;
3053     ports?: MessagePort[];
3054     sync: boolean;
3055     target: nsISupports;
3056     targetFrameLoader?: FrameLoader;
3059 interface RegistrationOptions {
3060     scope?: string;
3061     updateViaCache?: ServiceWorkerUpdateViaCache;
3064 interface RemotenessOptions {
3065     pendingSwitchID?: number;
3066     remoteType: UTF8String | null;
3067     switchingInProgressLoad?: boolean;
3070 interface RemoveOptions {
3071     ignoreAbsent?: boolean;
3072     recursive?: boolean;
3073     retryReadonly?: boolean;
3076 interface ReportingObserverOptions {
3077     buffered?: boolean;
3078     types?: string[];
3081 interface RequestInit {
3082     body?: BodyInit | null;
3083     cache?: RequestCache;
3084     credentials?: RequestCredentials;
3085     headers?: HeadersInit;
3086     integrity?: string;
3087     method?: string;
3088     mode?: RequestMode;
3089     mozErrors?: boolean;
3090     observe?: ObserverCallback;
3091     redirect?: RequestRedirect;
3092     referrer?: string;
3093     referrerPolicy?: ReferrerPolicy;
3094     signal?: AbortSignal | null;
3097 interface ResizeObserverOptions {
3098     box?: ResizeObserverBoxOptions;
3101 interface ResourceId {
3102     optional?: boolean;
3103     path: UTF8String;
3106 interface ResponseInit {
3107     headers?: HeadersInit;
3108     status?: number;
3109     statusText?: string;
3112 interface SVGBoundingBoxOptions {
3113     clipped?: boolean;
3114     fill?: boolean;
3115     markers?: boolean;
3116     stroke?: boolean;
3119 interface SanitizerAttributeNamespace {
3120     name: string;
3121     namespace?: string | null;
3124 interface SanitizerConfig {
3125     attributes?: SanitizerAttribute[];
3126     comments?: boolean;
3127     customElements?: boolean;
3128     elements?: SanitizerElementWithAttributes[];
3129     removeAttributes?: SanitizerAttribute[];
3130     removeElements?: SanitizerElement[];
3131     replaceWithChildrenElements?: SanitizerElement[];
3132     unknownMarkup?: boolean;
3135 interface SanitizerElementNamespace {
3136     name: string;
3137     namespace?: string | null;
3140 interface SanitizerElementNamespaceWithAttributes extends SanitizerElementNamespace {
3141     attributes?: SanitizerAttribute[];
3142     removeAttributes?: SanitizerAttribute[];
3145 interface SchedulerPostTaskOptions {
3146     delay?: number;
3147     priority?: TaskPriority;
3148     signal?: AbortSignal;
3151 interface ScrollIntoViewOptions extends ScrollOptions {
3152     block?: ScrollLogicalPosition;
3153     inline?: ScrollLogicalPosition;
3156 interface ScrollOptions {
3157     behavior?: ScrollBehavior;
3160 interface ScrollToOptions extends ScrollOptions {
3161     left?: number;
3162     top?: number;
3165 interface ScrollViewChangeEventInit extends EventInit {
3166     state?: ScrollState;
3169 interface SecurityPolicyViolationEventInit extends EventInit {
3170     blockedURI?: string;
3171     columnNumber?: number;
3172     disposition?: SecurityPolicyViolationEventDisposition;
3173     documentURI?: string;
3174     effectiveDirective?: string;
3175     lineNumber?: number;
3176     originalPolicy?: string;
3177     referrer?: string;
3178     sample?: string;
3179     sourceFile?: string;
3180     statusCode?: number;
3181     violatedDirective?: string;
3184 interface SelectorWarning {
3185     index: number;
3186     kind: SelectorWarningKind;
3189 interface ServerSocketOptions {
3190     binaryType?: TCPSocketBinaryType;
3193 interface SetHTMLOptions {
3194     sanitizer?: SanitizerConfig;
3197 interface ShadowRootInit {
3198     clonable?: boolean;
3199     delegatesFocus?: boolean;
3200     mode: ShadowRootMode;
3201     slotAssignment?: SlotAssignmentMode;
3204 interface ShareData {
3205     files?: File[];
3206     text?: string;
3207     title?: string;
3208     url?: string;
3211 interface SizeToContentConstraints {
3212     maxHeight?: number;
3213     maxWidth?: number;
3214     prefWidth?: number;
3217 interface SocketOptions {
3218     binaryType?: TCPSocketBinaryType;
3219     useSecureTransport?: boolean;
3222 interface SpeechRecognitionErrorInit extends EventInit {
3223     error?: SpeechRecognitionErrorCode;
3224     message?: string;
3227 interface SpeechRecognitionEventInit extends EventInit {
3228     emma?: Document | null;
3229     interpretation?: any;
3230     resultIndex?: number;
3231     results?: SpeechRecognitionResultList | null;
3234 interface SpeechSynthesisErrorEventInit extends SpeechSynthesisEventInit {
3235     error: SpeechSynthesisErrorCode;
3238 interface SpeechSynthesisEventInit extends EventInit {
3239     charIndex?: number;
3240     charLength?: number | null;
3241     elapsedTime?: number;
3242     name?: string;
3243     utterance: SpeechSynthesisUtterance;
3246 interface SplitRelativeOptions {
3247     allowCurrentDir?: boolean;
3248     allowEmpty?: boolean;
3249     allowParentDir?: boolean;
3252 interface StaticRangeInit {
3253     endContainer: Node;
3254     endOffset: number;
3255     startContainer: Node;
3256     startOffset: number;
3259 interface StereoPannerOptions extends AudioNodeOptions {
3260     pan?: number;
3263 interface StorageEstimate {
3264     quota?: number;
3265     usage?: number;
3268 interface StorageEventInit extends EventInit {
3269     key?: string | null;
3270     newValue?: string | null;
3271     oldValue?: string | null;
3272     storageArea?: Storage | null;
3273     url?: string;
3276 interface StreamFilterDataEventInit extends EventInit {
3277     data: ArrayBuffer;
3280 interface StreamPipeOptions {
3281     preventAbort?: boolean;
3282     preventCancel?: boolean;
3283     preventClose?: boolean;
3284     signal?: AbortSignal;
3287 interface StructuredSerializeOptions {
3288     transfer?: any[];
3291 interface StyleSheetApplicableStateChangeEventInit extends EventInit {
3292     applicable?: boolean;
3293     stylesheet?: CSSStyleSheet | null;
3296 interface StyleSheetRemovedEventInit extends EventInit {
3297     stylesheet?: CSSStyleSheet | null;
3300 interface SubmitEventInit extends EventInit {
3301     submitter?: HTMLElement | null;
3304 interface SupportsOptions {
3305     chrome?: boolean;
3306     quirks?: boolean;
3307     userAgent?: boolean;
3310 interface SvcOutputMetadata {
3311     temporalLayerId?: number;
3314 interface TCPServerSocketEventInit extends EventInit {
3315     socket?: TCPSocket | null;
3318 interface TCPSocketErrorEventInit extends EventInit {
3319     errorCode?: number;
3320     message?: string;
3321     name?: string;
3324 interface TCPSocketEventInit extends EventInit {
3325     data?: any;
3328 interface TaskControllerInit {
3329     priority?: TaskPriority;
3332 interface TaskPriorityChangeEventInit extends EventInit {
3333     previousPriority: TaskPriority;
3336 interface TelemetryStopwatchOptions {
3337     inSeconds?: boolean;
3340 interface TestInterfaceAsyncIterableSingleOptions {
3341     failToInit?: boolean;
3344 interface TestInterfaceAsyncIteratorOptions {
3345     blockingPromises?: Promise<any>[];
3346     failNextAfter?: number;
3347     multiplier?: number;
3348     throwFromNext?: boolean;
3349     throwFromReturn?: TestThrowingCallback;
3352 interface TestInterfaceJSDictionary {
3353     anyMember?: any;
3354     anySequenceMember?: any[];
3355     innerDictionary?: TestInterfaceJSDictionary2;
3356     objectMember?: any;
3357     objectOrStringMember?: any;
3358     objectRecordMember?: Record<string, any>;
3361 interface TestInterfaceJSDictionary2 {
3362     innerObject?: any;
3365 interface TestInterfaceJSUnionableDictionary {
3366     anyMember?: any;
3367     objectMember?: any;
3370 interface TextDecodeOptions {
3371     stream?: boolean;
3374 interface TextDecoderOptions {
3375     fatal?: boolean;
3376     ignoreBOM?: boolean;
3379 interface TextEncoderEncodeIntoResult {
3380     read?: number;
3381     written?: number;
3384 interface ThreadInfoDictionary {
3385     cpuCycleCount?: number;
3386     cpuTime?: number;
3387     name?: string;
3388     tid?: number;
3391 interface ToggleEventInit extends EventInit {
3392     newState?: string;
3393     oldState?: string;
3396 interface TouchEventInit extends EventModifierInit {
3397     changedTouches?: Touch[];
3398     targetTouches?: Touch[];
3399     touches?: Touch[];
3402 interface TouchInit {
3403     clientX?: number;
3404     clientY?: number;
3405     force?: number;
3406     identifier: number;
3407     pageX?: number;
3408     pageY?: number;
3409     radiusX?: number;
3410     radiusY?: number;
3411     rotationAngle?: number;
3412     screenX?: number;
3413     screenY?: number;
3414     target: EventTarget;
3417 interface TrackBuffersManagerDebugInfo {
3418     bufferSize?: number;
3419     evictable?: number;
3420     nextGetSampleIndex?: number;
3421     nextInsertionIndex?: number;
3422     nextSampleTime?: number;
3423     numSamples?: number;
3424     ranges?: BufferRange[];
3425     type?: string;
3428 interface TrackEventInit extends EventInit {
3429     track?: VideoTrack | AudioTrack | TextTrack | null;
3432 interface TransitionEventInit extends EventInit {
3433     elapsedTime?: number;
3434     propertyName?: string;
3435     pseudoElement?: string;
3438 interface TreeCellInfo {
3439     childElt?: string;
3440     col?: TreeColumn | null;
3441     row?: number;
3444 interface UDPMessageEventInit extends EventInit {
3445     data?: any;
3446     remoteAddress?: string;
3447     remotePort?: number;
3450 interface UDPOptions {
3451     addressReuse?: boolean;
3452     localAddress?: string;
3453     localPort?: number;
3454     loopback?: boolean;
3455     remoteAddress?: string;
3456     remotePort?: number;
3459 interface UIEventInit extends EventInit {
3460     detail?: number;
3461     view?: Window | null;
3464 interface UniFFIScaffoldingCallResult {
3465     code: UniFFIScaffoldingCallCode;
3466     data?: UniFFIScaffoldingType;
3467     internalErrorMessage?: string;
3470 interface UserProximityEventInit extends EventInit {
3471     near?: boolean;
3474 interface UtilityActorsDictionary {
3475     actorName?: WebIDLUtilityActorName;
3478 interface VRDisplayEventInit extends EventInit {
3479     display: VRDisplay;
3480     reason?: VRDisplayEventReason;
3483 interface VRLayer {
3484     leftBounds?: number[] | Float32Array;
3485     rightBounds?: number[] | Float32Array;
3486     source?: HTMLCanvasElement | null;
3489 interface ValidityStateFlags {
3490     badInput?: boolean;
3491     customError?: boolean;
3492     patternMismatch?: boolean;
3493     rangeOverflow?: boolean;
3494     rangeUnderflow?: boolean;
3495     stepMismatch?: boolean;
3496     tooLong?: boolean;
3497     tooShort?: boolean;
3498     typeMismatch?: boolean;
3499     valueMissing?: boolean;
3502 interface VideoColorSpaceInit {
3503     fullRange?: boolean | null;
3504     matrix?: VideoMatrixCoefficients | null;
3505     primaries?: VideoColorPrimaries | null;
3506     transfer?: VideoTransferCharacteristics | null;
3509 interface VideoConfiguration {
3510     bitrate: number;
3511     colorGamut?: ColorGamut;
3512     contentType: string;
3513     framerate: number;
3514     hasAlphaChannel?: boolean;
3515     hdrMetadataType?: HdrMetadataType;
3516     height: number;
3517     scalabilityMode?: string;
3518     transferFunction?: TransferFunction;
3519     width: number;
3522 interface VideoDecoderConfig {
3523     codec: string;
3524     codedHeight?: number;
3525     codedWidth?: number;
3526     colorSpace?: VideoColorSpaceInit;
3527     description?: ArrayBufferView | ArrayBuffer;
3528     displayAspectHeight?: number;
3529     displayAspectWidth?: number;
3530     hardwareAcceleration?: HardwareAcceleration;
3531     optimizeForLatency?: boolean;
3534 interface VideoDecoderInit {
3535     error: WebCodecsErrorCallback;
3536     output: VideoFrameOutputCallback;
3539 interface VideoDecoderSupport {
3540     config?: VideoDecoderConfig;
3541     supported?: boolean;
3544 interface VideoEncoderConfig {
3545     alpha?: AlphaOption;
3546     avc?: AvcEncoderConfig;
3547     bitrate?: number;
3548     bitrateMode?: VideoEncoderBitrateMode;
3549     codec: string;
3550     contentHint?: string;
3551     displayHeight?: number;
3552     displayWidth?: number;
3553     framerate?: number;
3554     hardwareAcceleration?: HardwareAcceleration;
3555     height: number;
3556     latencyMode?: LatencyMode;
3557     scalabilityMode?: string;
3558     width: number;
3561 interface VideoEncoderEncodeOptions {
3562     avc?: VideoEncoderEncodeOptionsForAvc;
3563     keyFrame?: boolean;
3566 interface VideoEncoderEncodeOptionsForAvc {
3567     quantizer?: number | null;
3570 interface VideoEncoderInit {
3571     error: WebCodecsErrorCallback;
3572     output: EncodedVideoChunkOutputCallback;
3575 interface VideoEncoderSupport {
3576     config?: VideoEncoderConfig;
3577     supported?: boolean;
3580 interface VideoFrameBufferInit {
3581     codedHeight: number;
3582     codedWidth: number;
3583     colorSpace?: VideoColorSpaceInit;
3584     displayHeight?: number;
3585     displayWidth?: number;
3586     duration?: number;
3587     format: VideoPixelFormat;
3588     layout?: PlaneLayout[];
3589     timestamp: number;
3590     visibleRect?: DOMRectInit;
3593 interface VideoFrameCopyToOptions {
3594     layout?: PlaneLayout[];
3595     rect?: DOMRectInit;
3598 interface VideoFrameInit {
3599     alpha?: AlphaOption;
3600     displayHeight?: number;
3601     displayWidth?: number;
3602     duration?: number;
3603     timestamp?: number;
3604     visibleRect?: DOMRectInit;
3607 interface VideoSinkDebugInfo {
3608     endPromiseHolderIsEmpty?: boolean;
3609     finished?: boolean;
3610     hasVideo?: boolean;
3611     isPlaying?: boolean;
3612     isStarted?: boolean;
3613     size?: number;
3614     videoFrameEndTime?: number;
3615     videoSinkEndRequestExists?: boolean;
3618 interface WaveShaperOptions extends AudioNodeOptions {
3619     curve?: number[] | Float32Array;
3620     oversample?: OverSampleType;
3623 interface WebAccessibleResourceInit {
3624     extension_ids?: string[] | null;
3625     matches?: MatchPatternSetOrStringSequence | null;
3626     resources: MatchGlobOrString[];
3629 interface WebExtensionContentScriptInit extends MozDocumentMatcherInit {
3630     cssPaths?: string[];
3631     jsPaths?: string[];
3632     runAt?: ContentScriptRunAt;
3635 interface WebExtensionInit {
3636     allowedOrigins: MatchPatternSetOrStringSequence;
3637     backgroundScripts?: string[] | null;
3638     backgroundTypeModule?: boolean;
3639     backgroundWorkerScript?: string | null;
3640     baseURL: string;
3641     contentScripts?: WebExtensionContentScriptInit[];
3642     extensionPageCSP?: string | null;
3643     id: string;
3644     ignoreQuarantine?: boolean;
3645     isPrivileged?: boolean;
3646     localizeCallback: WebExtensionLocalizeCallback;
3647     manifestVersion?: number;
3648     mozExtensionHostname: string;
3649     name?: string;
3650     permissions?: string[];
3651     readyPromise?: Promise<WebExtensionPolicy | null>;
3652     temporarilyInstalled?: boolean;
3653     type?: string;
3654     webAccessibleResources?: WebAccessibleResourceInit[];
3657 interface WebGLContextAttributes {
3658     alpha?: GLboolean;
3659     antialias?: GLboolean;
3660     colorSpace?: PredefinedColorSpace;
3661     depth?: GLboolean;
3662     failIfMajorPerformanceCaveat?: GLboolean;
3663     powerPreference?: WebGLPowerPreference;
3664     premultipliedAlpha?: GLboolean;
3665     preserveDrawingBuffer?: GLboolean;
3666     stencil?: GLboolean;
3667     xrCompatible?: boolean;
3670 interface WebGLContextEventInit extends EventInit {
3671     statusMessage?: string;
3674 interface WebTransportCloseInfo {
3675     closeCode?: number;
3676     reason?: UTF8String;
3679 interface WebTransportDatagramStats {
3680     droppedIncoming?: number;
3681     expiredOutgoing?: number;
3682     lostOutgoing?: number;
3683     timestamp?: DOMHighResTimeStamp;
3686 interface WebTransportErrorInit {
3687     message?: string;
3688     streamErrorCode?: number;
3691 interface WebTransportHash {
3692     algorithm?: string;
3693     value?: BufferSource;
3696 interface WebTransportOptions {
3697     allowPooling?: boolean;
3698     congestionControl?: WebTransportCongestionControl;
3699     requireUnreliable?: boolean;
3700     serverCertificateHashes?: WebTransportHash[];
3703 interface WebTransportReceiveStreamStats {
3704     bytesRead?: number;
3705     bytesReceived?: number;
3706     timestamp?: DOMHighResTimeStamp;
3709 interface WebTransportSendStreamOptions {
3710     sendOrder?: number | null;
3713 interface WebTransportSendStreamStats {
3714     bytesAcknowledged?: number;
3715     bytesSent?: number;
3716     bytesWritten?: number;
3717     timestamp?: DOMHighResTimeStamp;
3720 interface WebTransportStats {
3721     bytesReceived?: number;
3722     bytesSent?: number;
3723     datagrams?: WebTransportDatagramStats;
3724     minRtt?: DOMHighResTimeStamp;
3725     numIncomingStreamsCreated?: number;
3726     numOutgoingStreamsCreated?: number;
3727     packetsLost?: number;
3728     packetsReceived?: number;
3729     packetsSent?: number;
3730     rttVariation?: DOMHighResTimeStamp;
3731     smoothedRtt?: DOMHighResTimeStamp;
3732     timestamp?: DOMHighResTimeStamp;
3735 interface WebrtcGlobalMediaContext {
3736     hasH264Hardware: boolean;
3739 interface WebrtcGlobalStatisticsReport {
3740     reports?: RTCStatsReportInternal[];
3741     sdpHistories?: RTCSdpHistoryInternal[];
3744 interface WheelEventInit extends MouseEventInit {
3745     deltaMode?: number;
3746     deltaX?: number;
3747     deltaY?: number;
3748     deltaZ?: number;
3751 interface WindowActorChildOptions extends WindowActorSidedOptions {
3752     events?: Record<string, WindowActorEventListenerOptions>;
3753     observers?: string[];
3756 interface WindowActorEventListenerOptions extends AddEventListenerOptions {
3757     createActor?: boolean;
3760 interface WindowActorOptions {
3761     allFrames?: boolean;
3762     child?: WindowActorChildOptions;
3763     includeChrome?: boolean;
3764     matches?: string[];
3765     messageManagerGroups?: string[];
3766     parent?: WindowActorSidedOptions;
3767     remoteTypes?: UTF8String[];
3770 interface WindowActorSidedOptions {
3771     esModuleURI?: string;
3772     moduleURI?: string;
3775 interface WindowInfoDictionary {
3776     documentTitle?: string;
3777     documentURI?: URI | null;
3778     isInProcess?: boolean;
3779     isProcessRoot?: boolean;
3780     outerWindowId?: number;
3783 interface WindowPostMessageOptions extends StructuredSerializeOptions {
3784     targetOrigin?: string;
3787 interface WindowsFileAttributes {
3788     hidden?: boolean;
3789     readOnly?: boolean;
3790     system?: boolean;
3793 interface Wireframe {
3794     canvasBackground?: number;
3795     rects?: WireframeTaggedRect[];
3796     version?: number;
3799 interface WireframeTaggedRect {
3800     color?: number;
3801     height?: number;
3802     node?: Node | null;
3803     type?: WireframeRectType;
3804     width?: number;
3805     x?: number;
3806     y?: number;
3809 interface WorkerOptions {
3810     credentials?: RequestCredentials;
3811     name?: string;
3812     type?: WorkerType;
3815 interface WorkletOptions {
3816     credentials?: RequestCredentials;
3819 interface WriteOptions {
3820     backupFile?: string;
3821     compress?: boolean;
3822     flush?: boolean;
3823     mode?: WriteMode;
3824     tmpPath?: string;
3827 interface WriteParams {
3828     data?: BufferSource | Blob | UTF8String | null;
3829     position?: number | null;
3830     size?: number | null;
3831     type: WriteCommandType;
3834 interface XRInputSourceEventInit extends EventInit {
3835     frame: XRFrame;
3836     inputSource: XRInputSource;
3839 interface XRInputSourcesChangeEventInit extends EventInit {
3840     added: XRInputSource[];
3841     removed: XRInputSource[];
3842     session: XRSession;
3845 interface XRReferenceSpaceEventInit extends EventInit {
3846     referenceSpace: XRReferenceSpace;
3847     transform?: XRRigidTransform | null;
3850 interface XRRenderStateInit {
3851     baseLayer?: XRWebGLLayer | null;
3852     depthFar?: number;
3853     depthNear?: number;
3854     inlineVerticalFieldOfView?: number;
3857 interface XRSessionEventInit extends EventInit {
3858     session: XRSession;
3861 interface XRSessionInit {
3862     optionalFeatures?: any[];
3863     requiredFeatures?: any[];
3866 interface XRWebGLLayerInit {
3867     alpha?: boolean;
3868     antialias?: boolean;
3869     depth?: boolean;
3870     framebufferScaleFactor?: number;
3871     ignoreDepthValues?: boolean;
3872     stencil?: boolean;
3875 interface addonInstallOptions {
3876     hash?: string | null;
3877     url: string;
3880 type EventListener = ((event: Event) => void) | { handleEvent(event: Event): void; };
3882 type MessageListener = ((argument: ReceiveMessageArgument) => any) | { receiveMessage(argument: ReceiveMessageArgument): any; };
3884 type MozDocumentCallback = ((matcher: MozDocumentMatcher, window: WindowProxy) => void) | { onNewDocument(matcher: MozDocumentMatcher, window: WindowProxy): void; };
3886 type NodeFilter = ((node: Node) => number) | { acceptNode(node: Node): number; };
3888 declare var NodeFilter: {
3889     readonly FILTER_ACCEPT: 1;
3890     readonly FILTER_REJECT: 2;
3891     readonly FILTER_SKIP: 3;
3892     readonly SHOW_ALL: 0xFFFFFFFF;
3893     readonly SHOW_ELEMENT: 0x1;
3894     readonly SHOW_ATTRIBUTE: 0x2;
3895     readonly SHOW_TEXT: 0x4;
3896     readonly SHOW_CDATA_SECTION: 0x8;
3897     readonly SHOW_ENTITY_REFERENCE: 0x10;
3898     readonly SHOW_ENTITY: 0x20;
3899     readonly SHOW_PROCESSING_INSTRUCTION: 0x40;
3900     readonly SHOW_COMMENT: 0x80;
3901     readonly SHOW_DOCUMENT: 0x100;
3902     readonly SHOW_DOCUMENT_TYPE: 0x200;
3903     readonly SHOW_DOCUMENT_FRAGMENT: 0x400;
3904     readonly SHOW_NOTATION: 0x800;
3907 type ObserverCallback = ((observer: FetchObserver) => void) | { handleEvent(observer: FetchObserver): void; };
3909 type UncaughtRejectionObserver = ((p: any) => boolean) | { onLeftUncaught(p: any): boolean; };
3911 type XPathNSResolver = ((prefix: string | null) => string | null) | { lookupNamespaceURI(prefix: string | null): string | null; };
3914  * The ANGLE_instanced_arrays extension is part of the WebGL API and allows to draw the same object, or groups of similar objects multiple times, if they share the same vertex data, primitive count and type.
3916  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays)
3917  */
3918 interface ANGLE_instanced_arrays {
3919     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/drawArraysInstancedANGLE) */
3920     drawArraysInstancedANGLE(mode: GLenum, first: GLint, count: GLsizei, primcount: GLsizei): void;
3921     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/drawElementsInstancedANGLE) */
3922     drawElementsInstancedANGLE(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr, primcount: GLsizei): void;
3923     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/vertexAttribDivisorANGLE) */
3924     vertexAttribDivisorANGLE(index: GLuint, divisor: GLuint): void;
3925     readonly VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: 0x88FE;
3929  * A controller object that allows you to abort one or more DOM requests as and when desired.
3931  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController)
3932  */
3933 interface AbortController {
3934     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/signal) */
3935     readonly signal: AbortSignal;
3936     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/abort) */
3937     abort(reason?: any): void;
3940 declare var AbortController: {
3941     prototype: AbortController;
3942     new(): AbortController;
3943     isInstance(obj): obj is AbortController;
3946 interface AbortSignalEventMap {
3947     "abort": Event;
3951  * A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object.
3953  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal)
3954  */
3955 interface AbortSignal extends EventTarget {
3956     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/aborted) */
3957     readonly aborted: boolean;
3958     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_event) */
3959     onabort: ((this: AbortSignal, ev: Event) => any) | null;
3960     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/reason) */
3961     readonly reason: any;
3962     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/throwIfAborted) */
3963     throwIfAborted(): void;
3964     addEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
3965     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
3966     removeEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
3967     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
3970 declare var AbortSignal: {
3971     prototype: AbortSignal;
3972     new(): AbortSignal;
3973     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_static) */
3974     abort(reason?: any): AbortSignal;
3975     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/timeout_static) */
3976     timeout(milliseconds: number): AbortSignal;
3977     isInstance(obj): obj is AbortSignal;
3980 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange) */
3981 interface AbstractRange {
3982     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/collapsed) */
3983     readonly collapsed: boolean;
3984     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/endContainer) */
3985     readonly endContainer: Node;
3986     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/endOffset) */
3987     readonly endOffset: number;
3988     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/startContainer) */
3989     readonly startContainer: Node;
3990     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/startOffset) */
3991     readonly startOffset: number;
3994 declare var AbstractRange: {
3995     prototype: AbstractRange;
3996     new(): AbstractRange;
3997     isInstance(obj): obj is AbstractRange;
4000 interface AbstractWorkerEventMap {
4001     "error": ErrorEvent;
4004 interface AbstractWorker {
4005     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/error_event) */
4006     onerror: OnErrorEventHandler;
4007     addEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4008     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4009     removeEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4010     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4013 interface AccessibilityRole {
4014     role: string | null;
4017 interface AccessibleNode {
4018     readonly DOMNode: Node | null;
4019     activeDescendant: AccessibleNode | null;
4020     atomic: boolean | null;
4021     readonly attributes: string[];
4022     autocomplete: string | null;
4023     busy: boolean | null;
4024     checked: string | null;
4025     colCount: number | null;
4026     colIndex: number | null;
4027     colSpan: number | null;
4028     readonly computedRole: string;
4029     current: string | null;
4030     details: AccessibleNode | null;
4031     disabled: boolean | null;
4032     errorMessage: AccessibleNode | null;
4033     expanded: boolean | null;
4034     hasPopUp: string | null;
4035     hidden: boolean | null;
4036     invalid: string | null;
4037     keyShortcuts: string | null;
4038     label: string | null;
4039     level: number | null;
4040     live: string | null;
4041     modal: boolean | null;
4042     multiline: boolean | null;
4043     multiselectable: boolean | null;
4044     orientation: string | null;
4045     placeholder: string | null;
4046     posInSet: number | null;
4047     pressed: string | null;
4048     readOnly: boolean | null;
4049     relevant: string | null;
4050     required: boolean | null;
4051     role: string | null;
4052     roleDescription: string | null;
4053     rowCount: number | null;
4054     rowIndex: number | null;
4055     rowSpan: number | null;
4056     selected: boolean | null;
4057     setSize: number | null;
4058     sort: string | null;
4059     readonly states: string[];
4060     valueMax: number | null;
4061     valueMin: number | null;
4062     valueNow: number | null;
4063     valueText: string | null;
4064     get(attribute: string): any;
4065     has(...attributes: string[]): boolean;
4066     is(...states: string[]): boolean;
4069 declare var AccessibleNode: {
4070     prototype: AccessibleNode;
4071     new(): AccessibleNode;
4072     isInstance(obj): obj is AccessibleNode;
4075 interface Addon {
4076     readonly canUninstall: boolean;
4077     readonly description: string;
4078     readonly id: string;
4079     readonly isActive: boolean;
4080     readonly isEnabled: boolean;
4081     readonly name: string;
4082     readonly type: string;
4083     readonly version: string;
4084     setEnabled(value: boolean): Promise<void>;
4085     uninstall(): Promise<boolean>;
4088 declare var Addon: {
4089     prototype: Addon;
4090     new(): Addon;
4091     isInstance(obj): obj is Addon;
4094 interface AddonEvent extends Event {
4095     readonly id: string;
4098 declare var AddonEvent: {
4099     prototype: AddonEvent;
4100     new(type: string, eventInitDict: AddonEventInit): AddonEvent;
4101     isInstance(obj): obj is AddonEvent;
4104 interface AddonInstall extends EventTarget {
4105     "error": ErrorEvent;
4106     readonly maxProgress: number;
4107     readonly progress: number;
4108     readonly state: string;
4109     cancel(): Promise<void>;
4110     install(): Promise<void>;
4113 declare var AddonInstall: {
4114     prototype: AddonInstall;
4115     new(): AddonInstall;
4116     isInstance(obj): obj is AddonInstall;
4119 interface AddonManager extends EventTarget {
4120     readonly abuseReportPanelEnabled: boolean;
4121     createInstall(options?: addonInstallOptions): Promise<AddonInstall>;
4122     getAddonByID(id: string): Promise<Addon>;
4123     reportAbuse(id: string): Promise<boolean>;
4126 declare var AddonManager: {
4127     prototype: AddonManager;
4128     new(): AddonManager;
4129     isInstance(obj): obj is AddonManager;
4133  * A node able to provide real-time frequency and time-domain analysis information. It is an AudioNode that passes the audio stream unchanged from the input to the output, but allows you to take the generated data, process it, and create audio visualizations.
4135  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode)
4136  */
4137 interface AnalyserNode extends AudioNode, AudioNodePassThrough {
4138     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/fftSize) */
4139     fftSize: number;
4140     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/frequencyBinCount) */
4141     readonly frequencyBinCount: number;
4142     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/maxDecibels) */
4143     maxDecibels: number;
4144     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/minDecibels) */
4145     minDecibels: number;
4146     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/smoothingTimeConstant) */
4147     smoothingTimeConstant: number;
4148     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteFrequencyData) */
4149     getByteFrequencyData(array: Uint8Array): void;
4150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteTimeDomainData) */
4151     getByteTimeDomainData(array: Uint8Array): void;
4152     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatFrequencyData) */
4153     getFloatFrequencyData(array: Float32Array): void;
4154     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatTimeDomainData) */
4155     getFloatTimeDomainData(array: Float32Array): void;
4158 declare var AnalyserNode: {
4159     prototype: AnalyserNode;
4160     new(context: BaseAudioContext, options?: AnalyserOptions): AnalyserNode;
4161     isInstance(obj): obj is AnalyserNode;
4164 interface Animatable {
4165     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animate) */
4166     animate(keyframes: any, options?: UnrestrictedDoubleOrKeyframeAnimationOptions): Animation;
4167     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAnimations) */
4168     getAnimations(options?: GetAnimationsOptions): Animation[];
4171 interface AnimationEventMap {
4172     "cancel": Event;
4173     "finish": Event;
4174     "remove": Event;
4177 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation) */
4178 interface Animation extends EventTarget {
4179     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/currentTime) */
4180     currentTime: number | null;
4181     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/effect) */
4182     effect: AnimationEffect | null;
4183     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/finished) */
4184     readonly finished: Promise<Animation>;
4185     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/id) */
4186     id: string;
4187     readonly isRunningOnCompositor: boolean;
4188     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/cancel_event) */
4189     oncancel: ((this: Animation, ev: Event) => any) | null;
4190     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/finish_event) */
4191     onfinish: ((this: Animation, ev: Event) => any) | null;
4192     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/remove_event) */
4193     onremove: ((this: Animation, ev: Event) => any) | null;
4194     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/pending) */
4195     readonly pending: boolean;
4196     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/playState) */
4197     readonly playState: AnimationPlayState;
4198     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/playbackRate) */
4199     playbackRate: number;
4200     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/ready) */
4201     readonly ready: Promise<Animation>;
4202     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/replaceState) */
4203     readonly replaceState: AnimationReplaceState;
4204     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/startTime) */
4205     startTime: number | null;
4206     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/timeline) */
4207     timeline: AnimationTimeline | null;
4208     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/cancel) */
4209     cancel(): void;
4210     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/commitStyles) */
4211     commitStyles(): void;
4212     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/finish) */
4213     finish(): void;
4214     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/pause) */
4215     pause(): void;
4216     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/persist) */
4217     persist(): void;
4218     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/play) */
4219     play(): void;
4220     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/reverse) */
4221     reverse(): void;
4222     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/updatePlaybackRate) */
4223     updatePlaybackRate(playbackRate: number): void;
4224     addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4225     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4226     removeEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4227     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4230 declare var Animation: {
4231     prototype: Animation;
4232     new(effect?: AnimationEffect | null, timeline?: AnimationTimeline | null): Animation;
4233     isInstance(obj): obj is Animation;
4236 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect) */
4237 interface AnimationEffect {
4238     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getComputedTiming) */
4239     getComputedTiming(): ComputedEffectTiming;
4240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getTiming) */
4241     getTiming(): EffectTiming;
4242     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect/updateTiming) */
4243     updateTiming(timing?: OptionalEffectTiming): void;
4246 declare var AnimationEffect: {
4247     prototype: AnimationEffect;
4248     new(): AnimationEffect;
4249     isInstance(obj): obj is AnimationEffect;
4253  * Events providing information related to animations.
4255  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent)
4256  */
4257 interface AnimationEvent extends Event {
4258     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent/animationName) */
4259     readonly animationName: string;
4260     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent/elapsedTime) */
4261     readonly elapsedTime: number;
4262     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent/pseudoElement) */
4263     readonly pseudoElement: string;
4266 declare var AnimationEvent: {
4267     prototype: AnimationEvent;
4268     new(type: string, eventInitDict?: AnimationEventInit): AnimationEvent;
4269     isInstance(obj): obj is AnimationEvent;
4272 interface AnimationFrameProvider {
4273     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/cancelAnimationFrame) */
4274     cancelAnimationFrame(handle: number): void;
4275     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/requestAnimationFrame) */
4276     requestAnimationFrame(callback: FrameRequestCallback): number;
4279 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationPlaybackEvent) */
4280 interface AnimationPlaybackEvent extends Event {
4281     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationPlaybackEvent/currentTime) */
4282     readonly currentTime: number | null;
4283     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationPlaybackEvent/timelineTime) */
4284     readonly timelineTime: number | null;
4287 declare var AnimationPlaybackEvent: {
4288     prototype: AnimationPlaybackEvent;
4289     new(type: string, eventInitDict?: AnimationPlaybackEventInit): AnimationPlaybackEvent;
4290     isInstance(obj): obj is AnimationPlaybackEvent;
4293 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationTimeline) */
4294 interface AnimationTimeline {
4295     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationTimeline/currentTime) */
4296     readonly currentTime: number | null;
4299 declare var AnimationTimeline: {
4300     prototype: AnimationTimeline;
4301     new(): AnimationTimeline;
4302     isInstance(obj): obj is AnimationTimeline;
4305 interface AnonymousContent {
4306     readonly root: ShadowRoot;
4309 declare var AnonymousContent: {
4310     prototype: AnonymousContent;
4311     new(): AnonymousContent;
4312     isInstance(obj): obj is AnonymousContent;
4315 interface AriaAttributes {
4316     ariaAtomic: string | null;
4317     ariaAutoComplete: string | null;
4318     ariaBusy: string | null;
4319     ariaChecked: string | null;
4320     ariaColCount: string | null;
4321     ariaColIndex: string | null;
4322     ariaColIndexText: string | null;
4323     ariaColSpan: string | null;
4324     ariaCurrent: string | null;
4325     ariaDescription: string | null;
4326     ariaDisabled: string | null;
4327     ariaExpanded: string | null;
4328     ariaHasPopup: string | null;
4329     ariaHidden: string | null;
4330     ariaInvalid: string | null;
4331     ariaKeyShortcuts: string | null;
4332     ariaLabel: string | null;
4333     ariaLevel: string | null;
4334     ariaLive: string | null;
4335     ariaModal: string | null;
4336     ariaMultiLine: string | null;
4337     ariaMultiSelectable: string | null;
4338     ariaOrientation: string | null;
4339     ariaPlaceholder: string | null;
4340     ariaPosInSet: string | null;
4341     ariaPressed: string | null;
4342     ariaReadOnly: string | null;
4343     ariaRelevant: string | null;
4344     ariaRequired: string | null;
4345     ariaRoleDescription: string | null;
4346     ariaRowCount: string | null;
4347     ariaRowIndex: string | null;
4348     ariaRowIndexText: string | null;
4349     ariaRowSpan: string | null;
4350     ariaSelected: string | null;
4351     ariaSetSize: string | null;
4352     ariaSort: string | null;
4353     ariaValueMax: string | null;
4354     ariaValueMin: string | null;
4355     ariaValueNow: string | null;
4356     ariaValueText: string | null;
4360  * A DOM element's attribute as an object. In most DOM methods, you will probably directly retrieve the attribute as a string (e.g., Element.getAttribute(), but certain functions (e.g., Element.getAttributeNode()) or means of iterating give Attr types.
4362  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr)
4363  */
4364 interface Attr extends Node {
4365     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/localName) */
4366     readonly localName: string;
4367     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/name) */
4368     readonly name: string;
4369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/namespaceURI) */
4370     readonly namespaceURI: string | null;
4371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/ownerElement) */
4372     readonly ownerElement: Element | null;
4373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/prefix) */
4374     readonly prefix: string | null;
4375     /**
4376      * @deprecated
4377      *
4378      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/specified)
4379      */
4380     readonly specified: boolean;
4381     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/value) */
4382     value: string;
4385 declare var Attr: {
4386     prototype: Attr;
4387     new(): Attr;
4388     isInstance(obj): obj is Attr;
4392  * A short audio asset residing in memory, created from an audio file using the AudioContext.decodeAudioData() method, or from raw data using AudioContext.createBuffer(). Once put into an AudioBuffer, the audio can then be played by being passed into an AudioBufferSourceNode.
4394  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer)
4395  */
4396 interface AudioBuffer {
4397     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/duration) */
4398     readonly duration: number;
4399     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/length) */
4400     readonly length: number;
4401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/numberOfChannels) */
4402     readonly numberOfChannels: number;
4403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/sampleRate) */
4404     readonly sampleRate: number;
4405     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/copyFromChannel) */
4406     copyFromChannel(destination: Float32Array, channelNumber: number, startInChannel?: number): void;
4407     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/copyToChannel) */
4408     copyToChannel(source: Float32Array, channelNumber: number, startInChannel?: number): void;
4409     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/getChannelData) */
4410     getChannelData(channel: number): Float32Array;
4413 declare var AudioBuffer: {
4414     prototype: AudioBuffer;
4415     new(options: AudioBufferOptions): AudioBuffer;
4416     isInstance(obj): obj is AudioBuffer;
4420  * An AudioScheduledSourceNode which represents an audio source consisting of in-memory audio data, stored in an AudioBuffer. It's especially useful for playing back audio which has particularly stringent timing accuracy requirements, such as for sounds that must match a specific rhythm and can be kept in memory rather than being played from disk or the network.
4422  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode)
4423  */
4424 interface AudioBufferSourceNode extends AudioScheduledSourceNode, AudioNodePassThrough {
4425     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/buffer) */
4426     buffer: AudioBuffer | null;
4427     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/detune) */
4428     readonly detune: AudioParam;
4429     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/loop) */
4430     loop: boolean;
4431     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/loopEnd) */
4432     loopEnd: number;
4433     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/loopStart) */
4434     loopStart: number;
4435     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/playbackRate) */
4436     readonly playbackRate: AudioParam;
4437     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/start) */
4438     start(when?: number, grainOffset?: number, grainDuration?: number): void;
4439     addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioBufferSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4440     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4441     removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioBufferSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4442     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4445 declare var AudioBufferSourceNode: {
4446     prototype: AudioBufferSourceNode;
4447     new(context: BaseAudioContext, options?: AudioBufferSourceOptions): AudioBufferSourceNode;
4448     isInstance(obj): obj is AudioBufferSourceNode;
4452  * An audio-processing graph built from audio modules linked together, each represented by an AudioNode.
4454  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext)
4455  */
4456 interface AudioContext extends BaseAudioContext {
4457     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/baseLatency) */
4458     readonly baseLatency: number;
4459     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/outputLatency) */
4460     readonly outputLatency: number;
4461     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/close) */
4462     close(): Promise<void>;
4463     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaElementSource) */
4464     createMediaElementSource(mediaElement: HTMLMediaElement): MediaElementAudioSourceNode;
4465     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaStreamDestination) */
4466     createMediaStreamDestination(): MediaStreamAudioDestinationNode;
4467     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaStreamSource) */
4468     createMediaStreamSource(mediaStream: MediaStream): MediaStreamAudioSourceNode;
4469     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaStreamTrackSource) */
4470     createMediaStreamTrackSource(mediaStreamTrack: MediaStreamTrack): MediaStreamTrackAudioSourceNode;
4471     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/getOutputTimestamp) */
4472     getOutputTimestamp(): AudioTimestamp;
4473     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/suspend) */
4474     suspend(): Promise<void>;
4475     addEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: AudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4476     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4477     removeEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: AudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4478     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4481 declare var AudioContext: {
4482     prototype: AudioContext;
4483     new(contextOptions?: AudioContextOptions): AudioContext;
4484     isInstance(obj): obj is AudioContext;
4488  * AudioDestinationNode has no output (as it is the output, no more AudioNode can be linked after it in the audio graph) and one input. The number of channels in the input must be between 0 and the maxChannelCount value or an exception is raised.
4490  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioDestinationNode)
4491  */
4492 interface AudioDestinationNode extends AudioNode {
4493     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioDestinationNode/maxChannelCount) */
4494     readonly maxChannelCount: number;
4497 declare var AudioDestinationNode: {
4498     prototype: AudioDestinationNode;
4499     new(): AudioDestinationNode;
4500     isInstance(obj): obj is AudioDestinationNode;
4504  * The position and orientation of the unique person listening to the audio scene, and is used in audio spatialization. All PannerNodes spatialize in relation to the AudioListener stored in the BaseAudioContext.listener attribute.
4506  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener)
4507  */
4508 interface AudioListener {
4509     /**
4510      * @deprecated
4511      *
4512      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/setOrientation)
4513      */
4514     setOrientation(x: number, y: number, z: number, xUp: number, yUp: number, zUp: number): void;
4515     /**
4516      * @deprecated
4517      *
4518      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/setPosition)
4519      */
4520     setPosition(x: number, y: number, z: number): void;
4523 declare var AudioListener: {
4524     prototype: AudioListener;
4525     new(): AudioListener;
4526     isInstance(obj): obj is AudioListener;
4530  * A generic interface for representing an audio processing module. Examples include:
4532  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode)
4533  */
4534 interface AudioNode extends EventTarget {
4535     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/channelCount) */
4536     channelCount: number;
4537     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/channelCountMode) */
4538     channelCountMode: ChannelCountMode;
4539     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/channelInterpretation) */
4540     channelInterpretation: ChannelInterpretation;
4541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/context) */
4542     readonly context: BaseAudioContext;
4543     readonly id: number;
4544     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/numberOfInputs) */
4545     readonly numberOfInputs: number;
4546     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/numberOfOutputs) */
4547     readonly numberOfOutputs: number;
4548     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/connect) */
4549     connect(destination: AudioNode, output?: number, input?: number): AudioNode;
4550     connect(destination: AudioParam, output?: number): void;
4551     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect) */
4552     disconnect(): void;
4553     disconnect(output: number): void;
4554     disconnect(destination: AudioNode): void;
4555     disconnect(destination: AudioNode, output: number): void;
4556     disconnect(destination: AudioNode, output: number, input: number): void;
4557     disconnect(destination: AudioParam): void;
4558     disconnect(destination: AudioParam, output: number): void;
4561 declare var AudioNode: {
4562     prototype: AudioNode;
4563     new(): AudioNode;
4564     isInstance(obj): obj is AudioNode;
4567 interface AudioNodePassThrough {
4568     passThrough: boolean;
4572  * The Web Audio API's AudioParam interface represents an audio-related parameter, usually a parameter of an AudioNode (such as GainNode.gain).
4574  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam)
4575  */
4576 interface AudioParam {
4577     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/defaultValue) */
4578     readonly defaultValue: number;
4579     readonly isTrackSuspended: boolean;
4580     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/maxValue) */
4581     readonly maxValue: number;
4582     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/minValue) */
4583     readonly minValue: number;
4584     readonly name: string;
4585     readonly parentNodeId: number;
4586     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/value) */
4587     value: number;
4588     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/cancelScheduledValues) */
4589     cancelScheduledValues(startTime: number): AudioParam;
4590     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/exponentialRampToValueAtTime) */
4591     exponentialRampToValueAtTime(value: number, endTime: number): AudioParam;
4592     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/linearRampToValueAtTime) */
4593     linearRampToValueAtTime(value: number, endTime: number): AudioParam;
4594     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setTargetAtTime) */
4595     setTargetAtTime(target: number, startTime: number, timeConstant: number): AudioParam;
4596     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueAtTime) */
4597     setValueAtTime(value: number, startTime: number): AudioParam;
4598     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueCurveAtTime) */
4599     setValueCurveAtTime(values: number[] | Float32Array, startTime: number, duration: number): AudioParam;
4602 declare var AudioParam: {
4603     prototype: AudioParam;
4604     new(): AudioParam;
4605     isInstance(obj): obj is AudioParam;
4609  * Available only in secure contexts.
4611  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParamMap)
4612  */
4613 interface AudioParamMap {
4614     forEach(callbackfn: (value: AudioParam, key: string, parent: AudioParamMap) => void, thisArg?: any): void;
4617 declare var AudioParamMap: {
4618     prototype: AudioParamMap;
4619     new(): AudioParamMap;
4620     isInstance(obj): obj is AudioParamMap;
4624  * The Web Audio API events that occur when a ScriptProcessorNode input buffer is ready to be processed.
4625  * @deprecated As of the August 29 2014 Web Audio API spec publication, this feature has been marked as deprecated, and is soon to be replaced by AudioWorklet.
4627  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent)
4628  */
4629 interface AudioProcessingEvent extends Event {
4630     /**
4631      * @deprecated
4632      *
4633      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent/inputBuffer)
4634      */
4635     readonly inputBuffer: AudioBuffer;
4636     /**
4637      * @deprecated
4638      *
4639      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent/outputBuffer)
4640      */
4641     readonly outputBuffer: AudioBuffer;
4642     /**
4643      * @deprecated
4644      *
4645      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent/playbackTime)
4646      */
4647     readonly playbackTime: number;
4650 /** @deprecated */
4651 declare var AudioProcessingEvent: {
4652     prototype: AudioProcessingEvent;
4653     new(): AudioProcessingEvent;
4654     isInstance(obj): obj is AudioProcessingEvent;
4657 interface AudioScheduledSourceNodeEventMap {
4658     "ended": Event;
4661 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode) */
4662 interface AudioScheduledSourceNode extends AudioNode {
4663     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode/ended_event) */
4664     onended: ((this: AudioScheduledSourceNode, ev: Event) => any) | null;
4665     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode/start) */
4666     start(when?: number): void;
4667     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode/stop) */
4668     stop(when?: number): void;
4669     addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioScheduledSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4670     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4671     removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioScheduledSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4672     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4675 declare var AudioScheduledSourceNode: {
4676     prototype: AudioScheduledSourceNode;
4677     new(): AudioScheduledSourceNode;
4678     isInstance(obj): obj is AudioScheduledSourceNode;
4682  * A single audio track from one of the HTML media elements, <audio> or <video>.
4684  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrack)
4685  */
4686 interface AudioTrack {
4687     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrack/enabled) */
4688     enabled: boolean;
4689     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrack/id) */
4690     readonly id: string;
4691     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrack/kind) */
4692     readonly kind: string;
4693     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrack/label) */
4694     readonly label: string;
4695     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrack/language) */
4696     readonly language: string;
4699 declare var AudioTrack: {
4700     prototype: AudioTrack;
4701     new(): AudioTrack;
4702     isInstance(obj): obj is AudioTrack;
4705 interface AudioTrackListEventMap {
4706     "addtrack": Event;
4707     "change": Event;
4708     "removetrack": Event;
4712  * Used to represent a list of the audio tracks contained within a given HTML media element, with each track represented by a separate AudioTrack object in the list.
4714  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrackList)
4715  */
4716 interface AudioTrackList extends EventTarget {
4717     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrackList/length) */
4718     readonly length: number;
4719     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrackList/addtrack_event) */
4720     onaddtrack: ((this: AudioTrackList, ev: Event) => any) | null;
4721     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrackList/change_event) */
4722     onchange: ((this: AudioTrackList, ev: Event) => any) | null;
4723     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrackList/removetrack_event) */
4724     onremovetrack: ((this: AudioTrackList, ev: Event) => any) | null;
4725     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioTrackList/getTrackById) */
4726     getTrackById(id: string): AudioTrack | null;
4727     addEventListener<K extends keyof AudioTrackListEventMap>(type: K, listener: (this: AudioTrackList, ev: AudioTrackListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4728     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4729     removeEventListener<K extends keyof AudioTrackListEventMap>(type: K, listener: (this: AudioTrackList, ev: AudioTrackListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4730     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4731     [index: number]: AudioTrack;
4734 declare var AudioTrackList: {
4735     prototype: AudioTrackList;
4736     new(): AudioTrackList;
4737     isInstance(obj): obj is AudioTrackList;
4741  * Available only in secure contexts.
4743  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorklet)
4744  */
4745 interface AudioWorklet extends Worklet {
4748 declare var AudioWorklet: {
4749     prototype: AudioWorklet;
4750     new(): AudioWorklet;
4751     isInstance(obj): obj is AudioWorklet;
4754 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope) */
4755 interface AudioWorkletGlobalScope extends WorkletGlobalScope {
4756     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/currentFrame) */
4757     readonly currentFrame: number;
4758     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/currentTime) */
4759     readonly currentTime: number;
4760     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/sampleRate) */
4761     readonly sampleRate: number;
4762     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/registerProcessor) */
4763     registerProcessor(name: string, processorCtor: AudioWorkletProcessorConstructor): void;
4766 declare var AudioWorkletGlobalScope: {
4767     prototype: AudioWorkletGlobalScope;
4768     new(): AudioWorkletGlobalScope;
4769     isInstance(obj): obj is AudioWorkletGlobalScope;
4772 interface AudioWorkletNodeEventMap {
4773     "processorerror": Event;
4777  * Available only in secure contexts.
4779  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode)
4780  */
4781 interface AudioWorkletNode extends AudioNode {
4782     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode/processorerror_event) */
4783     onprocessorerror: ((this: AudioWorkletNode, ev: Event) => any) | null;
4784     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode/parameters) */
4785     readonly parameters: AudioParamMap;
4786     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode/port) */
4787     readonly port: MessagePort;
4788     addEventListener<K extends keyof AudioWorkletNodeEventMap>(type: K, listener: (this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4789     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4790     removeEventListener<K extends keyof AudioWorkletNodeEventMap>(type: K, listener: (this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4791     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4794 declare var AudioWorkletNode: {
4795     prototype: AudioWorkletNode;
4796     new(context: BaseAudioContext, name: string, options?: AudioWorkletNodeOptions): AudioWorkletNode;
4797     isInstance(obj): obj is AudioWorkletNode;
4800 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletProcessor) */
4801 interface AudioWorkletProcessor {
4802     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletProcessor/port) */
4803     readonly port: MessagePort;
4806 declare var AudioWorkletProcessor: {
4807     prototype: AudioWorkletProcessor;
4808     new(): AudioWorkletProcessor;
4809     isInstance(obj): obj is AudioWorkletProcessor;
4813  * Available only in secure contexts.
4815  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse)
4816  */
4817 interface AuthenticatorAssertionResponse extends AuthenticatorResponse {
4818     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse/authenticatorData) */
4819     readonly authenticatorData: ArrayBuffer;
4820     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse/signature) */
4821     readonly signature: ArrayBuffer;
4822     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse/userHandle) */
4823     readonly userHandle: ArrayBuffer | null;
4826 declare var AuthenticatorAssertionResponse: {
4827     prototype: AuthenticatorAssertionResponse;
4828     new(): AuthenticatorAssertionResponse;
4829     isInstance(obj): obj is AuthenticatorAssertionResponse;
4833  * Available only in secure contexts.
4835  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse)
4836  */
4837 interface AuthenticatorAttestationResponse extends AuthenticatorResponse {
4838     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/attestationObject) */
4839     readonly attestationObject: ArrayBuffer;
4840     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getAuthenticatorData) */
4841     getAuthenticatorData(): ArrayBuffer;
4842     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getPublicKey) */
4843     getPublicKey(): ArrayBuffer | null;
4844     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getPublicKeyAlgorithm) */
4845     getPublicKeyAlgorithm(): COSEAlgorithmIdentifier;
4846     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getTransports) */
4847     getTransports(): string[];
4850 declare var AuthenticatorAttestationResponse: {
4851     prototype: AuthenticatorAttestationResponse;
4852     new(): AuthenticatorAttestationResponse;
4853     isInstance(obj): obj is AuthenticatorAttestationResponse;
4857  * Available only in secure contexts.
4859  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorResponse)
4860  */
4861 interface AuthenticatorResponse {
4862     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorResponse/clientDataJSON) */
4863     readonly clientDataJSON: ArrayBuffer;
4866 declare var AuthenticatorResponse: {
4867     prototype: AuthenticatorResponse;
4868     new(): AuthenticatorResponse;
4869     isInstance(obj): obj is AuthenticatorResponse;
4872 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BarProp) */
4873 interface BarProp {
4874     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BarProp/visible) */
4875     visible: boolean;
4878 declare var BarProp: {
4879     prototype: BarProp;
4880     new(): BarProp;
4881     isInstance(obj): obj is BarProp;
4884 interface BaseAudioContextEventMap {
4885     "statechange": Event;
4888 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext) */
4889 interface BaseAudioContext extends EventTarget {
4890     /**
4891      * Available only in secure contexts.
4892      *
4893      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/audioWorklet)
4894      */
4895     readonly audioWorklet: AudioWorklet;
4896     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/currentTime) */
4897     readonly currentTime: number;
4898     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/destination) */
4899     readonly destination: AudioDestinationNode;
4900     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/listener) */
4901     readonly listener: AudioListener;
4902     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/statechange_event) */
4903     onstatechange: ((this: BaseAudioContext, ev: Event) => any) | null;
4904     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/sampleRate) */
4905     readonly sampleRate: number;
4906     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/state) */
4907     readonly state: AudioContextState;
4908     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createAnalyser) */
4909     createAnalyser(): AnalyserNode;
4910     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBiquadFilter) */
4911     createBiquadFilter(): BiquadFilterNode;
4912     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBuffer) */
4913     createBuffer(numberOfChannels: number, length: number, sampleRate: number): AudioBuffer;
4914     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBufferSource) */
4915     createBufferSource(): AudioBufferSourceNode;
4916     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createChannelMerger) */
4917     createChannelMerger(numberOfInputs?: number): ChannelMergerNode;
4918     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createChannelSplitter) */
4919     createChannelSplitter(numberOfOutputs?: number): ChannelSplitterNode;
4920     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createConstantSource) */
4921     createConstantSource(): ConstantSourceNode;
4922     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createConvolver) */
4923     createConvolver(): ConvolverNode;
4924     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createDelay) */
4925     createDelay(maxDelayTime?: number): DelayNode;
4926     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createDynamicsCompressor) */
4927     createDynamicsCompressor(): DynamicsCompressorNode;
4928     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createGain) */
4929     createGain(): GainNode;
4930     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createIIRFilter) */
4931     createIIRFilter(feedforward: number[], feedback: number[]): IIRFilterNode;
4932     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createOscillator) */
4933     createOscillator(): OscillatorNode;
4934     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPanner) */
4935     createPanner(): PannerNode;
4936     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPeriodicWave) */
4937     createPeriodicWave(real: number[] | Float32Array, imag: number[] | Float32Array, constraints?: PeriodicWaveConstraints): PeriodicWave;
4938     /**
4939      * @deprecated
4940      *
4941      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createScriptProcessor)
4942      */
4943     createScriptProcessor(bufferSize?: number, numberOfInputChannels?: number, numberOfOutputChannels?: number): ScriptProcessorNode;
4944     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createStereoPanner) */
4945     createStereoPanner(): StereoPannerNode;
4946     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createWaveShaper) */
4947     createWaveShaper(): WaveShaperNode;
4948     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/decodeAudioData) */
4949     decodeAudioData(audioData: ArrayBuffer, successCallback?: DecodeSuccessCallback, errorCallback?: DecodeErrorCallback): Promise<AudioBuffer>;
4950     resume(): Promise<void>;
4951     addEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: BaseAudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4952     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4953     removeEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: BaseAudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4954     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4957 declare var BaseAudioContext: {
4958     prototype: BaseAudioContext;
4959     new(): BaseAudioContext;
4960     isInstance(obj): obj is BaseAudioContext;
4963 interface BatteryManagerEventMap {
4964     "chargingchange": Event;
4965     "chargingtimechange": Event;
4966     "dischargingtimechange": Event;
4967     "levelchange": Event;
4970 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager) */
4971 interface BatteryManager extends EventTarget {
4972     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/charging) */
4973     readonly charging: boolean;
4974     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/chargingTime) */
4975     readonly chargingTime: number;
4976     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/dischargingTime) */
4977     readonly dischargingTime: number;
4978     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/level) */
4979     readonly level: number;
4980     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/chargingchange_event) */
4981     onchargingchange: ((this: BatteryManager, ev: Event) => any) | null;
4982     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/chargingtimechange_event) */
4983     onchargingtimechange: ((this: BatteryManager, ev: Event) => any) | null;
4984     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/dischargingtimechange_event) */
4985     ondischargingtimechange: ((this: BatteryManager, ev: Event) => any) | null;
4986     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BatteryManager/levelchange_event) */
4987     onlevelchange: ((this: BatteryManager, ev: Event) => any) | null;
4988     addEventListener<K extends keyof BatteryManagerEventMap>(type: K, listener: (this: BatteryManager, ev: BatteryManagerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4989     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4990     removeEventListener<K extends keyof BatteryManagerEventMap>(type: K, listener: (this: BatteryManager, ev: BatteryManagerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4991     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4994 declare var BatteryManager: {
4995     prototype: BatteryManager;
4996     new(): BatteryManager;
4997     isInstance(obj): obj is BatteryManager;
5001  * The beforeunload event is fired when the window, the document and its resources are about to be unloaded.
5003  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BeforeUnloadEvent)
5004  */
5005 interface BeforeUnloadEvent extends Event {
5006     /** @deprecated */
5007     returnValue: boolean;
5010 declare var BeforeUnloadEvent: {
5011     prototype: BeforeUnloadEvent;
5012     new(): BeforeUnloadEvent;
5013     isInstance(obj): obj is BeforeUnloadEvent;
5017  * A simple low-order filter, and is created using the AudioContext.createBiquadFilter() method. It is an AudioNode that can represent different kinds of filters, tone control devices, and graphic equalizers.
5019  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode)
5020  */
5021 interface BiquadFilterNode extends AudioNode, AudioNodePassThrough {
5022     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/Q) */
5023     readonly Q: AudioParam;
5024     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/detune) */
5025     readonly detune: AudioParam;
5026     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/frequency) */
5027     readonly frequency: AudioParam;
5028     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/gain) */
5029     readonly gain: AudioParam;
5030     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/type) */
5031     type: BiquadFilterType;
5032     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/getFrequencyResponse) */
5033     getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array): void;
5036 declare var BiquadFilterNode: {
5037     prototype: BiquadFilterNode;
5038     new(context: BaseAudioContext, options?: BiquadFilterOptions): BiquadFilterNode;
5039     isInstance(obj): obj is BiquadFilterNode;
5043  * A file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The File interface is based on Blob, inheriting blob functionality and expanding it to support files on the user's system.
5045  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob)
5046  */
5047 interface Blob {
5048     readonly blobImplType: string;
5049     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/size) */
5050     readonly size: number;
5051     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/type) */
5052     readonly type: string;
5053     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/arrayBuffer) */
5054     arrayBuffer(): Promise<ArrayBuffer>;
5055     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/slice) */
5056     slice(start?: number, end?: number, contentType?: string): Blob;
5057     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/stream) */
5058     stream(): ReadableStream;
5059     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/text) */
5060     text(): Promise<string>;
5063 declare var Blob: {
5064     prototype: Blob;
5065     new(blobParts?: BlobPart[], options?: BlobPropertyBag): Blob;
5066     isInstance(obj): obj is Blob;
5069 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BlobEvent) */
5070 interface BlobEvent extends Event {
5071     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BlobEvent/data) */
5072     readonly data: Blob;
5075 declare var BlobEvent: {
5076     prototype: BlobEvent;
5077     new(type: string, eventInitDict: BlobEventInit): BlobEvent;
5078     isInstance(obj): obj is BlobEvent;
5081 interface Body {
5082     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed) */
5083     readonly bodyUsed: boolean;
5084     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer) */
5085     arrayBuffer(): Promise<ArrayBuffer>;
5086     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/blob) */
5087     blob(): Promise<Blob>;
5088     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/formData) */
5089     formData(): Promise<FormData>;
5090     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/json) */
5091     json(): Promise<JSON>;
5092     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/text) */
5093     text(): Promise<string>;
5096 interface BroadcastChannelEventMap {
5097     "message": Event;
5098     "messageerror": Event;
5101 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel) */
5102 interface BroadcastChannel extends EventTarget {
5103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/name) */
5104     readonly name: string;
5105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/message_event) */
5106     onmessage: ((this: BroadcastChannel, ev: Event) => any) | null;
5107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/messageerror_event) */
5108     onmessageerror: ((this: BroadcastChannel, ev: Event) => any) | null;
5109     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/close) */
5110     close(): void;
5111     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/postMessage) */
5112     postMessage(message: any): void;
5113     addEventListener<K extends keyof BroadcastChannelEventMap>(type: K, listener: (this: BroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
5114     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
5115     removeEventListener<K extends keyof BroadcastChannelEventMap>(type: K, listener: (this: BroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
5116     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
5119 declare var BroadcastChannel: {
5120     prototype: BroadcastChannel;
5121     new(channel: string): BroadcastChannel;
5122     isInstance(obj): obj is BroadcastChannel;
5125 interface BrowsingContext extends LoadContextMixin {
5126     allowJavascript: boolean;
5127     readonly ancestorsAreCurrent: boolean;
5128     authorStyleDisabledDefault: boolean;
5129     browserId: number;
5130     readonly childOffset: number;
5131     readonly childSessionHistory: ChildSHistory | null;
5132     readonly children: BrowsingContext[];
5133     readonly createdDynamically: boolean;
5134     readonly currentWindowContext: WindowContext | null;
5135     customPlatform: string;
5136     customUserAgent: string;
5137     defaultLoadFlags: number;
5138     displayMode: DisplayMode;
5139     readonly docShell: nsIDocShell | null;
5140     readonly embedderElement: XULFrameElement | null;
5141     readonly embedderElementType: string;
5142     forceDesktopViewport: boolean;
5143     forceOffline: boolean;
5144     fullZoom: number;
5145     readonly group: BrowsingContextGroup;
5146     hasSiblings: boolean;
5147     readonly historyID: any;
5148     readonly id: number;
5149     inRDMPane: boolean;
5150     isActive: boolean;
5151     isAppTab: boolean;
5152     readonly isDiscarded: boolean;
5153     readonly isInBFCache: boolean;
5154     mediumOverride: string;
5155     readonly name: string;
5156     readonly opener: BrowsingContext | null;
5157     overrideDPPX: number;
5158     readonly parent: BrowsingContext | null;
5159     readonly parentWindowContext: WindowContext | null;
5160     prefersColorSchemeOverride: PrefersColorSchemeOverride;
5161     sandboxFlags: number;
5162     serviceWorkersTestingEnabled: boolean;
5163     suspendMediaWhenInactive: boolean;
5164     readonly targetTopLevelLinkClicksToBlank: boolean;
5165     textZoom: number;
5166     readonly top: BrowsingContext;
5167     readonly topWindowContext: WindowContext | null;
5168     readonly touchEventsOverride: TouchEventsOverride;
5169     useGlobalHistory: boolean;
5170     watchedByDevTools: boolean;
5171     readonly window: WindowProxy | null;
5172     getAllBrowsingContextsInSubtree(): BrowsingContext[];
5173     resetLocationChangeRateLimit(): void;
5174     setRDMPaneMaxTouchPoints(maxTouchPoints: number): void;
5175     setRDMPaneOrientation(type: OrientationType, rotationAngle: number): void;
5178 declare var BrowsingContext: {
5179     prototype: BrowsingContext;
5180     new(): BrowsingContext;
5181     get(aId: number): CanonicalBrowsingContext | null;
5182     getCurrentTopByBrowserId(aId: number): BrowsingContext | null;
5183     getFromWindow(window: WindowProxy): BrowsingContext | null;
5184     isInstance(obj): obj is BrowsingContext;
5187 interface BrowsingContextGroup {
5188     readonly id: number;
5189     getToplevels(): BrowsingContext[];
5192 declare var BrowsingContextGroup: {
5193     prototype: BrowsingContextGroup;
5194     new(): BrowsingContextGroup;
5195     isInstance(obj): obj is BrowsingContextGroup;
5199  * This Streams API interface provides a built-in byte length queuing strategy that can be used when constructing streams.
5201  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy)
5202  */
5203 interface ByteLengthQueuingStrategy {
5204     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/highWaterMark) */
5205     readonly highWaterMark: number;
5206     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/size) */
5207     readonly size: Function;
5210 declare var ByteLengthQueuingStrategy: {
5211     prototype: ByteLengthQueuingStrategy;
5212     new(init: QueuingStrategyInit): ByteLengthQueuingStrategy;
5213     isInstance(obj): obj is ByteLengthQueuingStrategy;
5217  * A CDATA section that can be used within XML to include extended portions of unescaped text. The symbols < and & don’t need escaping as they normally do when inside a CDATA section.
5219  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CDATASection)
5220  */
5221 interface CDATASection extends Text {
5224 declare var CDATASection: {
5225     prototype: CDATASection;
5226     new(): CDATASection;
5227     isInstance(obj): obj is CDATASection;
5230 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSAnimation) */
5231 interface CSSAnimation extends Animation {
5232     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSAnimation/animationName) */
5233     readonly animationName: string;
5234     addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSAnimation, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
5235     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
5236     removeEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSAnimation, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
5237     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
5240 declare var CSSAnimation: {
5241     prototype: CSSAnimation;
5242     new(): CSSAnimation;
5243     isInstance(obj): obj is CSSAnimation;
5247  * A single condition CSS at-rule, which consists of a condition and a statement block. It is a child of CSSGroupingRule.
5249  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSConditionRule)
5250  */
5251 interface CSSConditionRule extends CSSGroupingRule {
5252     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSConditionRule/conditionText) */
5253     readonly conditionText: UTF8String;
5256 declare var CSSConditionRule: {
5257     prototype: CSSConditionRule;
5258     new(): CSSConditionRule;
5259     isInstance(obj): obj is CSSConditionRule;
5262 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSContainerRule) */
5263 interface CSSContainerRule extends CSSConditionRule {
5264     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSContainerRule/containerName) */
5265     readonly containerName: UTF8String;
5266     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSContainerRule/containerQuery) */
5267     readonly containerQuery: UTF8String;
5268     queryContainerFor(element: Element): Element | null;
5271 declare var CSSContainerRule: {
5272     prototype: CSSContainerRule;
5273     new(): CSSContainerRule;
5274     isInstance(obj): obj is CSSContainerRule;
5277 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule) */
5278 interface CSSCounterStyleRule extends CSSRule {
5279     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/additiveSymbols) */
5280     additiveSymbols: UTF8String;
5281     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/fallback) */
5282     fallback: UTF8String;
5283     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/name) */
5284     name: string;
5285     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/negative) */
5286     negative: UTF8String;
5287     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/pad) */
5288     pad: UTF8String;
5289     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/prefix) */
5290     prefix: UTF8String;
5291     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/range) */
5292     range: UTF8String;
5293     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/speakAs) */
5294     speakAs: UTF8String;
5295     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/suffix) */
5296     suffix: UTF8String;
5297     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/symbols) */
5298     symbols: UTF8String;
5299     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/system) */
5300     system: UTF8String;
5303 declare var CSSCounterStyleRule: {
5304     prototype: CSSCounterStyleRule;
5305     new(): CSSCounterStyleRule;
5306     isInstance(obj): obj is CSSCounterStyleRule;
5309 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFaceRule) */
5310 interface CSSFontFaceRule extends CSSRule {
5311     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFaceRule/style) */
5312     readonly style: CSSStyleDeclaration;
5315 declare var CSSFontFaceRule: {
5316     prototype: CSSFontFaceRule;
5317     new(): CSSFontFaceRule;
5318     isInstance(obj): obj is CSSFontFaceRule;
5321 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFeatureValuesRule) */
5322 interface CSSFontFeatureValuesRule extends CSSRule {
5323     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFeatureValuesRule/fontFamily) */
5324     fontFamily: UTF8String;
5325     valueText: UTF8String;
5328 declare var CSSFontFeatureValuesRule: {
5329     prototype: CSSFontFeatureValuesRule;
5330     new(): CSSFontFeatureValuesRule;
5331     isInstance(obj): obj is CSSFontFeatureValuesRule;
5334 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule) */
5335 interface CSSFontPaletteValuesRule extends CSSRule {
5336     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/basePalette) */
5337     readonly basePalette: UTF8String;
5338     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/fontFamily) */
5339     readonly fontFamily: UTF8String;
5340     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/name) */
5341     readonly name: UTF8String;
5342     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/overrideColors) */
5343     readonly overrideColors: UTF8String;
5346 declare var CSSFontPaletteValuesRule: {
5347     prototype: CSSFontPaletteValuesRule;
5348     new(): CSSFontPaletteValuesRule;
5349     isInstance(obj): obj is CSSFontPaletteValuesRule;
5353  * Any CSS at-rule that contains other rules nested within it.
5355  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule)
5356  */
5357 interface CSSGroupingRule extends CSSRule {
5358     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule/cssRules) */
5359     readonly cssRules: CSSRuleList;
5360     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule/deleteRule) */
5361     deleteRule(index: number): void;
5362     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule/insertRule) */
5363     insertRule(rule: UTF8String, index?: number): number;
5366 declare var CSSGroupingRule: {
5367     prototype: CSSGroupingRule;
5368     new(): CSSGroupingRule;
5369     isInstance(obj): obj is CSSGroupingRule;
5372 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule) */
5373 interface CSSImportRule extends CSSRule {
5374     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/href) */
5375     readonly href: string;
5376     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/layerName) */
5377     readonly layerName: UTF8String | null;
5378     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/media) */
5379     readonly media: MediaList | null;
5380     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/styleSheet) */
5381     readonly styleSheet: CSSStyleSheet | null;
5382     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/supportsText) */
5383     readonly supportsText: UTF8String | null;
5386 declare var CSSImportRule: {
5387     prototype: CSSImportRule;
5388     new(): CSSImportRule;
5389     isInstance(obj): obj is CSSImportRule;
5393  * An object representing a set of style for a given keyframe. It corresponds to the contains of a single keyframe of a @keyframes at-rule. It implements the CSSRule interface with a type value of 8 (CSSRule.KEYFRAME_RULE).
5395  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframeRule)
5396  */
5397 interface CSSKeyframeRule extends CSSRule {
5398     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframeRule/keyText) */
5399     keyText: UTF8String;
5400     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframeRule/style) */
5401     readonly style: CSSStyleDeclaration;
5404 declare var CSSKeyframeRule: {
5405     prototype: CSSKeyframeRule;
5406     new(): CSSKeyframeRule;
5407     isInstance(obj): obj is CSSKeyframeRule;
5411  * An object representing a complete set of keyframes for a CSS animation. It corresponds to the contains of a whole @keyframes at-rule. It implements the CSSRule interface with a type value of 7 (CSSRule.KEYFRAMES_RULE).
5413  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule)
5414  */
5415 interface CSSKeyframesRule extends CSSRule {
5416     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/cssRules) */
5417     readonly cssRules: CSSRuleList;
5418     readonly length: number;
5419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/name) */
5420     name: string;
5421     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/appendRule) */
5422     appendRule(rule: string): void;
5423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/deleteRule) */
5424     deleteRule(select: string): void;
5425     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/findRule) */
5426     findRule(select: string): CSSKeyframeRule | null;
5427     [index: number]: CSSKeyframeRule;
5430 declare var CSSKeyframesRule: {
5431     prototype: CSSKeyframesRule;
5432     new(): CSSKeyframesRule;
5433     isInstance(obj): obj is CSSKeyframesRule;
5436 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerBlockRule) */
5437 interface CSSLayerBlockRule extends CSSGroupingRule {
5438     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerBlockRule/name) */
5439     readonly name: UTF8String;
5442 declare var CSSLayerBlockRule: {
5443     prototype: CSSLayerBlockRule;
5444     new(): CSSLayerBlockRule;
5445     isInstance(obj): obj is CSSLayerBlockRule;
5448 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerStatementRule) */
5449 interface CSSLayerStatementRule extends CSSRule {
5450     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerStatementRule/nameList) */
5451     readonly nameList: UTF8String[];
5454 declare var CSSLayerStatementRule: {
5455     prototype: CSSLayerStatementRule;
5456     new(): CSSLayerStatementRule;
5457     isInstance(obj): obj is CSSLayerStatementRule;
5461  * A single CSS @media rule. It implements the CSSConditionRule interface, and therefore the CSSGroupingRule and the CSSRule interface with a type value of 4 (CSSRule.MEDIA_RULE).
5463  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMediaRule)
5464  */
5465 interface CSSMediaRule extends CSSConditionRule {
5466     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMediaRule/media) */
5467     readonly media: MediaList;
5470 declare var CSSMediaRule: {
5471     prototype: CSSMediaRule;
5472     new(): CSSMediaRule;
5473     isInstance(obj): obj is CSSMediaRule;
5476 interface CSSMozDocumentRule extends CSSConditionRule {
5479 declare var CSSMozDocumentRule: {
5480     prototype: CSSMozDocumentRule;
5481     new(): CSSMozDocumentRule;
5482     isInstance(obj): obj is CSSMozDocumentRule;
5486  * An object representing a single CSS @namespace at-rule. It implements the CSSRule interface, with a type value of 10 (CSSRule.NAMESPACE_RULE).
5488  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNamespaceRule)
5489  */
5490 interface CSSNamespaceRule extends CSSRule {
5491     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNamespaceRule/namespaceURI) */
5492     readonly namespaceURI: string;
5493     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNamespaceRule/prefix) */
5494     readonly prefix: string;
5497 declare var CSSNamespaceRule: {
5498     prototype: CSSNamespaceRule;
5499     new(): CSSNamespaceRule;
5500     isInstance(obj): obj is CSSNamespaceRule;
5504  * CSSPageRule is an interface representing a single CSS @page rule. It implements the CSSRule interface with a type value of 6 (CSSRule.PAGE_RULE).
5506  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPageRule)
5507  */
5508 interface CSSPageRule extends CSSRule {
5509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPageRule/selectorText) */
5510     selectorText: UTF8String;
5511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPageRule/style) */
5512     readonly style: CSSStyleDeclaration;
5515 declare var CSSPageRule: {
5516     prototype: CSSPageRule;
5517     new(): CSSPageRule;
5518     isInstance(obj): obj is CSSPageRule;
5521 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule) */
5522 interface CSSPropertyRule extends CSSRule {
5523     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/inherits) */
5524     readonly inherits: boolean;
5525     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/initialValue) */
5526     readonly initialValue: UTF8String | null;
5527     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/name) */
5528     readonly name: UTF8String;
5529     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/syntax) */
5530     readonly syntax: UTF8String;
5533 declare var CSSPropertyRule: {
5534     prototype: CSSPropertyRule;
5535     new(): CSSPropertyRule;
5536     isInstance(obj): obj is CSSPropertyRule;
5539 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPseudoElement) */
5540 interface CSSPseudoElement {
5541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPseudoElement/element) */
5542     readonly element: Element;
5543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPseudoElement/type) */
5544     readonly type: string;
5547 declare var CSSPseudoElement: {
5548     prototype: CSSPseudoElement;
5549     new(): CSSPseudoElement;
5550     isInstance(obj): obj is CSSPseudoElement;
5554  * A single CSS rule. There are several types of rules, listed in the Type constants section below.
5556  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule)
5557  */
5558 interface CSSRule {
5559     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/cssText) */
5560     cssText: UTF8String;
5561     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/parentRule) */
5562     readonly parentRule: CSSRule | null;
5563     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/parentStyleSheet) */
5564     readonly parentStyleSheet: CSSStyleSheet | null;
5565     /**
5566      * @deprecated
5567      *
5568      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/type)
5569      */
5570     readonly type: number;
5571     readonly STYLE_RULE: 1;
5572     readonly CHARSET_RULE: 2;
5573     readonly IMPORT_RULE: 3;
5574     readonly MEDIA_RULE: 4;
5575     readonly FONT_FACE_RULE: 5;
5576     readonly PAGE_RULE: 6;
5577     readonly NAMESPACE_RULE: 10;
5578     readonly KEYFRAMES_RULE: 7;
5579     readonly KEYFRAME_RULE: 8;
5580     readonly COUNTER_STYLE_RULE: 11;
5581     readonly SUPPORTS_RULE: 12;
5582     readonly DOCUMENT_RULE: 13;
5583     readonly FONT_FEATURE_VALUES_RULE: 14;
5586 declare var CSSRule: {
5587     prototype: CSSRule;
5588     new(): CSSRule;
5589     readonly STYLE_RULE: 1;
5590     readonly CHARSET_RULE: 2;
5591     readonly IMPORT_RULE: 3;
5592     readonly MEDIA_RULE: 4;
5593     readonly FONT_FACE_RULE: 5;
5594     readonly PAGE_RULE: 6;
5595     readonly NAMESPACE_RULE: 10;
5596     readonly KEYFRAMES_RULE: 7;
5597     readonly KEYFRAME_RULE: 8;
5598     readonly COUNTER_STYLE_RULE: 11;
5599     readonly SUPPORTS_RULE: 12;
5600     readonly DOCUMENT_RULE: 13;
5601     readonly FONT_FEATURE_VALUES_RULE: 14;
5602     isInstance(obj): obj is CSSRule;
5606  * A CSSRuleList is an (indirect-modify only) array-like object containing an ordered collection of CSSRule objects.
5608  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRuleList)
5609  */
5610 interface CSSRuleList {
5611     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRuleList/length) */
5612     readonly length: number;
5613     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRuleList/item) */
5614     item(index: number): CSSRule | null;
5615     [index: number]: CSSRule;
5618 declare var CSSRuleList: {
5619     prototype: CSSRuleList;
5620     new(): CSSRuleList;
5621     isInstance(obj): obj is CSSRuleList;
5625  * An object that is a CSS declaration block, and exposes style information and various style-related methods and properties.
5627  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration)
5628  */
5629 interface CSSStyleDeclaration {
5630     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/accent-color) */
5631     accentColor: string;
5632     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-content) */
5633     alignContent: string;
5634     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-items) */
5635     alignItems: string;
5636     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-self) */
5637     alignSelf: string;
5638     alignmentBaseline: string;
5639     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/all) */
5640     all: string;
5641     anchorDefault: string;
5642     anchorName: string;
5643     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation) */
5644     animation: string;
5645     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-composition) */
5646     animationComposition: string;
5647     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-delay) */
5648     animationDelay: string;
5649     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-direction) */
5650     animationDirection: string;
5651     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-duration) */
5652     animationDuration: string;
5653     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-fill-mode) */
5654     animationFillMode: string;
5655     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-iteration-count) */
5656     animationIterationCount: string;
5657     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-name) */
5658     animationName: string;
5659     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-play-state) */
5660     animationPlayState: string;
5661     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-range) */
5662     animationRange: string;
5663     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-range-end) */
5664     animationRangeEnd: string;
5665     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-range-start) */
5666     animationRangeStart: string;
5667     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-timeline) */
5668     animationTimeline: string;
5669     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-timing-function) */
5670     animationTimingFunction: string;
5671     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/appearance) */
5672     appearance: string;
5673     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/aspect-ratio) */
5674     aspectRatio: string;
5675     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/backdrop-filter) */
5676     backdropFilter: string;
5677     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/backface-visibility) */
5678     backfaceVisibility: string;
5679     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background) */
5680     background: string;
5681     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-attachment) */
5682     backgroundAttachment: string;
5683     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-blend-mode) */
5684     backgroundBlendMode: string;
5685     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-clip) */
5686     backgroundClip: string;
5687     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-color) */
5688     backgroundColor: string;
5689     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-image) */
5690     backgroundImage: string;
5691     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-origin) */
5692     backgroundOrigin: string;
5693     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-position) */
5694     backgroundPosition: string;
5695     backgroundPositionBlock: string;
5696     backgroundPositionInline: string;
5697     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-position-x) */
5698     backgroundPositionX: string;
5699     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-position-y) */
5700     backgroundPositionY: string;
5701     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-repeat) */
5702     backgroundRepeat: string;
5703     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-size) */
5704     backgroundSize: string;
5705     backgroundTbd: string;
5706     baselineShift: string;
5707     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/baseline-source) */
5708     baselineSource: string;
5709     blockEllipsis: string;
5710     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/block-size) */
5711     blockSize: string;
5712     blockStep: string;
5713     blockStepAlign: string;
5714     blockStepInsert: string;
5715     blockStepRound: string;
5716     blockStepSize: string;
5717     bookmarkLabel: string;
5718     bookmarkLevel: string;
5719     bookmarkState: string;
5720     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border) */
5721     border: string;
5722     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block) */
5723     borderBlock: string;
5724     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-color) */
5725     borderBlockColor: string;
5726     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end) */
5727     borderBlockEnd: string;
5728     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end-color) */
5729     borderBlockEndColor: string;
5730     borderBlockEndRadius: string;
5731     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end-style) */
5732     borderBlockEndStyle: string;
5733     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end-width) */
5734     borderBlockEndWidth: string;
5735     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start) */
5736     borderBlockStart: string;
5737     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start-color) */
5738     borderBlockStartColor: string;
5739     borderBlockStartRadius: string;
5740     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start-style) */
5741     borderBlockStartStyle: string;
5742     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start-width) */
5743     borderBlockStartWidth: string;
5744     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-style) */
5745     borderBlockStyle: string;
5746     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-width) */
5747     borderBlockWidth: string;
5748     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom) */
5749     borderBottom: string;
5750     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-color) */
5751     borderBottomColor: string;
5752     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-left-radius) */
5753     borderBottomLeftRadius: string;
5754     borderBottomRadius: string;
5755     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-right-radius) */
5756     borderBottomRightRadius: string;
5757     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-style) */
5758     borderBottomStyle: string;
5759     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-width) */
5760     borderBottomWidth: string;
5761     borderBoundary: string;
5762     borderClip: string;
5763     borderClipBottom: string;
5764     borderClipLeft: string;
5765     borderClipRight: string;
5766     borderClipTop: string;
5767     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-collapse) */
5768     borderCollapse: string;
5769     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-color) */
5770     borderColor: string;
5771     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-end-end-radius) */
5772     borderEndEndRadius: string;
5773     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-end-start-radius) */
5774     borderEndStartRadius: string;
5775     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image) */
5776     borderImage: string;
5777     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-outset) */
5778     borderImageOutset: string;
5779     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-repeat) */
5780     borderImageRepeat: string;
5781     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-slice) */
5782     borderImageSlice: string;
5783     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-source) */
5784     borderImageSource: string;
5785     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-width) */
5786     borderImageWidth: string;
5787     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline) */
5788     borderInline: string;
5789     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-color) */
5790     borderInlineColor: string;
5791     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end) */
5792     borderInlineEnd: string;
5793     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end-color) */
5794     borderInlineEndColor: string;
5795     borderInlineEndRadius: string;
5796     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end-style) */
5797     borderInlineEndStyle: string;
5798     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end-width) */
5799     borderInlineEndWidth: string;
5800     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start) */
5801     borderInlineStart: string;
5802     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start-color) */
5803     borderInlineStartColor: string;
5804     borderInlineStartRadius: string;
5805     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start-style) */
5806     borderInlineStartStyle: string;
5807     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start-width) */
5808     borderInlineStartWidth: string;
5809     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-style) */
5810     borderInlineStyle: string;
5811     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-width) */
5812     borderInlineWidth: string;
5813     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left) */
5814     borderLeft: string;
5815     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left-color) */
5816     borderLeftColor: string;
5817     borderLeftRadius: string;
5818     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left-style) */
5819     borderLeftStyle: string;
5820     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left-width) */
5821     borderLeftWidth: string;
5822     borderLimit: string;
5823     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-radius) */
5824     borderRadius: string;
5825     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right) */
5826     borderRight: string;
5827     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right-color) */
5828     borderRightColor: string;
5829     borderRightRadius: string;
5830     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right-style) */
5831     borderRightStyle: string;
5832     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right-width) */
5833     borderRightWidth: string;
5834     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-spacing) */
5835     borderSpacing: string;
5836     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-start-end-radius) */
5837     borderStartEndRadius: string;
5838     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-start-start-radius) */
5839     borderStartStartRadius: string;
5840     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-style) */
5841     borderStyle: string;
5842     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top) */
5843     borderTop: string;
5844     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-color) */
5845     borderTopColor: string;
5846     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-left-radius) */
5847     borderTopLeftRadius: string;
5848     borderTopRadius: string;
5849     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-right-radius) */
5850     borderTopRightRadius: string;
5851     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-style) */
5852     borderTopStyle: string;
5853     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-width) */
5854     borderTopWidth: string;
5855     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-width) */
5856     borderWidth: string;
5857     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/bottom) */
5858     bottom: string;
5859     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-decoration-break) */
5860     boxDecorationBreak: string;
5861     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-shadow) */
5862     boxShadow: string;
5863     boxShadowBlur: string;
5864     boxShadowColor: string;
5865     boxShadowOffset: string;
5866     boxShadowPosition: string;
5867     boxShadowSpread: string;
5868     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-sizing) */
5869     boxSizing: string;
5870     boxSnap: string;
5871     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/break-after) */
5872     breakAfter: string;
5873     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/break-before) */
5874     breakBefore: string;
5875     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/break-inside) */
5876     breakInside: string;
5877     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/caption-side) */
5878     captionSide: string;
5879     caret: string;
5880     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/caret-color) */
5881     caretColor: string;
5882     caretShape: string;
5883     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/clear) */
5884     clear: string;
5885     /**
5886      * @deprecated
5887      *
5888      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/clip)
5889      */
5890     clip: string;
5891     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/clip-path) */
5892     clipPath: string;
5893     clipRule: string;
5894     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/color) */
5895     color: string;
5896     /**
5897      * @deprecated This is a legacy alias of `printColorAdjust`.
5898      *
5899      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/print-color-adjust)
5900      */
5901     colorAdjust: string;
5902     colorInterpolation: string;
5903     colorInterpolationFilters: string;
5904     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/color-scheme) */
5905     colorScheme: string;
5906     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-count) */
5907     columnCount: string;
5908     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-fill) */
5909     columnFill: string;
5910     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-gap) */
5911     columnGap: string;
5912     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule) */
5913     columnRule: string;
5914     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule-color) */
5915     columnRuleColor: string;
5916     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule-style) */
5917     columnRuleStyle: string;
5918     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule-width) */
5919     columnRuleWidth: string;
5920     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-span) */
5921     columnSpan: string;
5922     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-width) */
5923     columnWidth: string;
5924     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/columns) */
5925     columns: string;
5926     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain) */
5927     contain: string;
5928     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-contain-intrinsic-block-size) */
5929     containIntrinsicBlockSize: string;
5930     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-height) */
5931     containIntrinsicHeight: string;
5932     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-contain-intrinsic-inline-size) */
5933     containIntrinsicInlineSize: string;
5934     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-size) */
5935     containIntrinsicSize: string;
5936     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-width) */
5937     containIntrinsicWidth: string;
5938     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/container) */
5939     container: string;
5940     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/container-name) */
5941     containerName: string;
5942     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/container-type) */
5943     containerType: string;
5944     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/content) */
5945     content: string;
5946     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/content-visibility) */
5947     contentVisibility: string;
5948     continue: string;
5949     copyInto: string;
5950     cornerShape: string;
5951     corners: string;
5952     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/counter-increment) */
5953     counterIncrement: string;
5954     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/counter-reset) */
5955     counterReset: string;
5956     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/counter-set) */
5957     counterSet: string;
5958     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/cssText) */
5959     cssText: UTF8String;
5960     cue: string;
5961     cueAfter: string;
5962     cueBefore: string;
5963     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/cursor) */
5964     cursor: string;
5965     cx: string;
5966     cy: string;
5967     d: string;
5968     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/direction) */
5969     direction: string;
5970     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/display) */
5971     display: string;
5972     dominantBaseline: string;
5973     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/empty-cells) */
5974     emptyCells: string;
5975     fieldSizing: string;
5976     fill: string;
5977     fillBreak: string;
5978     fillColor: string;
5979     fillImage: string;
5980     fillOpacity: string;
5981     fillOrigin: string;
5982     fillPosition: string;
5983     fillRepeat: string;
5984     fillRule: string;
5985     fillSize: string;
5986     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/filter) */
5987     filter: string;
5988     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex) */
5989     flex: string;
5990     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-basis) */
5991     flexBasis: string;
5992     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-direction) */
5993     flexDirection: string;
5994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-flow) */
5995     flexFlow: string;
5996     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-grow) */
5997     flexGrow: string;
5998     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-shrink) */
5999     flexShrink: string;
6000     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-wrap) */
6001     flexWrap: string;
6002     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/float) */
6003     float: string;
6004     floatDefer: string;
6005     floatOffset: string;
6006     floatReference: string;
6007     floodColor: string;
6008     floodOpacity: string;
6009     flowFrom: string;
6010     flowInto: string;
6011     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font) */
6012     font: string;
6013     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-family) */
6014     fontFamily: string;
6015     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-feature-settings) */
6016     fontFeatureSettings: string;
6017     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-kerning) */
6018     fontKerning: string;
6019     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-language-override) */
6020     fontLanguageOverride: string;
6021     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-optical-sizing) */
6022     fontOpticalSizing: string;
6023     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-palette) */
6024     fontPalette: string;
6025     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-size) */
6026     fontSize: string;
6027     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-size-adjust) */
6028     fontSizeAdjust: string;
6029     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-stretch) */
6030     fontStretch: string;
6031     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-style) */
6032     fontStyle: string;
6033     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis) */
6034     fontSynthesis: string;
6035     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis-position) */
6036     fontSynthesisPosition: string;
6037     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis-small-caps) */
6038     fontSynthesisSmallCaps: string;
6039     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis-style) */
6040     fontSynthesisStyle: string;
6041     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis-weight) */
6042     fontSynthesisWeight: string;
6043     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant) */
6044     fontVariant: string;
6045     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-alternates) */
6046     fontVariantAlternates: string;
6047     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-caps) */
6048     fontVariantCaps: string;
6049     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-east-asian) */
6050     fontVariantEastAsian: string;
6051     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-emoji) */
6052     fontVariantEmoji: string;
6053     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-ligatures) */
6054     fontVariantLigatures: string;
6055     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-numeric) */
6056     fontVariantNumeric: string;
6057     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-position) */
6058     fontVariantPosition: string;
6059     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variation-settings) */
6060     fontVariationSettings: string;
6061     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-weight) */
6062     fontWeight: string;
6063     footnoteDisplay: string;
6064     footnotePolicy: string;
6065     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/forced-color-adjust) */
6066     forcedColorAdjust: string;
6067     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/gap) */
6068     gap: string;
6069     /** @deprecated */
6070     glyphOrientationVertical: string;
6071     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid) */
6072     grid: string;
6073     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-area) */
6074     gridArea: string;
6075     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-auto-columns) */
6076     gridAutoColumns: string;
6077     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-auto-flow) */
6078     gridAutoFlow: string;
6079     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-auto-rows) */
6080     gridAutoRows: string;
6081     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-column) */
6082     gridColumn: string;
6083     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-column-end) */
6084     gridColumnEnd: string;
6085     /** @deprecated This is a legacy alias of `columnGap`. */
6086     gridColumnGap: string;
6087     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-column-start) */
6088     gridColumnStart: string;
6089     /** @deprecated This is a legacy alias of `gap`. */
6090     gridGap: string;
6091     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-row) */
6092     gridRow: string;
6093     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-row-end) */
6094     gridRowEnd: string;
6095     /** @deprecated This is a legacy alias of `rowGap`. */
6096     gridRowGap: string;
6097     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-row-start) */
6098     gridRowStart: string;
6099     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template) */
6100     gridTemplate: string;
6101     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template-areas) */
6102     gridTemplateAreas: string;
6103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template-columns) */
6104     gridTemplateColumns: string;
6105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template-rows) */
6106     gridTemplateRows: string;
6107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/hanging-punctuation) */
6108     hangingPunctuation: string;
6109     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/height) */
6110     height: string;
6111     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/hyphenate-character) */
6112     hyphenateCharacter: string;
6113     hyphenateLimitChars: string;
6114     hyphenateLimitLast: string;
6115     hyphenateLimitLines: string;
6116     hyphenateLimitZone: string;
6117     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/hyphens) */
6118     hyphens: string;
6119     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/image-orientation) */
6120     imageOrientation: string;
6121     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/image-rendering) */
6122     imageRendering: string;
6123     imageResolution: string;
6124     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/initial-letter) */
6125     initialLetter: string;
6126     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/initial-letter-align) */
6127     initialLetterAlign: string;
6128     initialLetterWrap: string;
6129     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inline-size) */
6130     inlineSize: string;
6131     inlineSizing: string;
6132     inputSecurity: string;
6133     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset) */
6134     inset: string;
6135     insetArea: string;
6136     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-block) */
6137     insetBlock: string;
6138     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-block-end) */
6139     insetBlockEnd: string;
6140     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-block-start) */
6141     insetBlockStart: string;
6142     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-inline) */
6143     insetInline: string;
6144     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-inline-end) */
6145     insetInlineEnd: string;
6146     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-inline-start) */
6147     insetInlineStart: string;
6148     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/isolation) */
6149     isolation: string;
6150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-content) */
6151     justifyContent: string;
6152     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-items) */
6153     justifyItems: string;
6154     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-self) */
6155     justifySelf: string;
6156     layoutOrder: string;
6157     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/left) */
6158     left: string;
6159     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/length) */
6160     readonly length: number;
6161     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/letter-spacing) */
6162     letterSpacing: string;
6163     lightingColor: string;
6164     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/line-break) */
6165     lineBreak: string;
6166     lineClamp: string;
6167     lineGrid: string;
6168     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/line-height) */
6169     lineHeight: string;
6170     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/line-height-step) */
6171     lineHeightStep: string;
6172     linePadding: string;
6173     lineSnap: string;
6174     linkParameters: string;
6175     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style) */
6176     listStyle: string;
6177     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style-image) */
6178     listStyleImage: string;
6179     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style-position) */
6180     listStylePosition: string;
6181     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style-type) */
6182     listStyleType: string;
6183     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin) */
6184     margin: string;
6185     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-block) */
6186     marginBlock: string;
6187     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-block-end) */
6188     marginBlockEnd: string;
6189     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-block-start) */
6190     marginBlockStart: string;
6191     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-bottom) */
6192     marginBottom: string;
6193     marginBreak: string;
6194     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-inline) */
6195     marginInline: string;
6196     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-inline-end) */
6197     marginInlineEnd: string;
6198     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-inline-start) */
6199     marginInlineStart: string;
6200     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-left) */
6201     marginLeft: string;
6202     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-right) */
6203     marginRight: string;
6204     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-top) */
6205     marginTop: string;
6206     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-trim) */
6207     marginTrim: string;
6208     marker: string;
6209     markerEnd: string;
6210     markerMid: string;
6211     markerSide: string;
6212     markerStart: string;
6213     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask) */
6214     mask: string;
6215     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border) */
6216     maskBorder: string;
6217     maskBorderMode: string;
6218     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-outset) */
6219     maskBorderOutset: string;
6220     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-repeat) */
6221     maskBorderRepeat: string;
6222     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-slice) */
6223     maskBorderSlice: string;
6224     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-source) */
6225     maskBorderSource: string;
6226     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-width) */
6227     maskBorderWidth: string;
6228     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-clip) */
6229     maskClip: string;
6230     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-composite) */
6231     maskComposite: string;
6232     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-image) */
6233     maskImage: string;
6234     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-mode) */
6235     maskMode: string;
6236     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-origin) */
6237     maskOrigin: string;
6238     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-position) */
6239     maskPosition: string;
6240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-repeat) */
6241     maskRepeat: string;
6242     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-size) */
6243     maskSize: string;
6244     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-type) */
6245     maskType: string;
6246     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/masonry-auto-flow) */
6247     masonryAutoFlow: string;
6248     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/math-depth) */
6249     mathDepth: string;
6250     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/math-shift) */
6251     mathShift: string;
6252     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/math-style) */
6253     mathStyle: string;
6254     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-block-size) */
6255     maxBlockSize: string;
6256     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-height) */
6257     maxHeight: string;
6258     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-inline-size) */
6259     maxInlineSize: string;
6260     maxLines: string;
6261     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-width) */
6262     maxWidth: string;
6263     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-block-size) */
6264     minBlockSize: string;
6265     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-height) */
6266     minHeight: string;
6267     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-inline-size) */
6268     minInlineSize: string;
6269     minIntrinsicSizing: string;
6270     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-width) */
6271     minWidth: string;
6272     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mix-blend-mode) */
6273     mixBlendMode: string;
6274     navDown: string;
6275     navLeft: string;
6276     navRight: string;
6277     navUp: string;
6278     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/object-fit) */
6279     objectFit: string;
6280     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/object-position) */
6281     objectPosition: string;
6282     objectViewBox: string;
6283     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset) */
6284     offset: string;
6285     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-anchor) */
6286     offsetAnchor: string;
6287     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-distance) */
6288     offsetDistance: string;
6289     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-path) */
6290     offsetPath: string;
6291     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-position) */
6292     offsetPosition: string;
6293     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-rotate) */
6294     offsetRotate: string;
6295     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/opacity) */
6296     opacity: string;
6297     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/order) */
6298     order: string;
6299     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/orphans) */
6300     orphans: string;
6301     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline) */
6302     outline: string;
6303     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-color) */
6304     outlineColor: string;
6305     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-offset) */
6306     outlineOffset: string;
6307     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-style) */
6308     outlineStyle: string;
6309     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-width) */
6310     outlineWidth: string;
6311     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow) */
6312     overflow: string;
6313     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-anchor) */
6314     overflowAnchor: string;
6315     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-block) */
6316     overflowBlock: string;
6317     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-clip-margin) */
6318     overflowClipMargin: string;
6319     overflowClipMarginBlock: string;
6320     overflowClipMarginBlockEnd: string;
6321     overflowClipMarginBlockStart: string;
6322     overflowClipMarginBottom: string;
6323     overflowClipMarginInline: string;
6324     overflowClipMarginInlineEnd: string;
6325     overflowClipMarginInlineStart: string;
6326     overflowClipMarginLeft: string;
6327     overflowClipMarginRight: string;
6328     overflowClipMarginTop: string;
6329     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-inline) */
6330     overflowInline: string;
6331     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-wrap) */
6332     overflowWrap: string;
6333     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-x) */
6334     overflowX: string;
6335     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-y) */
6336     overflowY: string;
6337     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overlay) */
6338     overlay: string;
6339     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior) */
6340     overscrollBehavior: string;
6341     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-block) */
6342     overscrollBehaviorBlock: string;
6343     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-inline) */
6344     overscrollBehaviorInline: string;
6345     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-x) */
6346     overscrollBehaviorX: string;
6347     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-y) */
6348     overscrollBehaviorY: string;
6349     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding) */
6350     padding: string;
6351     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-block) */
6352     paddingBlock: string;
6353     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-block-end) */
6354     paddingBlockEnd: string;
6355     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-block-start) */
6356     paddingBlockStart: string;
6357     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-bottom) */
6358     paddingBottom: string;
6359     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-inline) */
6360     paddingInline: string;
6361     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-inline-end) */
6362     paddingInlineEnd: string;
6363     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-inline-start) */
6364     paddingInlineStart: string;
6365     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-left) */
6366     paddingLeft: string;
6367     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-right) */
6368     paddingRight: string;
6369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-top) */
6370     paddingTop: string;
6371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page) */
6372     page: string;
6373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page-break-after) */
6374     pageBreakAfter: string;
6375     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page-break-before) */
6376     pageBreakBefore: string;
6377     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page-break-inside) */
6378     pageBreakInside: string;
6379     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/paint-order) */
6380     paintOrder: string;
6381     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/parentRule) */
6382     readonly parentRule: CSSRule | null;
6383     pause: string;
6384     pauseAfter: string;
6385     pauseBefore: string;
6386     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective) */
6387     perspective: string;
6388     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective-origin) */
6389     perspectiveOrigin: string;
6390     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/place-content) */
6391     placeContent: string;
6392     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/place-items) */
6393     placeItems: string;
6394     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/place-self) */
6395     placeSelf: string;
6396     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/pointer-events) */
6397     pointerEvents: string;
6398     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/position) */
6399     position: string;
6400     positionFallback: string;
6401     positionFallbackBounds: string;
6402     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/print-color-adjust) */
6403     printColorAdjust: string;
6404     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/quotes) */
6405     quotes: string;
6406     r: string;
6407     readingOrder: string;
6408     regionFragment: string;
6409     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/resize) */
6410     resize: string;
6411     rest: string;
6412     restAfter: string;
6413     restBefore: string;
6414     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/right) */
6415     right: string;
6416     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/rotate) */
6417     rotate: string;
6418     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/row-gap) */
6419     rowGap: string;
6420     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/ruby-align) */
6421     rubyAlign: string;
6422     rubyMerge: string;
6423     rubyOverhang: string;
6424     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/ruby-position) */
6425     rubyPosition: string;
6426     rx: string;
6427     ry: string;
6428     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scale) */
6429     scale: string;
6430     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-behavior) */
6431     scrollBehavior: string;
6432     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin) */
6433     scrollMargin: string;
6434     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block) */
6435     scrollMarginBlock: string;
6436     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-end) */
6437     scrollMarginBlockEnd: string;
6438     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-start) */
6439     scrollMarginBlockStart: string;
6440     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-bottom) */
6441     scrollMarginBottom: string;
6442     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline) */
6443     scrollMarginInline: string;
6444     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-end) */
6445     scrollMarginInlineEnd: string;
6446     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-start) */
6447     scrollMarginInlineStart: string;
6448     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-left) */
6449     scrollMarginLeft: string;
6450     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-right) */
6451     scrollMarginRight: string;
6452     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-top) */
6453     scrollMarginTop: string;
6454     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding) */
6455     scrollPadding: string;
6456     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block) */
6457     scrollPaddingBlock: string;
6458     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-end) */
6459     scrollPaddingBlockEnd: string;
6460     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-start) */
6461     scrollPaddingBlockStart: string;
6462     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-bottom) */
6463     scrollPaddingBottom: string;
6464     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline) */
6465     scrollPaddingInline: string;
6466     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-end) */
6467     scrollPaddingInlineEnd: string;
6468     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-start) */
6469     scrollPaddingInlineStart: string;
6470     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-left) */
6471     scrollPaddingLeft: string;
6472     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-right) */
6473     scrollPaddingRight: string;
6474     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-top) */
6475     scrollPaddingTop: string;
6476     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-snap-align) */
6477     scrollSnapAlign: string;
6478     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-snap-stop) */
6479     scrollSnapStop: string;
6480     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type) */
6481     scrollSnapType: string;
6482     scrollStart: string;
6483     scrollStartBlock: string;
6484     scrollStartInline: string;
6485     scrollStartTarget: string;
6486     scrollStartTargetBlock: string;
6487     scrollStartTargetInline: string;
6488     scrollStartTargetX: string;
6489     scrollStartTargetY: string;
6490     scrollStartX: string;
6491     scrollStartY: string;
6492     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-timeline) */
6493     scrollTimeline: string;
6494     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-timeline-axis) */
6495     scrollTimelineAxis: string;
6496     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-timeline-name) */
6497     scrollTimelineName: string;
6498     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scrollbar-color) */
6499     scrollbarColor: string;
6500     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scrollbar-gutter) */
6501     scrollbarGutter: string;
6502     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scrollbar-width) */
6503     scrollbarWidth: string;
6504     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/shape-image-threshold) */
6505     shapeImageThreshold: string;
6506     shapeInside: string;
6507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/shape-margin) */
6508     shapeMargin: string;
6509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/shape-outside) */
6510     shapeOutside: string;
6511     shapePadding: string;
6512     shapeRendering: string;
6513     shapeSubtract: string;
6514     spatialNavigationAction: string;
6515     spatialNavigationContain: string;
6516     spatialNavigationFunction: string;
6517     speak: string;
6518     speakAs: string;
6519     stopColor: string;
6520     stopOpacity: string;
6521     stringSet: string;
6522     stroke: string;
6523     strokeAlign: string;
6524     strokeAlignment: string;
6525     strokeBreak: string;
6526     strokeColor: string;
6527     strokeDashCorner: string;
6528     strokeDashJustify: string;
6529     strokeDashadjust: string;
6530     strokeDasharray: string;
6531     strokeDashcorner: string;
6532     strokeDashoffset: string;
6533     strokeImage: string;
6534     strokeLinecap: string;
6535     strokeLinejoin: string;
6536     strokeMiterlimit: string;
6537     strokeOpacity: string;
6538     strokeOrigin: string;
6539     strokePosition: string;
6540     strokeRepeat: string;
6541     strokeSize: string;
6542     strokeWidth: string;
6543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/tab-size) */
6544     tabSize: string;
6545     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/table-layout) */
6546     tableLayout: string;
6547     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-align) */
6548     textAlign: string;
6549     textAlignAll: string;
6550     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-align-last) */
6551     textAlignLast: string;
6552     textAnchor: string;
6553     textAutospace: string;
6554     textBoxEdge: string;
6555     textBoxTrim: string;
6556     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-combine-upright) */
6557     textCombineUpright: string;
6558     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration) */
6559     textDecoration: string;
6560     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-color) */
6561     textDecorationColor: string;
6562     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-line) */
6563     textDecorationLine: string;
6564     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip) */
6565     textDecorationSkip: string;
6566     textDecorationSkipBox: string;
6567     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip-ink) */
6568     textDecorationSkipInk: string;
6569     textDecorationSkipSelf: string;
6570     textDecorationSkipSpaces: string;
6571     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-style) */
6572     textDecorationStyle: string;
6573     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-thickness) */
6574     textDecorationThickness: string;
6575     textDecorationTrim: string;
6576     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis) */
6577     textEmphasis: string;
6578     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis-color) */
6579     textEmphasisColor: string;
6580     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis-position) */
6581     textEmphasisPosition: string;
6582     textEmphasisSkip: string;
6583     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis-style) */
6584     textEmphasisStyle: string;
6585     textGroupAlign: string;
6586     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-indent) */
6587     textIndent: string;
6588     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-justify) */
6589     textJustify: string;
6590     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-orientation) */
6591     textOrientation: string;
6592     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-overflow) */
6593     textOverflow: string;
6594     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-rendering) */
6595     textRendering: string;
6596     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-shadow) */
6597     textShadow: string;
6598     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-size-adjust) */
6599     textSizeAdjust: string;
6600     textSpacing: string;
6601     textSpacingTrim: string;
6602     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-transform) */
6603     textTransform: string;
6604     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-underline-offset) */
6605     textUnderlineOffset: string;
6606     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-underline-position) */
6607     textUnderlinePosition: string;
6608     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-wrap) */
6609     textWrap: string;
6610     textWrapMode: string;
6611     textWrapStyle: string;
6612     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/timeline-scope) */
6613     timelineScope: string;
6614     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/top) */
6615     top: string;
6616     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/touch-action) */
6617     touchAction: string;
6618     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform) */
6619     transform: string;
6620     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-box) */
6621     transformBox: string;
6622     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-origin) */
6623     transformOrigin: string;
6624     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-style) */
6625     transformStyle: string;
6626     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition) */
6627     transition: string;
6628     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-behavior) */
6629     transitionBehavior: string;
6630     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-delay) */
6631     transitionDelay: string;
6632     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-duration) */
6633     transitionDuration: string;
6634     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-property) */
6635     transitionProperty: string;
6636     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-timing-function) */
6637     transitionTimingFunction: string;
6638     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/translate) */
6639     translate: string;
6640     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/unicode-bidi) */
6641     unicodeBidi: string;
6642     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/user-select) */
6643     userSelect: string;
6644     vectorEffect: string;
6645     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/vertical-align) */
6646     verticalAlign: string;
6647     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/view-timeline) */
6648     viewTimeline: string;
6649     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/view-timeline-axis) */
6650     viewTimelineAxis: string;
6651     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/view-timeline-inset) */
6652     viewTimelineInset: string;
6653     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/view-timeline-name) */
6654     viewTimelineName: string;
6655     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/view-transition-name) */
6656     viewTransitionName: string;
6657     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/visibility) */
6658     visibility: string;
6659     voiceBalance: string;
6660     voiceDuration: string;
6661     voiceFamily: string;
6662     voicePitch: string;
6663     voiceRange: string;
6664     voiceRate: string;
6665     voiceStress: string;
6666     voiceVolume: string;
6667     /**
6668      * @deprecated This is a legacy alias of `alignContent`.
6669      *
6670      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-content)
6671      */
6672     webkitAlignContent: string;
6673     /**
6674      * @deprecated This is a legacy alias of `alignItems`.
6675      *
6676      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-items)
6677      */
6678     webkitAlignItems: string;
6679     /**
6680      * @deprecated This is a legacy alias of `alignSelf`.
6681      *
6682      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-self)
6683      */
6684     webkitAlignSelf: string;
6685     /**
6686      * @deprecated This is a legacy alias of `animation`.
6687      *
6688      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation)
6689      */
6690     webkitAnimation: string;
6691     /**
6692      * @deprecated This is a legacy alias of `animationDelay`.
6693      *
6694      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-delay)
6695      */
6696     webkitAnimationDelay: string;
6697     /**
6698      * @deprecated This is a legacy alias of `animationDirection`.
6699      *
6700      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-direction)
6701      */
6702     webkitAnimationDirection: string;
6703     /**
6704      * @deprecated This is a legacy alias of `animationDuration`.
6705      *
6706      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-duration)
6707      */
6708     webkitAnimationDuration: string;
6709     /**
6710      * @deprecated This is a legacy alias of `animationFillMode`.
6711      *
6712      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-fill-mode)
6713      */
6714     webkitAnimationFillMode: string;
6715     /**
6716      * @deprecated This is a legacy alias of `animationIterationCount`.
6717      *
6718      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-iteration-count)
6719      */
6720     webkitAnimationIterationCount: string;
6721     /**
6722      * @deprecated This is a legacy alias of `animationName`.
6723      *
6724      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-name)
6725      */
6726     webkitAnimationName: string;
6727     /**
6728      * @deprecated This is a legacy alias of `animationPlayState`.
6729      *
6730      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-play-state)
6731      */
6732     webkitAnimationPlayState: string;
6733     /**
6734      * @deprecated This is a legacy alias of `animationTimingFunction`.
6735      *
6736      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-timing-function)
6737      */
6738     webkitAnimationTimingFunction: string;
6739     /**
6740      * @deprecated This is a legacy alias of `appearance`.
6741      *
6742      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/appearance)
6743      */
6744     webkitAppearance: string;
6745     /**
6746      * @deprecated This is a legacy alias of `backfaceVisibility`.
6747      *
6748      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/backface-visibility)
6749      */
6750     webkitBackfaceVisibility: string;
6751     /**
6752      * @deprecated This is a legacy alias of `backgroundClip`.
6753      *
6754      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-clip)
6755      */
6756     webkitBackgroundClip: string;
6757     /**
6758      * @deprecated This is a legacy alias of `backgroundOrigin`.
6759      *
6760      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-origin)
6761      */
6762     webkitBackgroundOrigin: string;
6763     /**
6764      * @deprecated This is a legacy alias of `backgroundSize`.
6765      *
6766      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-size)
6767      */
6768     webkitBackgroundSize: string;
6769     /**
6770      * @deprecated This is a legacy alias of `borderBottomLeftRadius`.
6771      *
6772      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-left-radius)
6773      */
6774     webkitBorderBottomLeftRadius: string;
6775     /**
6776      * @deprecated This is a legacy alias of `borderBottomRightRadius`.
6777      *
6778      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-right-radius)
6779      */
6780     webkitBorderBottomRightRadius: string;
6781     /**
6782      * @deprecated This is a legacy alias of `borderRadius`.
6783      *
6784      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-radius)
6785      */
6786     webkitBorderRadius: string;
6787     /**
6788      * @deprecated This is a legacy alias of `borderTopLeftRadius`.
6789      *
6790      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-left-radius)
6791      */
6792     webkitBorderTopLeftRadius: string;
6793     /**
6794      * @deprecated This is a legacy alias of `borderTopRightRadius`.
6795      *
6796      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-right-radius)
6797      */
6798     webkitBorderTopRightRadius: string;
6799     /**
6800      * @deprecated This is a legacy alias of `boxAlign`.
6801      *
6802      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-align)
6803      */
6804     webkitBoxAlign: string;
6805     /**
6806      * @deprecated This is a legacy alias of `boxFlex`.
6807      *
6808      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-flex)
6809      */
6810     webkitBoxFlex: string;
6811     /**
6812      * @deprecated This is a legacy alias of `boxOrdinalGroup`.
6813      *
6814      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-ordinal-group)
6815      */
6816     webkitBoxOrdinalGroup: string;
6817     /**
6818      * @deprecated This is a legacy alias of `boxOrient`.
6819      *
6820      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-orient)
6821      */
6822     webkitBoxOrient: string;
6823     /**
6824      * @deprecated This is a legacy alias of `boxPack`.
6825      *
6826      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-pack)
6827      */
6828     webkitBoxPack: string;
6829     /**
6830      * @deprecated This is a legacy alias of `boxShadow`.
6831      *
6832      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-shadow)
6833      */
6834     webkitBoxShadow: string;
6835     /**
6836      * @deprecated This is a legacy alias of `boxSizing`.
6837      *
6838      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-sizing)
6839      */
6840     webkitBoxSizing: string;
6841     /**
6842      * @deprecated This is a legacy alias of `filter`.
6843      *
6844      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/filter)
6845      */
6846     webkitFilter: string;
6847     /**
6848      * @deprecated This is a legacy alias of `flex`.
6849      *
6850      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex)
6851      */
6852     webkitFlex: string;
6853     /**
6854      * @deprecated This is a legacy alias of `flexBasis`.
6855      *
6856      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-basis)
6857      */
6858     webkitFlexBasis: string;
6859     /**
6860      * @deprecated This is a legacy alias of `flexDirection`.
6861      *
6862      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-direction)
6863      */
6864     webkitFlexDirection: string;
6865     /**
6866      * @deprecated This is a legacy alias of `flexFlow`.
6867      *
6868      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-flow)
6869      */
6870     webkitFlexFlow: string;
6871     /**
6872      * @deprecated This is a legacy alias of `flexGrow`.
6873      *
6874      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-grow)
6875      */
6876     webkitFlexGrow: string;
6877     /**
6878      * @deprecated This is a legacy alias of `flexShrink`.
6879      *
6880      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-shrink)
6881      */
6882     webkitFlexShrink: string;
6883     /**
6884      * @deprecated This is a legacy alias of `flexWrap`.
6885      *
6886      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-wrap)
6887      */
6888     webkitFlexWrap: string;
6889     /**
6890      * @deprecated This is a legacy alias of `justifyContent`.
6891      *
6892      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-content)
6893      */
6894     webkitJustifyContent: string;
6895     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-line-clamp) */
6896     webkitLineClamp: string;
6897     /**
6898      * @deprecated This is a legacy alias of `mask`.
6899      *
6900      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask)
6901      */
6902     webkitMask: string;
6903     /**
6904      * @deprecated This is a legacy alias of `maskBorder`.
6905      *
6906      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border)
6907      */
6908     webkitMaskBoxImage: string;
6909     /**
6910      * @deprecated This is a legacy alias of `maskBorderOutset`.
6911      *
6912      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-outset)
6913      */
6914     webkitMaskBoxImageOutset: string;
6915     /**
6916      * @deprecated This is a legacy alias of `maskBorderRepeat`.
6917      *
6918      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-repeat)
6919      */
6920     webkitMaskBoxImageRepeat: string;
6921     /**
6922      * @deprecated This is a legacy alias of `maskBorderSlice`.
6923      *
6924      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-slice)
6925      */
6926     webkitMaskBoxImageSlice: string;
6927     /**
6928      * @deprecated This is a legacy alias of `maskBorderSource`.
6929      *
6930      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-source)
6931      */
6932     webkitMaskBoxImageSource: string;
6933     /**
6934      * @deprecated This is a legacy alias of `maskBorderWidth`.
6935      *
6936      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-width)
6937      */
6938     webkitMaskBoxImageWidth: string;
6939     /**
6940      * @deprecated This is a legacy alias of `maskClip`.
6941      *
6942      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-clip)
6943      */
6944     webkitMaskClip: string;
6945     /**
6946      * @deprecated This is a legacy alias of `maskComposite`.
6947      *
6948      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-composite)
6949      */
6950     webkitMaskComposite: string;
6951     /**
6952      * @deprecated This is a legacy alias of `maskImage`.
6953      *
6954      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-image)
6955      */
6956     webkitMaskImage: string;
6957     /**
6958      * @deprecated This is a legacy alias of `maskOrigin`.
6959      *
6960      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-origin)
6961      */
6962     webkitMaskOrigin: string;
6963     /**
6964      * @deprecated This is a legacy alias of `maskPosition`.
6965      *
6966      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-position)
6967      */
6968     webkitMaskPosition: string;
6969     /**
6970      * @deprecated This is a legacy alias of `maskRepeat`.
6971      *
6972      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-repeat)
6973      */
6974     webkitMaskRepeat: string;
6975     /**
6976      * @deprecated This is a legacy alias of `maskSize`.
6977      *
6978      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-size)
6979      */
6980     webkitMaskSize: string;
6981     /**
6982      * @deprecated This is a legacy alias of `order`.
6983      *
6984      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/order)
6985      */
6986     webkitOrder: string;
6987     /**
6988      * @deprecated This is a legacy alias of `perspective`.
6989      *
6990      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective)
6991      */
6992     webkitPerspective: string;
6993     /**
6994      * @deprecated This is a legacy alias of `perspectiveOrigin`.
6995      *
6996      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective-origin)
6997      */
6998     webkitPerspectiveOrigin: string;
6999     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-fill-color) */
7000     webkitTextFillColor: string;
7001     /**
7002      * @deprecated This is a legacy alias of `textSizeAdjust`.
7003      *
7004      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-size-adjust)
7005      */
7006     webkitTextSizeAdjust: string;
7007     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke) */
7008     webkitTextStroke: string;
7009     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-color) */
7010     webkitTextStrokeColor: string;
7011     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-width) */
7012     webkitTextStrokeWidth: string;
7013     /**
7014      * @deprecated This is a legacy alias of `transform`.
7015      *
7016      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform)
7017      */
7018     webkitTransform: string;
7019     /**
7020      * @deprecated This is a legacy alias of `transformOrigin`.
7021      *
7022      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-origin)
7023      */
7024     webkitTransformOrigin: string;
7025     /**
7026      * @deprecated This is a legacy alias of `transformStyle`.
7027      *
7028      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-style)
7029      */
7030     webkitTransformStyle: string;
7031     /**
7032      * @deprecated This is a legacy alias of `transition`.
7033      *
7034      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition)
7035      */
7036     webkitTransition: string;
7037     /**
7038      * @deprecated This is a legacy alias of `transitionDelay`.
7039      *
7040      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-delay)
7041      */
7042     webkitTransitionDelay: string;
7043     /**
7044      * @deprecated This is a legacy alias of `transitionDuration`.
7045      *
7046      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-duration)
7047      */
7048     webkitTransitionDuration: string;
7049     /**
7050      * @deprecated This is a legacy alias of `transitionProperty`.
7051      *
7052      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-property)
7053      */
7054     webkitTransitionProperty: string;
7055     /**
7056      * @deprecated This is a legacy alias of `transitionTimingFunction`.
7057      *
7058      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-timing-function)
7059      */
7060     webkitTransitionTimingFunction: string;
7061     /**
7062      * @deprecated This is a legacy alias of `userSelect`.
7063      *
7064      * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/user-select)
7065      */
7066     webkitUserSelect: string;
7067     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/white-space) */
7068     whiteSpace: string;
7069     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/white-space-collapse) */
7070     whiteSpaceCollapse: string;
7071     whiteSpaceTrim: string;
7072     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/widows) */
7073     widows: string;
7074     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/width) */
7075     width: string;
7076     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/will-change) */
7077     willChange: string;
7078     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/word-break) */
7079     wordBreak: string;
7080     wordSpaceTransform: string;
7081     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/word-spacing) */
7082     wordSpacing: string;
7083     wordWrap: string;
7084     wrapAfter: string;
7085     wrapBefore: string;
7086     wrapFlow: string;
7087     wrapInside: string;
7088     wrapThrough: string;
7089     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/writing-mode) */
7090     writingMode: string;
7091     x: string;
7092     y: string;
7093     /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/z-index) */
7094     zIndex: string;
7095     getCSSImageURLs(property: UTF8String): UTF8String[];
7096     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/getPropertyPriority) */
7097     getPropertyPriority(property: UTF8String): UTF8String;
7098     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/getPropertyValue) */
7099     getPropertyValue(property: UTF8String): UTF8String;
7100     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/item) */
7101     item(index: number): UTF8String;
7102     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/removeProperty) */
7103     removeProperty(property: UTF8String): UTF8String;
7104     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/setProperty) */
7105     setProperty(property: UTF8String, value: UTF8String | null, priority?: UTF8String): void;
7106     [index: number]: UTF8String;
7109 declare var CSSStyleDeclaration: {
7110     prototype: CSSStyleDeclaration;
7111     new(): CSSStyleDeclaration;
7112     isInstance(obj): obj is CSSStyleDeclaration;
7116  * CSSStyleRule represents a single CSS style rule. It implements the CSSRule interface with a type value of 1 (CSSRule.STYLE_RULE).
7118  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule)
7119  */
7120 interface CSSStyleRule extends CSSGroupingRule {
7121     readonly selectorCount: number;
7122     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/selectorText) */
7123     selectorText: UTF8String;
7124     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/style) */
7125     readonly style: CSSStyleDeclaration;
7126     getSelectorWarnings(): SelectorWarning[];
7127     selectorMatchesElement(selectorIndex: number, element: Element, pseudo?: string, includeVisitedStyle?: boolean): boolean;
7128     selectorSpecificityAt(index: number, desugared?: boolean): number;
7129     selectorTextAt(index: number, desugared?: boolean): UTF8String;
7132 declare var CSSStyleRule: {
7133     prototype: CSSStyleRule;
7134     new(): CSSStyleRule;
7135     isInstance(obj): obj is CSSStyleRule;
7139  * A single CSS style sheet. It inherits properties and methods from its parent, StyleSheet.
7141  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet)
7142  */
7143 interface CSSStyleSheet extends StyleSheet {
7144     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/cssRules) */
7145     readonly cssRules: CSSRuleList;
7146     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/ownerRule) */
7147     readonly ownerRule: CSSRule | null;
7148     readonly parsingMode: CSSStyleSheetParsingMode;
7149     /**
7150      * @deprecated
7151      *
7152      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/rules)
7153      */
7154     readonly rules: CSSRuleList;
7155     /**
7156      * @deprecated
7157      *
7158      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/addRule)
7159      */
7160     addRule(selector?: UTF8String, style?: UTF8String, index?: number): number;
7161     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/deleteRule) */
7162     deleteRule(index: number): void;
7163     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/insertRule) */
7164     insertRule(rule: UTF8String, index?: number): number;
7165     /**
7166      * @deprecated
7167      *
7168      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/removeRule)
7169      */
7170     removeRule(index?: number): void;
7171     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replace) */
7172     replace(text: UTF8String): Promise<CSSStyleSheet>;
7173     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replaceSync) */
7174     replaceSync(text: UTF8String): void;
7177 declare var CSSStyleSheet: {
7178     prototype: CSSStyleSheet;
7179     new(options?: CSSStyleSheetInit): CSSStyleSheet;
7180     isInstance(obj): obj is CSSStyleSheet;
7184  * An object representing a single CSS @supports at-rule. It implements the CSSConditionRule interface, and therefore the CSSRule and CSSGroupingRule interfaces with a type value of 12 (CSSRule.SUPPORTS_RULE).
7186  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSupportsRule)
7187  */
7188 interface CSSSupportsRule extends CSSConditionRule {
7191 declare var CSSSupportsRule: {
7192     prototype: CSSSupportsRule;
7193     new(): CSSSupportsRule;
7194     isInstance(obj): obj is CSSSupportsRule;
7197 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransition) */
7198 interface CSSTransition extends Animation {
7199     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransition/transitionProperty) */
7200     readonly transitionProperty: string;
7201     addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSTransition, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
7202     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
7203     removeEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSTransition, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
7204     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
7207 declare var CSSTransition: {
7208     prototype: CSSTransition;
7209     new(): CSSTransition;
7210     isInstance(obj): obj is CSSTransition;
7214  * Provides a storage mechanism for Request / Response object pairs that are cached, for example as part of the ServiceWorker life cycle. Note that the Cache interface is exposed to windowed scopes as well as workers. You don't have to use it in conjunction with service workers, even though it is defined in the service worker spec.
7216  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache)
7217  */
7218 interface Cache {
7219     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/add) */
7220     add(request: RequestInfo | URL): Promise<void>;
7221     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/addAll) */
7222     addAll(requests: RequestInfo[]): Promise<void>;
7223     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/delete) */
7224     delete(request: RequestInfo | URL, options?: CacheQueryOptions): Promise<boolean>;
7225     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/keys) */
7226     keys(request?: RequestInfo | URL, options?: CacheQueryOptions): Promise<Request[]>;
7227     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/match) */
7228     match(request: RequestInfo | URL, options?: CacheQueryOptions): Promise<Response>;
7229     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/matchAll) */
7230     matchAll(request?: RequestInfo | URL, options?: CacheQueryOptions): Promise<Response[]>;
7231     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/put) */
7232     put(request: RequestInfo | URL, response: Response): Promise<void>;
7235 declare var Cache: {
7236     prototype: Cache;
7237     new(): Cache;
7238     isInstance(obj): obj is Cache;
7242  * The storage for Cache objects.
7244  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage)
7245  */
7246 interface CacheStorage {
7247     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/delete) */
7248     delete(cacheName: string): Promise<boolean>;
7249     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/has) */
7250     has(cacheName: string): Promise<boolean>;
7251     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/keys) */
7252     keys(): Promise<string[]>;
7253     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/match) */
7254     match(request: RequestInfo | URL, options?: MultiCacheQueryOptions): Promise<Response>;
7255     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/open) */
7256     open(cacheName: string): Promise<Cache>;
7259 declare var CacheStorage: {
7260     prototype: CacheStorage;
7261     new(namespace: CacheStorageNamespace, principal: Principal): CacheStorage;
7262     isInstance(obj): obj is CacheStorage;
7265 interface CallbackDebuggerNotification extends DebuggerNotification {
7266     readonly phase: CallbackDebuggerNotificationPhase;
7269 declare var CallbackDebuggerNotification: {
7270     prototype: CallbackDebuggerNotification;
7271     new(): CallbackDebuggerNotification;
7272     isInstance(obj): obj is CallbackDebuggerNotification;
7275 interface CanonicalBrowsingContext extends BrowsingContext {
7276     readonly activeSessionHistoryEntry: nsISHEntry | null;
7277     readonly currentRemoteType: UTF8String | null;
7278     readonly currentURI: URI | null;
7279     readonly currentWindowGlobal: WindowGlobalParent | null;
7280     readonly embedderWindowGlobal: WindowGlobalParent | null;
7281     forceAppWindowActive: boolean;
7282     readonly isReplaced: boolean;
7283     readonly isUnderHiddenEmbedderElement: boolean;
7284     readonly mediaController: MediaController | null;
7285     readonly mostRecentLoadingSessionHistoryEntry: nsISHEntry | null;
7286     readonly secureBrowserUI: nsISecureBrowserUI | null;
7287     readonly sessionHistory: nsISHistory | null;
7288     targetTopLevelLinkClicksToBlank: boolean;
7289     readonly topChromeWindow: WindowProxy | null;
7290     touchEventsOverride: TouchEventsOverride;
7291     readonly webProgress: nsIWebProgress | null;
7292     clearRestoreState(): void;
7293     fixupAndLoadURIString(aURI: string, aOptions?: LoadURIOptions): void;
7294     getWindowGlobals(): WindowGlobalParent[];
7295     goBack(aCancelContentJSEpoch?: number, aRequireUserInteraction?: boolean, aUserActivation?: boolean): void;
7296     goForward(aCancelContentJSEpoch?: number, aRequireUserInteraction?: boolean, aUserActivation?: boolean): void;
7297     goToIndex(aIndex: number, aCancelContentJSEpoch?: number, aUserActivation?: boolean): void;
7298     loadURI(aURI: URI, aOptions?: LoadURIOptions): void;
7299     notifyMediaMutedChanged(muted: boolean): void;
7300     notifyStartDelayedAutoplayMedia(): void;
7301     print(aPrintSettings: nsIPrintSettings): Promise<void>;
7302     reload(aReloadFlags: number): void;
7303     resetScalingZoom(): void;
7304     setCrossGroupOpener(crossGroupOpener: CanonicalBrowsingContext): void;
7305     startApzAutoscroll(aAnchorX: number, aAnchorY: number, aScrollId: number, aPresShellId: number): boolean;
7306     stop(aStopFlags: number): void;
7307     stopApzAutoscroll(aScrollId: number, aPresShellId: number): void;
7310 declare var CanonicalBrowsingContext: {
7311     prototype: CanonicalBrowsingContext;
7312     new(): CanonicalBrowsingContext;
7313     countSiteOrigins(roots: BrowsingContext[]): number;
7314     isInstance(obj): obj is CanonicalBrowsingContext;
7317 interface CanvasCaptureMediaStream extends MediaStream {
7318     readonly canvas: HTMLCanvasElement;
7319     requestFrame(): void;
7320     addEventListener<K extends keyof MediaStreamEventMap>(type: K, listener: (this: CanvasCaptureMediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
7321     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
7322     removeEventListener<K extends keyof MediaStreamEventMap>(type: K, listener: (this: CanvasCaptureMediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
7323     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
7326 declare var CanvasCaptureMediaStream: {
7327     prototype: CanvasCaptureMediaStream;
7328     new(): CanvasCaptureMediaStream;
7329     isInstance(obj): obj is CanvasCaptureMediaStream;
7332 interface CanvasCompositing {
7333     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/globalAlpha) */
7334     globalAlpha: number;
7335     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation) */
7336     globalCompositeOperation: string;
7339 interface CanvasDrawImage {
7340     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/drawImage) */
7341     drawImage(image: CanvasImageSource, dx: number, dy: number): void;
7342     drawImage(image: CanvasImageSource, dx: number, dy: number, dw: number, dh: number): void;
7343     drawImage(image: CanvasImageSource, sx: number, sy: number, sw: number, sh: number, dx: number, dy: number, dw: number, dh: number): void;
7346 interface CanvasDrawPath {
7347     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/beginPath) */
7348     beginPath(): void;
7349     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/clip) */
7350     clip(winding?: CanvasWindingRule): void;
7351     clip(path: Path2D, winding?: CanvasWindingRule): void;
7352     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fill) */
7353     fill(winding?: CanvasWindingRule): void;
7354     fill(path: Path2D, winding?: CanvasWindingRule): void;
7355     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/isPointInPath) */
7356     isPointInPath(x: number, y: number, winding?: CanvasWindingRule): boolean;
7357     isPointInPath(path: Path2D, x: number, y: number, winding?: CanvasWindingRule): boolean;
7358     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/isPointInStroke) */
7359     isPointInStroke(x: number, y: number): boolean;
7360     isPointInStroke(path: Path2D, x: number, y: number): boolean;
7361     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/stroke) */
7362     stroke(): void;
7363     stroke(path: Path2D): void;
7366 interface CanvasFillStrokeStyles {
7367     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillStyle) */
7368     fillStyle: UTF8String | CanvasGradient | CanvasPattern;
7369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeStyle) */
7370     strokeStyle: UTF8String | CanvasGradient | CanvasPattern;
7371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createConicGradient) */
7372     createConicGradient(angle: number, cx: number, cy: number): CanvasGradient;
7373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createLinearGradient) */
7374     createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
7375     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createPattern) */
7376     createPattern(image: CanvasImageSource, repetition: string | null): CanvasPattern | null;
7377     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createRadialGradient) */
7378     createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
7381 interface CanvasFilters {
7382     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/filter) */
7383     filter: UTF8String;
7387  * An opaque object describing a gradient. It is returned by the methods CanvasRenderingContext2D.createLinearGradient() or CanvasRenderingContext2D.createRadialGradient().
7389  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasGradient)
7390  */
7391 interface CanvasGradient {
7392     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasGradient/addColorStop) */
7393     addColorStop(offset: number, color: UTF8String): void;
7396 declare var CanvasGradient: {
7397     prototype: CanvasGradient;
7398     new(): CanvasGradient;
7399     isInstance(obj): obj is CanvasGradient;
7402 interface CanvasImageData {
7403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createImageData) */
7404     createImageData(sw: number, sh: number): ImageData;
7405     createImageData(imagedata: ImageData): ImageData;
7406     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getImageData) */
7407     getImageData(sx: number, sy: number, sw: number, sh: number): ImageData;
7408     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/putImageData) */
7409     putImageData(imagedata: ImageData, dx: number, dy: number): void;
7410     putImageData(imagedata: ImageData, dx: number, dy: number, dirtyX: number, dirtyY: number, dirtyWidth: number, dirtyHeight: number): void;
7413 interface CanvasImageSmoothing {
7414     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/imageSmoothingEnabled) */
7415     imageSmoothingEnabled: boolean;
7418 interface CanvasPathDrawingStyles {
7419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineCap) */
7420     lineCap: CanvasLineCap;
7421     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineDashOffset) */
7422     lineDashOffset: number;
7423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineJoin) */
7424     lineJoin: CanvasLineJoin;
7425     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineWidth) */
7426     lineWidth: number;
7427     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/miterLimit) */
7428     miterLimit: number;
7429     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getLineDash) */
7430     getLineDash(): number[];
7431     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setLineDash) */
7432     setLineDash(segments: number[]): void;
7435 interface CanvasPathMethods {
7436     arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, anticlockwise?: boolean): void;
7437     arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
7438     bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
7439     closePath(): void;
7440     ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, anticlockwise?: boolean): void;
7441     lineTo(x: number, y: number): void;
7442     moveTo(x: number, y: number): void;
7443     quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
7444     rect(x: number, y: number, w: number, h: number): void;
7445     roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | (number | DOMPointInit)[]): void;
7449  * An opaque object describing a pattern, based on an image, a canvas, or a video, created by the CanvasRenderingContext2D.createPattern() method.
7451  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasPattern)
7452  */
7453 interface CanvasPattern {
7454     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasPattern/setTransform) */
7455     setTransform(matrix?: DOMMatrix2DInit): void;
7458 declare var CanvasPattern: {
7459     prototype: CanvasPattern;
7460     new(): CanvasPattern;
7461     isInstance(obj): obj is CanvasPattern;
7464 interface CanvasRect {
7465     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/clearRect) */
7466     clearRect(x: number, y: number, w: number, h: number): void;
7467     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillRect) */
7468     fillRect(x: number, y: number, w: number, h: number): void;
7469     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeRect) */
7470     strokeRect(x: number, y: number, w: number, h: number): void;
7474  * The CanvasRenderingContext2D interface, part of the Canvas API, provides the 2D rendering context for the drawing surface of a <canvas> element. It is used for drawing shapes, text, images, and other objects.
7476  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D)
7477  */
7478 interface CanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPathDrawingStyles, CanvasPathMethods, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform, CanvasUserInterface {
7479     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/canvas) */
7480     readonly canvas: HTMLCanvasElement | null;
7481     demote(): void;
7482     drawWindow(window: Window, x: number, y: number, w: number, h: number, bgColor: UTF8String, flags?: number): void;
7483     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getContextAttributes) */
7484     getContextAttributes(): CanvasRenderingContext2DSettings;
7485     readonly DRAWWINDOW_DRAW_CARET: 0x01;
7486     readonly DRAWWINDOW_DO_NOT_FLUSH: 0x02;
7487     readonly DRAWWINDOW_DRAW_VIEW: 0x04;
7488     readonly DRAWWINDOW_USE_WIDGET_LAYERS: 0x08;
7489     readonly DRAWWINDOW_ASYNC_DECODE_IMAGES: 0x10;
7492 declare var CanvasRenderingContext2D: {
7493     prototype: CanvasRenderingContext2D;
7494     new(): CanvasRenderingContext2D;
7495     readonly DRAWWINDOW_DRAW_CARET: 0x01;
7496     readonly DRAWWINDOW_DO_NOT_FLUSH: 0x02;
7497     readonly DRAWWINDOW_DRAW_VIEW: 0x04;
7498     readonly DRAWWINDOW_USE_WIDGET_LAYERS: 0x08;
7499     readonly DRAWWINDOW_ASYNC_DECODE_IMAGES: 0x10;
7500     isInstance(obj): obj is CanvasRenderingContext2D;
7503 interface CanvasShadowStyles {
7504     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowBlur) */
7505     shadowBlur: number;
7506     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowColor) */
7507     shadowColor: UTF8String;
7508     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowOffsetX) */
7509     shadowOffsetX: number;
7510     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowOffsetY) */
7511     shadowOffsetY: number;
7514 interface CanvasState {
7515     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/reset) */
7516     reset(): void;
7517     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/restore) */
7518     restore(): void;
7519     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/save) */
7520     save(): void;
7523 interface CanvasText {
7524     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillText) */
7525     fillText(text: string, x: number, y: number, maxWidth?: number): void;
7526     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/measureText) */
7527     measureText(text: string): TextMetrics;
7528     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeText) */
7529     strokeText(text: string, x: number, y: number, maxWidth?: number): void;
7532 interface CanvasTextDrawingStyles {
7533     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/direction) */
7534     direction: CanvasDirection;
7535     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/font) */
7536     font: UTF8String;
7537     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontKerning) */
7538     fontKerning: CanvasFontKerning;
7539     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontStretch) */
7540     fontStretch: CanvasFontStretch;
7541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontVariantCaps) */
7542     fontVariantCaps: CanvasFontVariantCaps;
7543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/letterSpacing) */
7544     letterSpacing: UTF8String;
7545     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textAlign) */
7546     textAlign: CanvasTextAlign;
7547     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textBaseline) */
7548     textBaseline: CanvasTextBaseline;
7549     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textRendering) */
7550     textRendering: CanvasTextRendering;
7551     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/wordSpacing) */
7552     wordSpacing: UTF8String;
7555 interface CanvasTransform {
7556     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getTransform) */
7557     getTransform(): DOMMatrix;
7558     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/resetTransform) */
7559     resetTransform(): void;
7560     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/rotate) */
7561     rotate(angle: number): void;
7562     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/scale) */
7563     scale(x: number, y: number): void;
7564     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setTransform) */
7565     setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
7566     setTransform(transform?: DOMMatrix2DInit): void;
7567     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/transform) */
7568     transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
7569     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/translate) */
7570     translate(x: number, y: number): void;
7573 interface CanvasUserInterface {
7574     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/drawFocusIfNeeded) */
7575     drawFocusIfNeeded(element: Element): void;
7578 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CaretPosition) */
7579 interface CaretPosition {
7580     readonly offset: number;
7581     readonly offsetNode: Node | null;
7582     getClientRect(): DOMRect | null;
7585 declare var CaretPosition: {
7586     prototype: CaretPosition;
7587     new(): CaretPosition;
7588     isInstance(obj): obj is CaretPosition;
7591 interface CaretStateChangedEvent extends Event {
7592     readonly boundingClientRect: DOMRectReadOnly | null;
7593     readonly caretVisible: boolean;
7594     readonly caretVisuallyVisible: boolean;
7595     readonly clientX: number;
7596     readonly clientY: number;
7597     readonly collapsed: boolean;
7598     readonly reason: CaretChangedReason;
7599     readonly selectedTextContent: string;
7600     readonly selectionEditable: boolean;
7601     readonly selectionVisible: boolean;
7604 declare var CaretStateChangedEvent: {
7605     prototype: CaretStateChangedEvent;
7606     new(type: string, eventInit?: CaretStateChangedEventInit): CaretStateChangedEvent;
7607     isInstance(obj): obj is CaretStateChangedEvent;
7611  * The ChannelMergerNode interface, often used in conjunction with its opposite, ChannelSplitterNode, reunites different mono inputs into a single output. Each input is used to fill a channel of the output. This is useful for accessing each channels separately, e.g. for performing channel mixing where gain must be separately controlled on each channel.
7613  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ChannelMergerNode)
7614  */
7615 interface ChannelMergerNode extends AudioNode {
7618 declare var ChannelMergerNode: {
7619     prototype: ChannelMergerNode;
7620     new(context: BaseAudioContext, options?: ChannelMergerOptions): ChannelMergerNode;
7621     isInstance(obj): obj is ChannelMergerNode;
7625  * The ChannelSplitterNode interface, often used in conjunction with its opposite, ChannelMergerNode, separates the different channels of an audio source into a set of mono outputs. This is useful for accessing each channel separately, e.g. for performing channel mixing where gain must be separately controlled on each channel.
7627  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ChannelSplitterNode)
7628  */
7629 interface ChannelSplitterNode extends AudioNode {
7632 declare var ChannelSplitterNode: {
7633     prototype: ChannelSplitterNode;
7634     new(context: BaseAudioContext, options?: ChannelSplitterOptions): ChannelSplitterNode;
7635     isInstance(obj): obj is ChannelSplitterNode;
7638 interface ChannelWrapperEventMap {
7639     "error": ErrorEvent;
7640     "start": Event;
7641     "stop": Event;
7644 interface ChannelWrapper extends EventTarget {
7645     readonly browserElement: nsISupports | null;
7646     readonly canModify: boolean;
7647     channel: MozChannel | null;
7648     contentType: string;
7649     readonly documentURI: URI | null;
7650     readonly documentURL: string | null;
7651     readonly errorString: string | null;
7652     readonly finalURI: URI;
7653     readonly finalURL: string;
7654     readonly frameAncestors: MozFrameAncestorInfo[] | null;
7655     readonly frameId: number;
7656     readonly id: number;
7657     readonly isServiceWorkerScript: boolean;
7658     readonly isSystemLoad: boolean;
7659     readonly loadInfo: LoadInfo | null;
7660     readonly method: string;
7661     onerror: OnErrorEventHandler;
7662     onstart: ((this: ChannelWrapper, ev: Event) => any) | null;
7663     onstop: ((this: ChannelWrapper, ev: Event) => any) | null;
7664     readonly originURI: URI | null;
7665     readonly originURL: string | null;
7666     readonly parentFrameId: number;
7667     readonly proxyInfo: MozProxyInfo | null;
7668     readonly remoteAddress: string | null;
7669     readonly requestSize: number;
7670     readonly responseSize: number;
7671     readonly statusCode: number;
7672     readonly statusLine: string;
7673     readonly suspended: boolean;
7674     readonly thirdParty: boolean;
7675     readonly type: MozContentPolicyType;
7676     readonly urlClassification: MozUrlClassification | null;
7677     cancel(result: number, reason?: number): void;
7678     errorCheck(): void;
7679     getRequestHeader(header: string): string | null;
7680     getRequestHeaders(): MozHTTPHeader[];
7681     getResponseHeaders(): MozHTTPHeader[];
7682     matches(filter?: MozRequestFilter, extension?: WebExtensionPolicy | null, options?: MozRequestMatchOptions): boolean;
7683     redirectTo(url: URI): void;
7684     registerTraceableChannel(extension: WebExtensionPolicy, remoteTab: RemoteTab | null): void;
7685     resume(): void;
7686     setRequestHeader(header: string, value: string, merge?: boolean): void;
7687     setResponseHeader(header: string, value: string, merge?: boolean): void;
7688     suspend(profileMarkerText: string): void;
7689     upgradeToSecure(): void;
7690     addEventListener<K extends keyof ChannelWrapperEventMap>(type: K, listener: (this: ChannelWrapper, ev: ChannelWrapperEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
7691     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
7692     removeEventListener<K extends keyof ChannelWrapperEventMap>(type: K, listener: (this: ChannelWrapper, ev: ChannelWrapperEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
7693     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
7696 declare var ChannelWrapper: {
7697     prototype: ChannelWrapper;
7698     new(): ChannelWrapper;
7699     get(channel: MozChannel): ChannelWrapper;
7700     getRegisteredChannel(aChannelId: number, extension: WebExtensionPolicy, remoteTab: RemoteTab | null): ChannelWrapper | null;
7701     isInstance(obj): obj is ChannelWrapper;
7705  * The CharacterData abstract interface represents a Node object that contains characters. This is an abstract interface, meaning there aren't any object of type CharacterData: it is implemented by other interfaces, like Text, Comment, or ProcessingInstruction which aren't abstract.
7707  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData)
7708  */
7709 interface CharacterData extends Node, ChildNode, NonDocumentTypeChildNode {
7710     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/data) */
7711     data: string;
7712     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/length) */
7713     readonly length: number;
7714     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/appendData) */
7715     appendData(data: string): void;
7716     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/deleteData) */
7717     deleteData(offset: number, count: number): void;
7718     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/insertData) */
7719     insertData(offset: number, data: string): void;
7720     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/replaceData) */
7721     replaceData(offset: number, count: number, data: string): void;
7722     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/substringData) */
7723     substringData(offset: number, count: number): string;
7726 declare var CharacterData: {
7727     prototype: CharacterData;
7728     new(): CharacterData;
7729     isInstance(obj): obj is CharacterData;
7732 interface CheckerboardReportService {
7733     flushActiveReports(): void;
7734     getReports(): CheckerboardReport[];
7735     isRecordingEnabled(): boolean;
7736     setRecordingEnabled(aEnabled: boolean): void;
7739 declare var CheckerboardReportService: {
7740     prototype: CheckerboardReportService;
7741     new(): CheckerboardReportService;
7742     isInstance(obj): obj is CheckerboardReportService;
7745 interface ChildNode {
7746     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/after) */
7747     after(...nodes: (Node | string)[]): void;
7748     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/before) */
7749     before(...nodes: (Node | string)[]): void;
7750     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/remove) */
7751     remove(): void;
7752     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/replaceWith) */
7753     replaceWith(...nodes: (Node | string)[]): void;
7756 interface ChildProcessMessageManager extends SyncMessageSender {
7759 declare var ChildProcessMessageManager: {
7760     prototype: ChildProcessMessageManager;
7761     new(): ChildProcessMessageManager;
7762     isInstance(obj): obj is ChildProcessMessageManager;
7765 interface ChildSHistory {
7766     readonly count: number;
7767     readonly index: number;
7768     readonly legacySHistory: nsISHistory;
7769     canGo(aOffset: number): boolean;
7770     go(aOffset: number, aRequireUserInteraction?: boolean, aUserActivation?: boolean): void;
7771     reload(aReloadFlags: number): void;
7774 declare var ChildSHistory: {
7775     prototype: ChildSHistory;
7776     new(): ChildSHistory;
7777     isInstance(obj): obj is ChildSHistory;
7780 interface ChromeMessageBroadcaster extends MessageBroadcaster, FrameScriptLoader {
7783 declare var ChromeMessageBroadcaster: {
7784     prototype: ChromeMessageBroadcaster;
7785     new(): ChromeMessageBroadcaster;
7786     isInstance(obj): obj is ChromeMessageBroadcaster;
7789 interface ChromeMessageSender extends MessageSender, FrameScriptLoader {
7792 declare var ChromeMessageSender: {
7793     prototype: ChromeMessageSender;
7794     new(): ChromeMessageSender;
7795     isInstance(obj): obj is ChromeMessageSender;
7798 interface ChromeNodeList extends NodeList {
7799     append(aNode: Node): void;
7800     remove(aNode: Node): void;
7803 declare var ChromeNodeList: {
7804     prototype: ChromeNodeList;
7805     new(): ChromeNodeList;
7806     isInstance(obj): obj is ChromeNodeList;
7809 interface ChromeWorker extends Worker {
7810     addEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: ChromeWorker, ev: WorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
7811     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
7812     removeEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: ChromeWorker, ev: WorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
7813     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
7816 declare var ChromeWorker: {
7817     prototype: ChromeWorker;
7818     new(scriptURL: string | URL, options?: WorkerOptions): ChromeWorker;
7819     isInstance(obj): obj is ChromeWorker;
7823  * The Client interface represents an executable context such as a Worker, or a SharedWorker. Window clients are represented by the more-specific WindowClient. You can get Client/WindowClient objects from methods such as Clients.matchAll() and Clients.get().
7825  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client)
7826  */
7827 interface Client {
7828     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/frameType) */
7829     readonly frameType: FrameType;
7830     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/id) */
7831     readonly id: string;
7832     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/type) */
7833     readonly type: ClientType;
7834     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/url) */
7835     readonly url: string;
7836     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/postMessage) */
7837     postMessage(message: any, transfer: any[]): void;
7838     postMessage(message: any, aOptions?: StructuredSerializeOptions): void;
7841 declare var Client: {
7842     prototype: Client;
7843     new(): Client;
7844     isInstance(obj): obj is Client;
7848  * Provides access to Client objects. Access it via self.clients within a service worker.
7850  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients)
7851  */
7852 interface Clients {
7853     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/claim) */
7854     claim(): Promise<void>;
7855     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/get) */
7856     get(id: string): Promise<Client | undefined>;
7857     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/matchAll) */
7858     matchAll(options?: ClientQueryOptions): Promise<Client[]>;
7859     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/openWindow) */
7860     openWindow(url: string | URL): Promise<WindowClient | null>;
7863 declare var Clients: {
7864     prototype: Clients;
7865     new(): Clients;
7866     isInstance(obj): obj is Clients;
7870  * Available only in secure contexts.
7872  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard)
7873  */
7874 interface Clipboard extends EventTarget {
7875     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/read) */
7876     read(): Promise<ClipboardItems>;
7877     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/readText) */
7878     readText(): Promise<string>;
7879     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/write) */
7880     write(data: ClipboardItems): Promise<void>;
7881     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/writeText) */
7882     writeText(data: string): Promise<void>;
7885 declare var Clipboard: {
7886     prototype: Clipboard;
7887     new(): Clipboard;
7888     isInstance(obj): obj is Clipboard;
7892  * Events providing information related to modification of the clipboard, that is cut, copy, and paste events.
7894  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardEvent)
7895  */
7896 interface ClipboardEvent extends Event {
7897     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardEvent/clipboardData) */
7898     readonly clipboardData: DataTransfer | null;
7901 declare var ClipboardEvent: {
7902     prototype: ClipboardEvent;
7903     new(type: string, eventInitDict?: ClipboardEventInit): ClipboardEvent;
7904     isInstance(obj): obj is ClipboardEvent;
7908  * Available only in secure contexts.
7910  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardItem)
7911  */
7912 interface ClipboardItem {
7913     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardItem/presentationStyle) */
7914     readonly presentationStyle: PresentationStyle;
7915     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardItem/types) */
7916     readonly types: string[];
7917     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardItem/getType) */
7918     getType(type: string): Promise<Blob>;
7921 declare var ClipboardItem: {
7922     prototype: ClipboardItem;
7923     new(items: Record<string, ClipboardItemDataType | PromiseLike<ClipboardItemDataType>>, options?: ClipboardItemOptions): ClipboardItem;
7924     isInstance(obj): obj is ClipboardItem;
7927 interface ClonedErrorHolder {
7930 declare var ClonedErrorHolder: {
7931     prototype: ClonedErrorHolder;
7932     new(aError: any): ClonedErrorHolder;
7933     isInstance(obj): obj is ClonedErrorHolder;
7937  * A CloseEvent is sent to clients using WebSockets when the connection is closed. This is delivered to the listener indicated by the WebSocket object's onclose attribute.
7939  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent)
7940  */
7941 interface CloseEvent extends Event {
7942     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/code) */
7943     readonly code: number;
7944     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/reason) */
7945     readonly reason: string;
7946     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/wasClean) */
7947     readonly wasClean: boolean;
7950 declare var CloseEvent: {
7951     prototype: CloseEvent;
7952     new(type: string, eventInitDict?: CloseEventInit): CloseEvent;
7953     isInstance(obj): obj is CloseEvent;
7956 interface CommandEvent extends Event {
7957     readonly command: string | null;
7960 declare var CommandEvent: {
7961     prototype: CommandEvent;
7962     new(): CommandEvent;
7963     isInstance(obj): obj is CommandEvent;
7967  * Textual notations within markup; although it is generally not visually shown, such comments are available to be read in the source view.
7969  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Comment)
7970  */
7971 interface Comment extends CharacterData {
7974 declare var Comment: {
7975     prototype: Comment;
7976     new(data?: string): Comment;
7977     isInstance(obj): obj is Comment;
7981  * The DOM CompositionEvent represents events that occur due to the user indirectly entering text.
7983  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompositionEvent)
7984  */
7985 interface CompositionEvent extends UIEvent {
7986     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompositionEvent/data) */
7987     readonly data: string | null;
7988     /**
7989      * @deprecated
7990      *
7991      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompositionEvent/locale)
7992      */
7993     readonly locale: string;
7994     readonly ranges: TextClause[];
7995     /**
7996      * @deprecated
7997      *
7998      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompositionEvent/initCompositionEvent)
7999      */
8000     initCompositionEvent(typeArg: string, canBubbleArg?: boolean, cancelableArg?: boolean, viewArg?: Window | null, dataArg?: string | null, localeArg?: string): void;
8003 declare var CompositionEvent: {
8004     prototype: CompositionEvent;
8005     new(type: string, eventInitDict?: CompositionEventInit): CompositionEvent;
8006     isInstance(obj): obj is CompositionEvent;
8009 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream) */
8010 interface CompressionStream extends GenericTransformStream {
8013 declare var CompressionStream: {
8014     prototype: CompressionStream;
8015     new(format: CompressionFormat): CompressionStream;
8016     isInstance(obj): obj is CompressionStream;
8019 interface ConsoleInstance {
8020     assert(condition?: boolean, ...data: any[]): void;
8021     clear(): void;
8022     count(label?: string): void;
8023     countReset(label?: string): void;
8024     debug(...data: any[]): void;
8025     dir(...data: any[]): void;
8026     dirxml(...data: any[]): void;
8027     error(...data: any[]): void;
8028     exception(...data: any[]): void;
8029     group(...data: any[]): void;
8030     groupCollapsed(...data: any[]): void;
8031     groupEnd(): void;
8032     info(...data: any[]): void;
8033     log(...data: any[]): void;
8034     profile(...data: any[]): void;
8035     profileEnd(...data: any[]): void;
8036     reportForServiceWorkerScope(scope: string, message: string, filename: string, lineNumber: number, columnNumber: number, level: ConsoleLevel): void;
8037     table(...data: any[]): void;
8038     time(label?: string): void;
8039     timeEnd(label?: string): void;
8040     timeLog(label?: string, ...data: any[]): void;
8041     timeStamp(data?: any): void;
8042     trace(...data: any[]): void;
8043     warn(...data: any[]): void;
8046 declare var ConsoleInstance: {
8047     prototype: ConsoleInstance;
8048     new(): ConsoleInstance;
8049     isInstance(obj): obj is ConsoleInstance;
8052 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConstantSourceNode) */
8053 interface ConstantSourceNode extends AudioScheduledSourceNode {
8054     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConstantSourceNode/offset) */
8055     readonly offset: AudioParam;
8056     addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: ConstantSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
8057     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
8058     removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: ConstantSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
8059     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
8062 declare var ConstantSourceNode: {
8063     prototype: ConstantSourceNode;
8064     new(context: BaseAudioContext, options?: ConstantSourceOptions): ConstantSourceNode;
8065     isInstance(obj): obj is ConstantSourceNode;
8068 interface ContentFrameMessageManager extends EventTarget, MessageListenerManagerMixin, MessageManagerGlobal, MessageSenderMixin, SyncMessageSenderMixin {
8069     readonly content: WindowProxy | null;
8070     readonly docShell: nsIDocShell | null;
8071     readonly tabEventTarget: nsIEventTarget | null;
8074 declare var ContentFrameMessageManager: {
8075     prototype: ContentFrameMessageManager;
8076     new(): ContentFrameMessageManager;
8077     isInstance(obj): obj is ContentFrameMessageManager;
8080 interface ContentProcessMessageManager extends MessageListenerManagerMixin, MessageManagerGlobal, MessageSenderMixin, SyncMessageSenderMixin {
8081     readonly initialProcessData: any;
8082     readonly sharedData: MozSharedMap | null;
8085 declare var ContentProcessMessageManager: {
8086     prototype: ContentProcessMessageManager;
8087     new(): ContentProcessMessageManager;
8088     isInstance(obj): obj is ContentProcessMessageManager;
8091 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContentVisibilityAutoStateChangeEvent) */
8092 interface ContentVisibilityAutoStateChangeEvent extends Event {
8093     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ContentVisibilityAutoStateChangeEvent/skipped) */
8094     readonly skipped: boolean;
8097 declare var ContentVisibilityAutoStateChangeEvent: {
8098     prototype: ContentVisibilityAutoStateChangeEvent;
8099     new(type: string, eventInitDict?: ContentVisibilityAutoStateChangeEventInit): ContentVisibilityAutoStateChangeEvent;
8100     isInstance(obj): obj is ContentVisibilityAutoStateChangeEvent;
8104  * An AudioNode that performs a Linear Convolution on a given AudioBuffer, often used to achieve a reverb effect. A ConvolverNode always has exactly one input and one output.
8106  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConvolverNode)
8107  */
8108 interface ConvolverNode extends AudioNode, AudioNodePassThrough {
8109     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConvolverNode/buffer) */
8110     buffer: AudioBuffer | null;
8111     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConvolverNode/normalize) */
8112     normalize: boolean;
8115 declare var ConvolverNode: {
8116     prototype: ConvolverNode;
8117     new(context: BaseAudioContext, options?: ConvolverOptions): ConvolverNode;
8118     isInstance(obj): obj is ConvolverNode;
8122  * This Streams API interface provides a built-in byte length queuing strategy that can be used when constructing streams.
8124  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy)
8125  */
8126 interface CountQueuingStrategy {
8127     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/highWaterMark) */
8128     readonly highWaterMark: number;
8129     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/size) */
8130     readonly size: Function;
8133 declare var CountQueuingStrategy: {
8134     prototype: CountQueuingStrategy;
8135     new(init: QueuingStrategyInit): CountQueuingStrategy;
8136     isInstance(obj): obj is CountQueuingStrategy;
8139 interface CreateOfferRequest {
8140     readonly callID: string;
8141     readonly innerWindowID: number;
8142     readonly isSecure: boolean;
8143     readonly windowID: number;
8146 declare var CreateOfferRequest: {
8147     prototype: CreateOfferRequest;
8148     new(): CreateOfferRequest;
8149     isInstance(obj): obj is CreateOfferRequest;
8153  * Available only in secure contexts.
8155  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Credential)
8156  */
8157 interface Credential {
8158     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Credential/id) */
8159     readonly id: string;
8160     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Credential/type) */
8161     readonly type: string;
8164 declare var Credential: {
8165     prototype: Credential;
8166     new(): Credential;
8167     isInstance(obj): obj is Credential;
8171  * Available only in secure contexts.
8173  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer)
8174  */
8175 interface CredentialsContainer {
8176     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/create) */
8177     create(options?: CredentialCreationOptions): Promise<Credential | null>;
8178     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/get) */
8179     get(options?: CredentialRequestOptions): Promise<Credential | null>;
8180     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/preventSilentAccess) */
8181     preventSilentAccess(): Promise<void>;
8182     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/store) */
8183     store(credential: Credential): Promise<Credential>;
8186 declare var CredentialsContainer: {
8187     prototype: CredentialsContainer;
8188     new(): CredentialsContainer;
8189     isInstance(obj): obj is CredentialsContainer;
8193  * Basic cryptography features available in the current context. It allows access to a cryptographically strong random number generator and to cryptographic primitives.
8195  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto)
8196  */
8197 interface Crypto {
8198     /**
8199      * Available only in secure contexts.
8200      *
8201      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/subtle)
8202      */
8203     readonly subtle: SubtleCrypto;
8204     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/getRandomValues) */
8205     getRandomValues(array: ArrayBufferView): ArrayBufferView;
8206     /**
8207      * Available only in secure contexts.
8208      *
8209      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/randomUUID)
8210      */
8211     randomUUID(): UTF8String;
8214 declare var Crypto: {
8215     prototype: Crypto;
8216     new(): Crypto;
8217     isInstance(obj): obj is Crypto;
8221  * The CryptoKey dictionary of the Web Crypto API represents a cryptographic key.
8222  * Available only in secure contexts.
8224  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey)
8225  */
8226 interface CryptoKey {
8227     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/algorithm) */
8228     readonly algorithm: any;
8229     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/extractable) */
8230     readonly extractable: boolean;
8231     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/type) */
8232     readonly type: KeyType;
8233     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/usages) */
8234     readonly usages: KeyUsage[];
8237 declare var CryptoKey: {
8238     prototype: CryptoKey;
8239     new(): CryptoKey;
8240     isInstance(obj): obj is CryptoKey;
8243 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry) */
8244 interface CustomElementRegistry {
8245     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/define) */
8246     define(name: string, constructor: CustomElementConstructor, options?: ElementDefinitionOptions): void;
8247     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/get) */
8248     get(name: string): CustomElementConstructor | undefined;
8249     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/getName) */
8250     getName(constructor: CustomElementConstructor): string | null;
8251     setElementCreationCallback(name: string, callback: CustomElementCreationCallback): void;
8252     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/upgrade) */
8253     upgrade(root: Node): void;
8254     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/whenDefined) */
8255     whenDefined(name: string): Promise<CustomElementConstructor>;
8258 declare var CustomElementRegistry: {
8259     prototype: CustomElementRegistry;
8260     new(): CustomElementRegistry;
8261     isInstance(obj): obj is CustomElementRegistry;
8264 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent) */
8265 interface CustomEvent extends Event {
8266     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/detail) */
8267     readonly detail: any;
8268     /**
8269      * @deprecated
8270      *
8271      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/initCustomEvent)
8272      */
8273     initCustomEvent(type: string, canBubble?: boolean, cancelable?: boolean, detail?: any): void;
8276 declare var CustomEvent: {
8277     prototype: CustomEvent;
8278     new(type: string, eventInitDict?: CustomEventInit): CustomEvent;
8279     isInstance(obj): obj is CustomEvent;
8282 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomStateSet) */
8283 interface CustomStateSet {
8284     forEach(callbackfn: (value: string, key: string, parent: CustomStateSet) => void, thisArg?: any): void;
8287 declare var CustomStateSet: {
8288     prototype: CustomStateSet;
8289     new(): CustomStateSet;
8290     isInstance(obj): obj is CustomStateSet;
8294  * An abnormal event (called an exception) which occurs as a result of calling a method or accessing a property of a web API.
8296  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException)
8297  */
8298 interface DOMException extends ExceptionMembers {
8299     /**
8300      * @deprecated
8301      *
8302      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/code)
8303      */
8304     readonly code: number;
8305     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/message) */
8306     readonly message: string;
8307     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/name) */
8308     readonly name: string;
8309     readonly INDEX_SIZE_ERR: 1;
8310     readonly DOMSTRING_SIZE_ERR: 2;
8311     readonly HIERARCHY_REQUEST_ERR: 3;
8312     readonly WRONG_DOCUMENT_ERR: 4;
8313     readonly INVALID_CHARACTER_ERR: 5;
8314     readonly NO_DATA_ALLOWED_ERR: 6;
8315     readonly NO_MODIFICATION_ALLOWED_ERR: 7;
8316     readonly NOT_FOUND_ERR: 8;
8317     readonly NOT_SUPPORTED_ERR: 9;
8318     readonly INUSE_ATTRIBUTE_ERR: 10;
8319     readonly INVALID_STATE_ERR: 11;
8320     readonly SYNTAX_ERR: 12;
8321     readonly INVALID_MODIFICATION_ERR: 13;
8322     readonly NAMESPACE_ERR: 14;
8323     readonly INVALID_ACCESS_ERR: 15;
8324     readonly VALIDATION_ERR: 16;
8325     readonly TYPE_MISMATCH_ERR: 17;
8326     readonly SECURITY_ERR: 18;
8327     readonly NETWORK_ERR: 19;
8328     readonly ABORT_ERR: 20;
8329     readonly URL_MISMATCH_ERR: 21;
8330     readonly QUOTA_EXCEEDED_ERR: 22;
8331     readonly TIMEOUT_ERR: 23;
8332     readonly INVALID_NODE_TYPE_ERR: 24;
8333     readonly DATA_CLONE_ERR: 25;
8336 declare var DOMException: {
8337     prototype: DOMException;
8338     new(message?: string, name?: string): DOMException;
8339     readonly INDEX_SIZE_ERR: 1;
8340     readonly DOMSTRING_SIZE_ERR: 2;
8341     readonly HIERARCHY_REQUEST_ERR: 3;
8342     readonly WRONG_DOCUMENT_ERR: 4;
8343     readonly INVALID_CHARACTER_ERR: 5;
8344     readonly NO_DATA_ALLOWED_ERR: 6;
8345     readonly NO_MODIFICATION_ALLOWED_ERR: 7;
8346     readonly NOT_FOUND_ERR: 8;
8347     readonly NOT_SUPPORTED_ERR: 9;
8348     readonly INUSE_ATTRIBUTE_ERR: 10;
8349     readonly INVALID_STATE_ERR: 11;
8350     readonly SYNTAX_ERR: 12;
8351     readonly INVALID_MODIFICATION_ERR: 13;
8352     readonly NAMESPACE_ERR: 14;
8353     readonly INVALID_ACCESS_ERR: 15;
8354     readonly VALIDATION_ERR: 16;
8355     readonly TYPE_MISMATCH_ERR: 17;
8356     readonly SECURITY_ERR: 18;
8357     readonly NETWORK_ERR: 19;
8358     readonly ABORT_ERR: 20;
8359     readonly URL_MISMATCH_ERR: 21;
8360     readonly QUOTA_EXCEEDED_ERR: 22;
8361     readonly TIMEOUT_ERR: 23;
8362     readonly INVALID_NODE_TYPE_ERR: 24;
8363     readonly DATA_CLONE_ERR: 25;
8364     isInstance(obj): obj is DOMException;
8368  * An object providing methods which are not dependent on any particular document. Such an object is returned by the Document.implementation property.
8370  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation)
8371  */
8372 interface DOMImplementation {
8373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createDocument) */
8374     createDocument(namespace: string | null, qualifiedName: string | null, doctype?: DocumentType | null): Document;
8375     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createDocumentType) */
8376     createDocumentType(qualifiedName: string, publicId: string, systemId: string): DocumentType;
8377     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createHTMLDocument) */
8378     createHTMLDocument(title?: string): Document;
8379     /**
8380      * @deprecated
8381      *
8382      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/hasFeature)
8383      */
8384     hasFeature(): boolean;
8387 declare var DOMImplementation: {
8388     prototype: DOMImplementation;
8389     new(): DOMImplementation;
8390     isInstance(obj): obj is DOMImplementation;
8393 interface DOMLocalization extends Localization {
8394     connectRoot(aElement: Node): void;
8395     disconnectRoot(aElement: Node): void;
8396     getAttributes(aElement: Element): L10nIdArgs;
8397     pauseObserving(): void;
8398     resumeObserving(): void;
8399     setArgs(aElement: Element, aArgs?: any): void;
8400     setAttributes(aElement: Element, aId: string, aArgs?: any): void;
8401     translateElements(aElements: Element[]): Promise<void>;
8402     translateFragment(aNode: Node): Promise<any>;
8403     translateRoots(): Promise<void>;
8406 declare var DOMLocalization: {
8407     prototype: DOMLocalization;
8408     new(aResourceIds: L10nResourceId[], aSync?: boolean, aRegistry?: L10nRegistry, aLocales?: UTF8String[]): DOMLocalization;
8409     isInstance(obj): obj is DOMLocalization;
8412 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix) */
8413 interface DOMMatrix extends DOMMatrixReadOnly {
8414     a: number;
8415     b: number;
8416     c: number;
8417     d: number;
8418     e: number;
8419     f: number;
8420     m11: number;
8421     m12: number;
8422     m13: number;
8423     m14: number;
8424     m21: number;
8425     m22: number;
8426     m23: number;
8427     m24: number;
8428     m31: number;
8429     m32: number;
8430     m33: number;
8431     m34: number;
8432     m41: number;
8433     m42: number;
8434     m43: number;
8435     m44: number;
8436     invertSelf(): DOMMatrix;
8437     multiplySelf(other?: DOMMatrixInit): DOMMatrix;
8438     preMultiplySelf(other?: DOMMatrixInit): DOMMatrix;
8439     rotateAxisAngleSelf(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;
8440     rotateFromVectorSelf(x?: number, y?: number): DOMMatrix;
8441     rotateSelf(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;
8442     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix/scale3dSelf) */
8443     scale3dSelf(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
8444     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix/scaleSelf) */
8445     scaleSelf(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
8446     setMatrixValue(transformList: UTF8String): DOMMatrix;
8447     skewXSelf(sx?: number): DOMMatrix;
8448     skewYSelf(sy?: number): DOMMatrix;
8449     translateSelf(tx?: number, ty?: number, tz?: number): DOMMatrix;
8452 declare var DOMMatrix: {
8453     prototype: DOMMatrix;
8454     new(init?: UTF8String | number[] | DOMMatrixReadOnly): DOMMatrix;
8455     fromFloat32Array(array32: Float32Array): DOMMatrix;
8456     fromFloat64Array(array64: Float64Array): DOMMatrix;
8457     fromMatrix(other?: DOMMatrixInit): DOMMatrix;
8458     isInstance(obj): obj is DOMMatrix;
8461 type WebKitCSSMatrix = DOMMatrix;
8462 declare var WebKitCSSMatrix: typeof DOMMatrix;
8464 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly) */
8465 interface DOMMatrixReadOnly {
8466     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/a) */
8467     readonly a: number;
8468     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/b) */
8469     readonly b: number;
8470     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/c) */
8471     readonly c: number;
8472     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/d) */
8473     readonly d: number;
8474     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/e) */
8475     readonly e: number;
8476     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/f) */
8477     readonly f: number;
8478     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/is2D) */
8479     readonly is2D: boolean;
8480     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/isIdentity) */
8481     readonly isIdentity: boolean;
8482     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m11) */
8483     readonly m11: number;
8484     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m12) */
8485     readonly m12: number;
8486     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m13) */
8487     readonly m13: number;
8488     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m14) */
8489     readonly m14: number;
8490     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m21) */
8491     readonly m21: number;
8492     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m22) */
8493     readonly m22: number;
8494     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m23) */
8495     readonly m23: number;
8496     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m24) */
8497     readonly m24: number;
8498     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m31) */
8499     readonly m31: number;
8500     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m32) */
8501     readonly m32: number;
8502     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m33) */
8503     readonly m33: number;
8504     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m34) */
8505     readonly m34: number;
8506     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m41) */
8507     readonly m41: number;
8508     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m42) */
8509     readonly m42: number;
8510     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m43) */
8511     readonly m43: number;
8512     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m44) */
8513     readonly m44: number;
8514     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/flipX) */
8515     flipX(): DOMMatrix;
8516     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/flipY) */
8517     flipY(): DOMMatrix;
8518     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/inverse) */
8519     inverse(): DOMMatrix;
8520     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/multiply) */
8521     multiply(other?: DOMMatrixInit): DOMMatrix;
8522     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotate) */
8523     rotate(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;
8524     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotateAxisAngle) */
8525     rotateAxisAngle(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;
8526     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotateFromVector) */
8527     rotateFromVector(x?: number, y?: number): DOMMatrix;
8528     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scale) */
8529     scale(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
8530     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scale3d) */
8531     scale3d(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
8532     /**
8533      * @deprecated
8534      *
8535      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scaleNonUniform)
8536      */
8537     scaleNonUniform(scaleX?: number, scaleY?: number): DOMMatrix;
8538     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/skewX) */
8539     skewX(sx?: number): DOMMatrix;
8540     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/skewY) */
8541     skewY(sy?: number): DOMMatrix;
8542     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/toFloat32Array) */
8543     toFloat32Array(): Float32Array;
8544     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/toFloat64Array) */
8545     toFloat64Array(): Float64Array;
8546     toJSON(): any;
8547     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/transformPoint) */
8548     transformPoint(point?: DOMPointInit): DOMPoint;
8549     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/translate) */
8550     translate(tx?: number, ty?: number, tz?: number): DOMMatrix;
8551     toString(): string;
8554 declare var DOMMatrixReadOnly: {
8555     prototype: DOMMatrixReadOnly;
8556     new(init?: UTF8String | number[] | DOMMatrixReadOnly): DOMMatrixReadOnly;
8557     fromFloat32Array(array32: Float32Array): DOMMatrixReadOnly;
8558     fromFloat64Array(array64: Float64Array): DOMMatrixReadOnly;
8559     fromMatrix(other?: DOMMatrixInit): DOMMatrixReadOnly;
8560     isInstance(obj): obj is DOMMatrixReadOnly;
8564  * Provides the ability to parse XML or HTML source code from a string into a DOM Document.
8566  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMParser)
8567  */
8568 interface DOMParser {
8569     forceEnableDTD(): void;
8570     forceEnableXULXBL(): void;
8571     parseFromBuffer(buf: number[], type: SupportedType): Document;
8572     parseFromBuffer(buf: Uint8Array, type: SupportedType): Document;
8573     parseFromSafeString(str: string, type: SupportedType): Document;
8574     parseFromStream(stream: InputStream, charset: string | null, contentLength: number, type: SupportedType): Document;
8575     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMParser/parseFromString) */
8576     parseFromString(str: string, type: SupportedType): Document;
8579 declare var DOMParser: {
8580     prototype: DOMParser;
8581     new(): DOMParser;
8582     isInstance(obj): obj is DOMParser;
8585 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint) */
8586 interface DOMPoint extends DOMPointReadOnly {
8587     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/w) */
8588     w: number;
8589     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/x) */
8590     x: number;
8591     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/y) */
8592     y: number;
8593     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/z) */
8594     z: number;
8597 declare var DOMPoint: {
8598     prototype: DOMPoint;
8599     new(x?: number, y?: number, z?: number, w?: number): DOMPoint;
8600     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */
8601     fromPoint(other?: DOMPointInit): DOMPoint;
8602     isInstance(obj): obj is DOMPoint;
8605 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly) */
8606 interface DOMPointReadOnly {
8607     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/w) */
8608     readonly w: number;
8609     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/x) */
8610     readonly x: number;
8611     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/y) */
8612     readonly y: number;
8613     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/z) */
8614     readonly z: number;
8615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/matrixTransform) */
8616     matrixTransform(matrix?: DOMMatrixInit): DOMPoint;
8617     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/toJSON) */
8618     toJSON(): any;
8621 declare var DOMPointReadOnly: {
8622     prototype: DOMPointReadOnly;
8623     new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly;
8624     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */
8625     fromPoint(other?: DOMPointInit): DOMPointReadOnly;
8626     isInstance(obj): obj is DOMPointReadOnly;
8629 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad) */
8630 interface DOMQuad {
8631     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p1) */
8632     readonly p1: DOMPoint;
8633     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p2) */
8634     readonly p2: DOMPoint;
8635     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p3) */
8636     readonly p3: DOMPoint;
8637     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p4) */
8638     readonly p4: DOMPoint;
8639     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/getBounds) */
8640     getBounds(): DOMRectReadOnly;
8641     toJSON(): any;
8644 declare var DOMQuad: {
8645     prototype: DOMQuad;
8646     new(p1?: DOMPointInit, p2?: DOMPointInit, p3?: DOMPointInit, p4?: DOMPointInit): DOMQuad;
8647     new(rect: DOMRectReadOnly): DOMQuad;
8648     fromQuad(other?: DOMQuadInit): DOMQuad;
8649     fromRect(other?: DOMRectInit): DOMQuad;
8650     isInstance(obj): obj is DOMQuad;
8653 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRect) */
8654 interface DOMRect extends DOMRectReadOnly {
8655     height: number;
8656     width: number;
8657     x: number;
8658     y: number;
8661 declare var DOMRect: {
8662     prototype: DOMRect;
8663     new(x?: number, y?: number, width?: number, height?: number): DOMRect;
8664     fromRect(other?: DOMRectInit): DOMRect;
8665     isInstance(obj): obj is DOMRect;
8668 interface DOMRectList {
8669     readonly length: number;
8670     item(index: number): DOMRect | null;
8671     [index: number]: DOMRect;
8674 declare var DOMRectList: {
8675     prototype: DOMRectList;
8676     new(): DOMRectList;
8677     isInstance(obj): obj is DOMRectList;
8680 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly) */
8681 interface DOMRectReadOnly {
8682     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/bottom) */
8683     readonly bottom: number;
8684     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/height) */
8685     readonly height: number;
8686     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/left) */
8687     readonly left: number;
8688     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/right) */
8689     readonly right: number;
8690     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/top) */
8691     readonly top: number;
8692     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/width) */
8693     readonly width: number;
8694     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/x) */
8695     readonly x: number;
8696     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/y) */
8697     readonly y: number;
8698     toJSON(): any;
8701 declare var DOMRectReadOnly: {
8702     prototype: DOMRectReadOnly;
8703     new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly;
8704     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */
8705     fromRect(other?: DOMRectInit): DOMRectReadOnly;
8706     isInstance(obj): obj is DOMRectReadOnly;
8709 interface DOMRequest extends EventTarget, DOMRequestShared {
8710     fireDetailedError(aError: DOMException): void;
8711     then(fulfillCallback?: AnyCallback | null, rejectCallback?: AnyCallback | null): any;
8712     addEventListener<K extends keyof DOMRequestSharedEventMap>(type: K, listener: (this: DOMRequest, ev: DOMRequestSharedEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
8713     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
8714     removeEventListener<K extends keyof DOMRequestSharedEventMap>(type: K, listener: (this: DOMRequest, ev: DOMRequestSharedEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
8715     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
8718 declare var DOMRequest: {
8719     prototype: DOMRequest;
8720     new(): DOMRequest;
8721     isInstance(obj): obj is DOMRequest;
8724 interface DOMRequestSharedEventMap {
8725     "error": ErrorEvent;
8726     "success": Event;
8729 interface DOMRequestShared {
8730     "error": ErrorEvent;
8731     onerror: OnErrorEventHandler;
8732     onsuccess: ((this: DOMRequestShared, ev: Event) => any) | null;
8733     readonly readyState: DOMRequestReadyState;
8734     readonly result: any;
8735     addEventListener<K extends keyof DOMRequestSharedEventMap>(type: K, listener: (this: DOMRequestShared, ev: DOMRequestSharedEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
8736     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
8737     removeEventListener<K extends keyof DOMRequestSharedEventMap>(type: K, listener: (this: DOMRequestShared, ev: DOMRequestSharedEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
8738     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
8742  * A type returned by some APIs which contains a list of DOMString (strings).
8744  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList)
8745  */
8746 interface DOMStringList {
8747     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/length) */
8748     readonly length: number;
8749     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/contains) */
8750     contains(string: string): boolean;
8751     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/item) */
8752     item(index: number): string | null;
8753     [index: number]: string;
8756 declare var DOMStringList: {
8757     prototype: DOMStringList;
8758     new(): DOMStringList;
8759     isInstance(obj): obj is DOMStringList;
8763  * Used by the dataset HTML attribute to represent data for custom attributes added to elements.
8765  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringMap)
8766  */
8767 interface DOMStringMap {
8770 declare var DOMStringMap: {
8771     prototype: DOMStringMap;
8772     new(): DOMStringMap;
8773     isInstance(obj): obj is DOMStringMap;
8777  * A set of space-separated tokens. Such a set is returned by Element.classList, HTMLLinkElement.relList, HTMLAnchorElement.relList, HTMLAreaElement.relList, HTMLIframeElement.sandbox, or HTMLOutputElement.htmlFor. It is indexed beginning with 0 as with JavaScript Array objects. DOMTokenList is always case-sensitive.
8779  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList)
8780  */
8781 interface DOMTokenList {
8782     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/length) */
8783     readonly length: number;
8784     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/value) */
8785     value: string;
8786     toString(): string;
8787     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/add) */
8788     add(...tokens: string[]): void;
8789     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/contains) */
8790     contains(token: string): boolean;
8791     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/item) */
8792     item(index: number): string | null;
8793     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/remove) */
8794     remove(...tokens: string[]): void;
8795     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/replace) */
8796     replace(token: string, newToken: string): boolean;
8797     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/supports) */
8798     supports(token: string): boolean;
8799     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/toggle) */
8800     toggle(token: string, force?: boolean): boolean;
8801     forEach(callbackfn: (value: string | null, key: number, parent: DOMTokenList) => void, thisArg?: any): void;
8802     [index: number]: string;
8805 declare var DOMTokenList: {
8806     prototype: DOMTokenList;
8807     new(): DOMTokenList;
8808     isInstance(obj): obj is DOMTokenList;
8812  * Used to hold the data that is being dragged during a drag and drop operation. It may hold one or more data items, each of one or more data types. For more information about drag and drop, see HTML Drag and Drop API.
8814  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer)
8815  */
8816 interface DataTransfer {
8817     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/dropEffect) */
8818     dropEffect: string;
8819     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/effectAllowed) */
8820     effectAllowed: string;
8821     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/files) */
8822     readonly files: FileList | null;
8823     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/items) */
8824     readonly items: DataTransferItemList;
8825     readonly mozCSP: ContentSecurityPolicy | null;
8826     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/mozCursor) */
8827     mozCursor: string;
8828     readonly mozItemCount: number;
8829     mozShowFailAnimation: boolean;
8830     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/mozSourceNode) */
8831     readonly mozSourceNode: Node | null;
8832     readonly mozTriggeringPrincipalURISpec: string;
8833     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/mozUserCancelled) */
8834     readonly mozUserCancelled: boolean;
8835     readonly sourceTopWindowContext: WindowContext | null;
8836     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/types) */
8837     readonly types: string[];
8838     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/addElement) */
8839     addElement(element: Element): void;
8840     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/clearData) */
8841     clearData(format?: string): void;
8842     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/getData) */
8843     getData(format: string): string;
8844     mozClearDataAt(format: string, index: number): void;
8845     mozCloneForEvent(event: string): DataTransfer;
8846     mozGetDataAt(format: string, index: number): any;
8847     mozSetDataAt(format: string, data: any, index: number): void;
8848     mozTypesAt(index: number): DOMStringList;
8849     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/setData) */
8850     setData(format: string, data: string): void;
8851     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/setDragImage) */
8852     setDragImage(image: Element, x: number, y: number): void;
8853     updateDragImage(image: Element, x: number, y: number): void;
8856 declare var DataTransfer: {
8857     prototype: DataTransfer;
8858     new(): DataTransfer;
8859     isInstance(obj): obj is DataTransfer;
8863  * One drag data item. During a drag operation, each drag event has a dataTransfer property which contains a list of drag data items. Each item in the list is a DataTransferItem object.
8865  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem)
8866  */
8867 interface DataTransferItem {
8868     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/kind) */
8869     readonly kind: string;
8870     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/type) */
8871     readonly type: string;
8872     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/getAsFile) */
8873     getAsFile(): File | null;
8874     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/getAsString) */
8875     getAsString(callback: FunctionStringCallback | null): void;
8876     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/webkitGetAsEntry) */
8877     webkitGetAsEntry(): FileSystemEntry | null;
8880 declare var DataTransferItem: {
8881     prototype: DataTransferItem;
8882     new(): DataTransferItem;
8883     isInstance(obj): obj is DataTransferItem;
8887  * A list of DataTransferItem objects representing items being dragged. During a drag operation, each DragEvent has a dataTransfer property and that property is a DataTransferItemList.
8889  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList)
8890  */
8891 interface DataTransferItemList {
8892     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/length) */
8893     readonly length: number;
8894     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/add) */
8895     add(data: string, type: string): DataTransferItem | null;
8896     add(data: File): DataTransferItem | null;
8897     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/clear) */
8898     clear(): void;
8899     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/remove) */
8900     remove(index: number): void;
8901     [index: number]: DataTransferItem;
8904 declare var DataTransferItemList: {
8905     prototype: DataTransferItemList;
8906     new(): DataTransferItemList;
8907     isInstance(obj): obj is DataTransferItemList;
8910 interface DebuggerNotification {
8911     readonly global: any;
8912     readonly type: DebuggerNotificationType;
8915 declare var DebuggerNotification: {
8916     prototype: DebuggerNotification;
8917     new(): DebuggerNotification;
8918     isInstance(obj): obj is DebuggerNotification;
8921 interface DebuggerNotificationObserver {
8922     addListener(handler: DebuggerNotificationCallback): boolean;
8923     connect(global: any): boolean;
8924     disconnect(global: any): boolean;
8925     removeListener(handler: DebuggerNotificationCallback): boolean;
8928 declare var DebuggerNotificationObserver: {
8929     prototype: DebuggerNotificationObserver;
8930     new(): DebuggerNotificationObserver;
8931     isInstance(obj): obj is DebuggerNotificationObserver;
8934 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DecompressionStream) */
8935 interface DecompressionStream extends GenericTransformStream {
8938 declare var DecompressionStream: {
8939     prototype: DecompressionStream;
8940     new(format: CompressionFormat): DecompressionStream;
8941     isInstance(obj): obj is DecompressionStream;
8944 interface DedicatedWorkerGlobalScopeEventMap extends WorkerGlobalScopeEventMap {
8945     "message": Event;
8946     "messageerror": Event;
8947     "rtctransform": Event;
8951  * (the Worker global scope) is accessible through the self keyword. Some additional global functions, namespaces objects, and constructors, not typically associated with the worker global scope, but available on it, are listed in the JavaScript Reference. See also: Functions available to workers.
8953  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope)
8954  */
8955 interface DedicatedWorkerGlobalScope extends WorkerGlobalScope, AnimationFrameProvider {
8956     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/name) */
8957     readonly name: string;
8958     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/message_event) */
8959     onmessage: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
8960     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/messageerror_event) */
8961     onmessageerror: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
8962     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/rtctransform_event) */
8963     onrtctransform: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
8964     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/close) */
8965     close(): void;
8966     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/postMessage) */
8967     postMessage(message: any, transfer: any[]): void;
8968     postMessage(message: any, options?: StructuredSerializeOptions): void;
8969     addEventListener<K extends keyof DedicatedWorkerGlobalScopeEventMap>(type: K, listener: (this: DedicatedWorkerGlobalScope, ev: DedicatedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
8970     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
8971     removeEventListener<K extends keyof DedicatedWorkerGlobalScopeEventMap>(type: K, listener: (this: DedicatedWorkerGlobalScope, ev: DedicatedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
8972     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
8975 declare var DedicatedWorkerGlobalScope: {
8976     prototype: DedicatedWorkerGlobalScope;
8977     new(): DedicatedWorkerGlobalScope;
8978     isInstance(obj): obj is DedicatedWorkerGlobalScope;
8982  * A delay-line; an AudioNode audio-processing module that causes a delay between the arrival of an input data and its propagation to the output.
8984  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DelayNode)
8985  */
8986 interface DelayNode extends AudioNode, AudioNodePassThrough {
8987     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DelayNode/delayTime) */
8988     readonly delayTime: AudioParam;
8991 declare var DelayNode: {
8992     prototype: DelayNode;
8993     new(context: BaseAudioContext, options?: DelayOptions): DelayNode;
8994     isInstance(obj): obj is DelayNode;
8997 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeprecationReportBody) */
8998 interface DeprecationReportBody extends ReportBody {
8999     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeprecationReportBody/anticipatedRemoval) */
9000     readonly anticipatedRemoval: DOMTimeStamp | null;
9001     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeprecationReportBody/columnNumber) */
9002     readonly columnNumber: number | null;
9003     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeprecationReportBody/id) */
9004     readonly id: string;
9005     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeprecationReportBody/lineNumber) */
9006     readonly lineNumber: number | null;
9007     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeprecationReportBody/message) */
9008     readonly message: string;
9009     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeprecationReportBody/sourceFile) */
9010     readonly sourceFile: string | null;
9013 declare var DeprecationReportBody: {
9014     prototype: DeprecationReportBody;
9015     new(): DeprecationReportBody;
9016     isInstance(obj): obj is DeprecationReportBody;
9019 /** Provides information about the amount of acceleration the device is experiencing along all three axes. */
9020 interface DeviceAcceleration {
9021     readonly x: number | null;
9022     readonly y: number | null;
9023     readonly z: number | null;
9026 /** The DeviceLightEvent provides web developers with information from photo sensors or similiar detectors about ambient light levels near the device. For example this may be useful to adjust the screen's brightness based on the current ambient light level in order to save energy or provide better readability. */
9027 interface DeviceLightEvent extends Event {
9028     readonly value: number;
9031 declare var DeviceLightEvent: {
9032     prototype: DeviceLightEvent;
9033     new(type: string, eventInitDict?: DeviceLightEventInit): DeviceLightEvent;
9034     isInstance(obj): obj is DeviceLightEvent;
9038  * The DeviceMotionEvent provides web developers with information about the speed of changes for the device's position and orientation.
9040  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent)
9041  */
9042 interface DeviceMotionEvent extends Event {
9043     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/acceleration) */
9044     readonly acceleration: DeviceAcceleration | null;
9045     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/accelerationIncludingGravity) */
9046     readonly accelerationIncludingGravity: DeviceAcceleration | null;
9047     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/interval) */
9048     readonly interval: number | null;
9049     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/rotationRate) */
9050     readonly rotationRate: DeviceRotationRate | null;
9051     initDeviceMotionEvent(type: string, canBubble?: boolean, cancelable?: boolean, acceleration?: DeviceAccelerationInit, accelerationIncludingGravity?: DeviceAccelerationInit, rotationRate?: DeviceRotationRateInit, interval?: number | null): void;
9054 declare var DeviceMotionEvent: {
9055     prototype: DeviceMotionEvent;
9056     new(type: string, eventInitDict?: DeviceMotionEventInit): DeviceMotionEvent;
9057     isInstance(obj): obj is DeviceMotionEvent;
9061  * The DeviceOrientationEvent provides web developers with information from the physical orientation of the device running the web page.
9063  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent)
9064  */
9065 interface DeviceOrientationEvent extends Event {
9066     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/absolute) */
9067     readonly absolute: boolean;
9068     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/alpha) */
9069     readonly alpha: number | null;
9070     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/beta) */
9071     readonly beta: number | null;
9072     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/gamma) */
9073     readonly gamma: number | null;
9074     initDeviceOrientationEvent(type: string, canBubble?: boolean, cancelable?: boolean, alpha?: number | null, beta?: number | null, gamma?: number | null, absolute?: boolean): void;
9077 declare var DeviceOrientationEvent: {
9078     prototype: DeviceOrientationEvent;
9079     new(type: string, eventInitDict?: DeviceOrientationEventInit): DeviceOrientationEvent;
9080     isInstance(obj): obj is DeviceOrientationEvent;
9083 /** Provides information about the rate at which the device is rotating around all three axes. */
9084 interface DeviceRotationRate {
9085     readonly alpha: number | null;
9086     readonly beta: number | null;
9087     readonly gamma: number | null;
9090 interface Directory {
9091     readonly name: string;
9092     readonly path: string;
9093     getFiles(recursiveFlag?: boolean): Promise<File[]>;
9094     getFilesAndDirectories(): Promise<(File | Directory)[]>;
9097 declare var Directory: {
9098     prototype: Directory;
9099     new(path: string): Directory;
9100     isInstance(obj): obj is Directory;
9103 interface DocumentEventMap extends GlobalEventHandlersEventMap, OnErrorEventHandlerForNodesEventMap, TouchEventHandlersEventMap {
9104     "afterscriptexecute": Event;
9105     "beforescriptexecute": Event;
9106     "fullscreenchange": Event;
9107     "fullscreenerror": Event;
9108     "pointerlockchange": Event;
9109     "pointerlockerror": Event;
9110     "readystatechange": Event;
9111     "visibilitychange": Event;
9115  * Any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree.
9117  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document)
9118  */
9119 interface Document extends Node, DocumentOrShadowRoot, FontFaceSource, GeometryUtils, GlobalEventHandlers, OnErrorEventHandlerForNodes, ParentNode, TouchEventHandlers, XPathEvaluatorMixin {
9120     /**
9121      * Sets or gets the URL for the current document.
9122      *
9123      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/URL)
9124      */
9125     readonly URL: string;
9126     /**
9127      * Sets or gets the color of all active links in the document.
9128      * @deprecated
9129      *
9130      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/alinkColor)
9131      */
9132     alinkColor: string;
9133     /**
9134      * Returns a reference to the collection of elements contained by the object.
9135      * @deprecated
9136      *
9137      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/all)
9138      */
9139     readonly all: HTMLAllCollection;
9140     /**
9141      * Retrieves a collection of all a objects that have a name and/or id property. Objects in this collection are in HTML source order.
9142      * @deprecated
9143      *
9144      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/anchors)
9145      */
9146     readonly anchors: HTMLCollection;
9147     /**
9148      * Retrieves a collection of all applet objects in the document.
9149      * @deprecated
9150      *
9151      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/applets)
9152      */
9153     readonly applets: HTMLCollection;
9154     /**
9155      * Deprecated. Sets or retrieves a value that indicates the background color behind the object.
9156      * @deprecated
9157      *
9158      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/bgColor)
9159      */
9160     bgColor: string;
9161     readonly blockedNodeByClassifierCount: number;
9162     readonly blockedNodesByClassifier: NodeList;
9163     /**
9164      * Specifies the beginning and end of the document body.
9165      *
9166      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/body)
9167      */
9168     body: HTMLElement | null;
9169     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet) */
9170     readonly characterSet: string;
9171     /**
9172      * Gets or sets the character set used to encode the object.
9173      * @deprecated This is a legacy alias of `characterSet`.
9174      *
9175      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)
9176      */
9177     readonly charset: string;
9178     readonly commandDispatcher: XULCommandDispatcher | null;
9179     /**
9180      * Gets a value that indicates whether standards-compliant mode is switched on for the object.
9181      *
9182      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/compatMode)
9183      */
9184     readonly compatMode: string;
9185     readonly contentLanguage: string;
9186     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/contentType) */
9187     readonly contentType: string;
9188     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/cookie) */
9189     cookie: string;
9190     readonly cookieJarSettings: nsICookieJarSettings;
9191     readonly csp: ContentSecurityPolicy | null;
9192     readonly cspJSON: string;
9193     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/currentScript) */
9194     readonly currentScript: Element | null;
9195     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/defaultView) */
9196     readonly defaultView: WindowProxy | null;
9197     /**
9198      * Sets or gets a value that indicates whether the document can be edited.
9199      *
9200      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/designMode)
9201      */
9202     designMode: string;
9203     devToolsAnonymousAndShadowEventsEnabled: boolean;
9204     devToolsWatchingDOMMutations: boolean;
9205     /**
9206      * Sets or retrieves a value that indicates the reading order of the object.
9207      *
9208      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/dir)
9209      */
9210     dir: string;
9211     /**
9212      * Gets an object representing the document type declaration associated with the current document.
9213      *
9214      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/doctype)
9215      */
9216     readonly doctype: DocumentType | null;
9217     /**
9218      * Gets a reference to the root node of the document.
9219      *
9220      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/documentElement)
9221      */
9222     readonly documentElement: Element | null;
9223     readonly documentLoadGroup: nsILoadGroup | null;
9224     readonly documentReadyForIdle: Promise<undefined>;
9225     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/documentURI) */
9226     readonly documentURI: string;
9227     readonly documentURIObject: URI | null;
9228     /**
9229      * Sets or gets the security domain of the document.
9230      * @deprecated
9231      *
9232      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/domain)
9233      */
9234     domain: string;
9235     readonly effectiveStoragePrincipal: Principal;
9236     /**
9237      * Retrieves a collection of all embed objects in the document.
9238      *
9239      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/embeds)
9240      */
9241     readonly embeds: HTMLCollection;
9242     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/featurePolicy) */
9243     readonly featurePolicy: FeaturePolicy;
9244     /**
9245      * Sets or gets the foreground (text) color of the document.
9246      * @deprecated
9247      *
9248      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fgColor)
9249      */
9250     fgColor: string;
9251     /**
9252      * Retrieves a collection, in source order, of all form objects in the document.
9253      *
9254      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/forms)
9255      */
9256     readonly forms: HTMLCollection;
9257     /**
9258      * @deprecated
9259      *
9260      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreen)
9261      */
9262     readonly fullscreen: boolean;
9263     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenEnabled) */
9264     readonly fullscreenEnabled: boolean;
9265     readonly hasBeenUserGestureActivated: boolean;
9266     readonly hasPendingL10nMutations: boolean;
9267     readonly hasValidTransientUserGestureActivation: boolean;
9268     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/head) */
9269     readonly head: HTMLHeadElement | null;
9270     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hidden) */
9271     readonly hidden: boolean;
9272     /**
9273      * Retrieves a collection, in source order, of img objects in the document.
9274      *
9275      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/images)
9276      */
9277     readonly images: HTMLCollection;
9278     /**
9279      * Gets the implementation object of the current document.
9280      *
9281      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/implementation)
9282      */
9283     readonly implementation: DOMImplementation;
9284     /**
9285      * Returns the character encoding used to create the webpage that is loaded into the document object.
9286      * @deprecated This is a legacy alias of `characterSet`.
9287      *
9288      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)
9289      */
9290     readonly inputEncoding: string;
9291     readonly isInitialDocument: boolean;
9292     readonly isSrcdocDocument: boolean;
9293     readonly l10n: DocumentL10n | null;
9294     /**
9295      * Gets the date that the page was last modified, if the page supplies one.
9296      *
9297      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/lastModified)
9298      */
9299     readonly lastModified: string;
9300     /**
9301      * @deprecated
9302      *
9303      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/lastStyleSheetSet)
9304      */
9305     readonly lastStyleSheetSet: string | null;
9306     readonly lastUserGestureTimeStamp: DOMHighResTimeStamp;
9307     /**
9308      * Sets or gets the color of the document links.
9309      * @deprecated
9310      *
9311      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/linkColor)
9312      */
9313     linkColor: string;
9314     /**
9315      * Retrieves a collection of all a objects that specify the href property and all area objects in the document.
9316      *
9317      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/links)
9318      */
9319     readonly links: HTMLCollection;
9320     readonly loadedFromPrototype: boolean;
9321     /**
9322      * Contains information about the current URL.
9323      *
9324      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/location)
9325      */
9326     readonly location: Location | null;
9327     readonly mozDocumentURIIfNotForErrorPages: URI | null;
9328     /**
9329      * @deprecated This is a legacy alias of `fullscreen`.
9330      *
9331      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreen)
9332      */
9333     readonly mozFullScreen: boolean;
9334     /**
9335      * @deprecated This is a legacy alias of `fullscreenEnabled`.
9336      *
9337      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenEnabled)
9338      */
9339     readonly mozFullScreenEnabled: boolean;
9340     readonly mozSyntheticDocument: boolean;
9341     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/afterscriptexecute_event) */
9342     onafterscriptexecute: ((this: Document, ev: Event) => any) | null;
9343     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/beforescriptexecute_event) */
9344     onbeforescriptexecute: ((this: Document, ev: Event) => any) | null;
9345     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenchange_event) */
9346     onfullscreenchange: ((this: Document, ev: Event) => any) | null;
9347     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenerror_event) */
9348     onfullscreenerror: ((this: Document, ev: Event) => any) | null;
9349     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerlockchange_event) */
9350     onpointerlockchange: ((this: Document, ev: Event) => any) | null;
9351     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerlockerror_event) */
9352     onpointerlockerror: ((this: Document, ev: Event) => any) | null;
9353     /**
9354      * Fires when the state of the object has changed.
9355      * @param ev The event
9356      *
9357      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/readystatechange_event)
9358      */
9359     onreadystatechange: ((this: Document, ev: Event) => any) | null;
9360     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/visibilitychange_event) */
9361     onvisibilitychange: ((this: Document, ev: Event) => any) | null;
9362     readonly partitionedPrincipal: Principal;
9363     readonly permDelegateHandler: nsIPermissionDelegateHandler;
9364     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/plugins) */
9365     readonly plugins: HTMLCollection;
9366     /**
9367      * @deprecated
9368      *
9369      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/preferredStyleSheetSet)
9370      */
9371     readonly preferredStyleSheetSet: string | null;
9372     /**
9373      * Retrieves a value that indicates the current state of the object.
9374      *
9375      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/readyState)
9376      */
9377     readonly readyState: string;
9378     /**
9379      * Gets the URL of the location that referred the user to the current page.
9380      *
9381      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/referrer)
9382      */
9383     readonly referrer: string;
9384     readonly referrerInfo: nsIReferrerInfo;
9385     readonly referrerPolicy: ReferrerPolicy;
9386     /**
9387      * @deprecated
9388      *
9389      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/rootElement)
9390      */
9391     readonly rootElement: SVGSVGElement | null;
9392     readonly sandboxFlagsAsString: string | null;
9393     /**
9394      * Retrieves a collection of all script objects in the document.
9395      *
9396      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scripts)
9397      */
9398     readonly scripts: HTMLCollection;
9399     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollingElement) */
9400     readonly scrollingElement: Element | null;
9401     /**
9402      * @deprecated
9403      *
9404      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/selectedStyleSheetSet)
9405      */
9406     selectedStyleSheetSet: string | null;
9407     styleSheetChangeEventsEnabled: boolean;
9408     /**
9409      * @deprecated
9410      *
9411      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/styleSheetSets)
9412      */
9413     readonly styleSheetSets: DOMStringList;
9414     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/timeline) */
9415     readonly timeline: DocumentTimeline;
9416     /**
9417      * Contains the title of the document.
9418      *
9419      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/title)
9420      */
9421     title: string;
9422     readonly userHasInteracted: boolean;
9423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/visibilityState) */
9424     readonly visibilityState: VisibilityState;
9425     /**
9426      * Sets or gets the color of the links that the user has visited.
9427      * @deprecated
9428      *
9429      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/vlinkColor)
9430      */
9431     vlinkColor: string;
9432     addCertException(isTemporary: boolean): Promise<any>;
9433     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/adoptNode) */
9434     adoptNode(node: Node): Node;
9435     blockParsing(promise: any, options?: BlockParsingOptions): Promise<any>;
9436     blockUnblockOnload(block: boolean): void;
9437     /**
9438      * @deprecated
9439      *
9440      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/captureEvents)
9441      */
9442     captureEvents(): void;
9443     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/caretPositionFromPoint) */
9444     caretPositionFromPoint(x: number, y: number): CaretPosition | null;
9445     /**
9446      * @deprecated
9447      *
9448      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/clear)
9449      */
9450     clear(): void;
9451     clearUserGestureActivation(): void;
9452     /**
9453      * Closes an output stream and forces the sent data to display.
9454      *
9455      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/close)
9456      */
9457     close(): void;
9458     completeStorageAccessRequestFromSite(serializedSite: string): Promise<void>;
9459     consumeTransientUserGestureActivation(): boolean;
9460     /**
9461      * Creates an attribute object with a specified name.
9462      * @param name String that sets the attribute object's name.
9463      *
9464      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createAttribute)
9465      */
9466     createAttribute(name: string): Attr;
9467     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createAttributeNS) */
9468     createAttributeNS(namespace: string | null, name: string): Attr;
9469     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createCDATASection) */
9470     createCDATASection(data: string): CDATASection;
9471     /**
9472      * Creates a comment object with the specified data.
9473      * @param data Sets the comment object's data.
9474      *
9475      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createComment)
9476      */
9477     createComment(data: string): Comment;
9478     /**
9479      * Creates a new document.
9480      *
9481      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createDocumentFragment)
9482      */
9483     createDocumentFragment(): DocumentFragment;
9484     /**
9485      * Creates an instance of the element for the specified tag.
9486      * @param tagName The name of an element.
9487      *
9488      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createElement)
9489      */
9490     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createElementNS) */
9491     createElementNS(namespace: string | null, qualifiedName: string, options?: ElementCreationOptions | string): Element;
9492     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createEvent) */
9493     createEvent(eventInterface: "AddonEvent"): AddonEvent;
9494     createEvent(eventInterface: "AnimationEvent"): AnimationEvent;
9495     createEvent(eventInterface: "AnimationPlaybackEvent"): AnimationPlaybackEvent;
9496     createEvent(eventInterface: "AudioProcessingEvent"): AudioProcessingEvent;
9497     createEvent(eventInterface: "BeforeUnloadEvent"): BeforeUnloadEvent;
9498     createEvent(eventInterface: "BlobEvent"): BlobEvent;
9499     createEvent(eventInterface: "CaretStateChangedEvent"): CaretStateChangedEvent;
9500     createEvent(eventInterface: "ClipboardEvent"): ClipboardEvent;
9501     createEvent(eventInterface: "CloseEvent"): CloseEvent;
9502     createEvent(eventInterface: "CommandEvent"): CommandEvent;
9503     createEvent(eventInterface: "CompositionEvent"): CompositionEvent;
9504     createEvent(eventInterface: "ContentVisibilityAutoStateChangeEvent"): ContentVisibilityAutoStateChangeEvent;
9505     createEvent(eventInterface: "CustomEvent"): CustomEvent;
9506     createEvent(eventInterface: "DeviceLightEvent"): DeviceLightEvent;
9507     createEvent(eventInterface: "DeviceMotionEvent"): DeviceMotionEvent;
9508     createEvent(eventInterface: "DeviceOrientationEvent"): DeviceOrientationEvent;
9509     createEvent(eventInterface: "DragEvent"): DragEvent;
9510     createEvent(eventInterface: "ErrorEvent"): ErrorEvent;
9511     createEvent(eventInterface: "ExtendableEvent"): ExtendableEvent;
9512     createEvent(eventInterface: "ExtendableMessageEvent"): ExtendableMessageEvent;
9513     createEvent(eventInterface: "FetchEvent"): FetchEvent;
9514     createEvent(eventInterface: "FocusEvent"): FocusEvent;
9515     createEvent(eventInterface: "FontFaceSetLoadEvent"): FontFaceSetLoadEvent;
9516     createEvent(eventInterface: "FormDataEvent"): FormDataEvent;
9517     createEvent(eventInterface: "FrameCrashedEvent"): FrameCrashedEvent;
9518     createEvent(eventInterface: "GPUUncapturedErrorEvent"): GPUUncapturedErrorEvent;
9519     createEvent(eventInterface: "GamepadAxisMoveEvent"): GamepadAxisMoveEvent;
9520     createEvent(eventInterface: "GamepadButtonEvent"): GamepadButtonEvent;
9521     createEvent(eventInterface: "GamepadEvent"): GamepadEvent;
9522     createEvent(eventInterface: "HashChangeEvent"): HashChangeEvent;
9523     createEvent(eventInterface: "IDBVersionChangeEvent"): IDBVersionChangeEvent;
9524     createEvent(eventInterface: "ImageCaptureErrorEvent"): ImageCaptureErrorEvent;
9525     createEvent(eventInterface: "InputEvent"): InputEvent;
9526     createEvent(eventInterface: "InvokeEvent"): InvokeEvent;
9527     createEvent(eventInterface: "KeyboardEvent"): KeyboardEvent;
9528     createEvent(eventInterface: "MIDIConnectionEvent"): MIDIConnectionEvent;
9529     createEvent(eventInterface: "MIDIMessageEvent"): MIDIMessageEvent;
9530     createEvent(eventInterface: "MediaEncryptedEvent"): MediaEncryptedEvent;
9531     createEvent(eventInterface: "MediaKeyMessageEvent"): MediaKeyMessageEvent;
9532     createEvent(eventInterface: "MediaQueryListEvent"): MediaQueryListEvent;
9533     createEvent(eventInterface: "MediaRecorderErrorEvent"): MediaRecorderErrorEvent;
9534     createEvent(eventInterface: "MediaStreamEvent"): MediaStreamEvent;
9535     createEvent(eventInterface: "MediaStreamTrackEvent"): MediaStreamTrackEvent;
9536     createEvent(eventInterface: "MerchantValidationEvent"): MerchantValidationEvent;
9537     createEvent(eventInterface: "MessageEvent"): MessageEvent;
9538     createEvent(eventInterface: "MouseEvent"): MouseEvent;
9539     createEvent(eventInterface: "MouseEvents"): MouseEvent;
9540     createEvent(eventInterface: "MouseScrollEvent"): MouseScrollEvent;
9541     createEvent(eventInterface: "MozApplicationEvent"): MozApplicationEvent;
9542     createEvent(eventInterface: "MozSharedMapChangeEvent"): MozSharedMapChangeEvent;
9543     createEvent(eventInterface: "MutationEvent"): MutationEvent;
9544     createEvent(eventInterface: "MutationEvents"): MutationEvent;
9545     createEvent(eventInterface: "NotificationEvent"): NotificationEvent;
9546     createEvent(eventInterface: "NotifyPaintEvent"): NotifyPaintEvent;
9547     createEvent(eventInterface: "OfflineAudioCompletionEvent"): OfflineAudioCompletionEvent;
9548     createEvent(eventInterface: "PageTransitionEvent"): PageTransitionEvent;
9549     createEvent(eventInterface: "PaymentMethodChangeEvent"): PaymentMethodChangeEvent;
9550     createEvent(eventInterface: "PaymentRequestUpdateEvent"): PaymentRequestUpdateEvent;
9551     createEvent(eventInterface: "PerformanceEntryEvent"): PerformanceEntryEvent;
9552     createEvent(eventInterface: "PluginCrashedEvent"): PluginCrashedEvent;
9553     createEvent(eventInterface: "PointerEvent"): PointerEvent;
9554     createEvent(eventInterface: "PopStateEvent"): PopStateEvent;
9555     createEvent(eventInterface: "PopupBlockedEvent"): PopupBlockedEvent;
9556     createEvent(eventInterface: "PopupPositionedEvent"): PopupPositionedEvent;
9557     createEvent(eventInterface: "PositionStateEvent"): PositionStateEvent;
9558     createEvent(eventInterface: "ProgressEvent"): ProgressEvent;
9559     createEvent(eventInterface: "PromiseRejectionEvent"): PromiseRejectionEvent;
9560     createEvent(eventInterface: "PushEvent"): PushEvent;
9561     createEvent(eventInterface: "RTCDTMFToneChangeEvent"): RTCDTMFToneChangeEvent;
9562     createEvent(eventInterface: "RTCDataChannelEvent"): RTCDataChannelEvent;
9563     createEvent(eventInterface: "RTCPeerConnectionIceEvent"): RTCPeerConnectionIceEvent;
9564     createEvent(eventInterface: "RTCTrackEvent"): RTCTrackEvent;
9565     createEvent(eventInterface: "RTCTransformEvent"): RTCTransformEvent;
9566     createEvent(eventInterface: "ScrollAreaEvent"): ScrollAreaEvent;
9567     createEvent(eventInterface: "ScrollViewChangeEvent"): ScrollViewChangeEvent;
9568     createEvent(eventInterface: "SecurityPolicyViolationEvent"): SecurityPolicyViolationEvent;
9569     createEvent(eventInterface: "SimpleGestureEvent"): SimpleGestureEvent;
9570     createEvent(eventInterface: "SpeechRecognitionEvent"): SpeechRecognitionEvent;
9571     createEvent(eventInterface: "SpeechSynthesisErrorEvent"): SpeechSynthesisErrorEvent;
9572     createEvent(eventInterface: "SpeechSynthesisEvent"): SpeechSynthesisEvent;
9573     createEvent(eventInterface: "StorageEvent"): StorageEvent;
9574     createEvent(eventInterface: "StreamFilterDataEvent"): StreamFilterDataEvent;
9575     createEvent(eventInterface: "StyleSheetApplicableStateChangeEvent"): StyleSheetApplicableStateChangeEvent;
9576     createEvent(eventInterface: "StyleSheetRemovedEvent"): StyleSheetRemovedEvent;
9577     createEvent(eventInterface: "SubmitEvent"): SubmitEvent;
9578     createEvent(eventInterface: "TCPServerSocketEvent"): TCPServerSocketEvent;
9579     createEvent(eventInterface: "TCPSocketErrorEvent"): TCPSocketErrorEvent;
9580     createEvent(eventInterface: "TCPSocketEvent"): TCPSocketEvent;
9581     createEvent(eventInterface: "TaskPriorityChangeEvent"): TaskPriorityChangeEvent;
9582     createEvent(eventInterface: "TimeEvent"): TimeEvent;
9583     createEvent(eventInterface: "ToggleEvent"): ToggleEvent;
9584     createEvent(eventInterface: "TouchEvent"): TouchEvent;
9585     createEvent(eventInterface: "TrackEvent"): TrackEvent;
9586     createEvent(eventInterface: "TransitionEvent"): TransitionEvent;
9587     createEvent(eventInterface: "UDPMessageEvent"): UDPMessageEvent;
9588     createEvent(eventInterface: "UIEvent"): UIEvent;
9589     createEvent(eventInterface: "UIEvents"): UIEvent;
9590     createEvent(eventInterface: "UserProximityEvent"): UserProximityEvent;
9591     createEvent(eventInterface: "VRDisplayEvent"): VRDisplayEvent;
9592     createEvent(eventInterface: "WebGLContextEvent"): WebGLContextEvent;
9593     createEvent(eventInterface: "WheelEvent"): WheelEvent;
9594     createEvent(eventInterface: "XRInputSourceEvent"): XRInputSourceEvent;
9595     createEvent(eventInterface: "XRInputSourcesChangeEvent"): XRInputSourcesChangeEvent;
9596     createEvent(eventInterface: "XRReferenceSpaceEvent"): XRReferenceSpaceEvent;
9597     createEvent(eventInterface: "XRSessionEvent"): XRSessionEvent;
9598     createEvent(eventInterface: "XULCommandEvent"): XULCommandEvent;
9599     createEvent(eventInterface: string): Event;
9600     /**
9601      * Creates a NodeIterator object that you can use to traverse filtered lists of nodes or elements in a document.
9602      * @param root The root element or node to start traversing on.
9603      * @param whatToShow The type of nodes or elements to appear in the node list
9604      * @param filter A custom NodeFilter function to use. For more information, see filter. Use null for no filter.
9605      *
9606      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createNodeIterator)
9607      */
9608     createNodeIterator(root: Node, whatToShow?: number, filter?: NodeFilter | null): NodeIterator;
9609     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createProcessingInstruction) */
9610     createProcessingInstruction(target: string, data: string): ProcessingInstruction;
9611     /**
9612      *  Returns an empty range object that has both of its boundary points positioned at the beginning of the document.
9613      *
9614      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createRange)
9615      */
9616     createRange(): Range;
9617     /**
9618      * Creates a text string from the specified value.
9619      * @param data String that specifies the nodeValue property of the text node.
9620      *
9621      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTextNode)
9622      */
9623     createTextNode(data: string): Text;
9624     /**
9625      * @deprecated
9626      *
9627      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTouch)
9628      */
9629     createTouch(view?: Window | null, target?: EventTarget | null, identifier?: number, pageX?: number, pageY?: number, screenX?: number, screenY?: number, clientX?: number, clientY?: number, radiusX?: number, radiusY?: number, rotationAngle?: number, force?: number): Touch;
9630     /**
9631      * @deprecated
9632      *
9633      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTouchList)
9634      */
9635     createTouchList(touch: Touch, ...touches: Touch[]): TouchList;
9636     createTouchList(): TouchList;
9637     createTouchList(touches: Touch[]): TouchList;
9638     /**
9639      * Creates a TreeWalker object that you can use to traverse filtered lists of nodes or elements in a document.
9640      * @param root The root element or node to start traversing on.
9641      * @param whatToShow The type of nodes or elements to appear in the node list. For more information, see whatToShow.
9642      * @param filter A custom NodeFilter function to use.
9643      *
9644      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTreeWalker)
9645      */
9646     createTreeWalker(root: Node, whatToShow?: number, filter?: NodeFilter | null): TreeWalker;
9647     createXULElement(localName: string, options?: ElementCreationOptions | string): Element;
9648     /**
9649      * @deprecated
9650      *
9651      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/enableStyleSheetsForSet)
9652      */
9653     enableStyleSheetsForSet(name: string | null): void;
9654     /**
9655      * Executes a command on the current document, current selection, or the given range.
9656      * @param commandId String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.
9657      * @param showUI Display the user interface, defaults to false.
9658      * @param value Value to assign.
9659      * @deprecated
9660      *
9661      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/execCommand)
9662      */
9663     execCommand(commandId: string, showUI?: boolean, value?: string): boolean;
9664     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitFullscreen) */
9665     exitFullscreen(): Promise<void>;
9666     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitPointerLock) */
9667     exitPointerLock(): void;
9668     getConnectedShadowRoots(): ShadowRoot[];
9669     /**
9670      * Returns a reference to the first object with the specified value of the ID attribute.
9671      * @param elementId String that specifies the ID value.
9672      *
9673      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementById)
9674      */
9675     getElementById(elementId: string): Element | null;
9676     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByClassName) */
9677     getElementsByClassName(classNames: string): HTMLCollection;
9678     /**
9679      * Gets a collection of objects based on the value of the NAME or ID attribute.
9680      * @param elementName Gets a collection of objects based on the value of the NAME or ID attribute.
9681      *
9682      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByName)
9683      */
9684     getElementsByName(elementName: string): NodeList;
9685     /**
9686      * Retrieves a collection of objects based on the specified element name.
9687      * @param name Specifies the name of an element.
9688      *
9689      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByTagName)
9690      */
9691     getElementsByTagName<K extends keyof HTMLElementTagNameMap>(localName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;
9692     getElementsByTagName<K extends keyof SVGElementTagNameMap>(localName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;
9693     getElementsByTagName<K extends keyof MathMLElementTagNameMap>(localName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;
9694     /** @deprecated */
9695     getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(localName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;
9696     getElementsByTagName(localName: string): HTMLCollectionOf<Element>;
9697     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByTagNameNS) */
9698     getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollection;
9699     getFailedCertSecurityInfo(): FailedCertSecurityInfo;
9700     getNetErrorInfo(): NetErrorInfo;
9701     /**
9702      * Returns an object representing the current selection of the document that is loaded into the object displaying a webpage.
9703      *
9704      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getSelection)
9705      */
9706     getSelection(): Selection | null;
9707     getWireframe(aIncludeNodes?: boolean): Wireframe | null;
9708     /**
9709      * Gets a value indicating whether the object currently has focus.
9710      *
9711      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hasFocus)
9712      */
9713     hasFocus(): boolean;
9714     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hasStorageAccess) */
9715     hasStorageAccess(): Promise<boolean>;
9716     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/importNode) */
9717     importNode(node: Node, deep?: boolean): Node;
9718     insertAnonymousContent(aForce?: boolean): AnonymousContent;
9719     isActive(): boolean;
9720     /**
9721      * @deprecated This is a legacy alias of `exitFullscreen`.
9722      *
9723      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitFullscreen)
9724      */
9725     mozCancelFullScreen(): Promise<void>;
9726     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/mozSetImageElement) */
9727     mozSetImageElement(aImageElementId: string, aImageElement: Element | null): void;
9728     notifyUserGestureActivation(): void;
9729     /**
9730      * Opens a new window and loads a document specified by a given URL. Also, opens a new window that uses the url parameter and the name parameter to collect the output of the write method and the writeln method.
9731      * @param url Specifies a MIME type for the document.
9732      * @param name Specifies the name of the window. This name is used as the value for the TARGET attribute on a form or an anchor element.
9733      * @param features Contains a list of items separated by commas. Each item consists of an option and a value, separated by an equals sign (for example, "fullscreen=yes, toolbar=yes"). The following values are supported.
9734      * @param replace Specifies whether the existing entry for the document is replaced in the history list.
9735      *
9736      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/open)
9737      */
9738     open(unused1?: string, unused2?: string): Document;
9739     open(url: string | URL, name: string, features: string): WindowProxy | null;
9740     /**
9741      * Returns a Boolean value that indicates whether a specified command can be successfully executed using execCommand, given the current state of the document.
9742      * @param commandId Specifies a command identifier.
9743      * @deprecated
9744      *
9745      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandEnabled)
9746      */
9747     queryCommandEnabled(commandId: string): boolean;
9748     /**
9749      * Returns a Boolean value that indicates whether the specified command is in the indeterminate state.
9750      * @param commandId String that specifies a command identifier.
9751      * @deprecated
9752      *
9753      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandIndeterm)
9754      */
9755     queryCommandIndeterm(commandId: string): boolean;
9756     /**
9757      * Returns a Boolean value that indicates the current state of the command.
9758      * @param commandId String that specifies a command identifier.
9759      * @deprecated
9760      *
9761      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandState)
9762      */
9763     queryCommandState(commandId: string): boolean;
9764     /**
9765      * Returns a Boolean value that indicates whether the current command is supported on the current range.
9766      * @param commandId Specifies a command identifier.
9767      * @deprecated
9768      *
9769      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandSupported)
9770      */
9771     queryCommandSupported(commandId: string): boolean;
9772     /**
9773      * Returns the current value of the document, range, or current selection for the given command.
9774      * @param commandId String that specifies a command identifier.
9775      * @deprecated
9776      *
9777      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandValue)
9778      */
9779     queryCommandValue(commandId: string): string;
9780     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/querySelector) */
9781     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/querySelectorAll) */
9782     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/releaseCapture) */
9783     releaseCapture(): void;
9784     /**
9785      * @deprecated
9786      *
9787      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/releaseEvents)
9788      */
9789     releaseEvents(): void;
9790     reloadWithHttpsOnlyException(): void;
9791     removeAnonymousContent(aContent: AnonymousContent): void;
9792     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/requestStorageAccess) */
9793     requestStorageAccess(): Promise<void>;
9794     requestStorageAccessForOrigin(thirdPartyOrigin: string, requireUserInteraction?: boolean): Promise<void>;
9795     requestStorageAccessUnderSite(serializedSite: string): Promise<void>;
9796     setKeyPressEventModel(aKeyPressEventModel: number): void;
9797     setNotifyFetchSuccess(aShouldNotify: boolean): void;
9798     setNotifyFormOrPasswordRemoved(aShouldNotify: boolean): void;
9799     setSuppressedEventListener(aListener: EventListener | null): void;
9800     userInteractionForTesting(): void;
9801     /**
9802      * Writes one or more HTML expressions to a document in the specified window.
9803      * @param content Specifies the text and HTML tags to write.
9804      *
9805      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/write)
9806      */
9807     write(...text: string[]): void;
9808     /**
9809      * Writes one or more HTML expressions, followed by a carriage return, to a document in the specified window.
9810      * @param content The text and HTML tags to write.
9811      *
9812      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/writeln)
9813      */
9814     writeln(...text: string[]): void;
9815     readonly KEYPRESS_EVENT_MODEL_DEFAULT: 0;
9816     readonly KEYPRESS_EVENT_MODEL_SPLIT: 1;
9817     readonly KEYPRESS_EVENT_MODEL_CONFLATED: 2;
9818     addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
9819     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
9820     removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
9821     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
9824 declare var Document: {
9825     prototype: Document;
9826     new(): Document;
9827     readonly KEYPRESS_EVENT_MODEL_DEFAULT: 0;
9828     readonly KEYPRESS_EVENT_MODEL_SPLIT: 1;
9829     readonly KEYPRESS_EVENT_MODEL_CONFLATED: 2;
9830     parseHTMLUnsafe(html: string): Document;
9831     isInstance(obj): obj is Document;
9835  * A minimal document object that has no parent. It is used as a lightweight version of Document that stores a segment of a document structure comprised of nodes just like a standard document. The key difference is that because the document fragment isn't part of the active document tree structure, changes made to the fragment don't affect the document, cause reflow, or incur any performance impact that can occur when changes are made.
9837  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentFragment)
9838  */
9839 interface DocumentFragment extends Node, ParentNode {
9840     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentFragment/getElementById) */
9841     getElementById(elementId: string): Element | null;
9842     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentFragment/querySelector) */
9843     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentFragment/querySelectorAll) */
9846 declare var DocumentFragment: {
9847     prototype: DocumentFragment;
9848     new(): DocumentFragment;
9849     isInstance(obj): obj is DocumentFragment;
9852 interface DocumentL10n extends DOMLocalization {
9853     readonly ready: Promise<any>;
9854     connectRoot(aElement: Node, aTranslate?: boolean): void;
9857 interface DocumentOrShadowRoot {
9858     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/activeElement) */
9859     readonly activeElement: Element | null;
9860     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/adoptedStyleSheets) */
9861     adoptedStyleSheets: CSSStyleSheet[];
9862     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenElement) */
9863     readonly fullscreenElement: Element | null;
9864     readonly mozFullScreenElement: Element | null;
9865     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerLockElement) */
9866     readonly pointerLockElement: Element | null;
9867     /**
9868      * Retrieves a collection of styleSheet objects representing the style sheets that correspond to each instance of a link or style object in the document.
9869      *
9870      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/styleSheets)
9871      */
9872     readonly styleSheets: StyleSheetList;
9873     /**
9874      * Returns the element for the specified x coordinate and the specified y coordinate.
9875      * @param x The x-offset
9876      * @param y The y-offset
9877      */
9878     elementFromPoint(x: number, y: number): Element | null;
9879     elementsFromPoint(x: number, y: number): Element[];
9880     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getAnimations) */
9881     getAnimations(): Animation[];
9882     nodeFromPoint(x: number, y: number): Node | null;
9883     nodesFromPoint(x: number, y: number): Node[];
9886 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentTimeline) */
9887 interface DocumentTimeline extends AnimationTimeline {
9890 declare var DocumentTimeline: {
9891     prototype: DocumentTimeline;
9892     new(options?: DocumentTimelineOptions): DocumentTimeline;
9893     isInstance(obj): obj is DocumentTimeline;
9897  * A Node containing a doctype.
9899  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType)
9900  */
9901 interface DocumentType extends Node, ChildNode {
9902     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/name) */
9903     readonly name: string;
9904     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/publicId) */
9905     readonly publicId: string;
9906     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/systemId) */
9907     readonly systemId: string;
9910 declare var DocumentType: {
9911     prototype: DocumentType;
9912     new(): DocumentType;
9913     isInstance(obj): obj is DocumentType;
9916 interface DominatorTree {
9917     readonly root: NodeId;
9918     getImmediateDominator(node: NodeId): NodeId | null;
9919     getImmediatelyDominated(node: NodeId): NodeId[] | null;
9920     getRetainedSize(node: NodeId): NodeSize | null;
9923 declare var DominatorTree: {
9924     prototype: DominatorTree;
9925     new(): DominatorTree;
9926     isInstance(obj): obj is DominatorTree;
9930  * A DOM event that represents a drag and drop interaction. The user initiates a drag by placing a pointer device (such as a mouse) on the touch surface and then dragging the pointer to a new location (such as another DOM element). Applications are free to interpret a drag and drop interaction in an application-specific way.
9932  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DragEvent)
9933  */
9934 interface DragEvent extends MouseEvent {
9935     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DragEvent/dataTransfer) */
9936     readonly dataTransfer: DataTransfer | null;
9937     initDragEvent(type: string, canBubble?: boolean, cancelable?: boolean, aView?: Window | null, aDetail?: number, aScreenX?: number, aScreenY?: number, aClientX?: number, aClientY?: number, aCtrlKey?: boolean, aAltKey?: boolean, aShiftKey?: boolean, aMetaKey?: boolean, aButton?: number, aRelatedTarget?: EventTarget | null, aDataTransfer?: DataTransfer | null): void;
9940 declare var DragEvent: {
9941     prototype: DragEvent;
9942     new(type: string, eventInitDict?: DragEventInit): DragEvent;
9943     isInstance(obj): obj is DragEvent;
9947  * Inherits properties from its parent, AudioNode.
9949  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode)
9950  */
9951 interface DynamicsCompressorNode extends AudioNode, AudioNodePassThrough {
9952     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/attack) */
9953     readonly attack: AudioParam;
9954     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/knee) */
9955     readonly knee: AudioParam;
9956     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/ratio) */
9957     readonly ratio: AudioParam;
9958     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/reduction) */
9959     readonly reduction: number;
9960     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/release) */
9961     readonly release: AudioParam;
9962     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/threshold) */
9963     readonly threshold: AudioParam;
9966 declare var DynamicsCompressorNode: {
9967     prototype: DynamicsCompressorNode;
9968     new(context: BaseAudioContext, options?: DynamicsCompressorOptions): DynamicsCompressorNode;
9969     isInstance(obj): obj is DynamicsCompressorNode;
9972 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_blend_minmax) */
9973 interface EXT_blend_minmax {
9974     readonly MIN_EXT: 0x8007;
9975     readonly MAX_EXT: 0x8008;
9978 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_float) */
9979 interface EXT_color_buffer_float {
9982 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_half_float) */
9983 interface EXT_color_buffer_half_float {
9984     readonly RGBA16F_EXT: 0x881A;
9985     readonly RGB16F_EXT: 0x881B;
9986     readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT: 0x8211;
9987     readonly UNSIGNED_NORMALIZED_EXT: 0x8C17;
9990 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query) */
9991 interface EXT_disjoint_timer_query {
9992     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/beginQueryEXT) */
9993     beginQueryEXT(target: GLenum, query: WebGLQuery): void;
9994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/createQueryEXT) */
9995     createQueryEXT(): WebGLQuery | null;
9996     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/deleteQueryEXT) */
9997     deleteQueryEXT(query: WebGLQuery | null): void;
9998     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/endQueryEXT) */
9999     endQueryEXT(target: GLenum): void;
10000     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/getQueryEXT) */
10001     getQueryEXT(target: GLenum, pname: GLenum): any;
10002     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/getQueryObjectEXT) */
10003     getQueryObjectEXT(query: WebGLQuery, pname: GLenum): any;
10004     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/isQueryEXT) */
10005     isQueryEXT(query: WebGLQuery | null): boolean;
10006     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_disjoint_timer_query/queryCounterEXT) */
10007     queryCounterEXT(query: WebGLQuery, target: GLenum): void;
10008     readonly QUERY_COUNTER_BITS_EXT: 0x8864;
10009     readonly CURRENT_QUERY_EXT: 0x8865;
10010     readonly QUERY_RESULT_EXT: 0x8866;
10011     readonly QUERY_RESULT_AVAILABLE_EXT: 0x8867;
10012     readonly TIME_ELAPSED_EXT: 0x88BF;
10013     readonly TIMESTAMP_EXT: 0x8E28;
10014     readonly GPU_DISJOINT_EXT: 0x8FBB;
10017 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_float_blend) */
10018 interface EXT_float_blend {
10022  * The EXT_frag_depth extension is part of the WebGL API and enables to set a depth value of a fragment from within the fragment shader.
10024  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_frag_depth)
10025  */
10026 interface EXT_frag_depth {
10029 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_sRGB) */
10030 interface EXT_sRGB {
10031     readonly SRGB_EXT: 0x8C40;
10032     readonly SRGB_ALPHA_EXT: 0x8C42;
10033     readonly SRGB8_ALPHA8_EXT: 0x8C43;
10034     readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT: 0x8210;
10037 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_shader_texture_lod) */
10038 interface EXT_shader_texture_lod {
10041 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_bptc) */
10042 interface EXT_texture_compression_bptc {
10043     readonly COMPRESSED_RGBA_BPTC_UNORM_EXT: 0x8E8C;
10044     readonly COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT: 0x8E8D;
10045     readonly COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT: 0x8E8E;
10046     readonly COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT: 0x8E8F;
10049 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_rgtc) */
10050 interface EXT_texture_compression_rgtc {
10051     readonly COMPRESSED_RED_RGTC1_EXT: 0x8DBB;
10052     readonly COMPRESSED_SIGNED_RED_RGTC1_EXT: 0x8DBC;
10053     readonly COMPRESSED_RED_GREEN_RGTC2_EXT: 0x8DBD;
10054     readonly COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 0x8DBE;
10058  * The EXT_texture_filter_anisotropic extension is part of the WebGL API and exposes two constants for anisotropic filtering (AF).
10060  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_filter_anisotropic)
10061  */
10062 interface EXT_texture_filter_anisotropic {
10063     readonly TEXTURE_MAX_ANISOTROPY_EXT: 0x84FE;
10064     readonly MAX_TEXTURE_MAX_ANISOTROPY_EXT: 0x84FF;
10067 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_norm16) */
10068 interface EXT_texture_norm16 {
10069     readonly R16_EXT: 0x822A;
10070     readonly RG16_EXT: 0x822C;
10071     readonly RGB16_EXT: 0x8054;
10072     readonly RGBA16_EXT: 0x805B;
10073     readonly R16_SNORM_EXT: 0x8F98;
10074     readonly RG16_SNORM_EXT: 0x8F99;
10075     readonly RGB16_SNORM_EXT: 0x8F9A;
10076     readonly RGBA16_SNORM_EXT: 0x8F9B;
10079 interface ElementEventMap {
10080     "fullscreenchange": Event;
10081     "fullscreenerror": Event;
10085  * Element is the most general base class from which all objects in a Document inherit. It only has methods and properties common to all kinds of elements. More specific classes inherit from Element.
10087  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element)
10088  */
10089 interface Element extends Node, AccessibilityRole, Animatable, AriaAttributes, ChildNode, GeometryUtils, NonDocumentTypeChildNode, ParentNode {
10090     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/assignedSlot) */
10091     readonly assignedSlot: HTMLSlotElement | null;
10092     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/attributes) */
10093     readonly attributes: NamedNodeMap;
10094     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/classList) */
10095     readonly classList: DOMTokenList;
10096     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/className) */
10097     //classNme
10098     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientHeight) */
10099     readonly clientHeight: number;
10100     readonly clientHeightDouble: number;
10101     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientLeft) */
10102     readonly clientLeft: number;
10103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientTop) */
10104     readonly clientTop: number;
10105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientWidth) */
10106     readonly clientWidth: number;
10107     readonly clientWidthDouble: number;
10108     readonly firstLineBoxBSize: number;
10109     readonly fontSizeInflation: number;
10110     readonly hasVisibleScrollbars: boolean;
10111     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/id) */
10112     id: string;
10113     readonly implementedPseudoElement: string | null;
10114     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/innerHTML) */
10115     innerHTML: string;
10116     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/localName) */
10117     readonly localName: string;
10118     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/namespaceURI) */
10119     readonly namespaceURI: string | null;
10120     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenchange_event) */
10121     onfullscreenchange: ((this: Element, ev: Event) => any) | null;
10122     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenerror_event) */
10123     onfullscreenerror: ((this: Element, ev: Event) => any) | null;
10124     readonly openOrClosedAssignedSlot: HTMLSlotElement | null;
10125     readonly openOrClosedShadowRoot: ShadowRoot | null;
10126     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/outerHTML) */
10127     outerHTML: string;
10128     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/part) */
10129     readonly part: DOMTokenList;
10130     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/prefix) */
10131     readonly prefix: string | null;
10132     readonly screen: nsIScreen | null;
10133     readonly screenX: number;
10134     readonly screenY: number;
10135     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollHeight) */
10136     readonly scrollHeight: number;
10137     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollLeft) */
10138     scrollLeft: number;
10139     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollLeftMax) */
10140     readonly scrollLeftMax: number;
10141     readonly scrollLeftMin: number;
10142     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollTop) */
10143     scrollTop: number;
10144     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollTopMax) */
10145     readonly scrollTopMax: number;
10146     readonly scrollTopMin: number;
10147     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollWidth) */
10148     readonly scrollWidth: number;
10149     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/shadowRoot) */
10150     readonly shadowRoot: ShadowRoot | null;
10151     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/slot) */
10152     slot: string;
10153     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/tagName) */
10154     readonly tagName: string;
10155     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/attachShadow) */
10156     attachShadow(shadowRootInitDict: ShadowRootInit): ShadowRoot;
10157     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/checkVisibility) */
10158     checkVisibility(options?: CheckVisibilityOptions): boolean;
10159     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/closest) */
10160     closest(selector: UTF8String): Element | null;
10161     getAsFlexContainer(): Flex | null;
10162     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttribute) */
10163     getAttribute(name: string): string | null;
10164     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNS) */
10165     getAttributeNS(namespace: string | null, localName: string): string | null;
10166     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNames) */
10167     getAttributeNames(): string[];
10168     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNode) */
10169     getAttributeNode(name: string): Attr | null;
10170     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNodeNS) */
10171     getAttributeNodeNS(namespaceURI: string | null, localName: string): Attr | null;
10172     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getBoundingClientRect) */
10173     getBoundingClientRect(): DOMRect;
10174     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getClientRects) */
10175     getClientRects(): DOMRectList;
10176     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByClassName) */
10177     getElementsByClassName(classNames: string): HTMLCollection;
10178     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByTagName) */
10179     getElementsByTagName<K extends keyof HTMLElementTagNameMap>(localName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;
10180     getElementsByTagName<K extends keyof SVGElementTagNameMap>(localName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;
10181     getElementsByTagName<K extends keyof MathMLElementTagNameMap>(localName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;
10182     /** @deprecated */
10183     getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(localName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;
10184     getElementsByTagName(localName: string): HTMLCollectionOf<Element>;
10185     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByTagNameNS) */
10186     getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollection;
10187     getElementsWithGrid(): Element[];
10188     getGridFragments(): Grid[];
10189     getTransformToAncestor(ancestor: Element): DOMMatrixReadOnly;
10190     getTransformToParent(): DOMMatrixReadOnly;
10191     getTransformToViewport(): DOMMatrixReadOnly;
10192     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttribute) */
10193     hasAttribute(name: string): boolean;
10194     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttributeNS) */
10195     hasAttributeNS(namespace: string | null, localName: string): boolean;
10196     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttributes) */
10197     hasAttributes(): boolean;
10198     hasGridFragments(): boolean;
10199     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasPointerCapture) */
10200     hasPointerCapture(pointerId: number): boolean;
10201     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentElement) */
10202     insertAdjacentElement(where: string, element: Element): Element | null;
10203     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentHTML) */
10204     insertAdjacentHTML(position: string, text: string): void;
10205     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentText) */
10206     insertAdjacentText(where: string, data: string): void;
10207     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/matches) */
10208     matches(selector: UTF8String): boolean;
10209     /**
10210      * @deprecated This is a legacy alias of `matches`.
10211      *
10212      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/matches)
10213      */
10214     mozMatchesSelector(selector: UTF8String): boolean;
10215     /**
10216      * @deprecated This is a legacy alias of `requestFullscreen`.
10217      *
10218      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/requestFullscreen)
10219      */
10220     mozRequestFullScreen(): Promise<void>;
10221     mozScrollSnap(): void;
10222     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/querySelector) */
10223     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/querySelectorAll) */
10224     releaseCapture(): void;
10225     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture) */
10226     releasePointerCapture(pointerId: number): void;
10227     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttribute) */
10228     removeAttribute(name: string): void;
10229     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttributeNS) */
10230     removeAttributeNS(namespace: string | null, localName: string): void;
10231     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttributeNode) */
10232     removeAttributeNode(oldAttr: Attr): Attr | null;
10233     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/requestFullscreen) */
10234     requestFullscreen(): Promise<void>;
10235     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/requestPointerLock) */
10236     requestPointerLock(): void;
10237     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scroll) */
10238     scroll(x: number, y: number): void;
10239     scroll(options?: ScrollToOptions): void;
10240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollBy) */
10241     scrollBy(x: number, y: number): void;
10242     scrollBy(options?: ScrollToOptions): void;
10243     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollIntoView) */
10244     scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;
10245     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollTo) */
10246     scrollTo(x: number, y: number): void;
10247     scrollTo(options?: ScrollToOptions): void;
10248     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttribute) */
10249     setAttribute(name: string, value: string): void;
10250     setAttributeDevtools(name: string, value: string): void;
10251     setAttributeDevtoolsNS(namespace: string | null, name: string, value: string): void;
10252     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNS) */
10253     setAttributeNS(namespace: string | null, name: string, value: string): void;
10254     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNode) */
10255     setAttributeNode(newAttr: Attr): Attr | null;
10256     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNodeNS) */
10257     setAttributeNodeNS(newAttr: Attr): Attr | null;
10258     /**
10259      * @deprecated
10260      *
10261      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setCapture)
10262      */
10263     setCapture(retargetToElement?: boolean): void;
10264     setCaptureAlways(retargetToElement?: boolean): void;
10265     /**
10266      * Available only in secure contexts.
10267      *
10268      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setHTML)
10269      */
10270     setHTML(aInnerHTML: string, options?: SetHTMLOptions): void;
10271     setHTMLUnsafe(html: string): void;
10272     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setPointerCapture) */
10273     setPointerCapture(pointerId: number): void;
10274     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/toggleAttribute) */
10275     toggleAttribute(name: string, force?: boolean): boolean;
10276     /**
10277      * @deprecated This is a legacy alias of `matches`.
10278      *
10279      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/matches)
10280      */
10281     webkitMatchesSelector(selector: UTF8String): boolean;
10282     addEventListener<K extends keyof ElementEventMap>(type: K, listener: (this: Element, ev: ElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
10283     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
10284     removeEventListener<K extends keyof ElementEventMap>(type: K, listener: (this: Element, ev: ElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
10285     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
10288 declare var Element: {
10289     prototype: Element;
10290     new(): Element;
10291     isInstance(obj): obj is Element;
10294 interface ElementCSSInlineStyle {
10295     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/style) */
10296     readonly style: CSSStyleDeclaration;
10299 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals) */
10300 interface ElementInternals extends AccessibilityRole, AriaAttributes {
10301     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/form) */
10302     readonly form: HTMLFormElement | null;
10303     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/labels) */
10304     readonly labels: NodeList;
10305     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/shadowRoot) */
10306     readonly shadowRoot: ShadowRoot | null;
10307     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/states) */
10308     readonly states: CustomStateSet;
10309     readonly validationAnchor: HTMLElement | null;
10310     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/validationMessage) */
10311     readonly validationMessage: string;
10312     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/validity) */
10313     readonly validity: ValidityState;
10314     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/willValidate) */
10315     readonly willValidate: boolean;
10316     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/checkValidity) */
10317     checkValidity(): boolean;
10318     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/reportValidity) */
10319     reportValidity(): boolean;
10320     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/setFormValue) */
10321     setFormValue(value: File | string | FormData | null, state?: File | string | FormData | null): void;
10322     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/setValidity) */
10323     setValidity(flags?: ValidityStateFlags, message?: string, anchor?: HTMLElement): void;
10326 declare var ElementInternals: {
10327     prototype: ElementInternals;
10328     new(): ElementInternals;
10329     isInstance(obj): obj is ElementInternals;
10332 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk) */
10333 interface EncodedVideoChunk {
10334     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/byteLength) */
10335     readonly byteLength: number;
10336     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/duration) */
10337     readonly duration: number | null;
10338     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/timestamp) */
10339     readonly timestamp: number;
10340     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/type) */
10341     readonly type: EncodedVideoChunkType;
10342     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/copyTo) */
10343     copyTo(destination: ArrayBufferView | ArrayBuffer): void;
10346 declare var EncodedVideoChunk: {
10347     prototype: EncodedVideoChunk;
10348     new(init: EncodedVideoChunkInit): EncodedVideoChunk;
10349     isInstance(obj): obj is EncodedVideoChunk;
10353  * Events providing information related to errors in scripts or in files.
10355  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent)
10356  */
10357 interface ErrorEvent extends Event {
10358     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/colno) */
10359     readonly colno: number;
10360     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/error) */
10361     "error": ErrorEvent;
10362     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/filename) */
10363     readonly filename: string;
10364     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/lineno) */
10365     readonly lineno: number;
10366     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/message) */
10367     readonly message: string;
10370 declare var ErrorEvent: {
10371     prototype: ErrorEvent;
10372     new(type: string, eventInitDict?: ErrorEventInit): ErrorEvent;
10373     isInstance(obj): obj is ErrorEvent;
10377  * An event which takes place in the DOM.
10379  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event)
10380  */
10381 interface Event {
10382     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/bubbles) */
10383     readonly bubbles: boolean;
10384     /**
10385      * @deprecated
10386      *
10387      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelBubble)
10388      */
10389     cancelBubble: boolean;
10390     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelable) */
10391     readonly cancelable: boolean;
10392     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composed) */
10393     readonly composed: boolean;
10394     readonly composedTarget: EventTarget | null;
10395     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/currentTarget) */
10396     readonly currentTarget: EventTarget | null;
10397     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/defaultPrevented) */
10398     readonly defaultPrevented: boolean;
10399     readonly defaultPreventedByChrome: boolean;
10400     readonly defaultPreventedByContent: boolean;
10401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/eventPhase) */
10402     readonly eventPhase: number;
10403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/explicitOriginalTarget) */
10404     readonly explicitOriginalTarget: EventTarget | null;
10405     readonly isReplyEventFromRemoteContent: boolean;
10406     readonly isSynthesized: boolean;
10407     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/isTrusted) */
10408     readonly isTrusted: boolean;
10409     readonly isWaitingReplyFromRemoteContent: boolean;
10410     readonly multipleActionsPrevented: boolean;
10411     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/originalTarget) */
10412     readonly originalTarget: EventTarget | null;
10413     /**
10414      * @deprecated
10415      *
10416      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/returnValue)
10417      */
10418     returnValue: boolean;
10419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/target) */
10420     readonly target: EventTarget | null;
10421     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/timeStamp) */
10422     readonly timeStamp: DOMHighResTimeStamp;
10423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/type) */
10424     readonly type: string;
10425     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composedPath) */
10426     composedPath(): EventTarget[];
10427     /**
10428      * @deprecated
10429      *
10430      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/initEvent)
10431      */
10432     initEvent(type: string, bubbles?: boolean, cancelable?: boolean): void;
10433     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/preventDefault) */
10434     preventDefault(): void;
10435     preventMultipleActions(): void;
10436     requestReplyFromRemoteContent(): void;
10437     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopImmediatePropagation) */
10438     stopImmediatePropagation(): void;
10439     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopPropagation) */
10440     stopPropagation(): void;
10441     readonly NONE: 0;
10442     readonly CAPTURING_PHASE: 1;
10443     readonly AT_TARGET: 2;
10444     readonly BUBBLING_PHASE: 3;
10445     readonly ALT_MASK: 0x00000001;
10446     readonly CONTROL_MASK: 0x00000002;
10447     readonly SHIFT_MASK: 0x00000004;
10448     readonly META_MASK: 0x00000008;
10451 declare var Event: {
10452     prototype: Event;
10453     new(type: string, eventInitDict?: EventInit): Event;
10454     readonly NONE: 0;
10455     readonly CAPTURING_PHASE: 1;
10456     readonly AT_TARGET: 2;
10457     readonly BUBBLING_PHASE: 3;
10458     readonly ALT_MASK: 0x00000001;
10459     readonly CONTROL_MASK: 0x00000002;
10460     readonly SHIFT_MASK: 0x00000004;
10461     readonly META_MASK: 0x00000008;
10462     isInstance(obj): obj is Event;
10465 interface EventCallbackDebuggerNotification extends CallbackDebuggerNotification {
10466     readonly event: Event;
10467     readonly targetType: EventCallbackDebuggerNotificationType;
10470 declare var EventCallbackDebuggerNotification: {
10471     prototype: EventCallbackDebuggerNotification;
10472     new(): EventCallbackDebuggerNotification;
10473     isInstance(obj): obj is EventCallbackDebuggerNotification;
10476 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventCounts) */
10477 interface EventCounts {
10478     forEach(callbackfn: (value: number, key: string, parent: EventCounts) => void, thisArg?: any): void;
10481 declare var EventCounts: {
10482     prototype: EventCounts;
10483     new(): EventCounts;
10484     isInstance(obj): obj is EventCounts;
10487 interface EventSourceEventMap {
10488     "error": ErrorEvent;
10489     "message": Event;
10490     "open": Event;
10493 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource) */
10494 interface EventSource extends EventTarget {
10495     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/error_event) */
10496     onerror: OnErrorEventHandler;
10497     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/message_event) */
10498     onmessage: ((this: EventSource, ev: Event) => any) | null;
10499     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/open_event) */
10500     onopen: ((this: EventSource, ev: Event) => any) | null;
10501     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/readyState) */
10502     readonly readyState: number;
10503     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/url) */
10504     readonly url: string;
10505     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/withCredentials) */
10506     readonly withCredentials: boolean;
10507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/close) */
10508     close(): void;
10509     readonly CONNECTING: 0;
10510     readonly OPEN: 1;
10511     readonly CLOSED: 2;
10512     addEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
10513     addEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | AddEventListenerOptions): void;
10514     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
10515     removeEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
10516     removeEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | EventListenerOptions): void;
10517     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
10520 declare var EventSource: {
10521     prototype: EventSource;
10522     new(url: string | URL, eventSourceInitDict?: EventSourceInit): EventSource;
10523     readonly CONNECTING: 0;
10524     readonly OPEN: 1;
10525     readonly CLOSED: 2;
10526     isInstance(obj): obj is EventSource;
10530  * EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them.
10532  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget)
10533  */
10534 interface EventTarget {
10535     readonly ownerGlobal: WindowProxy | null;
10536     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/addEventListener) */
10537     addEventListener(type: string, listener: EventListener | null, options?: AddEventListenerOptions | boolean, wantsUntrusted?: boolean | null): void;
10538     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent) */
10539     dispatchEvent(event: Event): boolean;
10540     getEventHandler(type: string): EventHandler;
10541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/removeEventListener) */
10542     removeEventListener(type: string, listener: EventListener | null, options?: EventListenerOptions | boolean): void;
10543     setEventHandler(type: string, handler: EventHandler): void;
10546 declare var EventTarget: {
10547     prototype: EventTarget;
10548     new(): EventTarget;
10549     isInstance(obj): obj is EventTarget;
10552 interface Exception extends ExceptionMembers {
10553     readonly message: string;
10554     readonly name: string;
10555     toString(): string;
10558 interface ExceptionMembers {
10559     readonly columnNumber: number;
10560     readonly data: nsISupports | null;
10561     readonly filename: string;
10562     readonly lineNumber: number;
10563     readonly location: StackFrame | null;
10564     readonly result: number;
10565     stack?: string;
10569  * Extends the lifetime of the install and activate events dispatched on the global scope as part of the service worker lifecycle. This ensures that any functional events (like FetchEvent) are not dispatched until it upgrades database schemas and deletes the outdated cache entries.
10571  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableEvent)
10572  */
10573 interface ExtendableEvent extends Event {
10574     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableEvent/waitUntil) */
10575     waitUntil(p: any): void;
10578 declare var ExtendableEvent: {
10579     prototype: ExtendableEvent;
10580     new(type: string, eventInitDict?: ExtendableEventInit): ExtendableEvent;
10581     isInstance(obj): obj is ExtendableEvent;
10585  * This ServiceWorker API interface represents the event object of a message event fired on a service worker (when a channel message is received on the ServiceWorkerGlobalScope from another context) â€” extends the lifetime of such events.
10587  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent)
10588  */
10589 interface ExtendableMessageEvent extends ExtendableEvent {
10590     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/data) */
10591     readonly data: any;
10592     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/lastEventId) */
10593     readonly lastEventId: string;
10594     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/origin) */
10595     readonly origin: string;
10596     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/ports) */
10597     readonly ports: MessagePort[];
10598     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/source) */
10599     readonly source: Client | ServiceWorker | MessagePort | null;
10602 declare var ExtendableMessageEvent: {
10603     prototype: ExtendableMessageEvent;
10604     new(type: string, eventInitDict?: ExtendableMessageEventInit): ExtendableMessageEvent;
10605     isInstance(obj): obj is ExtendableMessageEvent;
10608 interface ExtensionAlarms {
10609     readonly onAlarm: ExtensionEventManager;
10610     clear(name: string, callback?: Function): any;
10611     clear(callback?: Function): any;
10612     clearAll(callback?: Function): any;
10613     create(name: string, alarmInfo: any): void;
10614     create(alarmInfo: any): void;
10615     get(name: string, callback?: Function): any;
10616     get(callback?: Function): any;
10617     getAll(callback?: Function): any;
10620 interface ExtensionBrowser {
10621     readonly alarms: ExtensionAlarms;
10622     readonly browserSettings: ExtensionBrowserSettings;
10623     readonly dns: ExtensionDns;
10624     readonly mockExtensionAPI: ExtensionMockAPI;
10625     readonly proxy: ExtensionProxy;
10626     readonly runtime: ExtensionRuntime;
10627     readonly scripting: ExtensionScripting;
10628     readonly test: ExtensionTest;
10631 interface ExtensionBrowserSettings {
10632     readonly allowPopupsForUserEvents: ExtensionSetting;
10633     readonly cacheEnabled: ExtensionSetting;
10634     readonly closeTabsByDoubleClick: ExtensionSetting;
10635     readonly colorManagement: ExtensionBrowserSettingsColorManagement;
10636     readonly contextMenuShowEvent: ExtensionSetting;
10637     readonly ftpProtocolEnabled: ExtensionSetting;
10638     readonly homepageOverride: ExtensionSetting;
10639     readonly imageAnimationBehavior: ExtensionSetting;
10640     readonly newTabPageOverride: ExtensionSetting;
10641     readonly newTabPosition: ExtensionSetting;
10642     readonly openBookmarksInNewTabs: ExtensionSetting;
10643     readonly openSearchResultsInNewTabs: ExtensionSetting;
10644     readonly openUrlbarResultsInNewTabs: ExtensionSetting;
10645     readonly overrideContentColorScheme: ExtensionSetting;
10646     readonly overrideDocumentColors: ExtensionSetting;
10647     readonly useDocumentFonts: ExtensionSetting;
10648     readonly webNotificationsDisabled: ExtensionSetting;
10649     readonly zoomFullPage: ExtensionSetting;
10650     readonly zoomSiteSpecific: ExtensionSetting;
10653 interface ExtensionBrowserSettingsColorManagement {
10654     readonly mode: ExtensionSetting;
10655     readonly useNativeSRGB: ExtensionSetting;
10656     readonly useWebRenderCompositor: ExtensionSetting;
10659 interface ExtensionDns {
10660     resolve(...args: any[]): any;
10663 interface ExtensionEventManager {
10664     addListener(callback: Function, listenerOptions?: any): void;
10665     hasListener(callback: Function): boolean;
10666     hasListeners(): boolean;
10667     removeListener(callback: Function): void;
10670 interface ExtensionGlobalsMixin {
10671     readonly browser: ExtensionBrowser;
10674 interface ExtensionMockAPI {
10675     readonly onTestEvent: ExtensionEventManager;
10676     readonly propertyAsErrorObject: any;
10677     readonly propertyAsString: string;
10678     methodAmbiguousArgsAsync(...args: any[]): any;
10679     methodAsync(arg0: any, cb?: Function): any;
10680     methodNoReturn(...args: any[]): void;
10681     methodReturnsPort(testName: string): ExtensionPort;
10682     methodSyncWithReturn(...args: any[]): any;
10685 interface ExtensionPort {
10686     "error": ErrorEvent;
10687     readonly name: string;
10688     readonly onDisconnect: ExtensionEventManager;
10689     readonly onMessage: ExtensionEventManager;
10690     readonly sender: any;
10691     disconnect(): void;
10692     postMessage(message: any): void;
10695 interface ExtensionProxy {
10696     readonly onError: ExtensionEventManager;
10697     readonly onRequest: ExtensionEventManager;
10698     readonly settings: ExtensionSetting;
10701 interface ExtensionRuntime {
10702     readonly id: string;
10703     readonly lastError: any;
10704     readonly onConnect: ExtensionEventManager;
10705     readonly onConnectExternal: ExtensionEventManager;
10706     readonly onInstalled: ExtensionEventManager;
10707     readonly onMessage: ExtensionEventManager;
10708     readonly onMessageExternal: ExtensionEventManager;
10709     readonly onStartup: ExtensionEventManager;
10710     readonly onUpdateAvailable: ExtensionEventManager;
10711     connect(extensionId: string, connectInfo: any): ExtensionPort;
10712     connect(connectInfo: any): ExtensionPort;
10713     connect(): ExtensionPort;
10714     connectNative(application: string): ExtensionPort;
10715     getBrowserInfo(callback?: Function): any;
10716     getManifest(): any;
10717     getPlatformInfo(callback?: Function): any;
10718     getURL(path: string): string;
10719     openOptionsPage(callback?: Function): any;
10720     reload(): void;
10721     sendMessage(...args: any[]): any;
10722     sendNativeMessage(application: string, message: any, responseCallback?: Function): any;
10723     setUninstallURL(url: string, callback?: Function): any;
10724     setUninstallURL(callback?: Function): any;
10727 interface ExtensionScripting {
10728     executeScript(injection: any, callback?: Function): any;
10729     getRegisteredContentScripts(...args: any[]): any;
10730     insertCSS(injection: any, callback?: Function): any;
10731     registerContentScripts(scripts: any, callback?: Function): any;
10732     removeCSS(injection: any, callback?: Function): any;
10733     unregisterContentScripts(...args: any[]): any;
10734     updateContentScripts(scripts: any, callback?: Function): any;
10737 interface ExtensionSetting {
10738     readonly onChange: ExtensionEventManager;
10739     clear(details: any, callback?: Function): any;
10740     get(details: any, callback?: Function): any;
10741     set(details: any, callback?: Function): any;
10744 interface ExtensionTest {
10745     readonly onMessage: ExtensionEventManager;
10746     assertDeepEq(...args: any[]): void;
10747     assertEq(...args: any[]): void;
10748     assertFalse(...args: any[]): void;
10749     assertRejects(promise: any, expectedError: any, message: string, callback?: Function): any;
10750     assertRejects(promise: any, expectedError: any, callback?: Function): any;
10751     assertThrows(func: Function, expectedError: any, message: string): void;
10752     assertThrows(func: Function, expectedError: any): void;
10753     assertTrue(...args: any[]): void;
10754     fail(message: any): void;
10755     fail(): void;
10756     log(message: string): void;
10757     notifyFail(message: string): void;
10758     notifyPass(message: string): void;
10759     notifyPass(): void;
10760     sendMessage(...args: any[]): void;
10761     succeed(message: any): void;
10762     succeed(): void;
10763     withHandlingUserInput(callback: Function): void;
10767  * @deprecated
10769  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/External)
10770  */
10771 interface External {
10772     /**
10773      * @deprecated
10774      *
10775      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/External/AddSearchProvider)
10776      */
10777     AddSearchProvider(): void;
10778     /**
10779      * @deprecated
10780      *
10781      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/External/IsSearchProviderInstalled)
10782      */
10783     IsSearchProviderInstalled(): void;
10786 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FeaturePolicy) */
10787 interface FeaturePolicy {
10788     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FeaturePolicy/allowedFeatures) */
10789     allowedFeatures(): string[];
10790     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FeaturePolicy/allowsFeature) */
10791     allowsFeature(feature: string, origin?: string): boolean;
10792     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FeaturePolicy/features) */
10793     features(): string[];
10794     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FeaturePolicy/getAllowlistForFeature) */
10795     getAllowlistForFeature(feature: string): string[];
10798 interface FeaturePolicyViolationReportBody extends ReportBody {
10799     readonly columnNumber: number | null;
10800     readonly disposition: string;
10801     readonly featureId: string;
10802     readonly lineNumber: number | null;
10803     readonly sourceFile: string | null;
10806 declare var FeaturePolicyViolationReportBody: {
10807     prototype: FeaturePolicyViolationReportBody;
10808     new(): FeaturePolicyViolationReportBody;
10809     isInstance(obj): obj is FeaturePolicyViolationReportBody;
10813  * This is the event type for fetch events dispatched on the service worker global scope. It contains information about the fetch, including the request and how the receiver will treat the response. It provides the event.respondWith() method, which allows us to provide a response to this fetch.
10815  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent)
10816  */
10817 interface FetchEvent extends ExtendableEvent {
10818     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/clientId) */
10819     readonly clientId: string;
10820     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/handled) */
10821     readonly handled: Promise<undefined>;
10822     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/preloadResponse) */
10823     readonly preloadResponse: Promise<any>;
10824     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/request) */
10825     readonly request: Request;
10826     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/resultingClientId) */
10827     readonly resultingClientId: string;
10828     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/respondWith) */
10829     respondWith(r: Response | PromiseLike<Response>): void;
10832 declare var FetchEvent: {
10833     prototype: FetchEvent;
10834     new(type: string, eventInitDict: FetchEventInit): FetchEvent;
10835     isInstance(obj): obj is FetchEvent;
10838 interface FetchObserverEventMap {
10839     "requestprogress": Event;
10840     "responseprogress": Event;
10841     "statechange": Event;
10844 interface FetchObserver extends EventTarget {
10845     onrequestprogress: ((this: FetchObserver, ev: Event) => any) | null;
10846     onresponseprogress: ((this: FetchObserver, ev: Event) => any) | null;
10847     onstatechange: ((this: FetchObserver, ev: Event) => any) | null;
10848     readonly state: FetchState;
10849     addEventListener<K extends keyof FetchObserverEventMap>(type: K, listener: (this: FetchObserver, ev: FetchObserverEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
10850     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
10851     removeEventListener<K extends keyof FetchObserverEventMap>(type: K, listener: (this: FetchObserver, ev: FetchObserverEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
10852     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
10855 declare var FetchObserver: {
10856     prototype: FetchObserver;
10857     new(): FetchObserver;
10858     isInstance(obj): obj is FetchObserver;
10862  * Provides information about files and allows JavaScript in a web page to access their content.
10864  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/File)
10865  */
10866 interface File extends Blob {
10867     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/lastModified) */
10868     readonly lastModified: number;
10869     readonly mozFullPath: string;
10870     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/name) */
10871     readonly name: string;
10872     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/webkitRelativePath) */
10873     readonly webkitRelativePath: string;
10876 declare var File: {
10877     prototype: File;
10878     new(fileBits: BlobPart[], fileName: string, options?: FilePropertyBag): File;
10879     createFromFileName(fileName: string, options?: ChromeFilePropertyBag): Promise<File>;
10880     createFromNsIFile(file: nsIFile, options?: ChromeFilePropertyBag): Promise<File>;
10881     isInstance(obj): obj is File;
10885  * An object of this type is returned by the files property of the HTML <input> element; this lets you access the list of files selected with the <input type="file"> element. It's also used for a list of files dropped into web content when using the drag and drop API; see the DataTransfer object for details on this usage.
10887  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList)
10888  */
10889 interface FileList {
10890     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/length) */
10891     readonly length: number;
10892     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/item) */
10893     item(index: number): File | null;
10894     [index: number]: File;
10897 declare var FileList: {
10898     prototype: FileList;
10899     new(): FileList;
10900     isInstance(obj): obj is FileList;
10903 interface FileReaderEventMap {
10904     "abort": Event;
10905     "error": ErrorEvent;
10906     "load": Event;
10907     "loadend": Event;
10908     "loadstart": Event;
10909     "progress": Event;
10913  * Lets web applications asynchronously read the contents of files (or raw data buffers) stored on the user's computer, using File or Blob objects to specify the file or data to read.
10915  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader)
10916  */
10917 interface FileReader extends EventTarget {
10918     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error) */
10919     "error": ErrorEvent;
10920     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort_event) */
10921     onabort: ((this: FileReader, ev: Event) => any) | null;
10922     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error_event) */
10923     onerror: OnErrorEventHandler;
10924     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/load_event) */
10925     onload: ((this: FileReader, ev: Event) => any) | null;
10926     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadend_event) */
10927     onloadend: ((this: FileReader, ev: Event) => any) | null;
10928     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadstart_event) */
10929     onloadstart: ((this: FileReader, ev: Event) => any) | null;
10930     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/progress_event) */
10931     onprogress: ((this: FileReader, ev: Event) => any) | null;
10932     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */
10933     readonly readyState: number;
10934     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/result) */
10935     readonly result: string | ArrayBuffer | null;
10936     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort) */
10937     abort(): void;
10938     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsArrayBuffer) */
10939     readAsArrayBuffer(blob: Blob): void;
10940     /**
10941      * @deprecated
10942      *
10943      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsBinaryString)
10944      */
10945     readAsBinaryString(filedata: Blob): void;
10946     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsDataURL) */
10947     readAsDataURL(blob: Blob): void;
10948     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsText) */
10949     readAsText(blob: Blob, label?: string): void;
10950     readonly EMPTY: 0;
10951     readonly LOADING: 1;
10952     readonly DONE: 2;
10953     addEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
10954     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
10955     removeEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
10956     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
10959 declare var FileReader: {
10960     prototype: FileReader;
10961     new(): FileReader;
10962     readonly EMPTY: 0;
10963     readonly LOADING: 1;
10964     readonly DONE: 2;
10965     isInstance(obj): obj is FileReader;
10969  * Allows to read File or Blob objects in a synchronous way.
10971  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync)
10972  */
10973 interface FileReaderSync {
10974     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsArrayBuffer) */
10975     readAsArrayBuffer(blob: Blob): ArrayBuffer;
10976     /**
10977      * @deprecated
10978      *
10979      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsBinaryString)
10980      */
10981     readAsBinaryString(blob: Blob): string;
10982     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsDataURL) */
10983     readAsDataURL(blob: Blob): string;
10984     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsText) */
10985     readAsText(blob: Blob, encoding?: string): string;
10988 declare var FileReaderSync: {
10989     prototype: FileReaderSync;
10990     new(): FileReaderSync;
10991     isInstance(obj): obj is FileReaderSync;
10994 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem) */
10995 interface FileSystem {
10996     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem/name) */
10997     readonly name: string;
10998     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem/root) */
10999     readonly root: FileSystemDirectoryEntry;
11002 declare var FileSystem: {
11003     prototype: FileSystem;
11004     new(): FileSystem;
11005     isInstance(obj): obj is FileSystem;
11008 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry) */
11009 interface FileSystemDirectoryEntry extends FileSystemEntry {
11010     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/createReader) */
11011     createReader(): FileSystemDirectoryReader;
11012     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getDirectory) */
11013     getDirectory(path?: string | null, options?: FileSystemFlags, successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;
11014     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getFile) */
11015     getFile(path?: string | null, options?: FileSystemFlags, successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;
11018 declare var FileSystemDirectoryEntry: {
11019     prototype: FileSystemDirectoryEntry;
11020     new(): FileSystemDirectoryEntry;
11021     isInstance(obj): obj is FileSystemDirectoryEntry;
11025  * Available only in secure contexts.
11027  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle)
11028  */
11029 interface FileSystemDirectoryHandle extends FileSystemHandle {
11030     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getDirectoryHandle) */
11031     getDirectoryHandle(name: string, options?: FileSystemGetDirectoryOptions): Promise<FileSystemDirectoryHandle>;
11032     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getFileHandle) */
11033     getFileHandle(name: string, options?: FileSystemGetFileOptions): Promise<FileSystemFileHandle>;
11034     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/removeEntry) */
11035     removeEntry(name: string, options?: FileSystemRemoveOptions): Promise<void>;
11036     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/resolve) */
11037     resolve(possibleDescendant: FileSystemHandle): Promise<string[] | null>;
11040 declare var FileSystemDirectoryHandle: {
11041     prototype: FileSystemDirectoryHandle;
11042     new(): FileSystemDirectoryHandle;
11043     isInstance(obj): obj is FileSystemDirectoryHandle;
11046 /** Available only in secure contexts. */
11047 interface FileSystemDirectoryIterator {
11048     next(): Promise<any>;
11051 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader) */
11052 interface FileSystemDirectoryReader {
11053     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader/readEntries) */
11054     readEntries(successCallback: FileSystemEntriesCallback, errorCallback?: ErrorCallback): void;
11057 declare var FileSystemDirectoryReader: {
11058     prototype: FileSystemDirectoryReader;
11059     new(): FileSystemDirectoryReader;
11060     isInstance(obj): obj is FileSystemDirectoryReader;
11063 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry) */
11064 interface FileSystemEntry {
11065     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/filesystem) */
11066     readonly filesystem: FileSystem;
11067     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/fullPath) */
11068     readonly fullPath: string;
11069     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/isDirectory) */
11070     readonly isDirectory: boolean;
11071     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/isFile) */
11072     readonly isFile: boolean;
11073     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/name) */
11074     readonly name: string;
11075     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/getParent) */
11076     getParent(successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;
11079 declare var FileSystemEntry: {
11080     prototype: FileSystemEntry;
11081     new(): FileSystemEntry;
11082     isInstance(obj): obj is FileSystemEntry;
11085 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileEntry) */
11086 interface FileSystemFileEntry extends FileSystemEntry {
11087     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileEntry/file) */
11088     file(successCallback: FileCallback, errorCallback?: ErrorCallback): void;
11091 declare var FileSystemFileEntry: {
11092     prototype: FileSystemFileEntry;
11093     new(): FileSystemFileEntry;
11094     isInstance(obj): obj is FileSystemFileEntry;
11098  * Available only in secure contexts.
11100  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle)
11101  */
11102 interface FileSystemFileHandle extends FileSystemHandle {
11103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/createSyncAccessHandle) */
11104     createSyncAccessHandle(): Promise<FileSystemSyncAccessHandle>;
11105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/createWritable) */
11106     createWritable(options?: FileSystemCreateWritableOptions): Promise<FileSystemWritableFileStream>;
11107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/getFile) */
11108     getFile(): Promise<File>;
11111 declare var FileSystemFileHandle: {
11112     prototype: FileSystemFileHandle;
11113     new(): FileSystemFileHandle;
11114     isInstance(obj): obj is FileSystemFileHandle;
11118  * Available only in secure contexts.
11120  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle)
11121  */
11122 interface FileSystemHandle {
11123     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/kind) */
11124     readonly kind: FileSystemHandleKind;
11125     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/name) */
11126     readonly name: string;
11127     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/isSameEntry) */
11128     isSameEntry(other: FileSystemHandle): Promise<boolean>;
11129     move(name: string): Promise<void>;
11130     move(parent: FileSystemDirectoryHandle): Promise<void>;
11131     move(parent: FileSystemDirectoryHandle, name: string): Promise<void>;
11134 declare var FileSystemHandle: {
11135     prototype: FileSystemHandle;
11136     new(): FileSystemHandle;
11137     isInstance(obj): obj is FileSystemHandle;
11141  * Available only in secure contexts.
11143  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle)
11144  */
11145 interface FileSystemSyncAccessHandle {
11146     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/close) */
11147     close(): void;
11148     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/flush) */
11149     flush(): void;
11150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/getSize) */
11151     getSize(): number;
11152     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/read) */
11153     read(buffer: ArrayBufferView | ArrayBuffer, options?: FileSystemReadWriteOptions): number;
11154     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/truncate) */
11155     truncate(size: number): void;
11156     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/write) */
11157     write(buffer: ArrayBufferView | ArrayBuffer, options?: FileSystemReadWriteOptions): number;
11160 declare var FileSystemSyncAccessHandle: {
11161     prototype: FileSystemSyncAccessHandle;
11162     new(): FileSystemSyncAccessHandle;
11163     isInstance(obj): obj is FileSystemSyncAccessHandle;
11167  * Available only in secure contexts.
11169  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream)
11170  */
11171 interface FileSystemWritableFileStream extends WritableStream {
11172     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/seek) */
11173     seek(position: number): Promise<void>;
11174     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/truncate) */
11175     truncate(size: number): Promise<void>;
11176     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write) */
11177     write(data: FileSystemWriteChunkType): Promise<void>;
11180 declare var FileSystemWritableFileStream: {
11181     prototype: FileSystemWritableFileStream;
11182     new(): FileSystemWritableFileStream;
11183     isInstance(obj): obj is FileSystemWritableFileStream;
11186 interface Flex {
11187     readonly crossAxisDirection: FlexPhysicalDirection;
11188     readonly mainAxisDirection: FlexPhysicalDirection;
11189     getLines(): FlexLineValues[];
11192 declare var Flex: {
11193     prototype: Flex;
11194     new(): Flex;
11195     isInstance(obj): obj is Flex;
11198 interface FlexItemValues {
11199     readonly clampState: FlexItemClampState;
11200     readonly crossMaxSize: number;
11201     readonly crossMinSize: number;
11202     readonly frameRect: DOMRectReadOnly;
11203     readonly mainBaseSize: number;
11204     readonly mainDeltaSize: number;
11205     readonly mainMaxSize: number;
11206     readonly mainMinSize: number;
11207     readonly node: Node | null;
11210 declare var FlexItemValues: {
11211     prototype: FlexItemValues;
11212     new(): FlexItemValues;
11213     isInstance(obj): obj is FlexItemValues;
11216 interface FlexLineValues {
11217     readonly crossSize: number;
11218     readonly crossStart: number;
11219     readonly firstBaselineOffset: number;
11220     readonly growthState: FlexLineGrowthState;
11221     readonly lastBaselineOffset: number;
11222     getItems(): FlexItemValues[];
11225 declare var FlexLineValues: {
11226     prototype: FlexLineValues;
11227     new(): FlexLineValues;
11228     isInstance(obj): obj is FlexLineValues;
11231 interface FluentBundle {
11232     readonly locales: UTF8String[];
11233     addResource(aResource: FluentResource, aOptions?: FluentBundleAddResourceOptions): void;
11234     formatPattern(pattern: FluentPattern, aArgs?: L10nArgs | null, aErrors?: any): UTF8String;
11235     getMessage(id: UTF8String): FluentMessage | null;
11236     hasMessage(id: UTF8String): boolean;
11239 declare var FluentBundle: {
11240     prototype: FluentBundle;
11241     new(aLocales: UTF8String | UTF8String[], aOptions?: FluentBundleOptions): FluentBundle;
11242     isInstance(obj): obj is FluentBundle;
11245 interface FluentBundleAsyncIterator {
11246     next(): Promise<FluentBundleIteratorResult>;
11247     values(): FluentBundleAsyncIterator;
11250 interface FluentBundleIterator {
11251     next(): FluentBundleIteratorResult;
11252     values(): FluentBundleIterator;
11255 interface FluentPattern {
11258 declare var FluentPattern: {
11259     prototype: FluentPattern;
11260     new(): FluentPattern;
11261     isInstance(obj): obj is FluentPattern;
11264 interface FluentResource {
11265     textElements(): FluentTextElementItem[];
11268 declare var FluentResource: {
11269     prototype: FluentResource;
11270     new(source: UTF8String): FluentResource;
11271     isInstance(obj): obj is FluentResource;
11275  * Focus-related events like focus, blur, focusin, or focusout.
11277  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FocusEvent)
11278  */
11279 interface FocusEvent extends UIEvent {
11280     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FocusEvent/relatedTarget) */
11281     readonly relatedTarget: EventTarget | null;
11284 declare var FocusEvent: {
11285     prototype: FocusEvent;
11286     new(typeArg: string, focusEventInitDict?: FocusEventInit): FocusEvent;
11287     isInstance(obj): obj is FocusEvent;
11290 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace) */
11291 interface FontFace {
11292     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/ascentOverride) */
11293     ascentOverride: UTF8String;
11294     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/descentOverride) */
11295     descentOverride: UTF8String;
11296     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/display) */
11297     display: UTF8String;
11298     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/family) */
11299     family: UTF8String;
11300     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/featureSettings) */
11301     featureSettings: UTF8String;
11302     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/lineGapOverride) */
11303     lineGapOverride: UTF8String;
11304     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/loaded) */
11305     readonly loaded: Promise<FontFace>;
11306     sizeAdjust: UTF8String;
11307     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/status) */
11308     readonly status: FontFaceLoadStatus;
11309     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/stretch) */
11310     stretch: UTF8String;
11311     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/style) */
11312     style: UTF8String;
11313     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/unicodeRange) */
11314     unicodeRange: UTF8String;
11315     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/variant) */
11316     variant: UTF8String;
11317     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/variationSettings) */
11318     variationSettings: UTF8String;
11319     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/weight) */
11320     weight: UTF8String;
11321     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/load) */
11322     load(): Promise<FontFace>;
11325 declare var FontFace: {
11326     prototype: FontFace;
11327     new(family: UTF8String, source: UTF8String | BinaryData, descriptors?: FontFaceDescriptors): FontFace;
11328     isInstance(obj): obj is FontFace;
11331 interface FontFaceSetEventMap {
11332     "loading": Event;
11333     "loadingdone": Event;
11334     "loadingerror": Event;
11337 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet) */
11338 interface FontFaceSet extends EventTarget {
11339     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loading_event) */
11340     onloading: ((this: FontFaceSet, ev: Event) => any) | null;
11341     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingdone_event) */
11342     onloadingdone: ((this: FontFaceSet, ev: Event) => any) | null;
11343     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingerror_event) */
11344     onloadingerror: ((this: FontFaceSet, ev: Event) => any) | null;
11345     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/ready) */
11346     readonly ready: Promise<undefined>;
11347     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/size) */
11348     readonly size: number;
11349     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/status) */
11350     readonly status: FontFaceSetLoadStatus;
11351     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/add) */
11352     add(font: FontFace): void;
11353     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/check) */
11354     check(font: UTF8String, text?: string): boolean;
11355     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/clear) */
11356     clear(): void;
11357     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/delete) */
11358     delete(font: FontFace): boolean;
11359     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/entries) */
11360     entries(): FontFaceSetIterator;
11361     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/forEach) */
11362     forEach(cb: FontFaceSetForEachCallback, thisArg?: any): void;
11363     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/has) */
11364     has(font: FontFace): boolean;
11365     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/load) */
11366     load(font: UTF8String, text?: string): Promise<FontFace[]>;
11367     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/values) */
11368     values(): FontFaceSetIterator;
11369     addEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
11370     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
11371     removeEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
11372     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
11375 declare var FontFaceSet: {
11376     prototype: FontFaceSet;
11377     new(): FontFaceSet;
11378     isInstance(obj): obj is FontFaceSet;
11381 interface FontFaceSetIterator {
11382     next(): FontFaceSetIteratorResult;
11385 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent) */
11386 interface FontFaceSetLoadEvent extends Event {
11387     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent/fontfaces) */
11388     readonly fontfaces: FontFace[];
11391 declare var FontFaceSetLoadEvent: {
11392     prototype: FontFaceSetLoadEvent;
11393     new(type: string, eventInitDict?: FontFaceSetLoadEventInit): FontFaceSetLoadEvent;
11394     isInstance(obj): obj is FontFaceSetLoadEvent;
11397 interface FontFaceSource {
11398     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fonts) */
11399     readonly fonts: FontFaceSet;
11403  * Provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the XMLHttpRequest.send() method. It uses the same format a form would use if the encoding type were set to "multipart/form-data".
11405  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData)
11406  */
11407 interface FormData {
11408     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) */
11409     append(name: string, value: Blob, filename?: string): void;
11410     append(name: string, value: string): void;
11411     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/delete) */
11412     delete(name: string): void;
11413     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/get) */
11414     get(name: string): FormDataEntryValue | null;
11415     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/getAll) */
11416     getAll(name: string): FormDataEntryValue[];
11417     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/has) */
11418     has(name: string): boolean;
11419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) */
11420     set(name: string, value: Blob, filename?: string): void;
11421     set(name: string, value: string): void;
11422     forEach(callbackfn: (value: FormDataEntryValue, key: string, parent: FormData) => void, thisArg?: any): void;
11425 declare var FormData: {
11426     prototype: FormData;
11427     new(form?: HTMLFormElement, submitter?: HTMLElement | null): FormData;
11428     isInstance(obj): obj is FormData;
11431 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormDataEvent) */
11432 interface FormDataEvent extends Event {
11433     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormDataEvent/formData) */
11434     readonly formData: FormData;
11437 declare var FormDataEvent: {
11438     prototype: FormDataEvent;
11439     new(type: string, eventInitDict?: FormDataEventInit): FormDataEvent;
11440     isInstance(obj): obj is FormDataEvent;
11443 interface FrameCrashedEvent extends Event {
11444     readonly browsingContextId: number;
11445     readonly childID: number;
11446     readonly isTopFrame: boolean;
11449 declare var FrameCrashedEvent: {
11450     prototype: FrameCrashedEvent;
11451     new(type: string, eventInitDict?: FrameCrashedEventInit): FrameCrashedEvent;
11452     isInstance(obj): obj is FrameCrashedEvent;
11455 interface FrameLoader extends WebBrowserPersistable {
11456     readonly browsingContext: BrowsingContext | null;
11457     readonly childID: number;
11458     readonly depthTooGreat: boolean;
11459     readonly docShell: nsIDocShell | null;
11460     readonly isDead: boolean;
11461     readonly isRemoteFrame: boolean;
11462     readonly lazyHeight: number;
11463     readonly lazyWidth: number;
11464     readonly loadContext: LoadContext | null;
11465     readonly messageManager: MessageSender | null;
11466     readonly ownerElement: Element | null;
11467     readonly ownerIsMozBrowserFrame: boolean;
11468     readonly remoteTab: RemoteTab | null;
11469     exitPrintPreview(): void;
11470     printPreview(aPrintSettings: nsIPrintSettings, aSourceBrowsingContext: BrowsingContext | null): Promise<number>;
11471     requestEpochUpdate(aEpoch: number): void;
11472     requestSHistoryUpdate(): void;
11473     requestTabStateFlush(): Promise<void>;
11474     requestUpdatePosition(): void;
11477 declare var FrameLoader: {
11478     prototype: FrameLoader;
11479     new(): FrameLoader;
11480     isInstance(obj): obj is FrameLoader;
11483 interface FrameScriptLoader {
11484     getDelayedFrameScripts(): any[][];
11485     loadFrameScript(url: string, allowDelayedLoad: boolean, runInGlobalScope?: boolean): void;
11486     removeDelayedFrameScript(url: string): void;
11490  * Available only in secure contexts.
11492  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPU)
11493  */
11494 interface GPU {
11495     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPU/getPreferredCanvasFormat) */
11496     getPreferredCanvasFormat(): GPUTextureFormat;
11497     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPU/requestAdapter) */
11498     requestAdapter(options?: GPURequestAdapterOptions): Promise<GPUAdapter | null>;
11501 declare var GPU: {
11502     prototype: GPU;
11503     new(): GPU;
11504     isInstance(obj): obj is GPU;
11508  * Available only in secure contexts.
11510  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter)
11511  */
11512 interface GPUAdapter {
11513     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/features) */
11514     readonly features: GPUSupportedFeatures;
11515     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/isFallbackAdapter) */
11516     readonly isFallbackAdapter: boolean;
11517     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/limits) */
11518     readonly limits: GPUSupportedLimits;
11519     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/requestAdapterInfo) */
11520     requestAdapterInfo(unmaskHints?: string[]): Promise<GPUAdapterInfo>;
11521     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapter/requestDevice) */
11522     requestDevice(descriptor?: GPUDeviceDescriptor): Promise<GPUDevice>;
11525 declare var GPUAdapter: {
11526     prototype: GPUAdapter;
11527     new(): GPUAdapter;
11528     isInstance(obj): obj is GPUAdapter;
11532  * Available only in secure contexts.
11534  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapterInfo)
11535  */
11536 interface GPUAdapterInfo {
11537     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapterInfo/architecture) */
11538     readonly architecture: string;
11539     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapterInfo/description) */
11540     readonly description: string;
11541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapterInfo/device) */
11542     readonly device: string;
11543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUAdapterInfo/vendor) */
11544     readonly vendor: string;
11545     readonly wgpuBackend: string;
11546     readonly wgpuDevice: number;
11547     readonly wgpuDeviceType: string;
11548     readonly wgpuDriver: string;
11549     readonly wgpuDriverInfo: string;
11550     readonly wgpuName: string;
11551     readonly wgpuVendor: number;
11554 declare var GPUAdapterInfo: {
11555     prototype: GPUAdapterInfo;
11556     new(): GPUAdapterInfo;
11557     isInstance(obj): obj is GPUAdapterInfo;
11561  * Available only in secure contexts.
11563  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBindGroup)
11564  */
11565 interface GPUBindGroup extends GPUObjectBase {
11568 declare var GPUBindGroup: {
11569     prototype: GPUBindGroup;
11570     new(): GPUBindGroup;
11571     isInstance(obj): obj is GPUBindGroup;
11575  * Available only in secure contexts.
11577  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBindGroupLayout)
11578  */
11579 interface GPUBindGroupLayout extends GPUObjectBase {
11582 declare var GPUBindGroupLayout: {
11583     prototype: GPUBindGroupLayout;
11584     new(): GPUBindGroupLayout;
11585     isInstance(obj): obj is GPUBindGroupLayout;
11588 interface GPUBindingCommandsMixin {
11589     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePassEncoder/setBindGroup) */
11590     setBindGroup(index: GPUIndex32, bindGroup: GPUBindGroup, dynamicOffsets?: GPUBufferDynamicOffset[]): void;
11594  * Available only in secure contexts.
11596  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer)
11597  */
11598 interface GPUBuffer extends GPUObjectBase {
11599     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer/mapState) */
11600     readonly mapState: GPUBufferMapState;
11601     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer/size) */
11602     readonly size: GPUSize64Out;
11603     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer/usage) */
11604     readonly usage: GPUFlagsConstant;
11605     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer/destroy) */
11606     destroy(): void;
11607     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer/getMappedRange) */
11608     getMappedRange(offset?: GPUSize64, size?: GPUSize64): ArrayBuffer;
11609     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer/mapAsync) */
11610     mapAsync(mode: GPUMapModeFlags, offset?: GPUSize64, size?: GPUSize64): Promise<void>;
11611     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBuffer/unmap) */
11612     unmap(): void;
11615 declare var GPUBuffer: {
11616     prototype: GPUBuffer;
11617     new(): GPUBuffer;
11618     isInstance(obj): obj is GPUBuffer;
11621 /** Available only in secure contexts. */
11622 interface GPUBufferUsage {
11623     readonly MAP_READ: 0x0001;
11624     readonly MAP_WRITE: 0x0002;
11625     readonly COPY_SRC: 0x0004;
11626     readonly COPY_DST: 0x0008;
11627     readonly INDEX: 0x0010;
11628     readonly VERTEX: 0x0020;
11629     readonly UNIFORM: 0x0040;
11630     readonly STORAGE: 0x0080;
11631     readonly INDIRECT: 0x0100;
11632     readonly QUERY_RESOLVE: 0x0200;
11635 declare var GPUBufferUsage: {
11636     prototype: GPUBufferUsage;
11637     new(): GPUBufferUsage;
11638     readonly MAP_READ: 0x0001;
11639     readonly MAP_WRITE: 0x0002;
11640     readonly COPY_SRC: 0x0004;
11641     readonly COPY_DST: 0x0008;
11642     readonly INDEX: 0x0010;
11643     readonly VERTEX: 0x0020;
11644     readonly UNIFORM: 0x0040;
11645     readonly STORAGE: 0x0080;
11646     readonly INDIRECT: 0x0100;
11647     readonly QUERY_RESOLVE: 0x0200;
11648     isInstance(obj): obj is GPUBufferUsage;
11652  * Available only in secure contexts.
11654  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext)
11655  */
11656 interface GPUCanvasContext {
11657     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/canvas) */
11658     readonly canvas: HTMLCanvasElement | OffscreenCanvas;
11659     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/configure) */
11660     configure(configuration: GPUCanvasConfiguration): void;
11661     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/getCurrentTexture) */
11662     getCurrentTexture(): GPUTexture;
11663     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCanvasContext/unconfigure) */
11664     unconfigure(): void;
11667 declare var GPUCanvasContext: {
11668     prototype: GPUCanvasContext;
11669     new(): GPUCanvasContext;
11670     isInstance(obj): obj is GPUCanvasContext;
11673 /** Available only in secure contexts. */
11674 interface GPUColorWrite {
11675     readonly RED: 0x1;
11676     readonly GREEN: 0x2;
11677     readonly BLUE: 0x4;
11678     readonly ALPHA: 0x8;
11679     readonly ALL: 0xF;
11682 declare var GPUColorWrite: {
11683     prototype: GPUColorWrite;
11684     new(): GPUColorWrite;
11685     readonly RED: 0x1;
11686     readonly GREEN: 0x2;
11687     readonly BLUE: 0x4;
11688     readonly ALPHA: 0x8;
11689     readonly ALL: 0xF;
11690     isInstance(obj): obj is GPUColorWrite;
11694  * Available only in secure contexts.
11696  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandBuffer)
11697  */
11698 interface GPUCommandBuffer extends GPUObjectBase {
11701 declare var GPUCommandBuffer: {
11702     prototype: GPUCommandBuffer;
11703     new(): GPUCommandBuffer;
11704     isInstance(obj): obj is GPUCommandBuffer;
11708  * Available only in secure contexts.
11710  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder)
11711  */
11712 interface GPUCommandEncoder extends GPUDebugCommandsMixin, GPUObjectBase {
11713     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginComputePass) */
11714     beginComputePass(descriptor?: GPUComputePassDescriptor): GPUComputePassEncoder;
11715     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/beginRenderPass) */
11716     beginRenderPass(descriptor: GPURenderPassDescriptor): GPURenderPassEncoder;
11717     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/clearBuffer) */
11718     clearBuffer(buffer: GPUBuffer, offset?: GPUSize64, size?: GPUSize64): void;
11719     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToBuffer) */
11720     copyBufferToBuffer(source: GPUBuffer, sourceOffset: GPUSize64, destination: GPUBuffer, destinationOffset: GPUSize64, size: GPUSize64): void;
11721     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyBufferToTexture) */
11722     copyBufferToTexture(source: GPUImageCopyBuffer, destination: GPUImageCopyTexture, copySize: GPUExtent3D): void;
11723     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToBuffer) */
11724     copyTextureToBuffer(source: GPUImageCopyTexture, destination: GPUImageCopyBuffer, copySize: GPUExtent3D): void;
11725     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/copyTextureToTexture) */
11726     copyTextureToTexture(source: GPUImageCopyTexture, destination: GPUImageCopyTexture, copySize: GPUExtent3D): void;
11727     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/finish) */
11728     finish(descriptor?: GPUCommandBufferDescriptor): GPUCommandBuffer;
11731 declare var GPUCommandEncoder: {
11732     prototype: GPUCommandEncoder;
11733     new(): GPUCommandEncoder;
11734     isInstance(obj): obj is GPUCommandEncoder;
11738  * Available only in secure contexts.
11740  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationInfo)
11741  */
11742 interface GPUCompilationInfo {
11743     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationInfo/messages) */
11744     readonly messages: GPUCompilationMessage[];
11747 declare var GPUCompilationInfo: {
11748     prototype: GPUCompilationInfo;
11749     new(): GPUCompilationInfo;
11750     isInstance(obj): obj is GPUCompilationInfo;
11754  * Available only in secure contexts.
11756  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationMessage)
11757  */
11758 interface GPUCompilationMessage {
11759     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationMessage/length) */
11760     readonly length: number;
11761     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationMessage/lineNum) */
11762     readonly lineNum: number;
11763     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationMessage/linePos) */
11764     readonly linePos: number;
11765     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationMessage/message) */
11766     readonly message: string;
11767     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationMessage/offset) */
11768     readonly offset: number;
11769     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCompilationMessage/type) */
11770     readonly type: GPUCompilationMessageType;
11773 declare var GPUCompilationMessage: {
11774     prototype: GPUCompilationMessage;
11775     new(): GPUCompilationMessage;
11776     isInstance(obj): obj is GPUCompilationMessage;
11780  * Available only in secure contexts.
11782  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePassEncoder)
11783  */
11784 interface GPUComputePassEncoder extends GPUBindingCommandsMixin, GPUDebugCommandsMixin, GPUObjectBase {
11785     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePassEncoder/dispatchWorkgroups) */
11786     dispatchWorkgroups(workgroupCountX: GPUSize32, workgroupCountY?: GPUSize32, workgroupCountZ?: GPUSize32): void;
11787     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePassEncoder/dispatchWorkgroupsIndirect) */
11788     dispatchWorkgroupsIndirect(indirectBuffer: GPUBuffer, indirectOffset: GPUSize64): void;
11789     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePassEncoder/end) */
11790     end(): void;
11791     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePassEncoder/setPipeline) */
11792     setPipeline(pipeline: GPUComputePipeline): void;
11795 declare var GPUComputePassEncoder: {
11796     prototype: GPUComputePassEncoder;
11797     new(): GPUComputePassEncoder;
11798     isInstance(obj): obj is GPUComputePassEncoder;
11802  * Available only in secure contexts.
11804  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePipeline)
11805  */
11806 interface GPUComputePipeline extends GPUObjectBase, GPUPipelineBase {
11809 declare var GPUComputePipeline: {
11810     prototype: GPUComputePipeline;
11811     new(): GPUComputePipeline;
11812     isInstance(obj): obj is GPUComputePipeline;
11815 interface GPUDebugCommandsMixin {
11816     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/insertDebugMarker) */
11817     insertDebugMarker(markerLabel: string): void;
11818     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/popDebugGroup) */
11819     popDebugGroup(): void;
11820     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUCommandEncoder/pushDebugGroup) */
11821     pushDebugGroup(groupLabel: string): void;
11824 interface GPUDeviceEventMap {
11825     "uncapturederror": Event;
11829  * Available only in secure contexts.
11831  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice)
11832  */
11833 interface GPUDevice extends EventTarget, GPUObjectBase {
11834     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/features) */
11835     readonly features: GPUSupportedFeatures;
11836     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/limits) */
11837     readonly limits: GPUSupportedLimits;
11838     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/lost) */
11839     readonly lost: Promise<GPUDeviceLostInfo>;
11840     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/uncapturederror_event) */
11841     onuncapturederror: ((this: GPUDevice, ev: Event) => any) | null;
11842     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/queue) */
11843     readonly queue: GPUQueue;
11844     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroup) */
11845     createBindGroup(descriptor: GPUBindGroupDescriptor): GPUBindGroup;
11846     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBindGroupLayout) */
11847     createBindGroupLayout(descriptor: GPUBindGroupLayoutDescriptor): GPUBindGroupLayout;
11848     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createBuffer) */
11849     createBuffer(descriptor: GPUBufferDescriptor): GPUBuffer;
11850     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createCommandEncoder) */
11851     createCommandEncoder(descriptor?: GPUCommandEncoderDescriptor): GPUCommandEncoder;
11852     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipeline) */
11853     createComputePipeline(descriptor: GPUComputePipelineDescriptor): GPUComputePipeline;
11854     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createComputePipelineAsync) */
11855     createComputePipelineAsync(descriptor: GPUComputePipelineDescriptor): Promise<GPUComputePipeline>;
11856     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createPipelineLayout) */
11857     createPipelineLayout(descriptor: GPUPipelineLayoutDescriptor): GPUPipelineLayout;
11858     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderBundleEncoder) */
11859     createRenderBundleEncoder(descriptor: GPURenderBundleEncoderDescriptor): GPURenderBundleEncoder;
11860     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipeline) */
11861     createRenderPipeline(descriptor: GPURenderPipelineDescriptor): GPURenderPipeline;
11862     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createRenderPipelineAsync) */
11863     createRenderPipelineAsync(descriptor: GPURenderPipelineDescriptor): Promise<GPURenderPipeline>;
11864     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createSampler) */
11865     createSampler(descriptor?: GPUSamplerDescriptor): GPUSampler;
11866     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createShaderModule) */
11867     createShaderModule(descriptor: GPUShaderModuleDescriptor): GPUShaderModule;
11868     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/createTexture) */
11869     createTexture(descriptor: GPUTextureDescriptor): GPUTexture;
11870     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/destroy) */
11871     destroy(): void;
11872     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/popErrorScope) */
11873     popErrorScope(): Promise<GPUError | null>;
11874     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDevice/pushErrorScope) */
11875     pushErrorScope(filter: GPUErrorFilter): void;
11876     addEventListener<K extends keyof GPUDeviceEventMap>(type: K, listener: (this: GPUDevice, ev: GPUDeviceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
11877     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
11878     removeEventListener<K extends keyof GPUDeviceEventMap>(type: K, listener: (this: GPUDevice, ev: GPUDeviceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
11879     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
11882 declare var GPUDevice: {
11883     prototype: GPUDevice;
11884     new(): GPUDevice;
11885     isInstance(obj): obj is GPUDevice;
11889  * Available only in secure contexts.
11891  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDeviceLostInfo)
11892  */
11893 interface GPUDeviceLostInfo {
11894     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDeviceLostInfo/message) */
11895     readonly message: string;
11896     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUDeviceLostInfo/reason) */
11897     readonly reason: any;
11900 declare var GPUDeviceLostInfo: {
11901     prototype: GPUDeviceLostInfo;
11902     new(): GPUDeviceLostInfo;
11903     isInstance(obj): obj is GPUDeviceLostInfo;
11907  * Available only in secure contexts.
11909  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUError)
11910  */
11911 interface GPUError {
11912     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUError/message) */
11913     readonly message: string;
11916 declare var GPUError: {
11917     prototype: GPUError;
11918     new(): GPUError;
11919     isInstance(obj): obj is GPUError;
11923  * Available only in secure contexts.
11925  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUInternalError)
11926  */
11927 interface GPUInternalError extends GPUError {
11930 declare var GPUInternalError: {
11931     prototype: GPUInternalError;
11932     new(message: string): GPUInternalError;
11933     isInstance(obj): obj is GPUInternalError;
11936 /** Available only in secure contexts. */
11937 interface GPUMapMode {
11938     readonly READ: 0x0001;
11939     readonly WRITE: 0x0002;
11942 declare var GPUMapMode: {
11943     prototype: GPUMapMode;
11944     new(): GPUMapMode;
11945     readonly READ: 0x0001;
11946     readonly WRITE: 0x0002;
11947     isInstance(obj): obj is GPUMapMode;
11950 interface GPUObjectBase {
11951     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUBindGroup/label) */
11952     label: string | null;
11956  * Available only in secure contexts.
11958  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUOutOfMemoryError)
11959  */
11960 interface GPUOutOfMemoryError extends GPUError {
11963 declare var GPUOutOfMemoryError: {
11964     prototype: GPUOutOfMemoryError;
11965     new(message: string): GPUOutOfMemoryError;
11966     isInstance(obj): obj is GPUOutOfMemoryError;
11969 interface GPUPipelineBase {
11970     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUComputePipeline/getBindGroupLayout) */
11971     getBindGroupLayout(index: number): GPUBindGroupLayout;
11975  * Available only in secure contexts.
11977  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUPipelineLayout)
11978  */
11979 interface GPUPipelineLayout extends GPUObjectBase {
11982 declare var GPUPipelineLayout: {
11983     prototype: GPUPipelineLayout;
11984     new(): GPUPipelineLayout;
11985     isInstance(obj): obj is GPUPipelineLayout;
11989  * Available only in secure contexts.
11991  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQuerySet)
11992  */
11993 interface GPUQuerySet extends GPUObjectBase {
11994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQuerySet/destroy) */
11995     destroy(): void;
11998 declare var GPUQuerySet: {
11999     prototype: GPUQuerySet;
12000     new(): GPUQuerySet;
12001     isInstance(obj): obj is GPUQuerySet;
12005  * Available only in secure contexts.
12007  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue)
12008  */
12009 interface GPUQueue extends GPUObjectBase {
12010     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/copyExternalImageToTexture) */
12011     copyExternalImageToTexture(source: GPUImageCopyExternalImage, destination: GPUImageCopyTextureTagged, copySize: GPUExtent3D): void;
12012     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/onSubmittedWorkDone) */
12013     onSubmittedWorkDone(): Promise<void>;
12014     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/submit) */
12015     submit(buffers: GPUCommandBuffer[]): void;
12016     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/writeBuffer) */
12017     writeBuffer(buffer: GPUBuffer, bufferOffset: GPUSize64, data: BufferSource, dataOffset?: GPUSize64, size?: GPUSize64): void;
12018     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUQueue/writeTexture) */
12019     writeTexture(destination: GPUImageCopyTexture, data: BufferSource, dataLayout: GPUImageDataLayout, size: GPUExtent3D): void;
12022 declare var GPUQueue: {
12023     prototype: GPUQueue;
12024     new(): GPUQueue;
12025     isInstance(obj): obj is GPUQueue;
12029  * Available only in secure contexts.
12031  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundle)
12032  */
12033 interface GPURenderBundle extends GPUObjectBase {
12036 declare var GPURenderBundle: {
12037     prototype: GPURenderBundle;
12038     new(): GPURenderBundle;
12039     isInstance(obj): obj is GPURenderBundle;
12043  * Available only in secure contexts.
12045  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder)
12046  */
12047 interface GPURenderBundleEncoder extends GPUBindingCommandsMixin, GPUDebugCommandsMixin, GPUObjectBase, GPURenderCommandsMixin {
12048     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/finish) */
12049     finish(descriptor?: GPURenderBundleDescriptor): GPURenderBundle;
12052 declare var GPURenderBundleEncoder: {
12053     prototype: GPURenderBundleEncoder;
12054     new(): GPURenderBundleEncoder;
12055     isInstance(obj): obj is GPURenderBundleEncoder;
12058 interface GPURenderCommandsMixin {
12059     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/draw) */
12060     draw(vertexCount: GPUSize32, instanceCount?: GPUSize32, firstVertex?: GPUSize32, firstInstance?: GPUSize32): void;
12061     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/drawIndexed) */
12062     drawIndexed(indexCount: GPUSize32, instanceCount?: GPUSize32, firstIndex?: GPUSize32, baseVertex?: GPUSignedOffset32, firstInstance?: GPUSize32): void;
12063     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/drawIndexedIndirect) */
12064     drawIndexedIndirect(indirectBuffer: GPUBuffer, indirectOffset: GPUSize64): void;
12065     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/drawIndirect) */
12066     drawIndirect(indirectBuffer: GPUBuffer, indirectOffset: GPUSize64): void;
12067     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/setIndexBuffer) */
12068     setIndexBuffer(buffer: GPUBuffer, indexFormat: GPUIndexFormat, offset?: GPUSize64, size?: GPUSize64): void;
12069     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/setPipeline) */
12070     setPipeline(pipeline: GPURenderPipeline): void;
12071     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderBundleEncoder/setVertexBuffer) */
12072     setVertexBuffer(slot: GPUIndex32, buffer: GPUBuffer, offset?: GPUSize64, size?: GPUSize64): void;
12076  * Available only in secure contexts.
12078  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPassEncoder)
12079  */
12080 interface GPURenderPassEncoder extends GPUBindingCommandsMixin, GPUDebugCommandsMixin, GPUObjectBase, GPURenderCommandsMixin {
12081     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPassEncoder/end) */
12082     end(): void;
12083     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPassEncoder/executeBundles) */
12084     executeBundles(bundles: GPURenderBundle[]): void;
12085     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPassEncoder/setBlendConstant) */
12086     setBlendConstant(color: GPUColor): void;
12087     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPassEncoder/setScissorRect) */
12088     setScissorRect(x: GPUIntegerCoordinate, y: GPUIntegerCoordinate, width: GPUIntegerCoordinate, height: GPUIntegerCoordinate): void;
12089     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPassEncoder/setStencilReference) */
12090     setStencilReference(reference: GPUStencilValue): void;
12091     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPassEncoder/setViewport) */
12092     setViewport(x: number, y: number, width: number, height: number, minDepth: number, maxDepth: number): void;
12095 declare var GPURenderPassEncoder: {
12096     prototype: GPURenderPassEncoder;
12097     new(): GPURenderPassEncoder;
12098     isInstance(obj): obj is GPURenderPassEncoder;
12102  * Available only in secure contexts.
12104  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPURenderPipeline)
12105  */
12106 interface GPURenderPipeline extends GPUObjectBase, GPUPipelineBase {
12109 declare var GPURenderPipeline: {
12110     prototype: GPURenderPipeline;
12111     new(): GPURenderPipeline;
12112     isInstance(obj): obj is GPURenderPipeline;
12116  * Available only in secure contexts.
12118  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUSampler)
12119  */
12120 interface GPUSampler extends GPUObjectBase {
12123 declare var GPUSampler: {
12124     prototype: GPUSampler;
12125     new(): GPUSampler;
12126     isInstance(obj): obj is GPUSampler;
12130  * Available only in secure contexts.
12132  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUShaderModule)
12133  */
12134 interface GPUShaderModule extends GPUObjectBase {
12135     compilationInfo(): Promise<GPUCompilationInfo>;
12136     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUShaderModule/getCompilationInfo) */
12137     getCompilationInfo(): Promise<GPUCompilationInfo>;
12140 declare var GPUShaderModule: {
12141     prototype: GPUShaderModule;
12142     new(): GPUShaderModule;
12143     isInstance(obj): obj is GPUShaderModule;
12146 /** Available only in secure contexts. */
12147 interface GPUShaderStage {
12148     readonly VERTEX: 0x1;
12149     readonly FRAGMENT: 0x2;
12150     readonly COMPUTE: 0x4;
12153 declare var GPUShaderStage: {
12154     prototype: GPUShaderStage;
12155     new(): GPUShaderStage;
12156     readonly VERTEX: 0x1;
12157     readonly FRAGMENT: 0x2;
12158     readonly COMPUTE: 0x4;
12159     isInstance(obj): obj is GPUShaderStage;
12163  * Available only in secure contexts.
12165  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUSupportedFeatures)
12166  */
12167 interface GPUSupportedFeatures {
12168     forEach(callbackfn: (value: string, key: string, parent: GPUSupportedFeatures) => void, thisArg?: any): void;
12171 declare var GPUSupportedFeatures: {
12172     prototype: GPUSupportedFeatures;
12173     new(): GPUSupportedFeatures;
12174     isInstance(obj): obj is GPUSupportedFeatures;
12178  * Available only in secure contexts.
12180  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUSupportedLimits)
12181  */
12182 interface GPUSupportedLimits {
12183     readonly maxBindGroups: number;
12184     readonly maxBindGroupsPlusVertexBuffers: number;
12185     readonly maxBindingsPerBindGroup: number;
12186     readonly maxBufferSize: number;
12187     readonly maxColorAttachmentBytesPerSample: number;
12188     readonly maxColorAttachments: number;
12189     readonly maxComputeInvocationsPerWorkgroup: number;
12190     readonly maxComputeWorkgroupSizeX: number;
12191     readonly maxComputeWorkgroupSizeY: number;
12192     readonly maxComputeWorkgroupSizeZ: number;
12193     readonly maxComputeWorkgroupStorageSize: number;
12194     readonly maxComputeWorkgroupsPerDimension: number;
12195     readonly maxDynamicStorageBuffersPerPipelineLayout: number;
12196     readonly maxDynamicUniformBuffersPerPipelineLayout: number;
12197     readonly maxInterStageShaderComponents: number;
12198     readonly maxInterStageShaderVariables: number;
12199     readonly maxSampledTexturesPerShaderStage: number;
12200     readonly maxSamplersPerShaderStage: number;
12201     readonly maxStorageBufferBindingSize: number;
12202     readonly maxStorageBuffersPerShaderStage: number;
12203     readonly maxStorageTexturesPerShaderStage: number;
12204     readonly maxTextureArrayLayers: number;
12205     readonly maxTextureDimension1D: number;
12206     readonly maxTextureDimension2D: number;
12207     readonly maxTextureDimension3D: number;
12208     readonly maxUniformBufferBindingSize: number;
12209     readonly maxUniformBuffersPerShaderStage: number;
12210     readonly maxVertexAttributes: number;
12211     readonly maxVertexBufferArrayStride: number;
12212     readonly maxVertexBuffers: number;
12213     readonly minStorageBufferOffsetAlignment: number;
12214     readonly minUniformBufferOffsetAlignment: number;
12217 declare var GPUSupportedLimits: {
12218     prototype: GPUSupportedLimits;
12219     new(): GPUSupportedLimits;
12220     isInstance(obj): obj is GPUSupportedLimits;
12224  * Available only in secure contexts.
12226  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture)
12227  */
12228 interface GPUTexture extends GPUObjectBase {
12229     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/depthOrArrayLayers) */
12230     readonly depthOrArrayLayers: GPUIntegerCoordinateOut;
12231     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/dimension) */
12232     readonly dimension: GPUTextureDimension;
12233     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/format) */
12234     readonly format: GPUTextureFormat;
12235     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/height) */
12236     readonly height: GPUIntegerCoordinateOut;
12237     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/mipLevelCount) */
12238     readonly mipLevelCount: GPUIntegerCoordinateOut;
12239     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/sampleCount) */
12240     readonly sampleCount: GPUSize32Out;
12241     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/usage) */
12242     readonly usage: GPUFlagsConstant;
12243     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/width) */
12244     readonly width: GPUIntegerCoordinateOut;
12245     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/createView) */
12246     createView(descriptor?: GPUTextureViewDescriptor): GPUTextureView;
12247     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTexture/destroy) */
12248     destroy(): void;
12251 declare var GPUTexture: {
12252     prototype: GPUTexture;
12253     new(): GPUTexture;
12254     isInstance(obj): obj is GPUTexture;
12257 /** Available only in secure contexts. */
12258 interface GPUTextureUsage {
12259     readonly COPY_SRC: 0x01;
12260     readonly COPY_DST: 0x02;
12261     readonly TEXTURE_BINDING: 0x04;
12262     readonly STORAGE_BINDING: 0x08;
12263     readonly RENDER_ATTACHMENT: 0x10;
12266 declare var GPUTextureUsage: {
12267     prototype: GPUTextureUsage;
12268     new(): GPUTextureUsage;
12269     readonly COPY_SRC: 0x01;
12270     readonly COPY_DST: 0x02;
12271     readonly TEXTURE_BINDING: 0x04;
12272     readonly STORAGE_BINDING: 0x08;
12273     readonly RENDER_ATTACHMENT: 0x10;
12274     isInstance(obj): obj is GPUTextureUsage;
12278  * Available only in secure contexts.
12280  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUTextureView)
12281  */
12282 interface GPUTextureView extends GPUObjectBase {
12285 declare var GPUTextureView: {
12286     prototype: GPUTextureView;
12287     new(): GPUTextureView;
12288     isInstance(obj): obj is GPUTextureView;
12292  * Available only in secure contexts.
12294  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUUncapturedErrorEvent)
12295  */
12296 interface GPUUncapturedErrorEvent extends Event {
12297     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUUncapturedErrorEvent/error) */
12298     "error": ErrorEvent;
12301 declare var GPUUncapturedErrorEvent: {
12302     prototype: GPUUncapturedErrorEvent;
12303     new(type: string, gpuUncapturedErrorEventInitDict: GPUUncapturedErrorEventInit): GPUUncapturedErrorEvent;
12304     isInstance(obj): obj is GPUUncapturedErrorEvent;
12308  * Available only in secure contexts.
12310  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GPUValidationError)
12311  */
12312 interface GPUValidationError extends GPUError {
12315 declare var GPUValidationError: {
12316     prototype: GPUValidationError;
12317     new(message: string): GPUValidationError;
12318     isInstance(obj): obj is GPUValidationError;
12322  * A change in volume. It is an AudioNode audio-processing module that causes a given gain to be applied to the input data before its propagation to the output. A GainNode always has exactly one input and one output, both with the same number of channels.
12324  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GainNode)
12325  */
12326 interface GainNode extends AudioNode, AudioNodePassThrough {
12327     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GainNode/gain) */
12328     readonly gain: AudioParam;
12331 declare var GainNode: {
12332     prototype: GainNode;
12333     new(context: BaseAudioContext, options?: GainOptions): GainNode;
12334     isInstance(obj): obj is GainNode;
12338  * This Gamepad API interface defines an individual gamepad or other controller, allowing access to information such as button presses, axis positions, and id.
12339  * Available only in secure contexts.
12341  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad)
12342  */
12343 interface Gamepad {
12344     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/axes) */
12345     readonly axes: number[];
12346     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/buttons) */
12347     readonly buttons: GamepadButton[];
12348     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/connected) */
12349     readonly connected: boolean;
12350     /**
12351      * @deprecated
12352      *
12353      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/displayId)
12354      */
12355     readonly displayId: number;
12356     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/hand) */
12357     readonly hand: GamepadHand;
12358     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/hapticActuators) */
12359     readonly hapticActuators: GamepadHapticActuator[];
12360     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/id) */
12361     readonly id: string;
12362     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/index) */
12363     readonly index: number;
12364     readonly lightIndicators: GamepadLightIndicator[];
12365     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/mapping) */
12366     readonly mapping: GamepadMappingType;
12367     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/pose) */
12368     readonly pose: GamepadPose | null;
12369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/timestamp) */
12370     readonly timestamp: DOMHighResTimeStamp;
12371     readonly touchEvents: GamepadTouch[];
12374 declare var Gamepad: {
12375     prototype: Gamepad;
12376     new(): Gamepad;
12377     isInstance(obj): obj is Gamepad;
12380 /** Available only in secure contexts. */
12381 interface GamepadAxisMoveEvent extends GamepadEvent {
12382     readonly axis: number;
12383     readonly value: number;
12386 declare var GamepadAxisMoveEvent: {
12387     prototype: GamepadAxisMoveEvent;
12388     new(type: string, eventInitDict?: GamepadAxisMoveEventInit): GamepadAxisMoveEvent;
12389     isInstance(obj): obj is GamepadAxisMoveEvent;
12393  * An individual button of a gamepad or other controller, allowing access to the current state of different types of buttons available on the control device.
12394  * Available only in secure contexts.
12396  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton)
12397  */
12398 interface GamepadButton {
12399     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/pressed) */
12400     readonly pressed: boolean;
12401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/touched) */
12402     readonly touched: boolean;
12403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/value) */
12404     readonly value: number;
12407 declare var GamepadButton: {
12408     prototype: GamepadButton;
12409     new(): GamepadButton;
12410     isInstance(obj): obj is GamepadButton;
12413 /** Available only in secure contexts. */
12414 interface GamepadButtonEvent extends GamepadEvent {
12415     readonly button: number;
12418 declare var GamepadButtonEvent: {
12419     prototype: GamepadButtonEvent;
12420     new(type: string, eventInitDict?: GamepadButtonEventInit): GamepadButtonEvent;
12421     isInstance(obj): obj is GamepadButtonEvent;
12425  * This Gamepad API interface contains references to gamepads connected to the system, which is what the gamepad events Window.gamepadconnected and Window.gamepaddisconnected are fired in response to.
12426  * Available only in secure contexts.
12428  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadEvent)
12429  */
12430 interface GamepadEvent extends Event {
12431     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadEvent/gamepad) */
12432     readonly gamepad: Gamepad | null;
12435 declare var GamepadEvent: {
12436     prototype: GamepadEvent;
12437     new(type: string, eventInitDict?: GamepadEventInit): GamepadEvent;
12438     isInstance(obj): obj is GamepadEvent;
12442  * This Gamepad API interface represents hardware in the controller designed to provide haptic feedback to the user (if available), most commonly vibration hardware.
12443  * Available only in secure contexts.
12445  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator)
12446  */
12447 interface GamepadHapticActuator {
12448     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator/type) */
12449     readonly type: GamepadHapticActuatorType;
12450     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator/pulse) */
12451     pulse(value: number, duration: number): Promise<boolean>;
12454 declare var GamepadHapticActuator: {
12455     prototype: GamepadHapticActuator;
12456     new(): GamepadHapticActuator;
12457     isInstance(obj): obj is GamepadHapticActuator;
12460 /** Available only in secure contexts. */
12461 interface GamepadLightIndicator {
12462     readonly type: GamepadLightIndicatorType;
12463     setColor(color: GamepadLightColor): Promise<boolean>;
12466 declare var GamepadLightIndicator: {
12467     prototype: GamepadLightIndicator;
12468     new(): GamepadLightIndicator;
12469     isInstance(obj): obj is GamepadLightIndicator;
12473  * This Gamepad API interface represents the pose of a WebVR controller at a given timestamp (which includes orientation, position, velocity, and acceleration information.)
12474  * Available only in secure contexts.
12476  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose)
12477  */
12478 interface GamepadPose {
12479     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/angularAcceleration) */
12480     readonly angularAcceleration: Float32Array | null;
12481     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/angularVelocity) */
12482     readonly angularVelocity: Float32Array | null;
12483     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/hasOrientation) */
12484     readonly hasOrientation: boolean;
12485     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/hasPosition) */
12486     readonly hasPosition: boolean;
12487     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/linearAcceleration) */
12488     readonly linearAcceleration: Float32Array | null;
12489     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/linearVelocity) */
12490     readonly linearVelocity: Float32Array | null;
12491     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/orientation) */
12492     readonly orientation: Float32Array | null;
12493     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadPose/position) */
12494     readonly position: Float32Array | null;
12497 declare var GamepadPose: {
12498     prototype: GamepadPose;
12499     new(): GamepadPose;
12500     isInstance(obj): obj is GamepadPose;
12503 interface GamepadServiceTest {
12504     readonly leftHand: GamepadHand;
12505     readonly noHand: GamepadHand;
12506     readonly noMapping: GamepadMappingType;
12507     readonly rightHand: GamepadHand;
12508     readonly standardMapping: GamepadMappingType;
12509     addGamepad(id: string, mapping: GamepadMappingType, hand: GamepadHand, numButtons: number, numAxes: number, numHaptics: number, numLightIndicator: number, numTouchEvents: number): Promise<number>;
12510     newAxisMoveEvent(index: number, axis: number, value: number): Promise<number>;
12511     newButtonEvent(index: number, button: number, pressed: boolean, touched: boolean): Promise<number>;
12512     newButtonValueEvent(index: number, button: number, pressed: boolean, touched: boolean, value: number): Promise<number>;
12513     newPoseMove(index: number, orient: Float32Array | null, pos: Float32Array | null, angVelocity: Float32Array | null, angAcceleration: Float32Array | null, linVelocity: Float32Array | null, linAcceleration: Float32Array | null): Promise<number>;
12514     newTouch(index: number, aTouchArrayIndex: number, touchId: number, surfaceId: number, position: Float32Array, surfaceDimension: Float32Array | null): Promise<number>;
12515     removeGamepad(index: number): Promise<number>;
12518 declare var GamepadServiceTest: {
12519     prototype: GamepadServiceTest;
12520     new(): GamepadServiceTest;
12521     isInstance(obj): obj is GamepadServiceTest;
12524 /** Available only in secure contexts. */
12525 interface GamepadTouch {
12526     readonly position: Float32Array;
12527     readonly surfaceDimensions: Uint32Array | null;
12528     readonly surfaceId: number;
12529     readonly touchId: number;
12532 declare var GamepadTouch: {
12533     prototype: GamepadTouch;
12534     new(): GamepadTouch;
12535     isInstance(obj): obj is GamepadTouch;
12538 interface GenericTransformStream {
12539     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/readable) */
12540     readonly readable: ReadableStream;
12541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/writable) */
12542     readonly writable: WritableStream;
12546  * An object able to programmatically obtain the position of the device. It gives Web content access to the location of the device. This allows a Web site or app to offer customized results based on the user's location.
12548  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation)
12549  */
12550 interface Geolocation {
12551     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/clearWatch) */
12552     clearWatch(watchId: number): void;
12553     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/getCurrentPosition) */
12554     getCurrentPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback | null, options?: PositionOptions): void;
12555     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/watchPosition) */
12556     watchPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback | null, options?: PositionOptions): number;
12559 declare var Geolocation: {
12560     prototype: Geolocation;
12561     new(): Geolocation;
12562     isInstance(obj): obj is Geolocation;
12566  * Available only in secure contexts.
12568  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates)
12569  */
12570 interface GeolocationCoordinates {
12571     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/accuracy) */
12572     readonly accuracy: number;
12573     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/altitude) */
12574     readonly altitude: number | null;
12575     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/altitudeAccuracy) */
12576     readonly altitudeAccuracy: number | null;
12577     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/heading) */
12578     readonly heading: number | null;
12579     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/latitude) */
12580     readonly latitude: number;
12581     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/longitude) */
12582     readonly longitude: number;
12583     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/speed) */
12584     readonly speed: number | null;
12587 declare var GeolocationCoordinates: {
12588     prototype: GeolocationCoordinates;
12589     new(): GeolocationCoordinates;
12590     isInstance(obj): obj is GeolocationCoordinates;
12594  * Available only in secure contexts.
12596  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition)
12597  */
12598 interface GeolocationPosition {
12599     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/coords) */
12600     readonly coords: GeolocationCoordinates;
12601     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/timestamp) */
12602     readonly timestamp: EpochTimeStamp;
12605 declare var GeolocationPosition: {
12606     prototype: GeolocationPosition;
12607     new(): GeolocationPosition;
12608     isInstance(obj): obj is GeolocationPosition;
12611 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError) */
12612 interface GeolocationPositionError {
12613     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError/code) */
12614     readonly code: number;
12615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError/message) */
12616     readonly message: string;
12617     readonly PERMISSION_DENIED: 1;
12618     readonly POSITION_UNAVAILABLE: 2;
12619     readonly TIMEOUT: 3;
12622 declare var GeolocationPositionError: {
12623     prototype: GeolocationPositionError;
12624     new(): GeolocationPositionError;
12625     readonly PERMISSION_DENIED: 1;
12626     readonly POSITION_UNAVAILABLE: 2;
12627     readonly TIMEOUT: 3;
12628     isInstance(obj): obj is GeolocationPositionError;
12631 interface GeometryUtils {
12632     convertPointFromNode(point: DOMPointInit, from: GeometryNode, options?: ConvertCoordinateOptions): DOMPoint;
12633     convertQuadFromNode(quad: DOMQuad, from: GeometryNode, options?: ConvertCoordinateOptions): DOMQuad;
12634     convertRectFromNode(rect: DOMRectReadOnly, from: GeometryNode, options?: ConvertCoordinateOptions): DOMQuad;
12635     getBoxQuads(options?: BoxQuadOptions): DOMQuad[];
12636     getBoxQuadsFromWindowOrigin(options?: BoxQuadOptions): DOMQuad[];
12639 interface GetUserMediaRequest {
12640     readonly callID: string;
12641     readonly devices: nsIMediaDevice[];
12642     readonly innerWindowID: number;
12643     readonly isHandlingUserInput: boolean;
12644     readonly isSecure: boolean;
12645     readonly mediaSource: string;
12646     readonly rawID: string;
12647     readonly type: GetUserMediaRequestType;
12648     readonly windowID: number;
12649     getAudioOutputOptions(): AudioOutputOptions;
12650     getConstraints(): MediaStreamConstraints;
12653 interface GleanBoolean extends GleanMetric {
12654     set(value: boolean): void;
12655     testGetValue(aPingName?: UTF8String): boolean | null;
12658 declare var GleanBoolean: {
12659     prototype: GleanBoolean;
12660     new(): GleanBoolean;
12661     isInstance(obj): obj is GleanBoolean;
12664 interface GleanCategory {
12665     [identifier: string]: GleanMetric;
12668 declare var GleanCategory: {
12669     prototype: GleanCategory;
12670     new(): GleanCategory;
12671     isInstance(obj): obj is GleanCategory;
12674 interface GleanCounter extends GleanMetric {
12675     add(aAmount?: number): void;
12676     testGetValue(aPingName?: UTF8String): number | null;
12679 declare var GleanCounter: {
12680     prototype: GleanCounter;
12681     new(): GleanCounter;
12682     isInstance(obj): obj is GleanCounter;
12685 interface GleanCustomDistribution extends GleanMetric {
12686     accumulateSamples(aSamples: number[]): void;
12687     testGetValue(aPingName?: UTF8String): GleanDistributionData | null;
12690 declare var GleanCustomDistribution: {
12691     prototype: GleanCustomDistribution;
12692     new(): GleanCustomDistribution;
12693     isInstance(obj): obj is GleanCustomDistribution;
12696 interface GleanDatetime extends GleanMetric {
12697     set(aValue?: number): void;
12698     testGetValue(aPingName?: UTF8String): any;
12701 declare var GleanDatetime: {
12702     prototype: GleanDatetime;
12703     new(): GleanDatetime;
12704     isInstance(obj): obj is GleanDatetime;
12707 interface GleanDenominator extends GleanMetric {
12708     add(aAmount?: number): void;
12709     testGetValue(aPingName?: UTF8String): number | null;
12712 declare var GleanDenominator: {
12713     prototype: GleanDenominator;
12714     new(): GleanDenominator;
12715     isInstance(obj): obj is GleanDenominator;
12718 interface GleanEvent extends GleanMetric {
12719     record(aExtra?: Record<UTF8String, UTF8String | null>): void;
12720     testGetValue(aPingName?: UTF8String): GleanEventRecord[] | null;
12723 declare var GleanEvent: {
12724     prototype: GleanEvent;
12725     new(): GleanEvent;
12726     isInstance(obj): obj is GleanEvent;
12729 interface GleanImpl {
12730     [identifier: string]: GleanCategory;
12733 declare var GleanImpl: {
12734     prototype: GleanImpl;
12735     new(): GleanImpl;
12736     isInstance(obj): obj is GleanImpl;
12739 interface GleanLabeled {
12740     [identifier: string]: GleanMetric;
12743 declare var GleanLabeled: {
12744     prototype: GleanLabeled;
12745     new(): GleanLabeled;
12746     isInstance(obj): obj is GleanLabeled;
12749 interface GleanMemoryDistribution extends GleanMetric {
12750     accumulate(aSample: number): void;
12751     testGetValue(aPingName?: UTF8String): GleanDistributionData | null;
12754 declare var GleanMemoryDistribution: {
12755     prototype: GleanMemoryDistribution;
12756     new(): GleanMemoryDistribution;
12757     isInstance(obj): obj is GleanMemoryDistribution;
12760 interface GleanMetric {
12763 declare var GleanMetric: {
12764     prototype: GleanMetric;
12765     new(): GleanMetric;
12766     isInstance(obj): obj is GleanMetric;
12769 interface GleanNumerator extends GleanMetric {
12770     addToNumerator(aAmount?: number): void;
12771     testGetValue(aPingName?: UTF8String): GleanRateData | null;
12774 declare var GleanNumerator: {
12775     prototype: GleanNumerator;
12776     new(): GleanNumerator;
12777     isInstance(obj): obj is GleanNumerator;
12780 interface GleanPingsImpl {
12781     [identifier: string]: nsIGleanPing;
12784 declare var GleanPingsImpl: {
12785     prototype: GleanPingsImpl;
12786     new(): GleanPingsImpl;
12787     isInstance(obj): obj is GleanPingsImpl;
12790 interface GleanQuantity extends GleanMetric {
12791     set(aValue: number): void;
12792     testGetValue(aPingName?: UTF8String): number | null;
12795 declare var GleanQuantity: {
12796     prototype: GleanQuantity;
12797     new(): GleanQuantity;
12798     isInstance(obj): obj is GleanQuantity;
12801 interface GleanRate extends GleanMetric {
12802     addToDenominator(aAmount?: number): void;
12803     addToNumerator(aAmount?: number): void;
12804     testGetValue(aPingName?: UTF8String): GleanRateData | null;
12807 declare var GleanRate: {
12808     prototype: GleanRate;
12809     new(): GleanRate;
12810     isInstance(obj): obj is GleanRate;
12813 interface GleanString extends GleanMetric {
12814     set(aValue: UTF8String | null): void;
12815     testGetValue(aPingName?: UTF8String): UTF8String | null;
12818 declare var GleanString: {
12819     prototype: GleanString;
12820     new(): GleanString;
12821     isInstance(obj): obj is GleanString;
12824 interface GleanStringList extends GleanMetric {
12825     add(value: UTF8String): void;
12826     set(aValue: UTF8String[]): void;
12827     testGetValue(aPingName?: UTF8String): UTF8String[] | null;
12830 declare var GleanStringList: {
12831     prototype: GleanStringList;
12832     new(): GleanStringList;
12833     isInstance(obj): obj is GleanStringList;
12836 interface GleanText extends GleanMetric {
12837     set(aValue: UTF8String): void;
12838     testGetValue(aPingName?: UTF8String): UTF8String | null;
12841 declare var GleanText: {
12842     prototype: GleanText;
12843     new(): GleanText;
12844     isInstance(obj): obj is GleanText;
12847 interface GleanTimespan extends GleanMetric {
12848     cancel(): void;
12849     setRaw(aDuration: number): void;
12850     start(): void;
12851     stop(): void;
12852     testGetValue(aPingName?: UTF8String): number | null;
12855 declare var GleanTimespan: {
12856     prototype: GleanTimespan;
12857     new(): GleanTimespan;
12858     isInstance(obj): obj is GleanTimespan;
12861 interface GleanTimingDistribution extends GleanMetric {
12862     cancel(aId: number): void;
12863     start(): number;
12864     stopAndAccumulate(aId: number): void;
12865     testAccumulateRawMillis(aSample: number): void;
12866     testGetValue(aPingName?: UTF8String): GleanDistributionData | null;
12869 declare var GleanTimingDistribution: {
12870     prototype: GleanTimingDistribution;
12871     new(): GleanTimingDistribution;
12872     isInstance(obj): obj is GleanTimingDistribution;
12875 interface GleanUrl extends GleanMetric {
12876     set(aValue: UTF8String): void;
12877     testGetValue(aPingName?: UTF8String): UTF8String | null;
12880 declare var GleanUrl: {
12881     prototype: GleanUrl;
12882     new(): GleanUrl;
12883     isInstance(obj): obj is GleanUrl;
12886 interface GleanUuid extends GleanMetric {
12887     generateAndSet(): void;
12888     set(aValue: UTF8String): void;
12889     testGetValue(aPingName?: UTF8String): UTF8String | null;
12892 declare var GleanUuid: {
12893     prototype: GleanUuid;
12894     new(): GleanUuid;
12895     isInstance(obj): obj is GleanUuid;
12898 interface GlobalCrypto {
12899     readonly crypto: Crypto;
12902 interface GlobalEventHandlersEventMap {
12903     "abort": Event;
12904     "animationcancel": Event;
12905     "animationend": Event;
12906     "animationiteration": Event;
12907     "animationstart": Event;
12908     "auxclick": Event;
12909     "beforeinput": Event;
12910     "beforetoggle": Event;
12911     "blur": Event;
12912     "cancel": Event;
12913     "canplay": Event;
12914     "canplaythrough": Event;
12915     "change": Event;
12916     "click": Event;
12917     "close": Event;
12918     "contextmenu": Event;
12919     "copy": Event;
12920     "cuechange": Event;
12921     "cut": Event;
12922     "dblclick": Event;
12923     "drag": Event;
12924     "dragend": Event;
12925     "dragenter": Event;
12926     "dragexit": Event;
12927     "dragleave": Event;
12928     "dragover": Event;
12929     "dragstart": Event;
12930     "drop": Event;
12931     "durationchange": Event;
12932     "emptied": Event;
12933     "ended": Event;
12934     "focus": Event;
12935     "formdata": Event;
12936     "gotpointercapture": Event;
12937     "input": Event;
12938     "invalid": Event;
12939     "keydown": Event;
12940     "keypress": Event;
12941     "keyup": Event;
12942     "load": Event;
12943     "loadeddata": Event;
12944     "loadedmetadata": Event;
12945     "loadstart": Event;
12946     "lostpointercapture": Event;
12947     "mousedown": Event;
12948     "mouseenter": Event;
12949     "mouseleave": Event;
12950     "mousemove": Event;
12951     "mouseout": Event;
12952     "mouseover": Event;
12953     "mouseup": Event;
12954     "mozfullscreenchange": Event;
12955     "mozfullscreenerror": Event;
12956     "paste": Event;
12957     "pause": Event;
12958     "play": Event;
12959     "playing": Event;
12960     "pointercancel": Event;
12961     "pointerdown": Event;
12962     "pointerenter": Event;
12963     "pointerleave": Event;
12964     "pointermove": Event;
12965     "pointerout": Event;
12966     "pointerover": Event;
12967     "pointerup": Event;
12968     "progress": Event;
12969     "ratechange": Event;
12970     "reset": Event;
12971     "resize": Event;
12972     "scroll": Event;
12973     "scrollend": Event;
12974     "securitypolicyviolation": Event;
12975     "seeked": Event;
12976     "seeking": Event;
12977     "select": Event;
12978     "selectionchange": Event;
12979     "selectstart": Event;
12980     "slotchange": Event;
12981     "stalled": Event;
12982     "submit": Event;
12983     "suspend": Event;
12984     "timeupdate": Event;
12985     "toggle": Event;
12986     "transitioncancel": Event;
12987     "transitionend": Event;
12988     "transitionrun": Event;
12989     "transitionstart": Event;
12990     "volumechange": Event;
12991     "waiting": Event;
12992     "webkitanimationend": Event;
12993     "webkitanimationiteration": Event;
12994     "webkitanimationstart": Event;
12995     "webkittransitionend": Event;
12996     "wheel": Event;
12999 interface GlobalEventHandlers {
13000     /**
13001      * Fires when the user aborts the download.
13002      * @param ev The event.
13003      *
13004      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/abort_event)
13005      */
13006     onabort: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13007     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationcancel_event) */
13008     onanimationcancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13009     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event) */
13010     onanimationend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13011     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event) */
13012     onanimationiteration: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13013     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event) */
13014     onanimationstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13015     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/auxclick_event) */
13016     onauxclick: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13017     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/beforeinput_event) */
13018     onbeforeinput: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13019     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/beforetoggle_event) */
13020     onbeforetoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13021     /**
13022      * Fires when the object loses the input focus.
13023      * @param ev The focus event.
13024      *
13025      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/blur_event)
13026      */
13027     onblur: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13028     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/cancel_event) */
13029     oncancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13030     /**
13031      * Occurs when playback is possible, but would require further buffering.
13032      * @param ev The event.
13033      *
13034      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplay_event)
13035      */
13036     oncanplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13037     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplaythrough_event) */
13038     oncanplaythrough: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13039     /**
13040      * Fires when the contents of the object or selection have changed.
13041      * @param ev The event.
13042      *
13043      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/change_event)
13044      */
13045     onchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13046     /**
13047      * Fires when the user clicks the left mouse button on the object
13048      * @param ev The mouse event.
13049      *
13050      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/click_event)
13051      */
13052     onclick: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13053     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close_event) */
13054     onclose: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13055     /**
13056      * Fires when the user clicks the right mouse button in the client area, opening the context menu.
13057      * @param ev The mouse event.
13058      *
13059      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/contextmenu_event)
13060      */
13061     oncontextmenu: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13062     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/copy_event) */
13063     oncopy: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13064     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/cuechange_event) */
13065     oncuechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13066     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/cut_event) */
13067     oncut: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13068     /**
13069      * Fires when the user double-clicks the object.
13070      * @param ev The mouse event.
13071      *
13072      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/dblclick_event)
13073      */
13074     ondblclick: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13075     /**
13076      * Fires on the source object continuously during a drag operation.
13077      * @param ev The event.
13078      *
13079      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drag_event)
13080      */
13081     ondrag: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13082     /**
13083      * Fires on the source object when the user releases the mouse at the close of a drag operation.
13084      * @param ev The event.
13085      *
13086      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragend_event)
13087      */
13088     ondragend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13089     /**
13090      * Fires on the target element when the user drags the object to a valid drop target.
13091      * @param ev The drag event.
13092      *
13093      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragenter_event)
13094      */
13095     ondragenter: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13096     ondragexit: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13097     /**
13098      * Fires on the target object when the user moves the mouse out of a valid drop target during a drag operation.
13099      * @param ev The drag event.
13100      *
13101      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragleave_event)
13102      */
13103     ondragleave: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13104     /**
13105      * Fires on the target element continuously while the user drags the object over a valid drop target.
13106      * @param ev The event.
13107      *
13108      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragover_event)
13109      */
13110     ondragover: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13111     /**
13112      * Fires on the source object when the user starts to drag a text selection or selected object.
13113      * @param ev The event.
13114      *
13115      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragstart_event)
13116      */
13117     ondragstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13118     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drop_event) */
13119     ondrop: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13120     /**
13121      * Occurs when the duration attribute is updated.
13122      * @param ev The event.
13123      *
13124      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/durationchange_event)
13125      */
13126     ondurationchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13127     /**
13128      * Occurs when the media element is reset to its initial state.
13129      * @param ev The event.
13130      *
13131      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/emptied_event)
13132      */
13133     onemptied: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13134     /**
13135      * Occurs when the end of playback is reached.
13136      * @param ev The event
13137      *
13138      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ended_event)
13139      */
13140     onended: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13141     /**
13142      * Fires when an error occurs during object loading.
13143      * @param ev The event.
13144      */
13145     onerror: OnErrorEventHandler;
13146     /**
13147      * Fires when the object receives focus.
13148      * @param ev The event.
13149      *
13150      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/focus_event)
13151      */
13152     onfocus: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13153     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/formdata_event) */
13154     onformdata: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13155     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/gotpointercapture_event) */
13156     ongotpointercapture: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13157     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/input_event) */
13158     oninput: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13159     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/invalid_event) */
13160     oninvalid: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13161     /**
13162      * Fires when the user presses a key.
13163      * @param ev The keyboard event
13164      *
13165      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keydown_event)
13166      */
13167     onkeydown: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13168     /**
13169      * Fires when the user presses an alphanumeric key.
13170      * @param ev The event.
13171      * @deprecated
13172      *
13173      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keypress_event)
13174      */
13175     onkeypress: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13176     /**
13177      * Fires when the user releases a key.
13178      * @param ev The keyboard event
13179      *
13180      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keyup_event)
13181      */
13182     onkeyup: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13183     /**
13184      * Fires immediately after the browser loads the object.
13185      * @param ev The event.
13186      *
13187      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGElement/load_event)
13188      */
13189     onload: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13190     /**
13191      * Occurs when media data is loaded at the current playback position.
13192      * @param ev The event.
13193      *
13194      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadeddata_event)
13195      */
13196     onloadeddata: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13197     /**
13198      * Occurs when the duration and dimensions of the media have been determined.
13199      * @param ev The event.
13200      *
13201      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadedmetadata_event)
13202      */
13203     onloadedmetadata: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13204     /**
13205      * Occurs when Internet Explorer begins looking for media data.
13206      * @param ev The event.
13207      *
13208      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadstart_event)
13209      */
13210     onloadstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13211     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/lostpointercapture_event) */
13212     onlostpointercapture: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13213     /**
13214      * Fires when the user clicks the object with either mouse button.
13215      * @param ev The mouse event.
13216      *
13217      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousedown_event)
13218      */
13219     onmousedown: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13220     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseenter_event) */
13221     onmouseenter: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13222     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseleave_event) */
13223     onmouseleave: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13224     /**
13225      * Fires when the user moves the mouse over the object.
13226      * @param ev The mouse event.
13227      *
13228      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousemove_event)
13229      */
13230     onmousemove: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13231     /**
13232      * Fires when the user moves the mouse pointer outside the boundaries of the object.
13233      * @param ev The mouse event.
13234      *
13235      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseout_event)
13236      */
13237     onmouseout: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13238     /**
13239      * Fires when the user moves the mouse pointer into the object.
13240      * @param ev The mouse event.
13241      *
13242      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseover_event)
13243      */
13244     onmouseover: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13245     /**
13246      * Fires when the user releases a mouse button while the mouse is over the object.
13247      * @param ev The mouse event.
13248      *
13249      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseup_event)
13250      */
13251     onmouseup: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13252     onmozfullscreenchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13253     onmozfullscreenerror: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13254     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/paste_event) */
13255     onpaste: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13256     /**
13257      * Occurs when playback is paused.
13258      * @param ev The event.
13259      *
13260      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/pause_event)
13261      */
13262     onpause: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13263     /**
13264      * Occurs when the play method is requested.
13265      * @param ev The event.
13266      *
13267      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/play_event)
13268      */
13269     onplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13270     /**
13271      * Occurs when the audio or video has started playing.
13272      * @param ev The event.
13273      *
13274      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playing_event)
13275      */
13276     onplaying: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13277     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointercancel_event) */
13278     onpointercancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13279     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerdown_event) */
13280     onpointerdown: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13281     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerenter_event) */
13282     onpointerenter: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13283     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerleave_event) */
13284     onpointerleave: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13285     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointermove_event) */
13286     onpointermove: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13287     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerout_event) */
13288     onpointerout: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13289     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerover_event) */
13290     onpointerover: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13291     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerup_event) */
13292     onpointerup: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13293     /**
13294      * Occurs to indicate progress while downloading media data.
13295      * @param ev The event.
13296      *
13297      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/progress_event)
13298      */
13299     onprogress: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13300     /**
13301      * Occurs when the playback rate is increased or decreased.
13302      * @param ev The event.
13303      *
13304      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ratechange_event)
13305      */
13306     onratechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13307     /**
13308      * Fires when the user resets a form.
13309      * @param ev The event.
13310      *
13311      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset_event)
13312      */
13313     onreset: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13314     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/resize_event) */
13315     onresize: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13316     /**
13317      * Fires when the user repositions the scroll box in the scroll bar on the object.
13318      * @param ev The event.
13319      *
13320      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scroll_event)
13321      */
13322     onscroll: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13323     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollend_event) */
13324     onscrollend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13325     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/securitypolicyviolation_event) */
13326     onsecuritypolicyviolation: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13327     /**
13328      * Occurs when the seek operation ends.
13329      * @param ev The event.
13330      *
13331      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeked_event)
13332      */
13333     onseeked: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13334     /**
13335      * Occurs when the current playback position is moved.
13336      * @param ev The event.
13337      *
13338      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeking_event)
13339      */
13340     onseeking: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13341     /**
13342      * Fires when the current selection changes.
13343      * @param ev The event.
13344      *
13345      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select_event)
13346      */
13347     onselect: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13348     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/selectionchange_event) */
13349     onselectionchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13350     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/selectstart_event) */
13351     onselectstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13352     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/slotchange_event) */
13353     onslotchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13354     /**
13355      * Occurs when the download has stopped.
13356      * @param ev The event.
13357      *
13358      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/stalled_event)
13359      */
13360     onstalled: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13361     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit_event) */
13362     onsubmit: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13363     /**
13364      * Occurs if the load operation has been intentionally halted.
13365      * @param ev The event.
13366      *
13367      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/suspend_event)
13368      */
13369     onsuspend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13370     /**
13371      * Occurs to indicate the current playback position.
13372      * @param ev The event.
13373      *
13374      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/timeupdate_event)
13375      */
13376     ontimeupdate: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13377     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/toggle_event) */
13378     ontoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13379     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitioncancel_event) */
13380     ontransitioncancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13381     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event) */
13382     ontransitionend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13383     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionrun_event) */
13384     ontransitionrun: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13385     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionstart_event) */
13386     ontransitionstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13387     /**
13388      * Occurs when the volume is changed, or playback is muted or unmuted.
13389      * @param ev The event.
13390      *
13391      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volumechange_event)
13392      */
13393     onvolumechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13394     /**
13395      * Occurs when playback stops because the next frame of a video resource is not available.
13396      * @param ev The event.
13397      *
13398      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/waiting_event)
13399      */
13400     onwaiting: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13401     /**
13402      * @deprecated This is a legacy alias of `onanimationend`.
13403      *
13404      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event)
13405      */
13406     onwebkitanimationend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13407     /**
13408      * @deprecated This is a legacy alias of `onanimationiteration`.
13409      *
13410      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event)
13411      */
13412     onwebkitanimationiteration: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13413     /**
13414      * @deprecated This is a legacy alias of `onanimationstart`.
13415      *
13416      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event)
13417      */
13418     onwebkitanimationstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13419     /**
13420      * @deprecated This is a legacy alias of `ontransitionend`.
13421      *
13422      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event)
13423      */
13424     onwebkittransitionend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13425     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/wheel_event) */
13426     onwheel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
13427     addEventListener<K extends keyof GlobalEventHandlersEventMap>(type: K, listener: (this: GlobalEventHandlers, ev: GlobalEventHandlersEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13428     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13429     removeEventListener<K extends keyof GlobalEventHandlersEventMap>(type: K, listener: (this: GlobalEventHandlers, ev: GlobalEventHandlersEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13430     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13433 interface GlobalPrivacyControl {
13434     readonly globalPrivacyControl: boolean;
13437 interface GlobalProcessScriptLoader {
13438     readonly initialProcessData: any;
13439     readonly sharedData: MozWritableSharedMap;
13442 interface Grid {
13443     readonly areas: GridArea[];
13444     readonly cols: GridDimension;
13445     readonly rows: GridDimension;
13448 declare var Grid: {
13449     prototype: Grid;
13450     new(): Grid;
13451     isInstance(obj): obj is Grid;
13454 interface GridArea {
13455     readonly columnEnd: number;
13456     readonly columnStart: number;
13457     readonly name: string;
13458     readonly rowEnd: number;
13459     readonly rowStart: number;
13460     readonly type: GridDeclaration;
13463 declare var GridArea: {
13464     prototype: GridArea;
13465     new(): GridArea;
13466     isInstance(obj): obj is GridArea;
13469 interface GridDimension {
13470     readonly lines: GridLines;
13471     readonly tracks: GridTracks;
13474 declare var GridDimension: {
13475     prototype: GridDimension;
13476     new(): GridDimension;
13477     isInstance(obj): obj is GridDimension;
13480 interface GridLine {
13481     readonly breadth: number;
13482     readonly names: string[];
13483     readonly negativeNumber: number;
13484     readonly number: number;
13485     readonly start: number;
13486     readonly type: GridDeclaration;
13489 declare var GridLine: {
13490     prototype: GridLine;
13491     new(): GridLine;
13492     isInstance(obj): obj is GridLine;
13495 interface GridLines {
13496     readonly length: number;
13497     item(index: number): GridLine | null;
13498     [index: number]: GridLine;
13501 declare var GridLines: {
13502     prototype: GridLines;
13503     new(): GridLines;
13504     isInstance(obj): obj is GridLines;
13507 interface GridTrack {
13508     readonly breadth: number;
13509     readonly start: number;
13510     readonly state: GridTrackState;
13511     readonly type: GridDeclaration;
13514 declare var GridTrack: {
13515     prototype: GridTrack;
13516     new(): GridTrack;
13517     isInstance(obj): obj is GridTrack;
13520 interface GridTracks {
13521     readonly length: number;
13522     item(index: number): GridTrack | null;
13523     [index: number]: GridTrack;
13526 declare var GridTracks: {
13527     prototype: GridTracks;
13528     new(): GridTracks;
13529     isInstance(obj): obj is GridTracks;
13532 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection) */
13533 interface HTMLAllCollection {
13534     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/length) */
13535     readonly length: number;
13536     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/item) */
13537     item(nameOrIndex?: string): HTMLCollection | Element | null;
13538     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/namedItem) */
13539     namedItem(name: string): HTMLCollection | Element | null;
13540     [index: number]: Element;
13543 declare var HTMLAllCollection: {
13544     prototype: HTMLAllCollection;
13545     new(): HTMLAllCollection;
13546     isInstance(obj): obj is HTMLAllCollection;
13550  * Hyperlink elements and provides special properties and methods (beyond those of the regular HTMLElement object interface that they inherit from) for manipulating the layout and presentation of such elements.
13552  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement)
13553  */
13554 interface HTMLAnchorElement extends HTMLElement, HTMLHyperlinkElementUtils {
13555     /**
13556      * Sets or retrieves the character set used to encode the object.
13557      * @deprecated
13558      *
13559      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/charset)
13560      */
13561     charset: string;
13562     /**
13563      * Sets or retrieves the coordinates of the object.
13564      * @deprecated
13565      *
13566      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/coords)
13567      */
13568     coords: string;
13569     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/download) */
13570     download: string;
13571     /**
13572      * Sets or retrieves the language code of the object.
13573      *
13574      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hreflang)
13575      */
13576     hreflang: string;
13577     /**
13578      * Sets or retrieves the shape of the object.
13579      * @deprecated
13580      *
13581      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/name)
13582      */
13583     name: string;
13584     ping: string;
13585     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/referrerPolicy) */
13586     referrerPolicy: string;
13587     /**
13588      * Sets or retrieves the relationship between the object and the destination of the link.
13589      *
13590      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/rel)
13591      */
13592     rel: string;
13593     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/relList) */
13594     readonly relList: DOMTokenList;
13595     /**
13596      * Sets or retrieves the relationship between the object and the destination of the link.
13597      * @deprecated
13598      *
13599      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/rev)
13600      */
13601     rev: string;
13602     /**
13603      * Sets or retrieves the shape of the object.
13604      * @deprecated
13605      *
13606      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/shape)
13607      */
13608     shape: string;
13609     /**
13610      * Sets or retrieves the window or frame at which to target content.
13611      *
13612      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/target)
13613      */
13614     target: string;
13615     /**
13616      * Retrieves or sets the text of the object as a string.
13617      *
13618      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/text)
13619      */
13620     text: string;
13621     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/type) */
13622     type: string;
13623     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAnchorElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13624     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13625     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAnchorElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13626     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13629 declare var HTMLAnchorElement: {
13630     prototype: HTMLAnchorElement;
13631     new(): HTMLAnchorElement;
13632     isInstance(obj): obj is HTMLAnchorElement;
13636  * Provides special properties and methods (beyond those of the regular object HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <area> elements.
13638  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement)
13639  */
13640 interface HTMLAreaElement extends HTMLElement, HTMLHyperlinkElementUtils {
13641     /**
13642      * Sets or retrieves a text alternative to the graphic.
13643      *
13644      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/alt)
13645      */
13646     alt: string;
13647     /**
13648      * Sets or retrieves the coordinates of the object.
13649      *
13650      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/coords)
13651      */
13652     coords: string;
13653     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/download) */
13654     download: string;
13655     /**
13656      * Sets or gets whether clicks in this region cause action.
13657      * @deprecated
13658      *
13659      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/noHref)
13660      */
13661     noHref: boolean;
13662     ping: string;
13663     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/referrerPolicy) */
13664     referrerPolicy: string;
13665     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/rel) */
13666     rel: string;
13667     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/relList) */
13668     readonly relList: DOMTokenList;
13669     /**
13670      * Sets or retrieves the shape of the object.
13671      *
13672      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/shape)
13673      */
13674     shape: string;
13675     /**
13676      * Sets or retrieves the window or frame at which to target content.
13677      *
13678      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/target)
13679      */
13680     target: string;
13681     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13682     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13683     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13684     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13687 declare var HTMLAreaElement: {
13688     prototype: HTMLAreaElement;
13689     new(): HTMLAreaElement;
13690     isInstance(obj): obj is HTMLAreaElement;
13694  * Provides access to the properties of <audio> elements, as well as methods to manipulate them. It derives from the HTMLMediaElement interface.
13696  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAudioElement)
13697  */
13698 interface HTMLAudioElement extends HTMLMediaElement {
13699     addEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLAudioElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13700     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13701     removeEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLAudioElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13702     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13705 declare var HTMLAudioElement: {
13706     prototype: HTMLAudioElement;
13707     new(): HTMLAudioElement;
13708     isInstance(obj): obj is HTMLAudioElement;
13712  * A HTML line break element (<br>). It inherits from HTMLElement.
13714  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBRElement)
13715  */
13716 interface HTMLBRElement extends HTMLElement {
13717     /**
13718      * Sets or retrieves the side on which floating objects are not to be positioned when any IHTMLBlockElement is inserted into the document.
13719      * @deprecated
13720      *
13721      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBRElement/clear)
13722      */
13723     clear: string;
13724     readonly isPaddingForEmptyEditor: boolean;
13725     readonly isPaddingForEmptyLastLine: boolean;
13726     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13727     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13728     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13729     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13732 declare var HTMLBRElement: {
13733     prototype: HTMLBRElement;
13734     new(): HTMLBRElement;
13735     isInstance(obj): obj is HTMLBRElement;
13739  * Contains the base URI for a document. This object inherits all of the properties and methods as described in the HTMLElement interface.
13741  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement)
13742  */
13743 interface HTMLBaseElement extends HTMLElement {
13744     /**
13745      * Gets or sets the baseline URL on which relative links are based.
13746      *
13747      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/href)
13748      */
13749     href: string;
13750     /**
13751      * Sets or retrieves the window or frame at which to target content.
13752      *
13753      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/target)
13754      */
13755     target: string;
13756     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBaseElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13757     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13758     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBaseElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13759     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13762 declare var HTMLBaseElement: {
13763     prototype: HTMLBaseElement;
13764     new(): HTMLBaseElement;
13765     isInstance(obj): obj is HTMLBaseElement;
13768 interface HTMLBodyElementEventMap extends HTMLElementEventMap, WindowEventHandlersEventMap {
13772  * Provides special properties (beyond those inherited from the regular HTMLElement interface) for manipulating <body> elements.
13774  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement)
13775  */
13776 interface HTMLBodyElement extends HTMLElement, WindowEventHandlers {
13777     /**
13778      * @deprecated
13779      *
13780      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/aLink)
13781      */
13782     aLink: string;
13783     /**
13784      * @deprecated
13785      *
13786      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/background)
13787      */
13788     background: string;
13789     /**
13790      * @deprecated
13791      *
13792      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/bgColor)
13793      */
13794     bgColor: string;
13795     /**
13796      * @deprecated
13797      *
13798      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/link)
13799      */
13800     link: string;
13801     /**
13802      * @deprecated
13803      *
13804      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/text)
13805      */
13806     text: string;
13807     /**
13808      * @deprecated
13809      *
13810      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/vLink)
13811      */
13812     vLink: string;
13813     addEventListener<K extends keyof HTMLBodyElementEventMap>(type: K, listener: (this: HTMLBodyElement, ev: HTMLBodyElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13814     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13815     removeEventListener<K extends keyof HTMLBodyElementEventMap>(type: K, listener: (this: HTMLBodyElement, ev: HTMLBodyElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13816     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13819 declare var HTMLBodyElement: {
13820     prototype: HTMLBodyElement;
13821     new(): HTMLBodyElement;
13822     isInstance(obj): obj is HTMLBodyElement;
13826  * Provides properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <button> elements.
13828  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement)
13829  */
13830 interface HTMLButtonElement extends HTMLElement, InvokerElement, PopoverInvokerElement {
13831     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/disabled) */
13832     disabled: boolean;
13833     /**
13834      * Retrieves a reference to the form that the object is embedded in.
13835      *
13836      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/form)
13837      */
13838     readonly form: HTMLFormElement | null;
13839     /**
13840      * Overrides the action attribute (where the data on a form is sent) on the parent form element.
13841      *
13842      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formAction)
13843      */
13844     formAction: string;
13845     /**
13846      * Used to override the encoding (formEnctype attribute) specified on the form element.
13847      *
13848      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formEnctype)
13849      */
13850     formEnctype: string;
13851     /**
13852      * Overrides the submit method attribute previously specified on a form element.
13853      *
13854      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formMethod)
13855      */
13856     formMethod: string;
13857     /**
13858      * Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a "save draft"-type submit option.
13859      *
13860      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formNoValidate)
13861      */
13862     formNoValidate: boolean;
13863     /**
13864      * Overrides the target attribute on a form element.
13865      *
13866      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formTarget)
13867      */
13868     formTarget: string;
13869     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/labels) */
13870     readonly labels: NodeList;
13871     /**
13872      * Sets or retrieves the name of the object.
13873      *
13874      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/name)
13875      */
13876     name: string;
13877     /**
13878      * Gets the classification and default behavior of the button.
13879      *
13880      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/type)
13881      */
13882     type: string;
13883     /**
13884      * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
13885      *
13886      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/validationMessage)
13887      */
13888     readonly validationMessage: string;
13889     /**
13890      * Returns a  ValidityState object that represents the validity states of an element.
13891      *
13892      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/validity)
13893      */
13894     readonly validity: ValidityState;
13895     /**
13896      * Sets or retrieves the default or selected value of the control.
13897      *
13898      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/value)
13899      */
13900     value: string;
13901     /**
13902      * Returns whether an element will successfully validate based on forms validation rules and constraints.
13903      *
13904      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/willValidate)
13905      */
13906     readonly willValidate: boolean;
13907     /** Returns whether a form will validate when it is submitted, without having to submit it. */
13908     checkValidity(): boolean;
13909     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/reportValidity) */
13910     reportValidity(): boolean;
13911     /**
13912      * Sets a custom error message that is displayed when a form is submitted.
13913      * @param error Sets a custom error message that is displayed when a form is submitted.
13914      */
13915     setCustomValidity(error: string): void;
13916     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLButtonElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13917     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13918     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLButtonElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13919     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13922 declare var HTMLButtonElement: {
13923     prototype: HTMLButtonElement;
13924     new(): HTMLButtonElement;
13925     isInstance(obj): obj is HTMLButtonElement;
13929  * Provides properties and methods for manipulating the layout and presentation of <canvas> elements. The HTMLCanvasElement interface also inherits the properties and methods of the HTMLElement interface.
13931  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement)
13932  */
13933 interface HTMLCanvasElement extends HTMLElement {
13934     /**
13935      * Gets or sets the height of a canvas element on a document.
13936      *
13937      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/height)
13938      */
13939     height: number;
13940     /**
13941      * @deprecated
13942      *
13943      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/mozOpaque)
13944      */
13945     mozOpaque: boolean;
13946     mozPrintCallback: PrintCallback | null;
13947     /**
13948      * Gets or sets the width of a canvas element on a document.
13949      *
13950      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/width)
13951      */
13952     width: number;
13953     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/captureStream) */
13954     captureStream(frameRate?: number): CanvasCaptureMediaStream;
13955     /**
13956      * Returns an object that provides methods and properties for drawing and manipulating images and graphics on a canvas element in a document. A context object includes information about colors, line widths, fonts, and other graphic parameters that can be drawn on a canvas.
13957      * @param contextId The identifier (ID) of the type of canvas to create. Internet Explorer 9 and Internet Explorer 10 support only a 2-D context using canvas.getContext("2d"); IE11 Preview also supports 3-D or WebGL context using canvas.getContext("experimental-webgl");
13958      *
13959      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/getContext)
13960      */
13961     getContext(contextId: string, contextOptions?: any): nsISupports | null;
13962     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/toBlob) */
13963     toBlob(callback: BlobCallback, type?: string, encoderOptions?: any): void;
13964     /**
13965      * Returns the content of the current canvas as an image that you can use as a source for another canvas or an HTML element.
13966      * @param type The standard MIME type for the image format to return. If you do not specify this parameter, the default value is a PNG format image.
13967      *
13968      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/toDataURL)
13969      */
13970     toDataURL(type?: string, encoderOptions?: any): string;
13971     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/transferControlToOffscreen) */
13972     transferControlToOffscreen(): OffscreenCanvas;
13973     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
13974     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
13975     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
13976     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
13979 declare var HTMLCanvasElement: {
13980     prototype: HTMLCanvasElement;
13981     new(): HTMLCanvasElement;
13982     isInstance(obj): obj is HTMLCanvasElement;
13986  * A generic collection (array-like object similar to arguments) of elements (in document order) and offers methods and properties for selecting from the list.
13988  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection)
13989  */
13990 interface HTMLCollectionBase {
13991     /**
13992      * Sets or retrieves the number of objects in a collection.
13993      *
13994      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/length)
13995      */
13996     readonly length: number;
13997     /**
13998      * Retrieves an object from various collections.
13999      *
14000      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/item)
14001      */
14002     item(index: number): Element | null;
14003     [index: number]: Element;
14006 interface HTMLCollection extends HTMLCollectionBase {
14007     /**
14008      * Retrieves a select object or an object from an options collection.
14009      *
14010      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/namedItem)
14011      */
14012     namedItem(name: string): Element | null;
14015 declare var HTMLCollection: {
14016     prototype: HTMLCollection;
14017     new(): HTMLCollection;
14018     isInstance(obj): obj is HTMLCollection;
14022  * Provides special properties (beyond those of the regular HTMLElement interface it also has available to it by inheritance) for manipulating definition list (<dl>) elements.
14024  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDListElement)
14025  */
14026 interface HTMLDListElement extends HTMLElement {
14027     /**
14028      * @deprecated
14029      *
14030      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDListElement/compact)
14031      */
14032     compact: boolean;
14033     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14034     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14035     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14036     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14039 declare var HTMLDListElement: {
14040     prototype: HTMLDListElement;
14041     new(): HTMLDListElement;
14042     isInstance(obj): obj is HTMLDListElement;
14046  * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <data> elements.
14048  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataElement)
14049  */
14050 interface HTMLDataElement extends HTMLElement {
14051     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataElement/value) */
14052     value: string;
14053     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14054     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14055     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14056     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14059 declare var HTMLDataElement: {
14060     prototype: HTMLDataElement;
14061     new(): HTMLDataElement;
14062     isInstance(obj): obj is HTMLDataElement;
14066  * Provides special properties (beyond the HTMLElement object interface it also has available to it by inheritance) to manipulate <datalist> elements and their content.
14068  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataListElement)
14069  */
14070 interface HTMLDataListElement extends HTMLElement {
14071     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataListElement/options) */
14072     readonly options: HTMLCollection;
14073     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14074     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14075     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14076     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14079 declare var HTMLDataListElement: {
14080     prototype: HTMLDataListElement;
14081     new(): HTMLDataListElement;
14082     isInstance(obj): obj is HTMLDataListElement;
14085 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement) */
14086 interface HTMLDetailsElement extends HTMLElement {
14087     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/open) */
14088     open: boolean;
14089     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDetailsElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14090     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14091     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDetailsElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14092     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14095 declare var HTMLDetailsElement: {
14096     prototype: HTMLDetailsElement;
14097     new(): HTMLDetailsElement;
14098     isInstance(obj): obj is HTMLDetailsElement;
14101 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement) */
14102 interface HTMLDialogElement extends HTMLElement {
14103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/open) */
14104     open: boolean;
14105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/returnValue) */
14106     returnValue: string;
14107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close) */
14108     close(returnValue?: string): void;
14109     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/show) */
14110     show(): void;
14111     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/showModal) */
14112     showModal(): void;
14113     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDialogElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14114     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14115     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDialogElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14116     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14119 declare var HTMLDialogElement: {
14120     prototype: HTMLDialogElement;
14121     new(): HTMLDialogElement;
14122     isInstance(obj): obj is HTMLDialogElement;
14125 /** @deprecated */
14126 interface HTMLDirectoryElement extends HTMLElement {
14127     /** @deprecated */
14128     compact: boolean;
14129     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDirectoryElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14130     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14131     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDirectoryElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14132     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14135 /** @deprecated */
14136 declare var HTMLDirectoryElement: {
14137     prototype: HTMLDirectoryElement;
14138     new(): HTMLDirectoryElement;
14139     isInstance(obj): obj is HTMLDirectoryElement;
14143  * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <div> elements.
14145  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDivElement)
14146  */
14147 interface HTMLDivElement extends HTMLElement {
14148     /**
14149      * Sets or retrieves how the object is aligned with adjacent text.
14150      * @deprecated
14151      *
14152      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDivElement/align)
14153      */
14154     align: string;
14155     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14156     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14157     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14158     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14161 declare var HTMLDivElement: {
14162     prototype: HTMLDivElement;
14163     new(): HTMLDivElement;
14164     isInstance(obj): obj is HTMLDivElement;
14168  * The HTMLDocument property of Window objects is an alias that browsers expose for the Document interface object.
14170  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDocument)
14171  */
14172 interface HTMLDocument extends Document {
14173     addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: HTMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14174     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14175     removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: HTMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14176     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14177     [name: string]: any;
14180 declare var HTMLDocument: {
14181     prototype: HTMLDocument;
14182     new(): HTMLDocument;
14183     isInstance(obj): obj is HTMLDocument;
14186 interface HTMLElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap, OnErrorEventHandlerForNodesEventMap, TouchEventHandlersEventMap {
14190  * Any HTML element. Some elements directly implement this interface, while others implement it via an interface that inherits it.
14192  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement)
14193  */
14194 interface HTMLElement extends Element, ElementCSSInlineStyle, GlobalEventHandlers, HTMLOrForeignElement, OnErrorEventHandlerForNodes, TouchEventHandlers {
14195     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKey) */
14196     accessKey: string;
14197     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKeyLabel) */
14198     readonly accessKeyLabel: string;
14199     autocapitalize: string;
14200     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/contentEditable) */
14201     contentEditable: string;
14202     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dir) */
14203     dir: string;
14204     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/draggable) */
14205     draggable: boolean;
14206     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/enterKeyHint) */
14207     enterKeyHint: string;
14208     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidden) */
14209     hidden: boolean;
14210     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/inert) */
14211     inert: boolean;
14212     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/innerText) */
14213     innerText: string;
14214     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/inputMode) */
14215     inputMode: string;
14216     readonly internals: ElementInternals | null;
14217     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/isContentEditable) */
14218     readonly isContentEditable: boolean;
14219     readonly isFormAssociatedCustomElements: boolean;
14220     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/lang) */
14221     lang: string;
14222     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/nonce) */
14223     nonce: string;
14224     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetHeight) */
14225     readonly offsetHeight: number;
14226     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetLeft) */
14227     readonly offsetLeft: number;
14228     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetParent) */
14229     readonly offsetParent: Element | null;
14230     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetTop) */
14231     readonly offsetTop: number;
14232     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetWidth) */
14233     readonly offsetWidth: number;
14234     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/outerText) */
14235     outerText: string;
14236     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/popover) */
14237     popover: string | null;
14238     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/spellcheck) */
14239     spellcheck: boolean;
14240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/title) */
14241     title: string;
14242     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/translate) */
14243     translate: boolean;
14244     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/attachInternals) */
14245     attachInternals(): ElementInternals;
14246     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/click) */
14247     click(): void;
14248     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidePopover) */
14249     hidePopover(): void;
14250     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/showPopover) */
14251     showPopover(): void;
14252     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/togglePopover) */
14253     togglePopover(force?: boolean): boolean;
14254     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14255     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14256     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14257     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14260 declare var HTMLElement: {
14261     prototype: HTMLElement;
14262     new(): HTMLElement;
14263     isInstance(obj): obj is HTMLElement;
14267  * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <embed> elements.
14269  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement)
14270  */
14271 interface HTMLEmbedElement extends HTMLElement, MozFrameLoaderOwner, MozImageLoadingContent, MozObjectLoadingContent {
14272     /** @deprecated */
14273     align: string;
14274     /** Sets or retrieves the height of the object. */
14275     height: string;
14276     /**
14277      * Sets or retrieves the name of the object.
14278      * @deprecated
14279      */
14280     name: string;
14281     /** Sets or retrieves a URL to be loaded by the object. */
14282     src: string;
14283     type: string;
14284     /** Sets or retrieves the width of the object. */
14285     width: string;
14286     getSVGDocument(): Document | null;
14287     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLEmbedElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14288     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14289     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLEmbedElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14290     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14293 declare var HTMLEmbedElement: {
14294     prototype: HTMLEmbedElement;
14295     new(): HTMLEmbedElement;
14296     readonly UNKNOWN_REQUEST: -1;
14297     readonly CURRENT_REQUEST: 0;
14298     readonly PENDING_REQUEST: 1;
14299     readonly TYPE_LOADING: 0;
14300     readonly TYPE_IMAGE: 1;
14301     readonly TYPE_FALLBACK: 2;
14302     readonly TYPE_FAKE_PLUGIN: 3;
14303     readonly TYPE_DOCUMENT: 4;
14304     readonly TYPE_NULL: 5;
14305     isInstance(obj): obj is HTMLEmbedElement;
14308 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFencedFrameElement) */
14309 interface HTMLFencedFrameElement {
14312 declare var HTMLFencedFrameElement: {
14313     prototype: HTMLFencedFrameElement;
14314     new(): HTMLFencedFrameElement;
14315     isInstance(obj): obj is HTMLFencedFrameElement;
14319  * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <fieldset> elements.
14321  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement)
14322  */
14323 interface HTMLFieldSetElement extends HTMLElement {
14324     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/disabled) */
14325     disabled: boolean;
14326     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/elements) */
14327     readonly elements: HTMLCollection;
14328     /**
14329      * Retrieves a reference to the form that the object is embedded in.
14330      *
14331      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/form)
14332      */
14333     readonly form: HTMLFormElement | null;
14334     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/name) */
14335     name: string;
14336     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/type) */
14337     readonly type: string;
14338     /**
14339      * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
14340      *
14341      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/validationMessage)
14342      */
14343     readonly validationMessage: string;
14344     /**
14345      * Returns a  ValidityState object that represents the validity states of an element.
14346      *
14347      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/validity)
14348      */
14349     readonly validity: ValidityState;
14350     /**
14351      * Returns whether an element will successfully validate based on forms validation rules and constraints.
14352      *
14353      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/willValidate)
14354      */
14355     readonly willValidate: boolean;
14356     /** Returns whether a form will validate when it is submitted, without having to submit it. */
14357     checkValidity(): boolean;
14358     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/reportValidity) */
14359     reportValidity(): boolean;
14360     /**
14361      * Sets a custom error message that is displayed when a form is submitted.
14362      * @param error Sets a custom error message that is displayed when a form is submitted.
14363      */
14364     setCustomValidity(error: string): void;
14365     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFieldSetElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14366     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14367     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFieldSetElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14368     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14371 declare var HTMLFieldSetElement: {
14372     prototype: HTMLFieldSetElement;
14373     new(): HTMLFieldSetElement;
14374     isInstance(obj): obj is HTMLFieldSetElement;
14378  * Implements the document object model (DOM) representation of the font element. The HTML Font Element <font> defines the font size, font face and color of text.
14379  * @deprecated
14381  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement)
14382  */
14383 interface HTMLFontElement extends HTMLElement {
14384     /**
14385      * @deprecated
14386      *
14387      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/color)
14388      */
14389     color: string;
14390     /**
14391      * Sets or retrieves the current typeface family.
14392      * @deprecated
14393      *
14394      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/face)
14395      */
14396     face: string;
14397     /**
14398      * @deprecated
14399      *
14400      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/size)
14401      */
14402     size: string;
14403     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFontElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14404     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14405     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFontElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14406     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14409 /** @deprecated */
14410 declare var HTMLFontElement: {
14411     prototype: HTMLFontElement;
14412     new(): HTMLFontElement;
14413     isInstance(obj): obj is HTMLFontElement;
14417  * A collection of HTML form control elements.
14419  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormControlsCollection)
14420  */
14421 interface HTMLFormControlsCollection extends HTMLCollectionBase {
14422     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormControlsCollection/namedItem) */
14423     namedItem(name: string): RadioNodeList | Element | null;
14426 declare var HTMLFormControlsCollection: {
14427     prototype: HTMLFormControlsCollection;
14428     new(): HTMLFormControlsCollection;
14429     isInstance(obj): obj is HTMLFormControlsCollection;
14433  * A <form> element in the DOM; it allows access to and in some cases modification of aspects of the form, as well as access to its component elements.
14435  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement)
14436  */
14437 interface HTMLFormElement extends HTMLElement {
14438     /**
14439      * Sets or retrieves a list of character encodings for input data that must be accepted by the server processing the form.
14440      *
14441      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/acceptCharset)
14442      */
14443     acceptCharset: string;
14444     /**
14445      * Sets or retrieves the URL to which the form content is sent for processing.
14446      *
14447      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/action)
14448      */
14449     action: string;
14450     /**
14451      * Specifies whether autocomplete is applied to an editable text field.
14452      *
14453      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/autocomplete)
14454      */
14455     autocomplete: string;
14456     /**
14457      * Retrieves a collection, in source order, of all controls in a given form.
14458      *
14459      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/elements)
14460      */
14461     readonly elements: HTMLFormControlsCollection;
14462     /**
14463      * Sets or retrieves the MIME encoding for the form.
14464      *
14465      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/encoding)
14466      */
14467     encoding: string;
14468     /**
14469      * Sets or retrieves the encoding type for the form.
14470      *
14471      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/enctype)
14472      */
14473     enctype: string;
14474     /**
14475      * Sets or retrieves the number of objects in a collection.
14476      *
14477      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/length)
14478      */
14479     readonly length: number;
14480     /**
14481      * Sets or retrieves how to send the form data to the server.
14482      *
14483      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/method)
14484      */
14485     method: string;
14486     /**
14487      * Sets or retrieves the name of the object.
14488      *
14489      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/name)
14490      */
14491     name: string;
14492     /**
14493      * Designates a form that is not validated when submitted.
14494      *
14495      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/noValidate)
14496      */
14497     noValidate: boolean;
14498     rel: string;
14499     readonly relList: DOMTokenList;
14500     /**
14501      * Sets or retrieves the window or frame at which to target content.
14502      *
14503      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/target)
14504      */
14505     target: string;
14506     /**
14507      * Returns whether a form will validate when it is submitted, without having to submit it.
14508      *
14509      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/checkValidity)
14510      */
14511     checkValidity(): boolean;
14512     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reportValidity) */
14513     reportValidity(): boolean;
14514     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/requestSubmit) */
14515     requestSubmit(submitter?: HTMLElement | null): void;
14516     /**
14517      * Fires when the user resets a form.
14518      *
14519      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset)
14520      */
14521     reset(): void;
14522     /**
14523      * Fires when a FORM is about to be submitted.
14524      *
14525      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit)
14526      */
14527     submit(): void;
14528     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFormElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14529     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14530     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFormElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14531     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14532     [index: number]: Element;
14535 declare var HTMLFormElement: {
14536     prototype: HTMLFormElement;
14537     new(): HTMLFormElement;
14538     isInstance(obj): obj is HTMLFormElement;
14542  * @deprecated
14544  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement)
14545  */
14546 interface HTMLFrameElement extends HTMLElement, MozFrameLoaderOwner {
14547     /**
14548      * Retrieves the document object of the page or frame.
14549      * @deprecated
14550      *
14551      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/contentDocument)
14552      */
14553     readonly contentDocument: Document | null;
14554     /**
14555      * Retrieves the object of the specified.
14556      * @deprecated
14557      *
14558      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/contentWindow)
14559      */
14560     readonly contentWindow: WindowProxy | null;
14561     /**
14562      * Sets or retrieves whether to display a border for the frame.
14563      * @deprecated
14564      *
14565      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/frameBorder)
14566      */
14567     frameBorder: string;
14568     /**
14569      * Sets or retrieves a URI to a long description of the object.
14570      * @deprecated
14571      *
14572      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/longDesc)
14573      */
14574     longDesc: string;
14575     /**
14576      * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.
14577      * @deprecated
14578      *
14579      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/marginHeight)
14580      */
14581     marginHeight: string;
14582     /**
14583      * Sets or retrieves the left and right margin widths before displaying the text in a frame.
14584      * @deprecated
14585      *
14586      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/marginWidth)
14587      */
14588     marginWidth: string;
14589     /**
14590      * Sets or retrieves the frame name.
14591      * @deprecated
14592      *
14593      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/name)
14594      */
14595     name: string;
14596     /**
14597      * Sets or retrieves whether the user can resize the frame.
14598      * @deprecated
14599      *
14600      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/noResize)
14601      */
14602     noResize: boolean;
14603     /**
14604      * Sets or retrieves whether the frame can be scrolled.
14605      * @deprecated
14606      *
14607      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/scrolling)
14608      */
14609     scrolling: string;
14610     /**
14611      * Sets or retrieves a URL to be loaded by the object.
14612      * @deprecated
14613      *
14614      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/src)
14615      */
14616     src: string;
14617     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14618     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14619     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14620     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14623 /** @deprecated */
14624 declare var HTMLFrameElement: {
14625     prototype: HTMLFrameElement;
14626     new(): HTMLFrameElement;
14627     isInstance(obj): obj is HTMLFrameElement;
14630 interface HTMLFrameSetElementEventMap extends HTMLElementEventMap, WindowEventHandlersEventMap {
14634  * Provides special properties (beyond those of the regular HTMLElement interface they also inherit) for manipulating <frameset> elements.
14635  * @deprecated
14637  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameSetElement)
14638  */
14639 interface HTMLFrameSetElement extends HTMLElement, WindowEventHandlers {
14640     /**
14641      * Sets or retrieves the frame widths of the object.
14642      * @deprecated
14643      */
14644     cols: string;
14645     /**
14646      * Sets or retrieves the frame heights of the object.
14647      * @deprecated
14648      */
14649     rows: string;
14650     addEventListener<K extends keyof HTMLFrameSetElementEventMap>(type: K, listener: (this: HTMLFrameSetElement, ev: HTMLFrameSetElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14651     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14652     removeEventListener<K extends keyof HTMLFrameSetElementEventMap>(type: K, listener: (this: HTMLFrameSetElement, ev: HTMLFrameSetElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14653     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14656 /** @deprecated */
14657 declare var HTMLFrameSetElement: {
14658     prototype: HTMLFrameSetElement;
14659     new(): HTMLFrameSetElement;
14660     isInstance(obj): obj is HTMLFrameSetElement;
14664  * Provides special properties (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating <hr> elements.
14666  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHRElement)
14667  */
14668 interface HTMLHRElement extends HTMLElement {
14669     /**
14670      * Sets or retrieves how the object is aligned with adjacent text.
14671      * @deprecated
14672      */
14673     align: string;
14674     /** @deprecated */
14675     color: string;
14676     /**
14677      * Sets or retrieves whether the horizontal rule is drawn with 3-D shading.
14678      * @deprecated
14679      */
14680     noShade: boolean;
14681     /** @deprecated */
14682     size: string;
14683     /**
14684      * Sets or retrieves the width of the object.
14685      * @deprecated
14686      */
14687     width: string;
14688     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14689     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14690     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14691     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14694 declare var HTMLHRElement: {
14695     prototype: HTMLHRElement;
14696     new(): HTMLHRElement;
14697     isInstance(obj): obj is HTMLHRElement;
14701  * Contains the descriptive information, or metadata, for a document. This object inherits all of the properties and methods described in the HTMLElement interface.
14703  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadElement)
14704  */
14705 interface HTMLHeadElement extends HTMLElement {
14706     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14707     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14708     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14709     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14712 declare var HTMLHeadElement: {
14713     prototype: HTMLHeadElement;
14714     new(): HTMLHeadElement;
14715     isInstance(obj): obj is HTMLHeadElement;
14719  * The different heading elements. It inherits methods and properties from the HTMLElement interface.
14721  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement)
14722  */
14723 interface HTMLHeadingElement extends HTMLElement {
14724     /**
14725      * Sets or retrieves a value that indicates the table alignment.
14726      * @deprecated
14727      *
14728      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement/align)
14729      */
14730     align: string;
14731     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadingElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14732     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14733     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadingElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14734     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14737 declare var HTMLHeadingElement: {
14738     prototype: HTMLHeadingElement;
14739     new(): HTMLHeadingElement;
14740     isInstance(obj): obj is HTMLHeadingElement;
14744  * Serves as the root node for a given HTML document. This object inherits the properties and methods described in the HTMLElement interface.
14746  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHtmlElement)
14747  */
14748 interface HTMLHtmlElement extends HTMLElement {
14749     /**
14750      * Sets or retrieves the DTD version that governs the current document.
14751      * @deprecated
14752      *
14753      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHtmlElement/version)
14754      */
14755     version: string;
14756     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHtmlElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14757     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14758     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHtmlElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14759     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14762 declare var HTMLHtmlElement: {
14763     prototype: HTMLHtmlElement;
14764     new(): HTMLHtmlElement;
14765     isInstance(obj): obj is HTMLHtmlElement;
14768 interface HTMLHyperlinkElementUtils {
14769     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hash) */
14770     hash: string;
14771     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/host) */
14772     host: string;
14773     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hostname) */
14774     hostname: string;
14775     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/href) */
14776     href: string;
14777     toString(): string;
14778     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/origin) */
14779     readonly origin: string;
14780     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/password) */
14781     password: string;
14782     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/pathname) */
14783     pathname: string;
14784     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/port) */
14785     port: string;
14786     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/protocol) */
14787     protocol: string;
14788     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/search) */
14789     search: string;
14790     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/username) */
14791     username: string;
14795  * Provides special properties and methods (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of inline frame elements.
14797  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement)
14798  */
14799 interface HTMLIFrameElement extends HTMLElement, MozFrameLoaderOwner {
14800     /**
14801      * Sets or retrieves how the object is aligned with adjacent text.
14802      * @deprecated
14803      *
14804      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/align)
14805      */
14806     align: string;
14807     allow: string;
14808     allowFullscreen: boolean;
14809     /**
14810      * Retrieves the document object of the page or frame.
14811      *
14812      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentDocument)
14813      */
14814     readonly contentDocument: Document | null;
14815     /**
14816      * Retrieves the object of the specified.
14817      *
14818      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentWindow)
14819      */
14820     readonly contentWindow: WindowProxy | null;
14821     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/featurePolicy) */
14822     readonly featurePolicy: FeaturePolicy;
14823     /**
14824      * Sets or retrieves whether to display a border for the frame.
14825      * @deprecated
14826      *
14827      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/frameBorder)
14828      */
14829     frameBorder: string;
14830     /**
14831      * Sets or retrieves the height of the object.
14832      *
14833      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/height)
14834      */
14835     height: string;
14836     loading: string;
14837     /**
14838      * Sets or retrieves a URI to a long description of the object.
14839      * @deprecated
14840      *
14841      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/longDesc)
14842      */
14843     longDesc: string;
14844     /**
14845      * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.
14846      * @deprecated
14847      *
14848      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/marginHeight)
14849      */
14850     marginHeight: string;
14851     /**
14852      * Sets or retrieves the left and right margin widths before displaying the text in a frame.
14853      * @deprecated
14854      *
14855      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/marginWidth)
14856      */
14857     marginWidth: string;
14858     /**
14859      * Sets or retrieves the frame name.
14860      *
14861      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/name)
14862      */
14863     name: string;
14864     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/referrerPolicy) */
14865     referrerPolicy: string;
14866     readonly sandbox: DOMTokenList;
14867     /**
14868      * Sets or retrieves whether the frame can be scrolled.
14869      * @deprecated
14870      *
14871      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/scrolling)
14872      */
14873     scrolling: string;
14874     /**
14875      * Sets or retrieves a URL to be loaded by the object.
14876      *
14877      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/src)
14878      */
14879     src: string;
14880     /**
14881      * Sets or retrives the content of the page that is to contain.
14882      *
14883      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/srcdoc)
14884      */
14885     srcdoc: string;
14886     /**
14887      * Sets or retrieves the width of the object.
14888      *
14889      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/width)
14890      */
14891     width: string;
14892     getSVGDocument(): Document | null;
14893     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLIFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
14894     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
14895     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLIFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
14896     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
14899 declare var HTMLIFrameElement: {
14900     prototype: HTMLIFrameElement;
14901     new(): HTMLIFrameElement;
14902     isInstance(obj): obj is HTMLIFrameElement;
14906  * Provides special properties and methods for manipulating <img> elements.
14908  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement)
14909  */
14910 interface HTMLImageElement extends HTMLElement, MozImageLoadingContent {
14911     /**
14912      * Sets or retrieves how the object is aligned with adjacent text.
14913      * @deprecated
14914      *
14915      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/align)
14916      */
14917     align: string;
14918     /**
14919      * Sets or retrieves a text alternative to the graphic.
14920      *
14921      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/alt)
14922      */
14923     alt: string;
14924     /**
14925      * Specifies the properties of a border drawn around an object.
14926      * @deprecated
14927      *
14928      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/border)
14929      */
14930     border: string;
14931     /**
14932      * Retrieves whether the object is fully loaded.
14933      *
14934      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/complete)
14935      */
14936     readonly complete: boolean;
14937     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/crossOrigin) */
14938     crossOrigin: string | null;
14939     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/currentSrc) */
14940     readonly currentSrc: string;
14941     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/decoding) */
14942     decoding: string;
14943     /**
14944      * Sets or retrieves the height of the object.
14945      *
14946      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/height)
14947      */
14948     height: number;
14949     /**
14950      * Sets or retrieves the width of the border to draw around the object.
14951      * @deprecated
14952      *
14953      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/hspace)
14954      */
14955     hspace: number;
14956     /**
14957      * Sets or retrieves whether the image is a server-side image map.
14958      *
14959      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/isMap)
14960      */
14961     isMap: boolean;
14962     /**
14963      * Sets or retrieves the policy for loading image elements that are outside the viewport.
14964      *
14965      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/loading)
14966      */
14967     loading: string;
14968     /**
14969      * Sets or retrieves a Uniform Resource Identifier (URI) to a long description of the object.
14970      * @deprecated
14971      *
14972      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/longDesc)
14973      */
14974     longDesc: string;
14975     /**
14976      * @deprecated
14977      *
14978      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/lowsrc)
14979      */
14980     lowsrc: string;
14981     /**
14982      * Sets or retrieves the name of the object.
14983      * @deprecated
14984      *
14985      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/name)
14986      */
14987     name: string;
14988     /**
14989      * The original height of the image resource before sizing.
14990      *
14991      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/naturalHeight)
14992      */
14993     readonly naturalHeight: number;
14994     /**
14995      * The original width of the image resource before sizing.
14996      *
14997      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/naturalWidth)
14998      */
14999     readonly naturalWidth: number;
15000     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/referrerPolicy) */
15001     referrerPolicy: string;
15002     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/sizes) */
15003     sizes: string;
15004     /**
15005      * The address or URL of the a media resource that is to be considered.
15006      *
15007      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/src)
15008      */
15009     src: string;
15010     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/srcset) */
15011     srcset: string;
15012     /**
15013      * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.
15014      *
15015      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/useMap)
15016      */
15017     useMap: string;
15018     /**
15019      * Sets or retrieves the vertical margin for the object.
15020      * @deprecated
15021      *
15022      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/vspace)
15023      */
15024     vspace: number;
15025     /**
15026      * Sets or retrieves the width of the object.
15027      *
15028      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/width)
15029      */
15030     width: number;
15031     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/x) */
15032     readonly x: number;
15033     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/y) */
15034     readonly y: number;
15035     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/decode) */
15036     decode(): Promise<void>;
15037     recognizeCurrentImageText(): Promise<ImageText[]>;
15038     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLImageElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15039     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15040     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLImageElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15041     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15044 declare var HTMLImageElement: {
15045     prototype: HTMLImageElement;
15046     new(): HTMLImageElement;
15047     readonly UNKNOWN_REQUEST: -1;
15048     readonly CURRENT_REQUEST: 0;
15049     readonly PENDING_REQUEST: 1;
15050     isInstance(obj): obj is HTMLImageElement;
15054  * Provides special properties and methods for manipulating the options, layout, and presentation of <input> elements.
15056  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement)
15057  */
15058 interface HTMLInputElement extends HTMLElement, InvokerElement, MozEditableElement, MozImageLoadingContent, PopoverInvokerElement {
15059     /** Sets or retrieves a comma-separated list of content types. */
15060     accept: string;
15061     /**
15062      * Sets or retrieves how the object is aligned with adjacent text.
15063      * @deprecated
15064      */
15065     align: string;
15066     /** Sets or retrieves a text alternative to the graphic. */
15067     alt: string;
15068     /**
15069      * Specifies whether autocomplete is applied to an editable text field.
15070      *
15071      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/autocomplete)
15072      */
15073     autocomplete: string;
15074     capture: string;
15075     /** Sets or retrieves the state of the check box or radio button. */
15076     checked: boolean;
15077     readonly controllers: XULControllers | null;
15078     readonly dateTimeBoxElement: Element | null;
15079     /** Sets or retrieves the state of the check box or radio button. */
15080     defaultChecked: boolean;
15081     /** Sets or retrieves the initial contents of the object. */
15082     defaultValue: string;
15083     dirName: string;
15084     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/disabled) */
15085     disabled: boolean;
15086     /**
15087      * Returns a FileList object on a file type input object.
15088      *
15089      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/files)
15090      */
15091     files: FileList | null;
15092     /** Retrieves a reference to the form that the object is embedded in. */
15093     readonly form: HTMLFormElement | null;
15094     /**
15095      * Overrides the action attribute (where the data on a form is sent) on the parent form element.
15096      *
15097      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formAction)
15098      */
15099     formAction: string;
15100     /**
15101      * Used to override the encoding (formEnctype attribute) specified on the form element.
15102      *
15103      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formEnctype)
15104      */
15105     formEnctype: string;
15106     /**
15107      * Overrides the submit method attribute previously specified on a form element.
15108      *
15109      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formMethod)
15110      */
15111     formMethod: string;
15112     /**
15113      * Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a "save draft"-type submit option.
15114      *
15115      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formNoValidate)
15116      */
15117     formNoValidate: boolean;
15118     /**
15119      * Overrides the target attribute on a form element.
15120      *
15121      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formTarget)
15122      */
15123     formTarget: string;
15124     readonly hasBeenTypePassword: boolean;
15125     /**
15126      * Sets or retrieves the height of the object.
15127      *
15128      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/height)
15129      */
15130     height: number;
15131     indeterminate: boolean;
15132     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/labels) */
15133     readonly labels: NodeList | null;
15134     readonly lastInteractiveValue: string;
15135     /**
15136      * Specifies the ID of a pre-defined datalist of options for an input element.
15137      *
15138      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/list)
15139      */
15140     readonly list: HTMLDataListElement | null;
15141     /** Defines the maximum acceptable value for an input element with type="number".When used with the min and step attributes, lets you control the range and increment (such as only even numbers) that the user can enter into an input field. */
15142     max: string;
15143     /** Sets or retrieves the maximum number of characters that the user can enter in a text control. */
15144     maxLength: number;
15145     /** Defines the minimum acceptable value for an input element with type="number". When used with the max and step attributes, lets you control the range and increment (such as even numbers only) that the user can enter into an input field. */
15146     min: string;
15147     minLength: number;
15148     /**
15149      * Sets or retrieves the Boolean value indicating whether multiple items can be selected from a list.
15150      *
15151      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/multiple)
15152      */
15153     multiple: boolean;
15154     /** Sets or retrieves the name of the object. */
15155     name: string;
15156     /**
15157      * Gets or sets a string containing a regular expression that the user's input must match.
15158      *
15159      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/pattern)
15160      */
15161     pattern: string;
15162     /**
15163      * Gets or sets a text string that is displayed in an input field as a hint or prompt to users as the format or type of information they need to enter.The text appears in an input field until the user puts focus on the field.
15164      *
15165      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/placeholder)
15166      */
15167     placeholder: string;
15168     previewValue: string;
15169     readOnly: boolean;
15170     /**
15171      * When present, marks an element that can't be submitted without a value.
15172      *
15173      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/required)
15174      */
15175     required: boolean;
15176     revealPassword: boolean;
15177     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/selectionDirection) */
15178     selectionDirection: string | null;
15179     /** Gets or sets the end position or offset of a text selection. */
15180     selectionEnd: number | null;
15181     /** Gets or sets the starting position or offset of a text selection. */
15182     selectionStart: number | null;
15183     size: number;
15184     /** The address or URL of the a media resource that is to be considered. */
15185     src: string;
15186     /** Defines an increment or jump between values that you want to allow the user to enter. When used with the max and min attributes, lets you control the range and increment (for example, allow only even numbers) that the user can enter into an input field. */
15187     step: string;
15188     readonly textLength: number;
15189     /** Returns the content type of the object. */
15190     type: string;
15191     /**
15192      * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.
15193      * @deprecated
15194      */
15195     useMap: string;
15196     /**
15197      * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
15198      *
15199      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/validationMessage)
15200      */
15201     readonly validationMessage: string;
15202     /**
15203      * Returns a  ValidityState object that represents the validity states of an element.
15204      *
15205      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/validity)
15206      */
15207     readonly validity: ValidityState;
15208     /** Returns the value of the data at the cursor's current position. */
15209     value: string;
15210     /** Returns a Date object representing the form control's value, if applicable; otherwise, returns null. Can be set, to change the value. Throws an "InvalidStateError" DOMException if the control isn't date- or time-based. */
15211     valueAsDate: any;
15212     /** Returns the input field value as a number. */
15213     valueAsNumber: number;
15214     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/webkitEntries) */
15215     readonly webkitEntries: FileSystemEntry[];
15216     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/webkitdirectory) */
15217     webkitdirectory: boolean;
15218     /**
15219      * Sets or retrieves the width of the object.
15220      *
15221      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/width)
15222      */
15223     width: number;
15224     /**
15225      * Returns whether an element will successfully validate based on forms validation rules and constraints.
15226      *
15227      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/willValidate)
15228      */
15229     readonly willValidate: boolean;
15230     /**
15231      * Returns whether a form will validate when it is submitted, without having to submit it.
15232      *
15233      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/checkValidity)
15234      */
15235     checkValidity(): boolean;
15236     closeDateTimePicker(): void;
15237     getAutocompleteInfo(): AutocompleteInfo | null;
15238     getDateTimeInputBoxValue(): DateTimeValue;
15239     getFilesAndDirectories(): Promise<(File | Directory)[]>;
15240     getMaximum(): number;
15241     getMinimum(): number;
15242     getStep(): number;
15243     getStepBase(): number;
15244     mozGetFileNameArray(): string[];
15245     mozIsTextField(aExcludePassword: boolean): boolean;
15246     mozSetDirectory(directoryPath: string): void;
15247     mozSetDndFilesAndDirectories(list: (File | Directory)[]): void;
15248     mozSetFileArray(files: File[]): void;
15249     mozSetFileNameArray(fileNames: string[]): void;
15250     openDateTimePicker(initialValue?: DateTimeValue): void;
15251     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/reportValidity) */
15252     reportValidity(): boolean;
15253     /**
15254      * Makes the selection equal to the current object.
15255      *
15256      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select)
15257      */
15258     select(): void;
15259     /**
15260      * Sets a custom error message that is displayed when a form is submitted.
15261      * @param error Sets a custom error message that is displayed when a form is submitted.
15262      *
15263      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setCustomValidity)
15264      */
15265     setCustomValidity(error: string): void;
15266     setFocusState(aIsFocused: boolean): void;
15267     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setRangeText) */
15268     setRangeText(replacement: string): void;
15269     setRangeText(replacement: string, start: number, end: number, selectionMode?: SelectionMode): void;
15270     /**
15271      * Sets the start and end positions of a selection in a text field.
15272      * @param start The offset into the text field for the start of the selection.
15273      * @param end The offset into the text field for the end of the selection.
15274      * @param direction The direction in which the selection is performed.
15275      *
15276      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setSelectionRange)
15277      */
15278     setSelectionRange(start: number, end: number, direction?: string): void;
15279     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/showPicker) */
15280     showPicker(): void;
15281     /**
15282      * Decrements a range input control's value by the value given by the Step attribute. If the optional parameter is used, it will decrement the input control's step value multiplied by the parameter's value.
15283      * @param n Value to decrement the value by.
15284      *
15285      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/stepDown)
15286      */
15287     stepDown(n?: number): void;
15288     /**
15289      * Increments a range input control's value by the value given by the Step attribute. If the optional parameter is used, will increment the input control's value by that value.
15290      * @param n Value to increment the value by.
15291      *
15292      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/stepUp)
15293      */
15294     stepUp(n?: number): void;
15295     updateDateTimePicker(value?: DateTimeValue): void;
15296     updateValidityState(): void;
15297     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLInputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15298     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15299     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLInputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15300     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15303 declare var HTMLInputElement: {
15304     prototype: HTMLInputElement;
15305     new(): HTMLInputElement;
15306     readonly UNKNOWN_REQUEST: -1;
15307     readonly CURRENT_REQUEST: 0;
15308     readonly PENDING_REQUEST: 1;
15309     isInstance(obj): obj is HTMLInputElement;
15313  * Exposes specific properties and methods (beyond those defined by regular HTMLElement interface it also has available to it by inheritance) for manipulating list elements.
15315  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLIElement)
15316  */
15317 interface HTMLLIElement extends HTMLElement {
15318     /** @deprecated */
15319     type: string;
15320     /** Sets or retrieves the value of a list item. */
15321     value: number;
15322     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLIElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15323     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15324     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLIElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15325     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15328 declare var HTMLLIElement: {
15329     prototype: HTMLLIElement;
15330     new(): HTMLLIElement;
15331     isInstance(obj): obj is HTMLLIElement;
15335  * Gives access to properties specific to <label> elements. It inherits methods and properties from the base HTMLElement interface.
15337  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement)
15338  */
15339 interface HTMLLabelElement extends HTMLElement {
15340     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/control) */
15341     readonly control: HTMLElement | null;
15342     /**
15343      * Retrieves a reference to the form that the object is embedded in.
15344      *
15345      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/form)
15346      */
15347     readonly form: HTMLFormElement | null;
15348     /**
15349      * Sets or retrieves the object to which the given label object is assigned.
15350      *
15351      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/htmlFor)
15352      */
15353     htmlFor: string;
15354     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLabelElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15355     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15356     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLabelElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15357     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15360 declare var HTMLLabelElement: {
15361     prototype: HTMLLabelElement;
15362     new(): HTMLLabelElement;
15363     isInstance(obj): obj is HTMLLabelElement;
15367  * The HTMLLegendElement is an interface allowing to access properties of the <legend> elements. It inherits properties and methods from the HTMLElement interface.
15369  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLegendElement)
15370  */
15371 interface HTMLLegendElement extends HTMLElement {
15372     /** @deprecated */
15373     align: string;
15374     /** Retrieves a reference to the form that the object is embedded in. */
15375     readonly form: HTMLFormElement | null;
15376     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLegendElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15377     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15378     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLegendElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15379     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15382 declare var HTMLLegendElement: {
15383     prototype: HTMLLegendElement;
15384     new(): HTMLLegendElement;
15385     isInstance(obj): obj is HTMLLegendElement;
15389  * Reference information for external resources and the relationship of those resources to a document and vice-versa. This object inherits all of the properties and methods of the HTMLElement interface.
15391  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement)
15392  */
15393 interface HTMLLinkElement extends HTMLElement, LinkStyle {
15394     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/as) */
15395     as: string;
15396     /**
15397      * Sets or retrieves the character set used to encode the object.
15398      * @deprecated
15399      */
15400     charset: string;
15401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/crossOrigin) */
15402     crossOrigin: string | null;
15403     disabled: boolean;
15404     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/fetchPriority) */
15405     fetchPriority: string;
15406     /**
15407      * Sets or retrieves a destination URL or an anchor point.
15408      *
15409      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/href)
15410      */
15411     href: string;
15412     /**
15413      * Sets or retrieves the language code of the object.
15414      *
15415      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/hreflang)
15416      */
15417     hreflang: string;
15418     imageSizes: string;
15419     imageSrcset: string;
15420     integrity: string;
15421     /** Sets or retrieves the media type. */
15422     media: string;
15423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/referrerPolicy) */
15424     referrerPolicy: string;
15425     /**
15426      * Sets or retrieves the relationship between the object and the destination of the link.
15427      *
15428      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/rel)
15429      */
15430     rel: string;
15431     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/relList) */
15432     readonly relList: DOMTokenList;
15433     /**
15434      * Sets or retrieves the relationship between the object and the destination of the link.
15435      * @deprecated
15436      */
15437     rev: string;
15438     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/sizes) */
15439     readonly sizes: DOMTokenList;
15440     /**
15441      * Sets or retrieves the window or frame at which to target content.
15442      * @deprecated
15443      */
15444     target: string;
15445     /** Sets or retrieves the MIME type of the object. */
15446     type: string;
15447     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLinkElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15448     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15449     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLinkElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15450     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15453 declare var HTMLLinkElement: {
15454     prototype: HTMLLinkElement;
15455     new(): HTMLLinkElement;
15456     isInstance(obj): obj is HTMLLinkElement;
15460  * Provides special properties and methods (beyond those of the regular object HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of map elements.
15462  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMapElement)
15463  */
15464 interface HTMLMapElement extends HTMLElement {
15465     /**
15466      * Retrieves a collection of the area objects defined for the given map object.
15467      *
15468      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMapElement/areas)
15469      */
15470     readonly areas: HTMLCollection;
15471     /**
15472      * Sets or retrieves the name of the object.
15473      *
15474      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMapElement/name)
15475      */
15476     name: string;
15477     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMapElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15478     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15479     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMapElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15480     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15483 declare var HTMLMapElement: {
15484     prototype: HTMLMapElement;
15485     new(): HTMLMapElement;
15486     isInstance(obj): obj is HTMLMapElement;
15489 interface HTMLMarqueeElementEventMap extends HTMLElementEventMap {
15490     "bounce": Event;
15491     "finish": Event;
15492     "start": Event;
15496  * Provides methods to manipulate <marquee> elements.
15497  * @deprecated
15499  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMarqueeElement)
15500  */
15501 interface HTMLMarqueeElement extends HTMLElement {
15502     /** @deprecated */
15503     behavior: string;
15504     /** @deprecated */
15505     bgColor: string;
15506     /** @deprecated */
15507     direction: string;
15508     /** @deprecated */
15509     height: string;
15510     /** @deprecated */
15511     hspace: number;
15512     /** @deprecated */
15513     loop: number;
15514     /** @deprecated */
15515     onbounce: ((this: HTMLMarqueeElement, ev: Event) => any) | null;
15516     /** @deprecated */
15517     onfinish: ((this: HTMLMarqueeElement, ev: Event) => any) | null;
15518     /** @deprecated */
15519     onstart: ((this: HTMLMarqueeElement, ev: Event) => any) | null;
15520     /** @deprecated */
15521     scrollAmount: number;
15522     /** @deprecated */
15523     scrollDelay: number;
15524     /** @deprecated */
15525     trueSpeed: boolean;
15526     /** @deprecated */
15527     vspace: number;
15528     /** @deprecated */
15529     width: string;
15530     /** @deprecated */
15531     start(): void;
15532     /** @deprecated */
15533     stop(): void;
15534     addEventListener<K extends keyof HTMLMarqueeElementEventMap>(type: K, listener: (this: HTMLMarqueeElement, ev: HTMLMarqueeElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15535     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15536     removeEventListener<K extends keyof HTMLMarqueeElementEventMap>(type: K, listener: (this: HTMLMarqueeElement, ev: HTMLMarqueeElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15537     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15540 /** @deprecated */
15541 declare var HTMLMarqueeElement: {
15542     prototype: HTMLMarqueeElement;
15543     new(): HTMLMarqueeElement;
15544     isInstance(obj): obj is HTMLMarqueeElement;
15547 interface HTMLMediaElementEventMap extends HTMLElementEventMap {
15548     "encrypted": Event;
15549     "waitingforkey": Event;
15553  * Adds to HTMLElement the properties and methods needed to support basic media-related capabilities that are common to audio and video.
15555  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement)
15556  */
15557 interface HTMLMediaElement extends HTMLElement {
15558     readonly allowedToPlay: boolean;
15559     readonly audiblePlayTime: number;
15560     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/audioTracks) */
15561     readonly audioTracks: AudioTrackList;
15562     /**
15563      * Gets or sets a value that indicates whether to start playing the media automatically.
15564      *
15565      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/autoplay)
15566      */
15567     autoplay: boolean;
15568     /**
15569      * Gets a collection of buffered time ranges.
15570      *
15571      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/buffered)
15572      */
15573     readonly buffered: TimeRanges;
15574     readonly computedMuted: boolean;
15575     readonly computedVolume: number;
15576     /**
15577      * Gets or sets a flag that indicates whether the client provides a set of controls for the media (in case the developer does not include controls for the player).
15578      *
15579      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/controls)
15580      */
15581     controls: boolean;
15582     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/crossOrigin) */
15583     crossOrigin: string | null;
15584     /**
15585      * Gets the address or URL of the current media resource that is selected by IHTMLMediaElement.
15586      *
15587      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/currentSrc)
15588      */
15589     readonly currentSrc: string;
15590     /**
15591      * Gets or sets the current playback position, in seconds.
15592      *
15593      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/currentTime)
15594      */
15595     currentTime: number;
15596     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/defaultMuted) */
15597     defaultMuted: boolean;
15598     /**
15599      * Gets or sets the default playback rate when the user is not using fast forward or reverse for a video or audio resource.
15600      *
15601      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/defaultPlaybackRate)
15602      */
15603     defaultPlaybackRate: number;
15604     /**
15605      * Returns the duration in seconds of the current media resource. A NaN value is returned if duration is not available, or Infinity if the media resource is streaming.
15606      *
15607      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/duration)
15608      */
15609     readonly duration: number;
15610     /**
15611      * Gets information about whether the playback has ended or not.
15612      *
15613      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ended)
15614      */
15615     readonly ended: boolean;
15616     /**
15617      * Returns an object representing the current error state of the audio or video element.
15618      *
15619      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/error)
15620      */
15621     "error": ErrorEvent;
15622     readonly inaudiblePlayTime: number;
15623     readonly invisiblePlayTime: number;
15624     readonly isEncrypted: boolean;
15625     readonly isInViewPort: boolean;
15626     readonly isSuspendedByInactiveDocOrDocShell: boolean;
15627     readonly isVideoDecodingSuspended: boolean;
15628     /**
15629      * Gets or sets a flag to specify whether playback should restart after it completes.
15630      *
15631      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loop)
15632      */
15633     loop: boolean;
15634     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/mediaKeys) */
15635     readonly mediaKeys: MediaKeys | null;
15636     mozAllowCasting: boolean;
15637     /**
15638      * @deprecated
15639      *
15640      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/mozAudioCaptured)
15641      */
15642     readonly mozAudioCaptured: boolean;
15643     /**
15644      * @deprecated
15645      *
15646      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/mozFragmentEnd)
15647      */
15648     readonly mozFragmentEnd: number;
15649     mozIsCasting: boolean;
15650     readonly mozMediaSourceObject: MediaSource | null;
15651     /**
15652      * Gets or sets a flag that indicates whether the audio (either audio or the audio track on video media) is muted.
15653      *
15654      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/muted)
15655      */
15656     muted: boolean;
15657     readonly mutedPlayTime: number;
15658     /**
15659      * Gets the current network activity for the element.
15660      *
15661      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/networkState)
15662      */
15663     readonly networkState: number;
15664     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/encrypted_event) */
15665     onencrypted: ((this: HTMLMediaElement, ev: Event) => any) | null;
15666     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/waitingforkey_event) */
15667     onwaitingforkey: ((this: HTMLMediaElement, ev: Event) => any) | null;
15668     /**
15669      * Gets a flag that specifies whether playback is paused.
15670      *
15671      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/paused)
15672      */
15673     readonly paused: boolean;
15674     /**
15675      * Gets or sets the current rate of speed for the media resource to play. This speed is expressed as a multiple of the normal speed of the media resource.
15676      *
15677      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playbackRate)
15678      */
15679     playbackRate: number;
15680     /**
15681      * Gets TimeRanges for the current media resource that has been played.
15682      *
15683      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/played)
15684      */
15685     readonly played: TimeRanges;
15686     /**
15687      * Gets or sets a value indicating what data should be preloaded, if any.
15688      *
15689      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/preload)
15690      */
15691     preload: string;
15692     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/preservesPitch) */
15693     preservesPitch: boolean;
15694     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/readyState) */
15695     readonly readyState: number;
15696     /**
15697      * Returns a TimeRanges object that represents the ranges of the current media resource that can be seeked.
15698      *
15699      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seekable)
15700      */
15701     readonly seekable: TimeRanges;
15702     /**
15703      * Gets a flag that indicates whether the client is currently moving to a new playback position in the media resource.
15704      *
15705      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeking)
15706      */
15707     readonly seeking: boolean;
15708     /**
15709      * Available only in secure contexts.
15710      *
15711      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/sinkId)
15712      */
15713     readonly sinkId: string;
15714     /**
15715      * The address or URL of the a media resource that is to be considered.
15716      *
15717      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/src)
15718      */
15719     src: string;
15720     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/srcObject) */
15721     srcObject: MediaStream | null;
15722     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/textTracks) */
15723     readonly textTracks: TextTrackList | null;
15724     readonly totalAudioPlayTime: number;
15725     readonly totalVideoHDRPlayTime: number;
15726     readonly totalVideoPlayTime: number;
15727     readonly videoDecodeSuspendedTime: number;
15728     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/videoTracks) */
15729     readonly videoTracks: VideoTrackList;
15730     readonly visiblePlayTime: number;
15731     /**
15732      * Gets or sets the volume level for audio portions of the media element.
15733      *
15734      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volume)
15735      */
15736     volume: number;
15737     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/addTextTrack) */
15738     addTextTrack(kind: TextTrackKind, label?: string, language?: string): TextTrack;
15739     /**
15740      * Returns a string that specifies whether the client can play a given media resource type.
15741      *
15742      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canPlayType)
15743      */
15744     canPlayType(type: string): string;
15745     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/fastSeek) */
15746     fastSeek(time: number): void;
15747     hasSuspendTaint(): boolean;
15748     /**
15749      * Resets the audio or video object and loads a new media resource.
15750      *
15751      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/load)
15752      */
15753     load(): void;
15754     /**
15755      * @deprecated This is a legacy alias of `captureStream`.
15756      *
15757      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/captureStream)
15758      */
15759     mozCaptureStream(): MediaStream;
15760     /**
15761      * @deprecated
15762      *
15763      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/mozCaptureStreamUntilEnded)
15764      */
15765     mozCaptureStreamUntilEnded(): MediaStream;
15766     /**
15767      * @deprecated
15768      *
15769      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/mozGetMetadata)
15770      */
15771     mozGetMetadata(): any;
15772     mozRequestDebugInfo(): Promise<HTMLMediaElementDebugInfo>;
15773     mozRequestDebugLog(): Promise<string>;
15774     /**
15775      * Pauses the current playback and sets paused to TRUE.
15776      *
15777      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/pause)
15778      */
15779     pause(): void;
15780     /**
15781      * Loads and starts playback of a media resource.
15782      *
15783      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/play)
15784      */
15785     play(): Promise<void>;
15786     /**
15787      * @deprecated
15788      *
15789      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seekToNextFrame)
15790      */
15791     seekToNextFrame(): Promise<void>;
15792     setAudioSinkFailedStartup(): void;
15793     setDecodeError(error: string): void;
15794     setFormatDiagnosticsReportForMimeType(mimeType: string, error: DecoderDoctorReportType): void;
15795     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/setMediaKeys) */
15796     setMediaKeys(mediaKeys: MediaKeys | null): Promise<void>;
15797     /**
15798      * Available only in secure contexts.
15799      *
15800      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/setSinkId)
15801      */
15802     setSinkId(sinkId: string): Promise<void>;
15803     setVisible(aVisible: boolean): void;
15804     readonly NETWORK_EMPTY: 0;
15805     readonly NETWORK_IDLE: 1;
15806     readonly NETWORK_LOADING: 2;
15807     readonly NETWORK_NO_SOURCE: 3;
15808     readonly HAVE_NOTHING: 0;
15809     readonly HAVE_METADATA: 1;
15810     readonly HAVE_CURRENT_DATA: 2;
15811     readonly HAVE_FUTURE_DATA: 3;
15812     readonly HAVE_ENOUGH_DATA: 4;
15813     addEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLMediaElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15814     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15815     removeEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLMediaElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15816     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15819 declare var HTMLMediaElement: {
15820     prototype: HTMLMediaElement;
15821     new(): HTMLMediaElement;
15822     readonly NETWORK_EMPTY: 0;
15823     readonly NETWORK_IDLE: 1;
15824     readonly NETWORK_LOADING: 2;
15825     readonly NETWORK_NO_SOURCE: 3;
15826     readonly HAVE_NOTHING: 0;
15827     readonly HAVE_METADATA: 1;
15828     readonly HAVE_CURRENT_DATA: 2;
15829     readonly HAVE_FUTURE_DATA: 3;
15830     readonly HAVE_ENOUGH_DATA: 4;
15831     mozEnableDebugLog(): void;
15832     isInstance(obj): obj is HTMLMediaElement;
15835 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMenuElement) */
15836 interface HTMLMenuElement extends HTMLElement {
15837     /**
15838      * @deprecated
15839      *
15840      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMenuElement/compact)
15841      */
15842     compact: boolean;
15843     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMenuElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15844     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15845     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMenuElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15846     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15849 declare var HTMLMenuElement: {
15850     prototype: HTMLMenuElement;
15851     new(): HTMLMenuElement;
15852     isInstance(obj): obj is HTMLMenuElement;
15856  * Contains descriptive metadata about a document. It inherits all of the properties and methods described in the HTMLElement interface.
15858  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMetaElement)
15859  */
15860 interface HTMLMetaElement extends HTMLElement {
15861     /** Gets or sets meta-information to associate with httpEquiv or name. */
15862     content: string;
15863     /** Gets or sets information used to bind the value of a content attribute of a meta element to an HTTP response header. */
15864     httpEquiv: string;
15865     media: string;
15866     /** Sets or retrieves the value specified in the content attribute of the meta object. */
15867     name: string;
15868     /**
15869      * Sets or retrieves a scheme to be used in interpreting the value of a property specified for the object.
15870      * @deprecated
15871      */
15872     scheme: string;
15873     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMetaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15874     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15875     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMetaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15876     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15879 declare var HTMLMetaElement: {
15880     prototype: HTMLMetaElement;
15881     new(): HTMLMetaElement;
15882     isInstance(obj): obj is HTMLMetaElement;
15886  * The HTML <meter> elements expose the HTMLMeterElement interface, which provides special properties and methods (beyond the HTMLElement object interface they also have available to them by inheritance) for manipulating the layout and presentation of <meter> elements.
15888  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement)
15889  */
15890 interface HTMLMeterElement extends HTMLElement {
15891     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/high) */
15892     high: number;
15893     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/labels) */
15894     readonly labels: NodeList;
15895     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/low) */
15896     low: number;
15897     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/max) */
15898     max: number;
15899     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/min) */
15900     min: number;
15901     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/optimum) */
15902     optimum: number;
15903     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/value) */
15904     value: number;
15905     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMeterElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15906     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15907     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMeterElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15908     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15911 declare var HTMLMeterElement: {
15912     prototype: HTMLMeterElement;
15913     new(): HTMLMeterElement;
15914     isInstance(obj): obj is HTMLMeterElement;
15918  * Provides special properties (beyond the regular methods and properties available through the HTMLElement interface they also have available to them by inheritance) for manipulating modification elements, that is <del> and <ins>.
15920  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLModElement)
15921  */
15922 interface HTMLModElement extends HTMLElement {
15923     /**
15924      * Sets or retrieves reference information about the object.
15925      *
15926      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLModElement/cite)
15927      */
15928     cite: string;
15929     /**
15930      * Sets or retrieves the date and time of a modification to the object.
15931      *
15932      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLModElement/dateTime)
15933      */
15934     dateTime: string;
15935     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLModElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15936     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15937     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLModElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15938     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15941 declare var HTMLModElement: {
15942     prototype: HTMLModElement;
15943     new(): HTMLModElement;
15944     isInstance(obj): obj is HTMLModElement;
15947 interface HTMLModelElement {
15950 declare var HTMLModelElement: {
15951     prototype: HTMLModelElement;
15952     new(): HTMLModelElement;
15953     isInstance(obj): obj is HTMLModelElement;
15957  * Provides special properties (beyond those defined on the regular HTMLElement interface it also has available to it by inheritance) for manipulating ordered list elements.
15959  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement)
15960  */
15961 interface HTMLOListElement extends HTMLElement {
15962     /**
15963      * @deprecated
15964      *
15965      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/compact)
15966      */
15967     compact: boolean;
15968     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/reversed) */
15969     reversed: boolean;
15970     /**
15971      * The starting number.
15972      *
15973      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/start)
15974      */
15975     start: number;
15976     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/type) */
15977     type: string;
15978     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
15979     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
15980     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
15981     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
15984 declare var HTMLOListElement: {
15985     prototype: HTMLOListElement;
15986     new(): HTMLOListElement;
15987     isInstance(obj): obj is HTMLOListElement;
15991  * Provides special properties and methods (beyond those on the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <object> element, representing external resources.
15993  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement)
15994  */
15995 interface HTMLObjectElement extends HTMLElement, MozFrameLoaderOwner, MozImageLoadingContent, MozObjectLoadingContent {
15996     /**
15997      * @deprecated
15998      *
15999      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/align)
16000      */
16001     align: string;
16002     /**
16003      * Sets or retrieves a character string that can be used to implement your own archive functionality for the object.
16004      * @deprecated
16005      *
16006      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/archive)
16007      */
16008     archive: string;
16009     /**
16010      * @deprecated
16011      *
16012      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/border)
16013      */
16014     border: string;
16015     /**
16016      * Sets or retrieves the URL of the file containing the compiled Java class.
16017      * @deprecated
16018      *
16019      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/code)
16020      */
16021     code: string;
16022     /**
16023      * Sets or retrieves the URL of the component.
16024      * @deprecated
16025      *
16026      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/codeBase)
16027      */
16028     codeBase: string;
16029     /**
16030      * Sets or retrieves the Internet media type for the code associated with the object.
16031      * @deprecated
16032      *
16033      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/codeType)
16034      */
16035     codeType: string;
16036     /**
16037      * Retrieves the document object of the page or frame.
16038      *
16039      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/contentDocument)
16040      */
16041     readonly contentDocument: Document | null;
16042     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/contentWindow) */
16043     readonly contentWindow: WindowProxy | null;
16044     /**
16045      * Sets or retrieves the URL that references the data of the object.
16046      *
16047      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/data)
16048      */
16049     data: string;
16050     /**
16051      * @deprecated
16052      *
16053      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/declare)
16054      */
16055     declare: boolean;
16056     /**
16057      * Retrieves a reference to the form that the object is embedded in.
16058      *
16059      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/form)
16060      */
16061     readonly form: HTMLFormElement | null;
16062     /**
16063      * Sets or retrieves the height of the object.
16064      *
16065      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/height)
16066      */
16067     height: string;
16068     /**
16069      * @deprecated
16070      *
16071      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/hspace)
16072      */
16073     hspace: number;
16074     /**
16075      * Sets or retrieves the name of the object.
16076      *
16077      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/name)
16078      */
16079     name: string;
16080     /**
16081      * Sets or retrieves a message to be displayed while an object is loading.
16082      * @deprecated
16083      *
16084      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/standby)
16085      */
16086     standby: string;
16087     /**
16088      * Sets or retrieves the MIME type of the object.
16089      *
16090      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/type)
16091      */
16092     type: string;
16093     /**
16094      * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.
16095      *
16096      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/useMap)
16097      */
16098     useMap: string;
16099     /**
16100      * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
16101      *
16102      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/validationMessage)
16103      */
16104     readonly validationMessage: string;
16105     /**
16106      * Returns a  ValidityState object that represents the validity states of an element.
16107      *
16108      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/validity)
16109      */
16110     readonly validity: ValidityState;
16111     /**
16112      * @deprecated
16113      *
16114      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/vspace)
16115      */
16116     vspace: number;
16117     /**
16118      * Sets or retrieves the width of the object.
16119      *
16120      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/width)
16121      */
16122     width: string;
16123     /**
16124      * Returns whether an element will successfully validate based on forms validation rules and constraints.
16125      *
16126      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/willValidate)
16127      */
16128     readonly willValidate: boolean;
16129     /**
16130      * Returns whether a form will validate when it is submitted, without having to submit it.
16131      *
16132      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/checkValidity)
16133      */
16134     checkValidity(): boolean;
16135     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/getSVGDocument) */
16136     getSVGDocument(): Document | null;
16137     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/reportValidity) */
16138     reportValidity(): boolean;
16139     /**
16140      * Sets a custom error message that is displayed when a form is submitted.
16141      * @param error Sets a custom error message that is displayed when a form is submitted.
16142      *
16143      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/setCustomValidity)
16144      */
16145     setCustomValidity(error: string): void;
16146     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLObjectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16147     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16148     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLObjectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16149     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16152 declare var HTMLObjectElement: {
16153     prototype: HTMLObjectElement;
16154     new(): HTMLObjectElement;
16155     readonly UNKNOWN_REQUEST: -1;
16156     readonly CURRENT_REQUEST: 0;
16157     readonly PENDING_REQUEST: 1;
16158     readonly TYPE_LOADING: 0;
16159     readonly TYPE_IMAGE: 1;
16160     readonly TYPE_FALLBACK: 2;
16161     readonly TYPE_FAKE_PLUGIN: 3;
16162     readonly TYPE_DOCUMENT: 4;
16163     readonly TYPE_NULL: 5;
16164     isInstance(obj): obj is HTMLObjectElement;
16168  * Provides special properties and methods (beyond the regular HTMLElement object interface they also have available to them by inheritance) for manipulating the layout and presentation of <optgroup> elements.
16170  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement)
16171  */
16172 interface HTMLOptGroupElement extends HTMLElement {
16173     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement/disabled) */
16174     disabled: boolean;
16175     /**
16176      * Sets or retrieves a value that you can use to implement your own label functionality for the object.
16177      *
16178      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement/label)
16179      */
16180     label: string;
16181     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptGroupElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16182     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16183     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptGroupElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16184     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16187 declare var HTMLOptGroupElement: {
16188     prototype: HTMLOptGroupElement;
16189     new(): HTMLOptGroupElement;
16190     isInstance(obj): obj is HTMLOptGroupElement;
16194  * <option> elements and inherits all classes and methods of the HTMLElement interface.
16196  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement)
16197  */
16198 interface HTMLOptionElement extends HTMLElement {
16199     /**
16200      * Sets or retrieves the status of an option.
16201      *
16202      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/defaultSelected)
16203      */
16204     defaultSelected: boolean;
16205     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/disabled) */
16206     disabled: boolean;
16207     /**
16208      * Retrieves a reference to the form that the object is embedded in.
16209      *
16210      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/form)
16211      */
16212     readonly form: HTMLFormElement | null;
16213     /**
16214      * Sets or retrieves the ordinal position of an option in a list box.
16215      *
16216      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/index)
16217      */
16218     readonly index: number;
16219     /**
16220      * Sets or retrieves a value that you can use to implement your own label functionality for the object.
16221      *
16222      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/label)
16223      */
16224     label: string;
16225     /**
16226      * Sets or retrieves whether the option in the list box is the default item.
16227      *
16228      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/selected)
16229      */
16230     selected: boolean;
16231     /**
16232      * Sets or retrieves the text string specified by the option tag.
16233      *
16234      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/text)
16235      */
16236     text: string;
16237     /**
16238      * Sets or retrieves the value which is returned to the server when the form control is submitted.
16239      *
16240      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/value)
16241      */
16242     value: string;
16243     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16244     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16245     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16246     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16249 declare var HTMLOptionElement: {
16250     prototype: HTMLOptionElement;
16251     new(): HTMLOptionElement;
16252     isInstance(obj): obj is HTMLOptionElement;
16256  * HTMLOptionsCollection is an interface representing a collection of HTML option elements (in document order) and offers methods and properties for traversing the list as well as optionally altering its items. This type is returned solely by the "options" property of select.
16258  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection)
16259  */
16260 interface HTMLOptionsCollection extends HTMLCollectionBase {
16261     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/length) */
16262     length: number;
16263     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/selectedIndex) */
16264     selectedIndex: number;
16265     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/add) */
16266     add(element: HTMLOptionElement | HTMLOptGroupElement, before?: HTMLElement | number | null): void;
16267     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/remove) */
16268     remove(index: number): void;
16271 declare var HTMLOptionsCollection: {
16272     prototype: HTMLOptionsCollection;
16273     new(): HTMLOptionsCollection;
16274     isInstance(obj): obj is HTMLOptionsCollection;
16277 interface HTMLOrForeignElement {
16278     autofocus: boolean;
16279     readonly dataset: DOMStringMap;
16280     tabIndex: number;
16281     blur(): void;
16282     focus(options?: FocusOptions): void;
16286  * Provides properties and methods (beyond those inherited from HTMLElement) for manipulating the layout and presentation of <output> elements.
16288  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement)
16289  */
16290 interface HTMLOutputElement extends HTMLElement {
16291     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/defaultValue) */
16292     defaultValue: string;
16293     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/form) */
16294     readonly form: HTMLFormElement | null;
16295     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/htmlFor) */
16296     readonly htmlFor: DOMTokenList;
16297     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/labels) */
16298     readonly labels: NodeList;
16299     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/name) */
16300     name: string;
16301     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/type) */
16302     readonly type: string;
16303     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/validationMessage) */
16304     readonly validationMessage: string;
16305     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/validity) */
16306     readonly validity: ValidityState;
16307     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/value) */
16308     value: string;
16309     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/willValidate) */
16310     readonly willValidate: boolean;
16311     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/checkValidity) */
16312     checkValidity(): boolean;
16313     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/reportValidity) */
16314     reportValidity(): boolean;
16315     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/setCustomValidity) */
16316     setCustomValidity(error: string): void;
16317     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOutputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16318     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16319     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOutputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16320     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16323 declare var HTMLOutputElement: {
16324     prototype: HTMLOutputElement;
16325     new(): HTMLOutputElement;
16326     isInstance(obj): obj is HTMLOutputElement;
16330  * Provides special properties (beyond those of the regular HTMLElement object interface it inherits) for manipulating <p> elements.
16332  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParagraphElement)
16333  */
16334 interface HTMLParagraphElement extends HTMLElement {
16335     /**
16336      * Sets or retrieves how the object is aligned with adjacent text.
16337      * @deprecated
16338      *
16339      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParagraphElement/align)
16340      */
16341     align: string;
16342     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParagraphElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16343     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16344     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParagraphElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16345     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16348 declare var HTMLParagraphElement: {
16349     prototype: HTMLParagraphElement;
16350     new(): HTMLParagraphElement;
16351     isInstance(obj): obj is HTMLParagraphElement;
16355  * Provides special properties (beyond those of the regular HTMLElement object interface it inherits) for manipulating <param> elements, representing a pair of a key and a value that acts as a parameter for an <object> element.
16356  * @deprecated
16358  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement)
16359  */
16360 interface HTMLParamElement extends HTMLElement {
16361     /**
16362      * Sets or retrieves the name of an input parameter for an element.
16363      * @deprecated
16364      *
16365      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/name)
16366      */
16367     name: string;
16368     /**
16369      * Sets or retrieves the content type of the resource designated by the value attribute.
16370      * @deprecated
16371      *
16372      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/type)
16373      */
16374     type: string;
16375     /**
16376      * Sets or retrieves the value of an input parameter for an element.
16377      * @deprecated
16378      *
16379      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/value)
16380      */
16381     value: string;
16382     /**
16383      * Sets or retrieves the data type of the value attribute.
16384      * @deprecated
16385      *
16386      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/valueType)
16387      */
16388     valueType: string;
16389     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParamElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16390     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16391     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParamElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16392     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16395 /** @deprecated */
16396 declare var HTMLParamElement: {
16397     prototype: HTMLParamElement;
16398     new(): HTMLParamElement;
16399     isInstance(obj): obj is HTMLParamElement;
16403  * A <picture> HTML element. It doesn't implement specific properties or methods.
16405  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLPictureElement)
16406  */
16407 interface HTMLPictureElement extends HTMLElement {
16408     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPictureElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16409     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16410     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPictureElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16411     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16414 declare var HTMLPictureElement: {
16415     prototype: HTMLPictureElement;
16416     new(): HTMLPictureElement;
16417     isInstance(obj): obj is HTMLPictureElement;
16420 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLPortalElement) */
16421 interface HTMLPortalElement {
16424 declare var HTMLPortalElement: {
16425     prototype: HTMLPortalElement;
16426     new(): HTMLPortalElement;
16427     isInstance(obj): obj is HTMLPortalElement;
16431  * Exposes specific properties and methods (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating a block of preformatted text (<pre>).
16433  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLPreElement)
16434  */
16435 interface HTMLPreElement extends HTMLElement {
16436     /**
16437      * Sets or gets a value that you can use to implement your own width functionality for the object.
16438      * @deprecated
16439      *
16440      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLPreElement/width)
16441      */
16442     width: number;
16443     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPreElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16444     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16445     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPreElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16446     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16449 declare var HTMLPreElement: {
16450     prototype: HTMLPreElement;
16451     new(): HTMLPreElement;
16452     isInstance(obj): obj is HTMLPreElement;
16456  * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <progress> elements.
16458  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement)
16459  */
16460 interface HTMLProgressElement extends HTMLElement {
16461     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/labels) */
16462     readonly labels: NodeList;
16463     /**
16464      * Defines the maximum, or "done" value for a progress element.
16465      *
16466      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/max)
16467      */
16468     max: number;
16469     /**
16470      * Returns the quotient of value/max when the value attribute is set (determinate progress bar), or -1 when the value attribute is missing (indeterminate progress bar).
16471      *
16472      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/position)
16473      */
16474     readonly position: number;
16475     /**
16476      * Sets or gets the current value of a progress element. The value must be a non-negative number between 0 and the max value.
16477      *
16478      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/value)
16479      */
16480     value: number;
16481     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLProgressElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16482     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16483     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLProgressElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16484     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16487 declare var HTMLProgressElement: {
16488     prototype: HTMLProgressElement;
16489     new(): HTMLProgressElement;
16490     isInstance(obj): obj is HTMLProgressElement;
16494  * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating quoting elements, like <blockquote> and <q>, but not the <cite> element.
16496  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLQuoteElement)
16497  */
16498 interface HTMLQuoteElement extends HTMLElement {
16499     /**
16500      * Sets or retrieves reference information about the object.
16501      *
16502      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLQuoteElement/cite)
16503      */
16504     cite: string;
16505     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLQuoteElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16506     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16507     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLQuoteElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16508     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16511 declare var HTMLQuoteElement: {
16512     prototype: HTMLQuoteElement;
16513     new(): HTMLQuoteElement;
16514     isInstance(obj): obj is HTMLQuoteElement;
16518  * HTML <script> elements expose the HTMLScriptElement interface, which provides special properties and methods for manipulating the behavior and execution of <script> elements (beyond the inherited HTMLElement interface).
16520  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement)
16521  */
16522 interface HTMLScriptElement extends HTMLElement {
16523     async: boolean;
16524     /**
16525      * Sets or retrieves the character set used to encode the object.
16526      * @deprecated
16527      */
16528     charset: string;
16529     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/crossOrigin) */
16530     crossOrigin: string | null;
16531     /** Sets or retrieves the status of the script. */
16532     defer: boolean;
16533     /**
16534      * Sets or retrieves the event for which the script is written.
16535      * @deprecated
16536      */
16537     event: string;
16538     fetchPriority: string;
16539     /**
16540      * Sets or retrieves the object that is bound to the event script.
16541      * @deprecated
16542      */
16543     htmlFor: string;
16544     integrity: string;
16545     noModule: boolean;
16546     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/referrerPolicy) */
16547     referrerPolicy: string;
16548     /** Retrieves the URL to an external file that contains the source code or data. */
16549     src: string;
16550     /** Retrieves or sets the text of the object as a string. */
16551     text: string;
16552     /** Sets or retrieves the MIME type for the associated scripting engine. */
16553     type: string;
16554     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLScriptElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16555     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16556     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLScriptElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16557     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16560 declare var HTMLScriptElement: {
16561     prototype: HTMLScriptElement;
16562     new(): HTMLScriptElement;
16563     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/supports_static) */
16564     supports(type: string): boolean;
16565     isInstance(obj): obj is HTMLScriptElement;
16569  * A <select> HTML Element. These elements also share all of the properties and methods of other HTML elements via the HTMLElement interface.
16571  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement)
16572  */
16573 interface HTMLSelectElement extends HTMLElement {
16574     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/autocomplete) */
16575     autocomplete: string;
16576     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/disabled) */
16577     disabled: boolean;
16578     /**
16579      * Retrieves a reference to the form that the object is embedded in.
16580      *
16581      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/form)
16582      */
16583     readonly form: HTMLFormElement | null;
16584     readonly isCombobox: boolean;
16585     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/labels) */
16586     readonly labels: NodeList;
16587     /**
16588      * Sets or retrieves the number of objects in a collection.
16589      *
16590      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/length)
16591      */
16592     length: number;
16593     /**
16594      * Sets or retrieves the Boolean value indicating whether multiple items can be selected from a list.
16595      *
16596      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/multiple)
16597      */
16598     multiple: boolean;
16599     /**
16600      * Sets or retrieves the name of the object.
16601      *
16602      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/name)
16603      */
16604     name: string;
16605     openInParentProcess: boolean;
16606     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/options) */
16607     readonly options: HTMLOptionsCollection;
16608     previewValue: string;
16609     /**
16610      * When present, marks an element that can't be submitted without a value.
16611      *
16612      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/required)
16613      */
16614     required: boolean;
16615     /**
16616      * Sets or retrieves the index of the selected option in a select object.
16617      *
16618      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/selectedIndex)
16619      */
16620     selectedIndex: number;
16621     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/selectedOptions) */
16622     readonly selectedOptions: HTMLCollection;
16623     /**
16624      * Sets or retrieves the number of rows in the list box.
16625      *
16626      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/size)
16627      */
16628     size: number;
16629     /**
16630      * Retrieves the type of select control based on the value of the MULTIPLE attribute.
16631      *
16632      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/type)
16633      */
16634     readonly type: string;
16635     /**
16636      * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
16637      *
16638      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/validationMessage)
16639      */
16640     readonly validationMessage: string;
16641     /**
16642      * Returns a  ValidityState object that represents the validity states of an element.
16643      *
16644      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/validity)
16645      */
16646     readonly validity: ValidityState;
16647     /**
16648      * Sets or retrieves the value which is returned to the server when the form control is submitted.
16649      *
16650      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/value)
16651      */
16652     value: string;
16653     /**
16654      * Returns whether an element will successfully validate based on forms validation rules and constraints.
16655      *
16656      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/willValidate)
16657      */
16658     readonly willValidate: boolean;
16659     /**
16660      * Adds an element to the areas, controlRange, or options collection.
16661      * @param element Variant of type Number that specifies the index position in the collection where the element is placed. If no value is given, the method places the element at the end of the collection.
16662      * @param before Variant of type Object that specifies an element to insert before, or null to append the object to the collection.
16663      *
16664      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/add)
16665      */
16666     add(element: HTMLOptionElement | HTMLOptGroupElement, before?: HTMLElement | number | null): void;
16667     /**
16668      * Returns whether a form will validate when it is submitted, without having to submit it.
16669      *
16670      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/checkValidity)
16671      */
16672     checkValidity(): boolean;
16673     getAutocompleteInfo(): AutocompleteInfo;
16674     /**
16675      * Retrieves a select object or an object from an options collection.
16676      * @param name Variant of type Number or String that specifies the object or collection to retrieve. If this parameter is an integer, it is the zero-based index of the object. If this parameter is a string, all objects with matching name or id properties are retrieved, and a collection is returned if more than one match is made.
16677      * @param index Variant of type Number that specifies the zero-based index of the object to retrieve when a collection is returned.
16678      *
16679      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/item)
16680      */
16681     item(index: number): Element | null;
16682     /**
16683      * Retrieves a select object or an object from an options collection.
16684      * @param namedItem A String that specifies the name or id property of the object to retrieve. A collection is returned if more than one match is made.
16685      *
16686      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/namedItem)
16687      */
16688     namedItem(name: string): HTMLOptionElement | null;
16689     /**
16690      * Removes an element from the collection.
16691      * @param index Number that specifies the zero-based index of the element to remove from the collection.
16692      *
16693      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/remove)
16694      */
16695     remove(index: number): void;
16696     remove(): void;
16697     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/reportValidity) */
16698     reportValidity(): boolean;
16699     /**
16700      * Sets a custom error message that is displayed when a form is submitted.
16701      * @param error Sets a custom error message that is displayed when a form is submitted.
16702      *
16703      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/setCustomValidity)
16704      */
16705     setCustomValidity(error: string): void;
16706     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/showPicker) */
16707     showPicker(): void;
16708     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSelectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16709     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16710     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSelectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16711     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16712     [index: number]: Element;
16715 declare var HTMLSelectElement: {
16716     prototype: HTMLSelectElement;
16717     new(): HTMLSelectElement;
16718     isInstance(obj): obj is HTMLSelectElement;
16721 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement) */
16722 interface HTMLSlotElement extends HTMLElement {
16723     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/name) */
16724     name: string;
16725     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/assign) */
16726     assign(...nodes: (Element | Text)[]): void;
16727     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/assignedElements) */
16728     assignedElements(options?: AssignedNodesOptions): Element[];
16729     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/assignedNodes) */
16730     assignedNodes(options?: AssignedNodesOptions): Node[];
16731     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSlotElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16732     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16733     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSlotElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16734     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16737 declare var HTMLSlotElement: {
16738     prototype: HTMLSlotElement;
16739     new(): HTMLSlotElement;
16740     isInstance(obj): obj is HTMLSlotElement;
16744  * Provides special properties (beyond the regular HTMLElement object interface it also has available to it by inheritance) for manipulating <source> elements.
16746  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement)
16747  */
16748 interface HTMLSourceElement extends HTMLElement {
16749     height: number;
16750     /**
16751      * Gets or sets the intended media type of the media source.
16752      *
16753      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/media)
16754      */
16755     media: string;
16756     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/sizes) */
16757     sizes: string;
16758     /**
16759      * The address or URL of the a media resource that is to be considered.
16760      *
16761      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/src)
16762      */
16763     src: string;
16764     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/srcset) */
16765     srcset: string;
16766     /**
16767      * Gets or sets the MIME type of a media resource.
16768      *
16769      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/type)
16770      */
16771     type: string;
16772     width: number;
16773     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSourceElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16774     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16775     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSourceElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16776     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16779 declare var HTMLSourceElement: {
16780     prototype: HTMLSourceElement;
16781     new(): HTMLSourceElement;
16782     isInstance(obj): obj is HTMLSourceElement;
16786  * A <span> element and derives from the HTMLElement interface, but without implementing any additional properties or methods.
16788  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSpanElement)
16789  */
16790 interface HTMLSpanElement extends HTMLElement {
16791     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSpanElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16792     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16793     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSpanElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16794     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16797 declare var HTMLSpanElement: {
16798     prototype: HTMLSpanElement;
16799     new(): HTMLSpanElement;
16800     isInstance(obj): obj is HTMLSpanElement;
16804  * A <style> element. It inherits properties and methods from its parent, HTMLElement, and from LinkStyle.
16806  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement)
16807  */
16808 interface HTMLStyleElement extends HTMLElement, LinkStyle {
16809     /**
16810      * Enables or disables the style sheet.
16811      *
16812      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/disabled)
16813      */
16814     disabled: boolean;
16815     /**
16816      * Sets or retrieves the media type.
16817      *
16818      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/media)
16819      */
16820     media: string;
16821     /**
16822      * Retrieves the CSS language in which the style sheet is written.
16823      * @deprecated
16824      *
16825      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/type)
16826      */
16827     type: string;
16828     setDevtoolsAsTriggeringPrincipal(): void;
16829     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLStyleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16830     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16831     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLStyleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16832     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16835 declare var HTMLStyleElement: {
16836     prototype: HTMLStyleElement;
16837     new(): HTMLStyleElement;
16838     isInstance(obj): obj is HTMLStyleElement;
16842  * Special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating table caption elements.
16844  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCaptionElement)
16845  */
16846 interface HTMLTableCaptionElement extends HTMLElement {
16847     /**
16848      * Sets or retrieves the alignment of the caption or legend.
16849      * @deprecated
16850      *
16851      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCaptionElement/align)
16852      */
16853     align: string;
16854     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCaptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16855     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16856     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCaptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16857     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16860 declare var HTMLTableCaptionElement: {
16861     prototype: HTMLTableCaptionElement;
16862     new(): HTMLTableCaptionElement;
16863     isInstance(obj): obj is HTMLTableCaptionElement;
16867  * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of table cells, either header or data cells, in an HTML document.
16869  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement)
16870  */
16871 interface HTMLTableCellElement extends HTMLElement {
16872     /**
16873      * Sets or retrieves abbreviated text for the object.
16874      *
16875      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/abbr)
16876      */
16877     abbr: string;
16878     /**
16879      * Sets or retrieves how the object is aligned with adjacent text.
16880      * @deprecated
16881      *
16882      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/align)
16883      */
16884     align: string;
16885     /**
16886      * Sets or retrieves a comma-delimited list of conceptual categories associated with the object.
16887      * @deprecated
16888      *
16889      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/axis)
16890      */
16891     axis: string;
16892     /**
16893      * @deprecated
16894      *
16895      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/bgColor)
16896      */
16897     bgColor: string;
16898     /**
16899      * Retrieves the position of the object in the cells collection of a row.
16900      *
16901      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/cellIndex)
16902      */
16903     readonly cellIndex: number;
16904     /**
16905      * @deprecated
16906      *
16907      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/ch)
16908      */
16909     ch: string;
16910     /**
16911      * @deprecated
16912      *
16913      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/chOff)
16914      */
16915     chOff: string;
16916     /**
16917      * Sets or retrieves the number columns in the table that the object should span.
16918      *
16919      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/colSpan)
16920      */
16921     colSpan: number;
16922     /**
16923      * Sets or retrieves a list of header cells that provide information for the object.
16924      *
16925      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/headers)
16926      */
16927     headers: string;
16928     /**
16929      * Sets or retrieves the height of the object.
16930      * @deprecated
16931      *
16932      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/height)
16933      */
16934     height: string;
16935     /**
16936      * Sets or retrieves whether the browser automatically performs wordwrap.
16937      * @deprecated
16938      *
16939      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/noWrap)
16940      */
16941     noWrap: boolean;
16942     /**
16943      * Sets or retrieves how many rows in a table the cell should span.
16944      *
16945      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/rowSpan)
16946      */
16947     rowSpan: number;
16948     /**
16949      * Sets or retrieves the group of cells in a table to which the object's information applies.
16950      *
16951      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/scope)
16952      */
16953     scope: string;
16954     /**
16955      * @deprecated
16956      *
16957      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/vAlign)
16958      */
16959     vAlign: string;
16960     /**
16961      * Sets or retrieves the width of the object.
16962      * @deprecated
16963      *
16964      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/width)
16965      */
16966     width: string;
16967     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
16968     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
16969     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
16970     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
16973 declare var HTMLTableCellElement: {
16974     prototype: HTMLTableCellElement;
16975     new(): HTMLTableCellElement;
16976     isInstance(obj): obj is HTMLTableCellElement;
16980  * Provides special properties (beyond the HTMLElement interface it also has available to it inheritance) for manipulating single or grouped table column elements.
16982  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement)
16983  */
16984 interface HTMLTableColElement extends HTMLElement {
16985     /**
16986      * Sets or retrieves the alignment of the object relative to the display or table.
16987      * @deprecated
16988      *
16989      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/align)
16990      */
16991     align: string;
16992     /**
16993      * @deprecated
16994      *
16995      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/ch)
16996      */
16997     ch: string;
16998     /**
16999      * @deprecated
17000      *
17001      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/chOff)
17002      */
17003     chOff: string;
17004     /**
17005      * Sets or retrieves the number of columns in the group.
17006      *
17007      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/span)
17008      */
17009     span: number;
17010     /**
17011      * @deprecated
17012      *
17013      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/vAlign)
17014      */
17015     vAlign: string;
17016     /**
17017      * Sets or retrieves the width of the object.
17018      * @deprecated
17019      *
17020      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/width)
17021      */
17022     width: string;
17023     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableColElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17024     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17025     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableColElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17026     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17029 declare var HTMLTableColElement: {
17030     prototype: HTMLTableColElement;
17031     new(): HTMLTableColElement;
17032     isInstance(obj): obj is HTMLTableColElement;
17036  * Provides special properties and methods (beyond the regular HTMLElement object interface it also has available to it by inheritance) for manipulating the layout and presentation of tables in an HTML document.
17038  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement)
17039  */
17040 interface HTMLTableElement extends HTMLElement {
17041     /**
17042      * Sets or retrieves a value that indicates the table alignment.
17043      * @deprecated
17044      *
17045      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/align)
17046      */
17047     align: string;
17048     /**
17049      * @deprecated
17050      *
17051      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/bgColor)
17052      */
17053     bgColor: string;
17054     /**
17055      * Sets or retrieves the width of the border to draw around the object.
17056      * @deprecated
17057      *
17058      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/border)
17059      */
17060     border: string;
17061     /**
17062      * Retrieves the caption object of a table.
17063      *
17064      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/caption)
17065      */
17066     caption: HTMLTableCaptionElement | null;
17067     /**
17068      * Sets or retrieves the amount of space between the border of the cell and the content of the cell.
17069      * @deprecated
17070      *
17071      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/cellPadding)
17072      */
17073     cellPadding: string;
17074     /**
17075      * Sets or retrieves the amount of space between cells in a table.
17076      * @deprecated
17077      *
17078      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/cellSpacing)
17079      */
17080     cellSpacing: string;
17081     /**
17082      * Sets or retrieves the way the border frame around the table is displayed.
17083      * @deprecated
17084      *
17085      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/frame)
17086      */
17087     frame: string;
17088     /**
17089      * Sets or retrieves the number of horizontal rows contained in the object.
17090      *
17091      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/rows)
17092      */
17093     readonly rows: HTMLCollection;
17094     /**
17095      * Sets or retrieves which dividing lines (inner borders) are displayed.
17096      * @deprecated
17097      *
17098      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/rules)
17099      */
17100     rules: string;
17101     /**
17102      * Sets or retrieves a description and/or structure of the object.
17103      * @deprecated
17104      *
17105      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/summary)
17106      */
17107     summary: string;
17108     /**
17109      * Retrieves a collection of all tBody objects in the table. Objects in this collection are in source order.
17110      *
17111      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/tBodies)
17112      */
17113     readonly tBodies: HTMLCollection;
17114     /**
17115      * Retrieves the tFoot object of the table.
17116      *
17117      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/tFoot)
17118      */
17119     tFoot: HTMLTableSectionElement | null;
17120     /**
17121      * Retrieves the tHead object of the table.
17122      *
17123      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/tHead)
17124      */
17125     tHead: HTMLTableSectionElement | null;
17126     /**
17127      * Sets or retrieves the width of the object.
17128      * @deprecated
17129      *
17130      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/width)
17131      */
17132     width: string;
17133     /**
17134      * Creates an empty caption element in the table.
17135      *
17136      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createCaption)
17137      */
17138     createCaption(): HTMLElement;
17139     /**
17140      * Creates an empty tBody element in the table.
17141      *
17142      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createTBody)
17143      */
17144     createTBody(): HTMLElement;
17145     /**
17146      * Creates an empty tFoot element in the table.
17147      *
17148      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createTFoot)
17149      */
17150     createTFoot(): HTMLElement;
17151     /**
17152      * Returns the tHead element object if successful, or null otherwise.
17153      *
17154      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createTHead)
17155      */
17156     createTHead(): HTMLElement;
17157     /**
17158      * Deletes the caption element and its contents from the table.
17159      *
17160      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteCaption)
17161      */
17162     deleteCaption(): void;
17163     /**
17164      * Removes the specified row (tr) from the element and from the rows collection.
17165      * @param index Number that specifies the zero-based position in the rows collection of the row to remove.
17166      *
17167      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteRow)
17168      */
17169     deleteRow(index: number): void;
17170     /**
17171      * Deletes the tFoot element and its contents from the table.
17172      *
17173      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteTFoot)
17174      */
17175     deleteTFoot(): void;
17176     /**
17177      * Deletes the tHead element and its contents from the table.
17178      *
17179      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteTHead)
17180      */
17181     deleteTHead(): void;
17182     /**
17183      * Creates a new row (tr) in the table, and adds the row to the rows collection.
17184      * @param index Number that specifies where to insert the row in the rows collection. The default value is -1, which appends the new row to the end of the rows collection.
17185      *
17186      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/insertRow)
17187      */
17188     insertRow(index?: number): HTMLElement;
17189     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17190     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17191     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17192     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17195 declare var HTMLTableElement: {
17196     prototype: HTMLTableElement;
17197     new(): HTMLTableElement;
17198     isInstance(obj): obj is HTMLTableElement;
17202  * Provides special properties and methods (beyond the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of rows in an HTML table.
17204  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement)
17205  */
17206 interface HTMLTableRowElement extends HTMLElement {
17207     /**
17208      * Sets or retrieves how the object is aligned with adjacent text.
17209      * @deprecated
17210      *
17211      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/align)
17212      */
17213     align: string;
17214     /**
17215      * @deprecated
17216      *
17217      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/bgColor)
17218      */
17219     bgColor: string;
17220     /**
17221      * Retrieves a collection of all cells in the table row.
17222      *
17223      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/cells)
17224      */
17225     readonly cells: HTMLCollection;
17226     /**
17227      * @deprecated
17228      *
17229      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/ch)
17230      */
17231     ch: string;
17232     /**
17233      * @deprecated
17234      *
17235      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/chOff)
17236      */
17237     chOff: string;
17238     /**
17239      * Retrieves the position of the object in the rows collection for the table.
17240      *
17241      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/rowIndex)
17242      */
17243     readonly rowIndex: number;
17244     /**
17245      * Retrieves the position of the object in the collection.
17246      *
17247      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/sectionRowIndex)
17248      */
17249     readonly sectionRowIndex: number;
17250     /**
17251      * @deprecated
17252      *
17253      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/vAlign)
17254      */
17255     vAlign: string;
17256     /**
17257      * Removes the specified cell from the table row, as well as from the cells collection.
17258      * @param index Number that specifies the zero-based position of the cell to remove from the table row. If no value is provided, the last cell in the cells collection is deleted.
17259      *
17260      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/deleteCell)
17261      */
17262     deleteCell(index: number): void;
17263     /**
17264      * Creates a new cell in the table row, and adds the cell to the cells collection.
17265      * @param index Number that specifies where to insert the cell in the tr. The default value is -1, which appends the new cell to the end of the cells collection.
17266      *
17267      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/insertCell)
17268      */
17269     insertCell(index?: number): HTMLElement;
17270     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableRowElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17271     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17272     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableRowElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17273     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17276 declare var HTMLTableRowElement: {
17277     prototype: HTMLTableRowElement;
17278     new(): HTMLTableRowElement;
17279     isInstance(obj): obj is HTMLTableRowElement;
17283  * Provides special properties and methods (beyond the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of sections, that is headers, footers and bodies, in an HTML table.
17285  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement)
17286  */
17287 interface HTMLTableSectionElement extends HTMLElement {
17288     /**
17289      * Sets or retrieves a value that indicates the table alignment.
17290      * @deprecated
17291      *
17292      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/align)
17293      */
17294     align: string;
17295     /**
17296      * @deprecated
17297      *
17298      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/ch)
17299      */
17300     ch: string;
17301     /**
17302      * @deprecated
17303      *
17304      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/chOff)
17305      */
17306     chOff: string;
17307     /**
17308      * Sets or retrieves the number of horizontal rows contained in the object.
17309      *
17310      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/rows)
17311      */
17312     readonly rows: HTMLCollection;
17313     /**
17314      * @deprecated
17315      *
17316      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/vAlign)
17317      */
17318     vAlign: string;
17319     /**
17320      * Removes the specified row (tr) from the element and from the rows collection.
17321      * @param index Number that specifies the zero-based position in the rows collection of the row to remove.
17322      *
17323      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/deleteRow)
17324      */
17325     deleteRow(index: number): void;
17326     /**
17327      * Creates a new row (tr) in the table, and adds the row to the rows collection.
17328      * @param index Number that specifies where to insert the row in the rows collection. The default value is -1, which appends the new row to the end of the rows collection.
17329      *
17330      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/insertRow)
17331      */
17332     insertRow(index?: number): HTMLElement;
17333     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableSectionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17334     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17335     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableSectionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17336     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17339 declare var HTMLTableSectionElement: {
17340     prototype: HTMLTableSectionElement;
17341     new(): HTMLTableSectionElement;
17342     isInstance(obj): obj is HTMLTableSectionElement;
17346  * Enables access to the contents of an HTML <template> element.
17348  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement)
17349  */
17350 interface HTMLTemplateElement extends HTMLElement {
17351     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement/content) */
17352     readonly content: DocumentFragment;
17353     shadowRootDelegatesFocus: boolean;
17354     shadowRootMode: string;
17355     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTemplateElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17356     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17357     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTemplateElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17358     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17361 declare var HTMLTemplateElement: {
17362     prototype: HTMLTemplateElement;
17363     new(): HTMLTemplateElement;
17364     isInstance(obj): obj is HTMLTemplateElement;
17368  * Provides special properties and methods for manipulating the layout and presentation of <textarea> elements.
17370  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement)
17371  */
17372 interface HTMLTextAreaElement extends HTMLElement, MozEditableElement {
17373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/autocomplete) */
17374     autocomplete: string;
17375     /** Sets or retrieves the width of the object. */
17376     cols: number;
17377     readonly controllers: XULControllers;
17378     /** Sets or retrieves the initial contents of the object. */
17379     defaultValue: string;
17380     dirName: string;
17381     disabled: boolean;
17382     /** Retrieves a reference to the form that the object is embedded in. */
17383     readonly form: HTMLFormElement | null;
17384     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/labels) */
17385     readonly labels: NodeList;
17386     /** Sets or retrieves the maximum number of characters that the user can enter in a text control. */
17387     maxLength: number;
17388     minLength: number;
17389     /** Sets or retrieves the name of the object. */
17390     name: string;
17391     /** Gets or sets a text string that is displayed in an input field as a hint or prompt to users as the format or type of information they need to enter.The text appears in an input field until the user puts focus on the field. */
17392     placeholder: string;
17393     previewValue: string;
17394     /** Sets or retrieves the value indicated whether the content of the object is read-only. */
17395     readOnly: boolean;
17396     /** When present, marks an element that can't be submitted without a value. */
17397     required: boolean;
17398     /** Sets or retrieves the number of horizontal rows contained in the object. */
17399     rows: number;
17400     selectionDirection: string | null;
17401     /** Gets or sets the end position or offset of a text selection. */
17402     selectionEnd: number | null;
17403     /** Gets or sets the starting position or offset of a text selection. */
17404     selectionStart: number | null;
17405     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/textLength) */
17406     readonly textLength: number;
17407     /** Retrieves the type of control. */
17408     readonly type: string;
17409     /** Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting. */
17410     readonly validationMessage: string;
17411     /** Returns a  ValidityState object that represents the validity states of an element. */
17412     readonly validity: ValidityState;
17413     /** Retrieves or sets the text in the entry field of the textArea element. */
17414     value: string;
17415     /** Returns whether an element will successfully validate based on forms validation rules and constraints. */
17416     readonly willValidate: boolean;
17417     /** Sets or retrieves how to handle wordwrapping in the object. */
17418     wrap: string;
17419     /** Returns whether a form will validate when it is submitted, without having to submit it. */
17420     checkValidity(): boolean;
17421     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/reportValidity) */
17422     reportValidity(): boolean;
17423     /** Highlights the input area of a form element. */
17424     select(): void;
17425     /**
17426      * Sets a custom error message that is displayed when a form is submitted.
17427      * @param error Sets a custom error message that is displayed when a form is submitted.
17428      */
17429     setCustomValidity(error: string): void;
17430     setRangeText(replacement: string): void;
17431     setRangeText(replacement: string, start: number, end: number, selectionMode?: SelectionMode): void;
17432     /**
17433      * Sets the start and end positions of a selection in a text field.
17434      * @param start The offset into the text field for the start of the selection.
17435      * @param end The offset into the text field for the end of the selection.
17436      * @param direction The direction in which the selection is performed.
17437      */
17438     setSelectionRange(start: number, end: number, direction?: string): void;
17439     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTextAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17440     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17441     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTextAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17442     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17445 declare var HTMLTextAreaElement: {
17446     prototype: HTMLTextAreaElement;
17447     new(): HTMLTextAreaElement;
17448     isInstance(obj): obj is HTMLTextAreaElement;
17452  * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <time> elements.
17454  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTimeElement)
17455  */
17456 interface HTMLTimeElement extends HTMLElement {
17457     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTimeElement/dateTime) */
17458     dateTime: string;
17459     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTimeElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17460     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17461     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTimeElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17462     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17465 declare var HTMLTimeElement: {
17466     prototype: HTMLTimeElement;
17467     new(): HTMLTimeElement;
17468     isInstance(obj): obj is HTMLTimeElement;
17472  * Contains the title for a document. This element inherits all of the properties and methods of the HTMLElement interface.
17474  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTitleElement)
17475  */
17476 interface HTMLTitleElement extends HTMLElement {
17477     /**
17478      * Retrieves or sets the text of the object as a string.
17479      *
17480      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTitleElement/text)
17481      */
17482     text: string;
17483     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTitleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17484     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17485     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTitleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17486     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17489 declare var HTMLTitleElement: {
17490     prototype: HTMLTitleElement;
17491     new(): HTMLTitleElement;
17492     isInstance(obj): obj is HTMLTitleElement;
17496  * The HTMLTrackElement
17498  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement)
17499  */
17500 interface HTMLTrackElement extends HTMLElement {
17501     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/default) */
17502     default: boolean;
17503     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/kind) */
17504     kind: string;
17505     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/label) */
17506     label: string;
17507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/readyState) */
17508     readonly readyState: number;
17509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/src) */
17510     src: string;
17511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/srclang) */
17512     srclang: string;
17513     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/track) */
17514     readonly track: TextTrack | null;
17515     readonly NONE: 0;
17516     readonly LOADING: 1;
17517     readonly LOADED: 2;
17518     readonly ERROR: 3;
17519     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTrackElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17520     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17521     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTrackElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17522     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17525 declare var HTMLTrackElement: {
17526     prototype: HTMLTrackElement;
17527     new(): HTMLTrackElement;
17528     readonly NONE: 0;
17529     readonly LOADING: 1;
17530     readonly LOADED: 2;
17531     readonly ERROR: 3;
17532     isInstance(obj): obj is HTMLTrackElement;
17536  * Provides special properties (beyond those defined on the regular HTMLElement interface it also has available to it by inheritance) for manipulating unordered list elements.
17538  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUListElement)
17539  */
17540 interface HTMLUListElement extends HTMLElement {
17541     /**
17542      * @deprecated
17543      *
17544      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUListElement/compact)
17545      */
17546     compact: boolean;
17547     /**
17548      * @deprecated
17549      *
17550      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUListElement/type)
17551      */
17552     type: string;
17553     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17554     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17555     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17556     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17559 declare var HTMLUListElement: {
17560     prototype: HTMLUListElement;
17561     new(): HTMLUListElement;
17562     isInstance(obj): obj is HTMLUListElement;
17566  * An invalid HTML element and derives from the HTMLElement interface, but without implementing any additional properties or methods.
17568  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUnknownElement)
17569  */
17570 interface HTMLUnknownElement extends HTMLElement {
17571     addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUnknownElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17572     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17573     removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUnknownElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17574     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17577 declare var HTMLUnknownElement: {
17578     prototype: HTMLUnknownElement;
17579     new(): HTMLUnknownElement;
17580     isInstance(obj): obj is HTMLUnknownElement;
17584  * Provides special properties and methods for manipulating video objects. It also inherits properties and methods of HTMLMediaElement and HTMLElement.
17586  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement)
17587  */
17588 interface HTMLVideoElement extends HTMLMediaElement {
17589     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/disablePictureInPicture) */
17590     disablePictureInPicture: boolean;
17591     /**
17592      * Gets or sets the height of the video element.
17593      *
17594      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/height)
17595      */
17596     height: number;
17597     readonly isCloningElementVisually: boolean;
17598     /**
17599      * @deprecated
17600      *
17601      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/mozDecodedFrames)
17602      */
17603     readonly mozDecodedFrames: number;
17604     /**
17605      * @deprecated
17606      *
17607      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/mozFrameDelay)
17608      */
17609     readonly mozFrameDelay: number;
17610     /**
17611      * @deprecated
17612      *
17613      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/mozHasAudio)
17614      */
17615     readonly mozHasAudio: boolean;
17616     /**
17617      * @deprecated
17618      *
17619      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/mozPaintedFrames)
17620      */
17621     readonly mozPaintedFrames: number;
17622     /**
17623      * @deprecated
17624      *
17625      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/mozParsedFrames)
17626      */
17627     readonly mozParsedFrames: number;
17628     /**
17629      * @deprecated
17630      *
17631      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/mozPresentedFrames)
17632      */
17633     readonly mozPresentedFrames: number;
17634     /** Gets or sets the playsinline of the video element. for example, On iPhone, video elements will now be allowed to play inline, and will not automatically enter fullscreen mode when playback begins. */
17635     playsInline: unknown;
17636     /**
17637      * Gets or sets a URL of an image to display, for example, like a movie poster. This can be a still frame from the video, or another image if no video data is available.
17638      *
17639      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/poster)
17640      */
17641     poster: string;
17642     /**
17643      * Gets the intrinsic height of a video in CSS pixels, or zero if the dimensions are not known.
17644      *
17645      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/videoHeight)
17646      */
17647     readonly videoHeight: number;
17648     /**
17649      * Gets the intrinsic width of a video in CSS pixels, or zero if the dimensions are not known.
17650      *
17651      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/videoWidth)
17652      */
17653     readonly videoWidth: number;
17654     /**
17655      * Gets or sets the width of the video element.
17656      *
17657      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/width)
17658      */
17659     width: number;
17660     cloneElementVisually(target: HTMLVideoElement): Promise<void>;
17661     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/getVideoPlaybackQuality) */
17662     getVideoPlaybackQuality(): VideoPlaybackQuality;
17663     stopCloningElementVisually(): void;
17664     addEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLVideoElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17665     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17666     removeEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLVideoElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17667     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17670 declare var HTMLVideoElement: {
17671     prototype: HTMLVideoElement;
17672     new(): HTMLVideoElement;
17673     isInstance(obj): obj is HTMLVideoElement;
17677  * Events that fire when the fragment identifier of the URL has changed.
17679  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HashChangeEvent)
17680  */
17681 interface HashChangeEvent extends Event {
17682     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HashChangeEvent/newURL) */
17683     readonly newURL: string;
17684     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HashChangeEvent/oldURL) */
17685     readonly oldURL: string;
17686     initHashChangeEvent(typeArg: string, canBubbleArg?: boolean, cancelableArg?: boolean, oldURLArg?: string, newURLArg?: string): void;
17689 declare var HashChangeEvent: {
17690     prototype: HashChangeEvent;
17691     new(type: string, eventInitDict?: HashChangeEventInit): HashChangeEvent;
17692     isInstance(obj): obj is HashChangeEvent;
17696  * This Fetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consists of zero or more name and value pairs. Â You can add to this using methods like append() (see Examples.) In all methods of this interface, header names are matched by case-insensitive byte sequence.
17698  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers)
17699  */
17700 interface Headers {
17701     guard: HeadersGuardEnum;
17702     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/append) */
17703     append(name: string, value: string): void;
17704     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/delete) */
17705     delete(name: string): void;
17706     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/get) */
17707     get(name: string): string | null;
17708     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/getSetCookie) */
17709     getSetCookie(): string[];
17710     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/has) */
17711     has(name: string): boolean;
17712     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/set) */
17713     set(name: string, value: string): void;
17714     forEach(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any): void;
17717 declare var Headers: {
17718     prototype: Headers;
17719     new(init?: HeadersInit): Headers;
17720     isInstance(obj): obj is Headers;
17723 interface HeapSnapshot {
17724     readonly creationTime: number | null;
17725     computeDominatorTree(): DominatorTree;
17726     computeShortestPaths(start: NodeId, targets: NodeId[], maxNumPaths: number): any;
17727     describeNode(breakdown: any, node: NodeId): any;
17728     takeCensus(options: any): any;
17731 declare var HeapSnapshot: {
17732     prototype: HeapSnapshot;
17733     new(): HeapSnapshot;
17734     isInstance(obj): obj is HeapSnapshot;
17737 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Highlight) */
17738 interface Highlight {
17739     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Highlight/priority) */
17740     priority: number;
17741     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Highlight/type) */
17742     type: HighlightType;
17743     forEach(callbackfn: (value: AbstractRange, key: AbstractRange, parent: Highlight) => void, thisArg?: any): void;
17746 declare var Highlight: {
17747     prototype: Highlight;
17748     new(...initialRanges: AbstractRange[]): Highlight;
17749     isInstance(obj): obj is Highlight;
17752 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HighlightRegistry) */
17753 interface HighlightRegistry {
17754     forEach(callbackfn: (value: Highlight, key: string, parent: HighlightRegistry) => void, thisArg?: any): void;
17757 declare var HighlightRegistry: {
17758     prototype: HighlightRegistry;
17759     new(): HighlightRegistry;
17760     isInstance(obj): obj is HighlightRegistry;
17764  * Allows manipulation of the browser session history, that is the pages visited in the tab or frame that the current page is loaded in.
17766  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/History)
17767  */
17768 interface History {
17769     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/length) */
17770     readonly length: number;
17771     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/scrollRestoration) */
17772     scrollRestoration: ScrollRestoration;
17773     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/state) */
17774     readonly state: any;
17775     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/back) */
17776     back(): void;
17777     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/forward) */
17778     forward(): void;
17779     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/go) */
17780     go(delta?: number): void;
17781     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/pushState) */
17782     pushState(data: any, title: string, url?: string | null): void;
17783     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/replaceState) */
17784     replaceState(data: any, title: string, url?: string | null): void;
17787 declare var History: {
17788     prototype: History;
17789     new(): History;
17790     isInstance(obj): obj is History;
17794  * This IndexedDB API interface represents a cursor for traversing or iterating over multiple records in a database.
17796  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor)
17797  */
17798 interface IDBCursor {
17799     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/direction) */
17800     readonly direction: IDBCursorDirection;
17801     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/key) */
17802     readonly key: any;
17803     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/primaryKey) */
17804     readonly primaryKey: any;
17805     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/request) */
17806     readonly request: IDBRequest;
17807     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/source) */
17808     readonly source: IDBObjectStore | IDBIndex;
17809     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/advance) */
17810     advance(count: number): void;
17811     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/continue) */
17812     continue(key?: any): void;
17813     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/continuePrimaryKey) */
17814     continuePrimaryKey(key: any, primaryKey: any): void;
17815     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/delete) */
17816     delete(): IDBRequest;
17817     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/update) */
17818     update(value: any): IDBRequest;
17821 declare var IDBCursor: {
17822     prototype: IDBCursor;
17823     new(): IDBCursor;
17824     isInstance(obj): obj is IDBCursor;
17828  * This IndexedDB API interface represents a cursor for traversing or iterating over multiple records in a database. It is the same as the IDBCursor, except that it includes the value property.
17830  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursorWithValue)
17831  */
17832 interface IDBCursorWithValue extends IDBCursor {
17833     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursorWithValue/value) */
17834     readonly value: any;
17837 declare var IDBCursorWithValue: {
17838     prototype: IDBCursorWithValue;
17839     new(): IDBCursorWithValue;
17840     isInstance(obj): obj is IDBCursorWithValue;
17843 interface IDBDatabaseEventMap {
17844     "abort": Event;
17845     "close": Event;
17846     "error": ErrorEvent;
17847     "versionchange": Event;
17851  * This IndexedDB API interface provides a connection to a database; you can use an IDBDatabase object to open a transaction on your database then create, manipulate, and delete objects (data) in that database. The interface provides the only way to get and manage versions of the database.
17853  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase)
17854  */
17855 interface IDBDatabase extends EventTarget {
17856     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/name) */
17857     readonly name: string;
17858     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/objectStoreNames) */
17859     readonly objectStoreNames: DOMStringList;
17860     onabort: ((this: IDBDatabase, ev: Event) => any) | null;
17861     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/close_event) */
17862     onclose: ((this: IDBDatabase, ev: Event) => any) | null;
17863     onerror: OnErrorEventHandler;
17864     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/versionchange_event) */
17865     onversionchange: ((this: IDBDatabase, ev: Event) => any) | null;
17866     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/version) */
17867     readonly version: number;
17868     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/close) */
17869     close(): void;
17870     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/createObjectStore) */
17871     createObjectStore(name: string, options?: IDBObjectStoreParameters): IDBObjectStore;
17872     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/deleteObjectStore) */
17873     deleteObjectStore(name: string): void;
17874     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/transaction) */
17875     transaction(storeNames: string | string[], mode?: IDBTransactionMode): IDBTransaction;
17876     addEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
17877     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
17878     removeEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
17879     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
17882 declare var IDBDatabase: {
17883     prototype: IDBDatabase;
17884     new(): IDBDatabase;
17885     isInstance(obj): obj is IDBDatabase;
17889  * In the following code snippet, we make a request to open a database, and include handlers for the success and error cases. For a full working example, see our To-do Notifications app (view example live.)
17891  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory)
17892  */
17893 interface IDBFactory {
17894     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/cmp) */
17895     cmp(first: any, second: any): number;
17896     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/deleteDatabase) */
17897     deleteDatabase(name: string, options?: IDBOpenDBOptions): IDBOpenDBRequest;
17898     deleteForPrincipal(principal: Principal, name: string, options?: IDBOpenDBOptions): IDBOpenDBRequest;
17899     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/open) */
17900     open(name: string, version: number): IDBOpenDBRequest;
17901     open(name: string, options?: IDBOpenDBOptions): IDBOpenDBRequest;
17902     openForPrincipal(principal: Principal, name: string, version: number): IDBOpenDBRequest;
17903     openForPrincipal(principal: Principal, name: string, options?: IDBOpenDBOptions): IDBOpenDBRequest;
17906 declare var IDBFactory: {
17907     prototype: IDBFactory;
17908     new(): IDBFactory;
17909     isInstance(obj): obj is IDBFactory;
17913  * IDBIndex interface of the IndexedDB API provides asynchronous access to an index in a database. An index is a kind of object store for looking up records in another object store, called the referenced object store. You use this interface to retrieve data.
17915  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex)
17916  */
17917 interface IDBIndex {
17918     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/isAutoLocale) */
17919     readonly isAutoLocale: boolean;
17920     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/keyPath) */
17921     readonly keyPath: any;
17922     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/locale) */
17923     readonly locale: string | null;
17924     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/multiEntry) */
17925     readonly multiEntry: boolean;
17926     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/name) */
17927     name: string;
17928     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/objectStore) */
17929     readonly objectStore: IDBObjectStore;
17930     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/unique) */
17931     readonly unique: boolean;
17932     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/count) */
17933     count(query?: any): IDBRequest;
17934     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/get) */
17935     get(query: any): IDBRequest;
17936     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAll) */
17937     getAll(query?: any, count?: number): IDBRequest;
17938     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAllKeys) */
17939     getAllKeys(query?: any, count?: number): IDBRequest;
17940     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getKey) */
17941     getKey(query: any): IDBRequest;
17942     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/openCursor) */
17943     openCursor(query?: any, direction?: IDBCursorDirection): IDBRequest;
17944     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/openKeyCursor) */
17945     openKeyCursor(query?: any, direction?: IDBCursorDirection): IDBRequest;
17948 declare var IDBIndex: {
17949     prototype: IDBIndex;
17950     new(): IDBIndex;
17951     isInstance(obj): obj is IDBIndex;
17955  * A key range can be a single value or a range with upper and lower bounds or endpoints. If the key range has both upper and lower bounds, then it is bounded; if it has no bounds, it is unbounded. A bounded key range can either be open (the endpoints are excluded) or closed (the endpoints are included). To retrieve all keys within a certain range, you can use the following code constructs:
17957  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange)
17958  */
17959 interface IDBKeyRange {
17960     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lower) */
17961     readonly lower: any;
17962     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lowerOpen) */
17963     readonly lowerOpen: boolean;
17964     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upper) */
17965     readonly upper: any;
17966     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upperOpen) */
17967     readonly upperOpen: boolean;
17968     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/includes) */
17969     includes(key: any): boolean;
17972 declare var IDBKeyRange: {
17973     prototype: IDBKeyRange;
17974     new(): IDBKeyRange;
17975     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/bound_static) */
17976     bound(lower: any, upper: any, lowerOpen?: boolean, upperOpen?: boolean): IDBKeyRange;
17977     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lowerBound_static) */
17978     lowerBound(lower: any, open?: boolean): IDBKeyRange;
17979     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/only_static) */
17980     only(value: any): IDBKeyRange;
17981     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upperBound_static) */
17982     upperBound(upper: any, open?: boolean): IDBKeyRange;
17983     isInstance(obj): obj is IDBKeyRange;
17987  * This example shows a variety of different uses of object stores, from updating the data structure with IDBObjectStore.createIndex inside an onupgradeneeded function, to adding a new item to our object store with IDBObjectStore.add. For a full working example, see our To-do Notifications app (view example live.)
17989  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore)
17990  */
17991 interface IDBObjectStore {
17992     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/autoIncrement) */
17993     readonly autoIncrement: boolean;
17994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/indexNames) */
17995     readonly indexNames: DOMStringList;
17996     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/keyPath) */
17997     readonly keyPath: any;
17998     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/name) */
17999     name: string;
18000     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/transaction) */
18001     readonly transaction: IDBTransaction;
18002     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/add) */
18003     add(value: any, key?: any): IDBRequest;
18004     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/clear) */
18005     clear(): IDBRequest;
18006     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/count) */
18007     count(key?: any): IDBRequest;
18008     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/createIndex) */
18009     createIndex(name: string, keyPath: string | string[], optionalParameters?: IDBIndexParameters): IDBIndex;
18010     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/delete) */
18011     delete(key: any): IDBRequest;
18012     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/deleteIndex) */
18013     deleteIndex(indexName: string): void;
18014     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/get) */
18015     get(key: any): IDBRequest;
18016     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getAll) */
18017     getAll(query?: any, count?: number): IDBRequest;
18018     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getAllKeys) */
18019     getAllKeys(query?: any, count?: number): IDBRequest;
18020     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getKey) */
18021     getKey(key: any): IDBRequest;
18022     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/index) */
18023     index(name: string): IDBIndex;
18024     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/openCursor) */
18025     openCursor(range?: any, direction?: IDBCursorDirection): IDBRequest;
18026     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/openKeyCursor) */
18027     openKeyCursor(query?: any, direction?: IDBCursorDirection): IDBRequest;
18028     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/put) */
18029     put(value: any, key?: any): IDBRequest;
18032 declare var IDBObjectStore: {
18033     prototype: IDBObjectStore;
18034     new(): IDBObjectStore;
18035     isInstance(obj): obj is IDBObjectStore;
18038 interface IDBOpenDBRequestEventMap extends IDBRequestEventMap {
18039     "blocked": Event;
18040     "upgradeneeded": Event;
18044  * Also inherits methods from its parents IDBRequest and EventTarget.
18046  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest)
18047  */
18048 interface IDBOpenDBRequest extends IDBRequest {
18049     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest/blocked_event) */
18050     onblocked: ((this: IDBOpenDBRequest, ev: Event) => any) | null;
18051     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest/upgradeneeded_event) */
18052     onupgradeneeded: ((this: IDBOpenDBRequest, ev: Event) => any) | null;
18053     addEventListener<K extends keyof IDBOpenDBRequestEventMap>(type: K, listener: (this: IDBOpenDBRequest, ev: IDBOpenDBRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
18054     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
18055     removeEventListener<K extends keyof IDBOpenDBRequestEventMap>(type: K, listener: (this: IDBOpenDBRequest, ev: IDBOpenDBRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
18056     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
18059 declare var IDBOpenDBRequest: {
18060     prototype: IDBOpenDBRequest;
18061     new(): IDBOpenDBRequest;
18062     isInstance(obj): obj is IDBOpenDBRequest;
18065 interface IDBRequestEventMap {
18066     "error": ErrorEvent;
18067     "success": Event;
18071  * The request object does not initially contain any information about the result of the operation, but once information becomes available, an event is fired on the request, and the information becomes available through the properties of the IDBRequest instance.
18073  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest)
18074  */
18075 interface IDBRequest extends EventTarget {
18076     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/error) */
18077     "error": ErrorEvent;
18078     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/error_event) */
18079     onerror: OnErrorEventHandler;
18080     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/success_event) */
18081     onsuccess: ((this: IDBRequest, ev: Event) => any) | null;
18082     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/readyState) */
18083     readonly readyState: IDBRequestReadyState;
18084     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/result) */
18085     readonly result: any;
18086     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/source) */
18087     readonly source: IDBObjectStore | IDBIndex | IDBCursor | null;
18088     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/transaction) */
18089     readonly transaction: IDBTransaction | null;
18090     addEventListener<K extends keyof IDBRequestEventMap>(type: K, listener: (this: IDBRequest, ev: IDBRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
18091     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
18092     removeEventListener<K extends keyof IDBRequestEventMap>(type: K, listener: (this: IDBRequest, ev: IDBRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
18093     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
18096 declare var IDBRequest: {
18097     prototype: IDBRequest;
18098     new(): IDBRequest;
18099     isInstance(obj): obj is IDBRequest;
18102 interface IDBTransactionEventMap {
18103     "abort": Event;
18104     "complete": Event;
18105     "error": ErrorEvent;
18108 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction) */
18109 interface IDBTransaction extends EventTarget {
18110     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/db) */
18111     readonly db: IDBDatabase;
18112     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/error) */
18113     "error": ErrorEvent;
18114     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/mode) */
18115     readonly mode: IDBTransactionMode;
18116     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/objectStoreNames) */
18117     readonly objectStoreNames: DOMStringList;
18118     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/abort_event) */
18119     onabort: ((this: IDBTransaction, ev: Event) => any) | null;
18120     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/complete_event) */
18121     oncomplete: ((this: IDBTransaction, ev: Event) => any) | null;
18122     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/error_event) */
18123     onerror: OnErrorEventHandler;
18124     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/abort) */
18125     abort(): void;
18126     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/commit) */
18127     commit(): void;
18128     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/objectStore) */
18129     objectStore(name: string): IDBObjectStore;
18130     addEventListener<K extends keyof IDBTransactionEventMap>(type: K, listener: (this: IDBTransaction, ev: IDBTransactionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
18131     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
18132     removeEventListener<K extends keyof IDBTransactionEventMap>(type: K, listener: (this: IDBTransaction, ev: IDBTransactionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
18133     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
18136 declare var IDBTransaction: {
18137     prototype: IDBTransaction;
18138     new(): IDBTransaction;
18139     isInstance(obj): obj is IDBTransaction;
18143  * This IndexedDB API interface indicates that the version of the database has changed, as the result of an IDBOpenDBRequest.onupgradeneeded event handler function.
18145  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent)
18146  */
18147 interface IDBVersionChangeEvent extends Event {
18148     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent/newVersion) */
18149     readonly newVersion: number | null;
18150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent/oldVersion) */
18151     readonly oldVersion: number;
18154 declare var IDBVersionChangeEvent: {
18155     prototype: IDBVersionChangeEvent;
18156     new(type: string, eventInitDict?: IDBVersionChangeEventInit): IDBVersionChangeEvent;
18157     isInstance(obj): obj is IDBVersionChangeEvent;
18161  * The IIRFilterNode interface of the Web Audio API is a AudioNode processor which implements a general infinite impulse response (IIR)  filter; this type of filter can be used to implement tone control devices and graphic equalizers as well. It lets the parameters of the filter response be specified, so that it can be tuned as needed.
18163  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IIRFilterNode)
18164  */
18165 interface IIRFilterNode extends AudioNode, AudioNodePassThrough {
18166     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IIRFilterNode/getFrequencyResponse) */
18167     getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array): void;
18170 declare var IIRFilterNode: {
18171     prototype: IIRFilterNode;
18172     new(context: BaseAudioContext, options: IIRFilterOptions): IIRFilterNode;
18173     isInstance(obj): obj is IIRFilterNode;
18177  * Available only in secure contexts.
18179  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdentityCredential)
18180  */
18181 interface IdentityCredential extends Credential {
18182     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdentityCredential/token) */
18183     readonly token: string | null;
18186 declare var IdentityCredential: {
18187     prototype: IdentityCredential;
18188     new(): IdentityCredential;
18189     logoutRPs(logoutRequests: IdentityCredentialLogoutRPsRequest[]): Promise<void>;
18190     isInstance(obj): obj is IdentityCredential;
18193 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdleDeadline) */
18194 interface IdleDeadline {
18195     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdleDeadline/didTimeout) */
18196     readonly didTimeout: boolean;
18197     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdleDeadline/timeRemaining) */
18198     timeRemaining(): DOMHighResTimeStamp;
18201 declare var IdleDeadline: {
18202     prototype: IdleDeadline;
18203     new(): IdleDeadline;
18204     isInstance(obj): obj is IdleDeadline;
18207 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap) */
18208 interface ImageBitmap {
18209     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/height) */
18210     readonly height: number;
18211     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/width) */
18212     readonly width: number;
18213     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/close) */
18214     close(): void;
18217 declare var ImageBitmap: {
18218     prototype: ImageBitmap;
18219     new(): ImageBitmap;
18220     isInstance(obj): obj is ImageBitmap;
18223 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmapRenderingContext) */
18224 interface ImageBitmapRenderingContext {
18225     readonly canvas: CanvasSource | null;
18226     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmapRenderingContext/transferFromImageBitmap) */
18227     transferFromImageBitmap(bitmap: ImageBitmap | null): void;
18228     /**
18229      * @deprecated This is a legacy alias of `transferFromImageBitmap`.
18230      *
18231      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmapRenderingContext/transferFromImageBitmap)
18232      */
18233     transferImageBitmap(bitmap: ImageBitmap): void;
18236 declare var ImageBitmapRenderingContext: {
18237     prototype: ImageBitmapRenderingContext;
18238     new(): ImageBitmapRenderingContext;
18239     isInstance(obj): obj is ImageBitmapRenderingContext;
18242 interface ImageCaptureEventMap {
18243     "error": ErrorEvent;
18244     "photo": Event;
18247 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageCapture) */
18248 interface ImageCapture extends EventTarget {
18249     onerror: OnErrorEventHandler;
18250     onphoto: ((this: ImageCapture, ev: Event) => any) | null;
18251     /**
18252      * @deprecated This is a legacy alias of `track`.
18253      *
18254      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageCapture/track)
18255      */
18256     readonly videoStreamTrack: MediaStreamTrack;
18257     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageCapture/takePhoto) */
18258     takePhoto(): void;
18259     addEventListener<K extends keyof ImageCaptureEventMap>(type: K, listener: (this: ImageCapture, ev: ImageCaptureEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
18260     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
18261     removeEventListener<K extends keyof ImageCaptureEventMap>(type: K, listener: (this: ImageCapture, ev: ImageCaptureEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
18262     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
18265 declare var ImageCapture: {
18266     prototype: ImageCapture;
18267     new(track: MediaStreamTrack): ImageCapture;
18268     isInstance(obj): obj is ImageCapture;
18271 interface ImageCaptureError {
18272     readonly code: number;
18273     readonly message: string;
18274     readonly FRAME_GRAB_ERROR: 1;
18275     readonly SETTINGS_ERROR: 2;
18276     readonly PHOTO_ERROR: 3;
18277     readonly ERROR_UNKNOWN: 4;
18280 interface ImageCaptureErrorEvent extends Event {
18281     readonly imageCaptureError: ImageCaptureError | null;
18284 declare var ImageCaptureErrorEvent: {
18285     prototype: ImageCaptureErrorEvent;
18286     new(type: string, imageCaptureErrorInitDict?: ImageCaptureErrorEventInit): ImageCaptureErrorEvent;
18287     isInstance(obj): obj is ImageCaptureErrorEvent;
18291  * The underlying pixel data of an area of a <canvas> element. It is created using the ImageData() constructor or creator methods on the CanvasRenderingContext2D object associated with a canvas: createImageData() and getImageData(). It can also be used to set a part of the canvas by using putImageData().
18293  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData)
18294  */
18295 interface ImageData {
18296     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/data) */
18297     readonly data: Uint8ClampedArray;
18298     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/height) */
18299     readonly height: number;
18300     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/width) */
18301     readonly width: number;
18304 declare var ImageData: {
18305     prototype: ImageData;
18306     new(sw: number, sh: number): ImageData;
18307     new(data: Uint8ClampedArray, sw: number, sh?: number): ImageData;
18308     isInstance(obj): obj is ImageData;
18311 interface ImageDocument extends HTMLDocument {
18312     readonly imageIsOverflowing: boolean;
18313     readonly imageIsResized: boolean;
18314     restoreImage(): void;
18315     shrinkToFit(): void;
18316     addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: ImageDocument, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
18317     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
18318     removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: ImageDocument, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
18319     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
18322 declare var ImageDocument: {
18323     prototype: ImageDocument;
18324     new(): ImageDocument;
18325     isInstance(obj): obj is ImageDocument;
18328 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent) */
18329 interface InputEvent extends UIEvent {
18330     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/data) */
18331     readonly data: string | null;
18332     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/dataTransfer) */
18333     readonly dataTransfer: DataTransfer | null;
18334     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/inputType) */
18335     readonly inputType: string;
18336     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/isComposing) */
18337     readonly isComposing: boolean;
18338     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/getTargetRanges) */
18339     getTargetRanges(): StaticRange[];
18342 declare var InputEvent: {
18343     prototype: InputEvent;
18344     new(type: string, eventInitDict?: InputEventInit): InputEvent;
18345     isInstance(obj): obj is InputEvent;
18348 interface InspectorFontFace {
18349     readonly CSSFamilyName: string;
18350     readonly CSSGeneric: string;
18351     readonly URI: string;
18352     readonly format: string;
18353     readonly fromFontGroup: boolean;
18354     readonly fromLanguagePrefs: boolean;
18355     readonly fromSystemFallback: boolean;
18356     readonly localName: string;
18357     readonly metadata: string;
18358     readonly name: string;
18359     readonly ranges: Range[];
18360     readonly rule: CSSFontFaceRule | null;
18361     readonly srcIndex: number;
18362     getFeatures(): InspectorFontFeature[];
18363     getVariationAxes(): InspectorVariationAxis[];
18364     getVariationInstances(): InspectorVariationInstance[];
18367 declare var InspectorFontFace: {
18368     prototype: InspectorFontFace;
18369     new(): InspectorFontFace;
18370     isInstance(obj): obj is InspectorFontFace;
18373 interface InstallTriggerImpl {
18374     enabled(): boolean;
18375     install(installs: Record<string, string | InstallTriggerData>, callback?: InstallTriggerCallback): boolean;
18376     installChrome(type: number, url: string, skin: string): boolean;
18377     startSoftwareUpdate(url: string, flags?: number): boolean;
18378     updateEnabled(): boolean;
18379     readonly SKIN: 1;
18380     readonly LOCALE: 2;
18381     readonly CONTENT: 4;
18382     readonly PACKAGE: 7;
18385 declare var InstallTriggerImpl: {
18386     prototype: InstallTriggerImpl;
18387     new(): InstallTriggerImpl;
18388     readonly SKIN: 1;
18389     readonly LOCALE: 2;
18390     readonly CONTENT: 4;
18391     readonly PACKAGE: 7;
18392     isInstance(obj): obj is InstallTriggerImpl;
18396  * provides a way to asynchronously observe changes in the intersection of a target element with an ancestor element or with a top-level document's viewport.
18398  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver)
18399  */
18400 interface IntersectionObserver {
18401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/root) */
18402     readonly root: Node | null;
18403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/rootMargin) */
18404     readonly rootMargin: UTF8String;
18405     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/thresholds) */
18406     readonly thresholds: number[];
18407     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/disconnect) */
18408     disconnect(): void;
18409     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/observe) */
18410     observe(target: Element): void;
18411     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/takeRecords) */
18412     takeRecords(): IntersectionObserverEntry[];
18413     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/unobserve) */
18414     unobserve(target: Element): void;
18417 declare var IntersectionObserver: {
18418     prototype: IntersectionObserver;
18419     new(intersectionCallback: IntersectionCallback, options?: IntersectionObserverInit): IntersectionObserver;
18420     isInstance(obj): obj is IntersectionObserver;
18424  * This Intersection Observer API interface describes the intersection between the target element and its root container at a specific moment of transition.
18426  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry)
18427  */
18428 interface IntersectionObserverEntry {
18429     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/boundingClientRect) */
18430     readonly boundingClientRect: DOMRectReadOnly;
18431     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/intersectionRatio) */
18432     readonly intersectionRatio: number;
18433     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/intersectionRect) */
18434     readonly intersectionRect: DOMRectReadOnly;
18435     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/isIntersecting) */
18436     readonly isIntersecting: boolean;
18437     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/rootBounds) */
18438     readonly rootBounds: DOMRectReadOnly | null;
18439     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/target) */
18440     readonly target: Element;
18441     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/time) */
18442     readonly time: DOMHighResTimeStamp;
18445 declare var IntersectionObserverEntry: {
18446     prototype: IntersectionObserverEntry;
18447     new(): IntersectionObserverEntry;
18448     isInstance(obj): obj is IntersectionObserverEntry;
18451 interface IntlUtils {
18452     getDisplayNames(locales: string[], options?: DisplayNameOptions): DisplayNameResult;
18453     isAppLocaleRTL(): boolean;
18456 interface InvokeEvent extends Event {
18457     readonly action: string;
18458     readonly invoker: Element | null;
18461 declare var InvokeEvent: {
18462     prototype: InvokeEvent;
18463     new(type: string, eventInitDict?: InvokeEventInit): InvokeEvent;
18464     isInstance(obj): obj is InvokeEvent;
18467 interface InvokerElement {
18468     invokeAction: string;
18469     invokeTargetElement: Element | null;
18472 interface JSActor {
18473     readonly name: UTF8String;
18474     sendAsyncMessage(messageName: string, obj?: any, transferables?: any): void;
18475     sendQuery(messageName: string, obj?: any): Promise<any>;
18478 interface JSProcessActorChild extends JSActor {
18479     readonly manager: nsIDOMProcessChild;
18482 declare var JSProcessActorChild: {
18483     prototype: JSProcessActorChild;
18484     new(): JSProcessActorChild;
18485     isInstance(obj): obj is JSProcessActorChild;
18488 interface JSProcessActorParent extends JSActor {
18489     readonly manager: nsIDOMProcessParent;
18492 declare var JSProcessActorParent: {
18493     prototype: JSProcessActorParent;
18494     new(): JSProcessActorParent;
18495     isInstance(obj): obj is JSProcessActorParent;
18498 interface JSWindowActorChild extends JSActor {
18499     readonly browsingContext: BrowsingContext | null;
18500     readonly contentWindow: WindowProxy | null;
18501     readonly docShell: nsIDocShell | null;
18502     readonly document: Document | null;
18503     readonly manager: WindowGlobalChild | null;
18504     readonly windowContext: WindowContext | null;
18507 declare var JSWindowActorChild: {
18508     prototype: JSWindowActorChild;
18509     new(): JSWindowActorChild;
18510     isInstance(obj): obj is JSWindowActorChild;
18513 interface JSWindowActorParent extends JSActor {
18514     readonly browsingContext: CanonicalBrowsingContext | null;
18515     readonly manager: WindowGlobalParent | null;
18516     readonly windowContext: WindowContext | null;
18519 declare var JSWindowActorParent: {
18520     prototype: JSWindowActorParent;
18521     new(): JSWindowActorParent;
18522     isInstance(obj): obj is JSWindowActorParent;
18525 interface KeyEvent extends KeyEventMixin {
18528 declare var KeyEvent: {
18529     prototype: KeyEvent;
18530     new(): KeyEvent;
18531     readonly DOM_VK_CANCEL: 0x03;
18532     readonly DOM_VK_HELP: 0x06;
18533     readonly DOM_VK_BACK_SPACE: 0x08;
18534     readonly DOM_VK_TAB: 0x09;
18535     readonly DOM_VK_CLEAR: 0x0C;
18536     readonly DOM_VK_RETURN: 0x0D;
18537     readonly DOM_VK_SHIFT: 0x10;
18538     readonly DOM_VK_CONTROL: 0x11;
18539     readonly DOM_VK_ALT: 0x12;
18540     readonly DOM_VK_PAUSE: 0x13;
18541     readonly DOM_VK_CAPS_LOCK: 0x14;
18542     readonly DOM_VK_KANA: 0x15;
18543     readonly DOM_VK_HANGUL: 0x15;
18544     readonly DOM_VK_EISU: 0x16;
18545     readonly DOM_VK_JUNJA: 0x17;
18546     readonly DOM_VK_FINAL: 0x18;
18547     readonly DOM_VK_HANJA: 0x19;
18548     readonly DOM_VK_KANJI: 0x19;
18549     readonly DOM_VK_ESCAPE: 0x1B;
18550     readonly DOM_VK_CONVERT: 0x1C;
18551     readonly DOM_VK_NONCONVERT: 0x1D;
18552     readonly DOM_VK_ACCEPT: 0x1E;
18553     readonly DOM_VK_MODECHANGE: 0x1F;
18554     readonly DOM_VK_SPACE: 0x20;
18555     readonly DOM_VK_PAGE_UP: 0x21;
18556     readonly DOM_VK_PAGE_DOWN: 0x22;
18557     readonly DOM_VK_END: 0x23;
18558     readonly DOM_VK_HOME: 0x24;
18559     readonly DOM_VK_LEFT: 0x25;
18560     readonly DOM_VK_UP: 0x26;
18561     readonly DOM_VK_RIGHT: 0x27;
18562     readonly DOM_VK_DOWN: 0x28;
18563     readonly DOM_VK_SELECT: 0x29;
18564     readonly DOM_VK_PRINT: 0x2A;
18565     readonly DOM_VK_EXECUTE: 0x2B;
18566     readonly DOM_VK_PRINTSCREEN: 0x2C;
18567     readonly DOM_VK_INSERT: 0x2D;
18568     readonly DOM_VK_DELETE: 0x2E;
18569     readonly DOM_VK_0: 0x30;
18570     readonly DOM_VK_1: 0x31;
18571     readonly DOM_VK_2: 0x32;
18572     readonly DOM_VK_3: 0x33;
18573     readonly DOM_VK_4: 0x34;
18574     readonly DOM_VK_5: 0x35;
18575     readonly DOM_VK_6: 0x36;
18576     readonly DOM_VK_7: 0x37;
18577     readonly DOM_VK_8: 0x38;
18578     readonly DOM_VK_9: 0x39;
18579     readonly DOM_VK_COLON: 0x3A;
18580     readonly DOM_VK_SEMICOLON: 0x3B;
18581     readonly DOM_VK_LESS_THAN: 0x3C;
18582     readonly DOM_VK_EQUALS: 0x3D;
18583     readonly DOM_VK_GREATER_THAN: 0x3E;
18584     readonly DOM_VK_QUESTION_MARK: 0x3F;
18585     readonly DOM_VK_AT: 0x40;
18586     readonly DOM_VK_A: 0x41;
18587     readonly DOM_VK_B: 0x42;
18588     readonly DOM_VK_C: 0x43;
18589     readonly DOM_VK_D: 0x44;
18590     readonly DOM_VK_E: 0x45;
18591     readonly DOM_VK_F: 0x46;
18592     readonly DOM_VK_G: 0x47;
18593     readonly DOM_VK_H: 0x48;
18594     readonly DOM_VK_I: 0x49;
18595     readonly DOM_VK_J: 0x4A;
18596     readonly DOM_VK_K: 0x4B;
18597     readonly DOM_VK_L: 0x4C;
18598     readonly DOM_VK_M: 0x4D;
18599     readonly DOM_VK_N: 0x4E;
18600     readonly DOM_VK_O: 0x4F;
18601     readonly DOM_VK_P: 0x50;
18602     readonly DOM_VK_Q: 0x51;
18603     readonly DOM_VK_R: 0x52;
18604     readonly DOM_VK_S: 0x53;
18605     readonly DOM_VK_T: 0x54;
18606     readonly DOM_VK_U: 0x55;
18607     readonly DOM_VK_V: 0x56;
18608     readonly DOM_VK_W: 0x57;
18609     readonly DOM_VK_X: 0x58;
18610     readonly DOM_VK_Y: 0x59;
18611     readonly DOM_VK_Z: 0x5A;
18612     readonly DOM_VK_WIN: 0x5B;
18613     readonly DOM_VK_CONTEXT_MENU: 0x5D;
18614     readonly DOM_VK_SLEEP: 0x5F;
18615     readonly DOM_VK_NUMPAD0: 0x60;
18616     readonly DOM_VK_NUMPAD1: 0x61;
18617     readonly DOM_VK_NUMPAD2: 0x62;
18618     readonly DOM_VK_NUMPAD3: 0x63;
18619     readonly DOM_VK_NUMPAD4: 0x64;
18620     readonly DOM_VK_NUMPAD5: 0x65;
18621     readonly DOM_VK_NUMPAD6: 0x66;
18622     readonly DOM_VK_NUMPAD7: 0x67;
18623     readonly DOM_VK_NUMPAD8: 0x68;
18624     readonly DOM_VK_NUMPAD9: 0x69;
18625     readonly DOM_VK_MULTIPLY: 0x6A;
18626     readonly DOM_VK_ADD: 0x6B;
18627     readonly DOM_VK_SEPARATOR: 0x6C;
18628     readonly DOM_VK_SUBTRACT: 0x6D;
18629     readonly DOM_VK_DECIMAL: 0x6E;
18630     readonly DOM_VK_DIVIDE: 0x6F;
18631     readonly DOM_VK_F1: 0x70;
18632     readonly DOM_VK_F2: 0x71;
18633     readonly DOM_VK_F3: 0x72;
18634     readonly DOM_VK_F4: 0x73;
18635     readonly DOM_VK_F5: 0x74;
18636     readonly DOM_VK_F6: 0x75;
18637     readonly DOM_VK_F7: 0x76;
18638     readonly DOM_VK_F8: 0x77;
18639     readonly DOM_VK_F9: 0x78;
18640     readonly DOM_VK_F10: 0x79;
18641     readonly DOM_VK_F11: 0x7A;
18642     readonly DOM_VK_F12: 0x7B;
18643     readonly DOM_VK_F13: 0x7C;
18644     readonly DOM_VK_F14: 0x7D;
18645     readonly DOM_VK_F15: 0x7E;
18646     readonly DOM_VK_F16: 0x7F;
18647     readonly DOM_VK_F17: 0x80;
18648     readonly DOM_VK_F18: 0x81;
18649     readonly DOM_VK_F19: 0x82;
18650     readonly DOM_VK_F20: 0x83;
18651     readonly DOM_VK_F21: 0x84;
18652     readonly DOM_VK_F22: 0x85;
18653     readonly DOM_VK_F23: 0x86;
18654     readonly DOM_VK_F24: 0x87;
18655     readonly DOM_VK_NUM_LOCK: 0x90;
18656     readonly DOM_VK_SCROLL_LOCK: 0x91;
18657     readonly DOM_VK_WIN_OEM_FJ_JISHO: 0x92;
18658     readonly DOM_VK_WIN_OEM_FJ_MASSHOU: 0x93;
18659     readonly DOM_VK_WIN_OEM_FJ_TOUROKU: 0x94;
18660     readonly DOM_VK_WIN_OEM_FJ_LOYA: 0x95;
18661     readonly DOM_VK_WIN_OEM_FJ_ROYA: 0x96;
18662     readonly DOM_VK_CIRCUMFLEX: 0xA0;
18663     readonly DOM_VK_EXCLAMATION: 0xA1;
18664     readonly DOM_VK_DOUBLE_QUOTE: 0xA2;
18665     readonly DOM_VK_HASH: 0xA3;
18666     readonly DOM_VK_DOLLAR: 0xA4;
18667     readonly DOM_VK_PERCENT: 0xA5;
18668     readonly DOM_VK_AMPERSAND: 0xA6;
18669     readonly DOM_VK_UNDERSCORE: 0xA7;
18670     readonly DOM_VK_OPEN_PAREN: 0xA8;
18671     readonly DOM_VK_CLOSE_PAREN: 0xA9;
18672     readonly DOM_VK_ASTERISK: 0xAA;
18673     readonly DOM_VK_PLUS: 0xAB;
18674     readonly DOM_VK_PIPE: 0xAC;
18675     readonly DOM_VK_HYPHEN_MINUS: 0xAD;
18676     readonly DOM_VK_OPEN_CURLY_BRACKET: 0xAE;
18677     readonly DOM_VK_CLOSE_CURLY_BRACKET: 0xAF;
18678     readonly DOM_VK_TILDE: 0xB0;
18679     readonly DOM_VK_VOLUME_MUTE: 0xB5;
18680     readonly DOM_VK_VOLUME_DOWN: 0xB6;
18681     readonly DOM_VK_VOLUME_UP: 0xB7;
18682     readonly DOM_VK_COMMA: 0xBC;
18683     readonly DOM_VK_PERIOD: 0xBE;
18684     readonly DOM_VK_SLASH: 0xBF;
18685     readonly DOM_VK_BACK_QUOTE: 0xC0;
18686     readonly DOM_VK_OPEN_BRACKET: 0xDB;
18687     readonly DOM_VK_BACK_SLASH: 0xDC;
18688     readonly DOM_VK_CLOSE_BRACKET: 0xDD;
18689     readonly DOM_VK_QUOTE: 0xDE;
18690     readonly DOM_VK_META: 0xE0;
18691     readonly DOM_VK_ALTGR: 0xE1;
18692     readonly DOM_VK_WIN_ICO_HELP: 0xE3;
18693     readonly DOM_VK_WIN_ICO_00: 0xE4;
18694     readonly DOM_VK_PROCESSKEY: 0xE5;
18695     readonly DOM_VK_WIN_ICO_CLEAR: 0xE6;
18696     readonly DOM_VK_WIN_OEM_RESET: 0xE9;
18697     readonly DOM_VK_WIN_OEM_JUMP: 0xEA;
18698     readonly DOM_VK_WIN_OEM_PA1: 0xEB;
18699     readonly DOM_VK_WIN_OEM_PA2: 0xEC;
18700     readonly DOM_VK_WIN_OEM_PA3: 0xED;
18701     readonly DOM_VK_WIN_OEM_WSCTRL: 0xEE;
18702     readonly DOM_VK_WIN_OEM_CUSEL: 0xEF;
18703     readonly DOM_VK_WIN_OEM_ATTN: 0xF0;
18704     readonly DOM_VK_WIN_OEM_FINISH: 0xF1;
18705     readonly DOM_VK_WIN_OEM_COPY: 0xF2;
18706     readonly DOM_VK_WIN_OEM_AUTO: 0xF3;
18707     readonly DOM_VK_WIN_OEM_ENLW: 0xF4;
18708     readonly DOM_VK_WIN_OEM_BACKTAB: 0xF5;
18709     readonly DOM_VK_ATTN: 0xF6;
18710     readonly DOM_VK_CRSEL: 0xF7;
18711     readonly DOM_VK_EXSEL: 0xF8;
18712     readonly DOM_VK_EREOF: 0xF9;
18713     readonly DOM_VK_PLAY: 0xFA;
18714     readonly DOM_VK_ZOOM: 0xFB;
18715     readonly DOM_VK_PA1: 0xFD;
18716     readonly DOM_VK_WIN_OEM_CLEAR: 0xFE;
18717     isInstance(obj): obj is KeyEvent;
18720 interface KeyEventMixin {
18721     initKeyEvent(type: string, canBubble?: boolean, cancelable?: boolean, view?: Window | null, ctrlKey?: boolean, altKey?: boolean, shiftKey?: boolean, metaKey?: boolean, keyCode?: number, charCode?: number): void;
18722     readonly DOM_VK_CANCEL: 0x03;
18723     readonly DOM_VK_HELP: 0x06;
18724     readonly DOM_VK_BACK_SPACE: 0x08;
18725     readonly DOM_VK_TAB: 0x09;
18726     readonly DOM_VK_CLEAR: 0x0C;
18727     readonly DOM_VK_RETURN: 0x0D;
18728     readonly DOM_VK_SHIFT: 0x10;
18729     readonly DOM_VK_CONTROL: 0x11;
18730     readonly DOM_VK_ALT: 0x12;
18731     readonly DOM_VK_PAUSE: 0x13;
18732     readonly DOM_VK_CAPS_LOCK: 0x14;
18733     readonly DOM_VK_KANA: 0x15;
18734     readonly DOM_VK_HANGUL: 0x15;
18735     readonly DOM_VK_EISU: 0x16;
18736     readonly DOM_VK_JUNJA: 0x17;
18737     readonly DOM_VK_FINAL: 0x18;
18738     readonly DOM_VK_HANJA: 0x19;
18739     readonly DOM_VK_KANJI: 0x19;
18740     readonly DOM_VK_ESCAPE: 0x1B;
18741     readonly DOM_VK_CONVERT: 0x1C;
18742     readonly DOM_VK_NONCONVERT: 0x1D;
18743     readonly DOM_VK_ACCEPT: 0x1E;
18744     readonly DOM_VK_MODECHANGE: 0x1F;
18745     readonly DOM_VK_SPACE: 0x20;
18746     readonly DOM_VK_PAGE_UP: 0x21;
18747     readonly DOM_VK_PAGE_DOWN: 0x22;
18748     readonly DOM_VK_END: 0x23;
18749     readonly DOM_VK_HOME: 0x24;
18750     readonly DOM_VK_LEFT: 0x25;
18751     readonly DOM_VK_UP: 0x26;
18752     readonly DOM_VK_RIGHT: 0x27;
18753     readonly DOM_VK_DOWN: 0x28;
18754     readonly DOM_VK_SELECT: 0x29;
18755     readonly DOM_VK_PRINT: 0x2A;
18756     readonly DOM_VK_EXECUTE: 0x2B;
18757     readonly DOM_VK_PRINTSCREEN: 0x2C;
18758     readonly DOM_VK_INSERT: 0x2D;
18759     readonly DOM_VK_DELETE: 0x2E;
18760     readonly DOM_VK_0: 0x30;
18761     readonly DOM_VK_1: 0x31;
18762     readonly DOM_VK_2: 0x32;
18763     readonly DOM_VK_3: 0x33;
18764     readonly DOM_VK_4: 0x34;
18765     readonly DOM_VK_5: 0x35;
18766     readonly DOM_VK_6: 0x36;
18767     readonly DOM_VK_7: 0x37;
18768     readonly DOM_VK_8: 0x38;
18769     readonly DOM_VK_9: 0x39;
18770     readonly DOM_VK_COLON: 0x3A;
18771     readonly DOM_VK_SEMICOLON: 0x3B;
18772     readonly DOM_VK_LESS_THAN: 0x3C;
18773     readonly DOM_VK_EQUALS: 0x3D;
18774     readonly DOM_VK_GREATER_THAN: 0x3E;
18775     readonly DOM_VK_QUESTION_MARK: 0x3F;
18776     readonly DOM_VK_AT: 0x40;
18777     readonly DOM_VK_A: 0x41;
18778     readonly DOM_VK_B: 0x42;
18779     readonly DOM_VK_C: 0x43;
18780     readonly DOM_VK_D: 0x44;
18781     readonly DOM_VK_E: 0x45;
18782     readonly DOM_VK_F: 0x46;
18783     readonly DOM_VK_G: 0x47;
18784     readonly DOM_VK_H: 0x48;
18785     readonly DOM_VK_I: 0x49;
18786     readonly DOM_VK_J: 0x4A;
18787     readonly DOM_VK_K: 0x4B;
18788     readonly DOM_VK_L: 0x4C;
18789     readonly DOM_VK_M: 0x4D;
18790     readonly DOM_VK_N: 0x4E;
18791     readonly DOM_VK_O: 0x4F;
18792     readonly DOM_VK_P: 0x50;
18793     readonly DOM_VK_Q: 0x51;
18794     readonly DOM_VK_R: 0x52;
18795     readonly DOM_VK_S: 0x53;
18796     readonly DOM_VK_T: 0x54;
18797     readonly DOM_VK_U: 0x55;
18798     readonly DOM_VK_V: 0x56;
18799     readonly DOM_VK_W: 0x57;
18800     readonly DOM_VK_X: 0x58;
18801     readonly DOM_VK_Y: 0x59;
18802     readonly DOM_VK_Z: 0x5A;
18803     readonly DOM_VK_WIN: 0x5B;
18804     readonly DOM_VK_CONTEXT_MENU: 0x5D;
18805     readonly DOM_VK_SLEEP: 0x5F;
18806     readonly DOM_VK_NUMPAD0: 0x60;
18807     readonly DOM_VK_NUMPAD1: 0x61;
18808     readonly DOM_VK_NUMPAD2: 0x62;
18809     readonly DOM_VK_NUMPAD3: 0x63;
18810     readonly DOM_VK_NUMPAD4: 0x64;
18811     readonly DOM_VK_NUMPAD5: 0x65;
18812     readonly DOM_VK_NUMPAD6: 0x66;
18813     readonly DOM_VK_NUMPAD7: 0x67;
18814     readonly DOM_VK_NUMPAD8: 0x68;
18815     readonly DOM_VK_NUMPAD9: 0x69;
18816     readonly DOM_VK_MULTIPLY: 0x6A;
18817     readonly DOM_VK_ADD: 0x6B;
18818     readonly DOM_VK_SEPARATOR: 0x6C;
18819     readonly DOM_VK_SUBTRACT: 0x6D;
18820     readonly DOM_VK_DECIMAL: 0x6E;
18821     readonly DOM_VK_DIVIDE: 0x6F;
18822     readonly DOM_VK_F1: 0x70;
18823     readonly DOM_VK_F2: 0x71;
18824     readonly DOM_VK_F3: 0x72;
18825     readonly DOM_VK_F4: 0x73;
18826     readonly DOM_VK_F5: 0x74;
18827     readonly DOM_VK_F6: 0x75;
18828     readonly DOM_VK_F7: 0x76;
18829     readonly DOM_VK_F8: 0x77;
18830     readonly DOM_VK_F9: 0x78;
18831     readonly DOM_VK_F10: 0x79;
18832     readonly DOM_VK_F11: 0x7A;
18833     readonly DOM_VK_F12: 0x7B;
18834     readonly DOM_VK_F13: 0x7C;
18835     readonly DOM_VK_F14: 0x7D;
18836     readonly DOM_VK_F15: 0x7E;
18837     readonly DOM_VK_F16: 0x7F;
18838     readonly DOM_VK_F17: 0x80;
18839     readonly DOM_VK_F18: 0x81;
18840     readonly DOM_VK_F19: 0x82;
18841     readonly DOM_VK_F20: 0x83;
18842     readonly DOM_VK_F21: 0x84;
18843     readonly DOM_VK_F22: 0x85;
18844     readonly DOM_VK_F23: 0x86;
18845     readonly DOM_VK_F24: 0x87;
18846     readonly DOM_VK_NUM_LOCK: 0x90;
18847     readonly DOM_VK_SCROLL_LOCK: 0x91;
18848     readonly DOM_VK_WIN_OEM_FJ_JISHO: 0x92;
18849     readonly DOM_VK_WIN_OEM_FJ_MASSHOU: 0x93;
18850     readonly DOM_VK_WIN_OEM_FJ_TOUROKU: 0x94;
18851     readonly DOM_VK_WIN_OEM_FJ_LOYA: 0x95;
18852     readonly DOM_VK_WIN_OEM_FJ_ROYA: 0x96;
18853     readonly DOM_VK_CIRCUMFLEX: 0xA0;
18854     readonly DOM_VK_EXCLAMATION: 0xA1;
18855     readonly DOM_VK_DOUBLE_QUOTE: 0xA2;
18856     readonly DOM_VK_HASH: 0xA3;
18857     readonly DOM_VK_DOLLAR: 0xA4;
18858     readonly DOM_VK_PERCENT: 0xA5;
18859     readonly DOM_VK_AMPERSAND: 0xA6;
18860     readonly DOM_VK_UNDERSCORE: 0xA7;
18861     readonly DOM_VK_OPEN_PAREN: 0xA8;
18862     readonly DOM_VK_CLOSE_PAREN: 0xA9;
18863     readonly DOM_VK_ASTERISK: 0xAA;
18864     readonly DOM_VK_PLUS: 0xAB;
18865     readonly DOM_VK_PIPE: 0xAC;
18866     readonly DOM_VK_HYPHEN_MINUS: 0xAD;
18867     readonly DOM_VK_OPEN_CURLY_BRACKET: 0xAE;
18868     readonly DOM_VK_CLOSE_CURLY_BRACKET: 0xAF;
18869     readonly DOM_VK_TILDE: 0xB0;
18870     readonly DOM_VK_VOLUME_MUTE: 0xB5;
18871     readonly DOM_VK_VOLUME_DOWN: 0xB6;
18872     readonly DOM_VK_VOLUME_UP: 0xB7;
18873     readonly DOM_VK_COMMA: 0xBC;
18874     readonly DOM_VK_PERIOD: 0xBE;
18875     readonly DOM_VK_SLASH: 0xBF;
18876     readonly DOM_VK_BACK_QUOTE: 0xC0;
18877     readonly DOM_VK_OPEN_BRACKET: 0xDB;
18878     readonly DOM_VK_BACK_SLASH: 0xDC;
18879     readonly DOM_VK_CLOSE_BRACKET: 0xDD;
18880     readonly DOM_VK_QUOTE: 0xDE;
18881     readonly DOM_VK_META: 0xE0;
18882     readonly DOM_VK_ALTGR: 0xE1;
18883     readonly DOM_VK_WIN_ICO_HELP: 0xE3;
18884     readonly DOM_VK_WIN_ICO_00: 0xE4;
18885     readonly DOM_VK_PROCESSKEY: 0xE5;
18886     readonly DOM_VK_WIN_ICO_CLEAR: 0xE6;
18887     readonly DOM_VK_WIN_OEM_RESET: 0xE9;
18888     readonly DOM_VK_WIN_OEM_JUMP: 0xEA;
18889     readonly DOM_VK_WIN_OEM_PA1: 0xEB;
18890     readonly DOM_VK_WIN_OEM_PA2: 0xEC;
18891     readonly DOM_VK_WIN_OEM_PA3: 0xED;
18892     readonly DOM_VK_WIN_OEM_WSCTRL: 0xEE;
18893     readonly DOM_VK_WIN_OEM_CUSEL: 0xEF;
18894     readonly DOM_VK_WIN_OEM_ATTN: 0xF0;
18895     readonly DOM_VK_WIN_OEM_FINISH: 0xF1;
18896     readonly DOM_VK_WIN_OEM_COPY: 0xF2;
18897     readonly DOM_VK_WIN_OEM_AUTO: 0xF3;
18898     readonly DOM_VK_WIN_OEM_ENLW: 0xF4;
18899     readonly DOM_VK_WIN_OEM_BACKTAB: 0xF5;
18900     readonly DOM_VK_ATTN: 0xF6;
18901     readonly DOM_VK_CRSEL: 0xF7;
18902     readonly DOM_VK_EXSEL: 0xF8;
18903     readonly DOM_VK_EREOF: 0xF9;
18904     readonly DOM_VK_PLAY: 0xFA;
18905     readonly DOM_VK_ZOOM: 0xFB;
18906     readonly DOM_VK_PA1: 0xFD;
18907     readonly DOM_VK_WIN_OEM_CLEAR: 0xFE;
18911  * KeyboardEvent objects describe a user interaction with the keyboard; each event describes a single interaction between the user and a key (or combination of a key with modifier keys) on the keyboard.
18913  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent)
18914  */
18915 interface KeyboardEvent extends UIEvent, KeyEventMixin {
18916     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/altKey) */
18917     readonly altKey: boolean;
18918     /**
18919      * @deprecated
18920      *
18921      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/charCode)
18922      */
18923     readonly charCode: number;
18924     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/code) */
18925     readonly code: string;
18926     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/ctrlKey) */
18927     readonly ctrlKey: boolean;
18928     readonly initDict: KeyboardEventInit;
18929     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/isComposing) */
18930     readonly isComposing: boolean;
18931     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/key) */
18932     readonly key: string;
18933     /**
18934      * @deprecated
18935      *
18936      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/keyCode)
18937      */
18938     readonly keyCode: number;
18939     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/location) */
18940     readonly location: number;
18941     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/metaKey) */
18942     readonly metaKey: boolean;
18943     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/repeat) */
18944     readonly repeat: boolean;
18945     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/shiftKey) */
18946     readonly shiftKey: boolean;
18947     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/getModifierState) */
18948     getModifierState(key: string): boolean;
18949     /**
18950      * @deprecated
18951      *
18952      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/initKeyboardEvent)
18953      */
18954     initKeyboardEvent(typeArg: string, bubblesArg?: boolean, cancelableArg?: boolean, viewArg?: Window | null, keyArg?: string, locationArg?: number, ctrlKey?: boolean, altKey?: boolean, shiftKey?: boolean, metaKey?: boolean): void;
18955     readonly DOM_KEY_LOCATION_STANDARD: 0x00;
18956     readonly DOM_KEY_LOCATION_LEFT: 0x01;
18957     readonly DOM_KEY_LOCATION_RIGHT: 0x02;
18958     readonly DOM_KEY_LOCATION_NUMPAD: 0x03;
18961 declare var KeyboardEvent: {
18962     prototype: KeyboardEvent;
18963     new(typeArg: string, keyboardEventInitDict?: KeyboardEventInit): KeyboardEvent;
18964     readonly DOM_KEY_LOCATION_STANDARD: 0x00;
18965     readonly DOM_KEY_LOCATION_LEFT: 0x01;
18966     readonly DOM_KEY_LOCATION_RIGHT: 0x02;
18967     readonly DOM_KEY_LOCATION_NUMPAD: 0x03;
18968     readonly DOM_VK_CANCEL: 0x03;
18969     readonly DOM_VK_HELP: 0x06;
18970     readonly DOM_VK_BACK_SPACE: 0x08;
18971     readonly DOM_VK_TAB: 0x09;
18972     readonly DOM_VK_CLEAR: 0x0C;
18973     readonly DOM_VK_RETURN: 0x0D;
18974     readonly DOM_VK_SHIFT: 0x10;
18975     readonly DOM_VK_CONTROL: 0x11;
18976     readonly DOM_VK_ALT: 0x12;
18977     readonly DOM_VK_PAUSE: 0x13;
18978     readonly DOM_VK_CAPS_LOCK: 0x14;
18979     readonly DOM_VK_KANA: 0x15;
18980     readonly DOM_VK_HANGUL: 0x15;
18981     readonly DOM_VK_EISU: 0x16;
18982     readonly DOM_VK_JUNJA: 0x17;
18983     readonly DOM_VK_FINAL: 0x18;
18984     readonly DOM_VK_HANJA: 0x19;
18985     readonly DOM_VK_KANJI: 0x19;
18986     readonly DOM_VK_ESCAPE: 0x1B;
18987     readonly DOM_VK_CONVERT: 0x1C;
18988     readonly DOM_VK_NONCONVERT: 0x1D;
18989     readonly DOM_VK_ACCEPT: 0x1E;
18990     readonly DOM_VK_MODECHANGE: 0x1F;
18991     readonly DOM_VK_SPACE: 0x20;
18992     readonly DOM_VK_PAGE_UP: 0x21;
18993     readonly DOM_VK_PAGE_DOWN: 0x22;
18994     readonly DOM_VK_END: 0x23;
18995     readonly DOM_VK_HOME: 0x24;
18996     readonly DOM_VK_LEFT: 0x25;
18997     readonly DOM_VK_UP: 0x26;
18998     readonly DOM_VK_RIGHT: 0x27;
18999     readonly DOM_VK_DOWN: 0x28;
19000     readonly DOM_VK_SELECT: 0x29;
19001     readonly DOM_VK_PRINT: 0x2A;
19002     readonly DOM_VK_EXECUTE: 0x2B;
19003     readonly DOM_VK_PRINTSCREEN: 0x2C;
19004     readonly DOM_VK_INSERT: 0x2D;
19005     readonly DOM_VK_DELETE: 0x2E;
19006     readonly DOM_VK_0: 0x30;
19007     readonly DOM_VK_1: 0x31;
19008     readonly DOM_VK_2: 0x32;
19009     readonly DOM_VK_3: 0x33;
19010     readonly DOM_VK_4: 0x34;
19011     readonly DOM_VK_5: 0x35;
19012     readonly DOM_VK_6: 0x36;
19013     readonly DOM_VK_7: 0x37;
19014     readonly DOM_VK_8: 0x38;
19015     readonly DOM_VK_9: 0x39;
19016     readonly DOM_VK_COLON: 0x3A;
19017     readonly DOM_VK_SEMICOLON: 0x3B;
19018     readonly DOM_VK_LESS_THAN: 0x3C;
19019     readonly DOM_VK_EQUALS: 0x3D;
19020     readonly DOM_VK_GREATER_THAN: 0x3E;
19021     readonly DOM_VK_QUESTION_MARK: 0x3F;
19022     readonly DOM_VK_AT: 0x40;
19023     readonly DOM_VK_A: 0x41;
19024     readonly DOM_VK_B: 0x42;
19025     readonly DOM_VK_C: 0x43;
19026     readonly DOM_VK_D: 0x44;
19027     readonly DOM_VK_E: 0x45;
19028     readonly DOM_VK_F: 0x46;
19029     readonly DOM_VK_G: 0x47;
19030     readonly DOM_VK_H: 0x48;
19031     readonly DOM_VK_I: 0x49;
19032     readonly DOM_VK_J: 0x4A;
19033     readonly DOM_VK_K: 0x4B;
19034     readonly DOM_VK_L: 0x4C;
19035     readonly DOM_VK_M: 0x4D;
19036     readonly DOM_VK_N: 0x4E;
19037     readonly DOM_VK_O: 0x4F;
19038     readonly DOM_VK_P: 0x50;
19039     readonly DOM_VK_Q: 0x51;
19040     readonly DOM_VK_R: 0x52;
19041     readonly DOM_VK_S: 0x53;
19042     readonly DOM_VK_T: 0x54;
19043     readonly DOM_VK_U: 0x55;
19044     readonly DOM_VK_V: 0x56;
19045     readonly DOM_VK_W: 0x57;
19046     readonly DOM_VK_X: 0x58;
19047     readonly DOM_VK_Y: 0x59;
19048     readonly DOM_VK_Z: 0x5A;
19049     readonly DOM_VK_WIN: 0x5B;
19050     readonly DOM_VK_CONTEXT_MENU: 0x5D;
19051     readonly DOM_VK_SLEEP: 0x5F;
19052     readonly DOM_VK_NUMPAD0: 0x60;
19053     readonly DOM_VK_NUMPAD1: 0x61;
19054     readonly DOM_VK_NUMPAD2: 0x62;
19055     readonly DOM_VK_NUMPAD3: 0x63;
19056     readonly DOM_VK_NUMPAD4: 0x64;
19057     readonly DOM_VK_NUMPAD5: 0x65;
19058     readonly DOM_VK_NUMPAD6: 0x66;
19059     readonly DOM_VK_NUMPAD7: 0x67;
19060     readonly DOM_VK_NUMPAD8: 0x68;
19061     readonly DOM_VK_NUMPAD9: 0x69;
19062     readonly DOM_VK_MULTIPLY: 0x6A;
19063     readonly DOM_VK_ADD: 0x6B;
19064     readonly DOM_VK_SEPARATOR: 0x6C;
19065     readonly DOM_VK_SUBTRACT: 0x6D;
19066     readonly DOM_VK_DECIMAL: 0x6E;
19067     readonly DOM_VK_DIVIDE: 0x6F;
19068     readonly DOM_VK_F1: 0x70;
19069     readonly DOM_VK_F2: 0x71;
19070     readonly DOM_VK_F3: 0x72;
19071     readonly DOM_VK_F4: 0x73;
19072     readonly DOM_VK_F5: 0x74;
19073     readonly DOM_VK_F6: 0x75;
19074     readonly DOM_VK_F7: 0x76;
19075     readonly DOM_VK_F8: 0x77;
19076     readonly DOM_VK_F9: 0x78;
19077     readonly DOM_VK_F10: 0x79;
19078     readonly DOM_VK_F11: 0x7A;
19079     readonly DOM_VK_F12: 0x7B;
19080     readonly DOM_VK_F13: 0x7C;
19081     readonly DOM_VK_F14: 0x7D;
19082     readonly DOM_VK_F15: 0x7E;
19083     readonly DOM_VK_F16: 0x7F;
19084     readonly DOM_VK_F17: 0x80;
19085     readonly DOM_VK_F18: 0x81;
19086     readonly DOM_VK_F19: 0x82;
19087     readonly DOM_VK_F20: 0x83;
19088     readonly DOM_VK_F21: 0x84;
19089     readonly DOM_VK_F22: 0x85;
19090     readonly DOM_VK_F23: 0x86;
19091     readonly DOM_VK_F24: 0x87;
19092     readonly DOM_VK_NUM_LOCK: 0x90;
19093     readonly DOM_VK_SCROLL_LOCK: 0x91;
19094     readonly DOM_VK_WIN_OEM_FJ_JISHO: 0x92;
19095     readonly DOM_VK_WIN_OEM_FJ_MASSHOU: 0x93;
19096     readonly DOM_VK_WIN_OEM_FJ_TOUROKU: 0x94;
19097     readonly DOM_VK_WIN_OEM_FJ_LOYA: 0x95;
19098     readonly DOM_VK_WIN_OEM_FJ_ROYA: 0x96;
19099     readonly DOM_VK_CIRCUMFLEX: 0xA0;
19100     readonly DOM_VK_EXCLAMATION: 0xA1;
19101     readonly DOM_VK_DOUBLE_QUOTE: 0xA2;
19102     readonly DOM_VK_HASH: 0xA3;
19103     readonly DOM_VK_DOLLAR: 0xA4;
19104     readonly DOM_VK_PERCENT: 0xA5;
19105     readonly DOM_VK_AMPERSAND: 0xA6;
19106     readonly DOM_VK_UNDERSCORE: 0xA7;
19107     readonly DOM_VK_OPEN_PAREN: 0xA8;
19108     readonly DOM_VK_CLOSE_PAREN: 0xA9;
19109     readonly DOM_VK_ASTERISK: 0xAA;
19110     readonly DOM_VK_PLUS: 0xAB;
19111     readonly DOM_VK_PIPE: 0xAC;
19112     readonly DOM_VK_HYPHEN_MINUS: 0xAD;
19113     readonly DOM_VK_OPEN_CURLY_BRACKET: 0xAE;
19114     readonly DOM_VK_CLOSE_CURLY_BRACKET: 0xAF;
19115     readonly DOM_VK_TILDE: 0xB0;
19116     readonly DOM_VK_VOLUME_MUTE: 0xB5;
19117     readonly DOM_VK_VOLUME_DOWN: 0xB6;
19118     readonly DOM_VK_VOLUME_UP: 0xB7;
19119     readonly DOM_VK_COMMA: 0xBC;
19120     readonly DOM_VK_PERIOD: 0xBE;
19121     readonly DOM_VK_SLASH: 0xBF;
19122     readonly DOM_VK_BACK_QUOTE: 0xC0;
19123     readonly DOM_VK_OPEN_BRACKET: 0xDB;
19124     readonly DOM_VK_BACK_SLASH: 0xDC;
19125     readonly DOM_VK_CLOSE_BRACKET: 0xDD;
19126     readonly DOM_VK_QUOTE: 0xDE;
19127     readonly DOM_VK_META: 0xE0;
19128     readonly DOM_VK_ALTGR: 0xE1;
19129     readonly DOM_VK_WIN_ICO_HELP: 0xE3;
19130     readonly DOM_VK_WIN_ICO_00: 0xE4;
19131     readonly DOM_VK_PROCESSKEY: 0xE5;
19132     readonly DOM_VK_WIN_ICO_CLEAR: 0xE6;
19133     readonly DOM_VK_WIN_OEM_RESET: 0xE9;
19134     readonly DOM_VK_WIN_OEM_JUMP: 0xEA;
19135     readonly DOM_VK_WIN_OEM_PA1: 0xEB;
19136     readonly DOM_VK_WIN_OEM_PA2: 0xEC;
19137     readonly DOM_VK_WIN_OEM_PA3: 0xED;
19138     readonly DOM_VK_WIN_OEM_WSCTRL: 0xEE;
19139     readonly DOM_VK_WIN_OEM_CUSEL: 0xEF;
19140     readonly DOM_VK_WIN_OEM_ATTN: 0xF0;
19141     readonly DOM_VK_WIN_OEM_FINISH: 0xF1;
19142     readonly DOM_VK_WIN_OEM_COPY: 0xF2;
19143     readonly DOM_VK_WIN_OEM_AUTO: 0xF3;
19144     readonly DOM_VK_WIN_OEM_ENLW: 0xF4;
19145     readonly DOM_VK_WIN_OEM_BACKTAB: 0xF5;
19146     readonly DOM_VK_ATTN: 0xF6;
19147     readonly DOM_VK_CRSEL: 0xF7;
19148     readonly DOM_VK_EXSEL: 0xF8;
19149     readonly DOM_VK_EREOF: 0xF9;
19150     readonly DOM_VK_PLAY: 0xFA;
19151     readonly DOM_VK_ZOOM: 0xFB;
19152     readonly DOM_VK_PA1: 0xFD;
19153     readonly DOM_VK_WIN_OEM_CLEAR: 0xFE;
19154     isInstance(obj): obj is KeyboardEvent;
19157 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect) */
19158 interface KeyframeEffect extends AnimationEffect {
19159     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/composite) */
19160     composite: CompositeOperation;
19161     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/iterationComposite) */
19162     iterationComposite: IterationCompositeOperation;
19163     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/pseudoElement) */
19164     pseudoElement: string | null;
19165     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/target) */
19166     target: Element | null;
19167     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/getKeyframes) */
19168     getKeyframes(): any[];
19169     getProperties(): AnimationPropertyDetails[];
19170     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/setKeyframes) */
19171     setKeyframes(keyframes: any): void;
19174 declare var KeyframeEffect: {
19175     prototype: KeyframeEffect;
19176     new(target: Element | null, keyframes: any, options?: number | KeyframeEffectOptions): KeyframeEffect;
19177     new(source: KeyframeEffect): KeyframeEffect;
19178     isInstance(obj): obj is KeyframeEffect;
19181 interface L10nFileSource {
19182     readonly index: UTF8String[] | null;
19183     readonly locales: UTF8String[];
19184     readonly metaSource: UTF8String;
19185     readonly name: UTF8String;
19186     readonly prePath: UTF8String;
19187     fetchFile(locale: UTF8String, path: UTF8String): Promise<FluentResource | null>;
19188     fetchFileSync(locale: UTF8String, path: UTF8String): FluentResource | null;
19189     hasFile(locale: UTF8String, path: UTF8String): L10nFileSourceHasFileStatus;
19192 declare var L10nFileSource: {
19193     prototype: L10nFileSource;
19194     new(name: UTF8String, metaSource: UTF8String, locales: UTF8String[], prePath: UTF8String, options?: FileSourceOptions, index?: UTF8String[]): L10nFileSource;
19195     createMock(name: UTF8String, metasource: UTF8String, locales: UTF8String[], prePath: UTF8String, fs: L10nFileSourceMockFile[]): L10nFileSource;
19196     isInstance(obj): obj is L10nFileSource;
19199 interface L10nRegistry {
19200     clearSources(): void;
19201     generateBundles(aLocales: UTF8String[], aResourceIds: L10nResourceId[]): FluentBundleAsyncIterator;
19202     generateBundlesSync(aLocales: UTF8String[], aResourceIds: L10nResourceId[]): FluentBundleIterator;
19203     getAvailableLocales(): UTF8String[];
19204     getSource(aName: UTF8String): L10nFileSource | null;
19205     getSourceNames(): UTF8String[];
19206     hasSource(aName: UTF8String): boolean;
19207     registerSources(aSources: L10nFileSource[]): void;
19208     removeSources(aSources: UTF8String[]): void;
19209     updateSources(aSources: L10nFileSource[]): void;
19212 declare var L10nRegistry: {
19213     prototype: L10nRegistry;
19214     new(aOptions?: L10nRegistryOptions): L10nRegistry;
19215     getInstance(): L10nRegistry;
19216     isInstance(obj): obj is L10nRegistry;
19219 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint) */
19220 interface LargestContentfulPaint extends PerformanceEntry {
19221     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/element) */
19222     readonly element: Element | null;
19223     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/id) */
19224     readonly id: string;
19225     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/loadTime) */
19226     readonly loadTime: DOMHighResTimeStamp;
19227     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/renderTime) */
19228     readonly renderTime: DOMHighResTimeStamp;
19229     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/size) */
19230     readonly size: number;
19231     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/url) */
19232     readonly url: string;
19233     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LargestContentfulPaint/toJSON) */
19234     toJSON(): any;
19237 declare var LargestContentfulPaint: {
19238     prototype: LargestContentfulPaint;
19239     new(): LargestContentfulPaint;
19240     isInstance(obj): obj is LargestContentfulPaint;
19243 interface LegacyMozTCPSocket {
19244     listen(port: number, options?: ServerSocketOptions, backlog?: number): TCPServerSocket;
19245     open(host: string, port: number, options?: SocketOptions): TCPSocket;
19248 interface LinkStyle {
19249     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/sheet) */
19250     readonly sheet: StyleSheet | null;
19253 interface LoadContextMixin {
19254     readonly associatedWindow: WindowProxy | null;
19255     readonly isContent: boolean;
19256     readonly originAttributes: any;
19257     readonly topFrameElement: Element | null;
19258     readonly topWindow: WindowProxy | null;
19259     usePrivateBrowsing: boolean;
19260     readonly useRemoteSubframes: boolean;
19261     readonly useRemoteTabs: boolean;
19262     useTrackingProtection: boolean;
19265 interface Localization {
19266     addResourceIds(aResourceIds: L10nResourceId[]): void;
19267     formatMessages(aKeys: L10nKey[]): Promise<(L10nMessage | null)[]>;
19268     formatMessagesSync(aKeys: L10nKey[]): (L10nMessage | null)[];
19269     formatValue(aId: UTF8String, aArgs?: L10nArgs): Promise<UTF8String | null>;
19270     formatValueSync(aId: UTF8String, aArgs?: L10nArgs): UTF8String | null;
19271     formatValues(aKeys: L10nKey[]): Promise<(UTF8String | null)[]>;
19272     formatValuesSync(aKeys: L10nKey[]): (UTF8String | null)[];
19273     removeResourceIds(aResourceIds: L10nResourceId[]): number;
19274     setAsync(): void;
19277 declare var Localization: {
19278     prototype: Localization;
19279     new(aResourceIds: L10nResourceId[], aSync?: boolean, aRegistry?: L10nRegistry, aLocales?: UTF8String[]): Localization;
19280     isInstance(obj): obj is Localization;
19284  * The location (URL) of the object it is linked to. Changes done on it are reflected on the object it relates to. Both the Document and Window interface have such a linked Location, accessible via Document.location and Window.location respectively.
19286  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location)
19287  */
19288 interface Location {
19289     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/hash) */
19290     hash: string;
19291     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/host) */
19292     host: string;
19293     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/hostname) */
19294     hostname: string;
19295     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/href) */
19296     href: string;
19297     toString(): string;
19298     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/origin) */
19299     readonly origin: string;
19300     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/pathname) */
19301     pathname: string;
19302     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/port) */
19303     port: string;
19304     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/protocol) */
19305     protocol: string;
19306     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/search) */
19307     search: string;
19308     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/assign) */
19309     assign(url: string | URL): void;
19310     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/reload) */
19311     reload(forceget?: boolean): void;
19312     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/replace) */
19313     replace(url: string | URL): void;
19316 declare var Location: {
19317     prototype: Location;
19318     new(): Location;
19319     isInstance(obj): obj is Location;
19323  * Available only in secure contexts.
19325  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock)
19326  */
19327 interface Lock {
19328     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock/mode) */
19329     readonly mode: LockMode;
19330     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock/name) */
19331     readonly name: string;
19334 declare var Lock: {
19335     prototype: Lock;
19336     new(): Lock;
19337     isInstance(obj): obj is Lock;
19341  * Available only in secure contexts.
19343  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager)
19344  */
19345 interface LockManager {
19346     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager/query) */
19347     query(): Promise<LockManagerSnapshot>;
19348     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager/request) */
19349     request(name: string, callback: LockGrantedCallback): Promise<any>;
19350     request(name: string, options: LockOptions, callback: LockGrantedCallback): Promise<any>;
19353 declare var LockManager: {
19354     prototype: LockManager;
19355     new(): LockManager;
19356     isInstance(obj): obj is LockManager;
19359 interface MIDIAccessEventMap {
19360     "statechange": Event;
19364  * Available only in secure contexts.
19366  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess)
19367  */
19368 interface MIDIAccess extends EventTarget {
19369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/inputs) */
19370     readonly inputs: MIDIInputMap;
19371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/statechange_event) */
19372     onstatechange: ((this: MIDIAccess, ev: Event) => any) | null;
19373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/outputs) */
19374     readonly outputs: MIDIOutputMap;
19375     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/sysexEnabled) */
19376     readonly sysexEnabled: boolean;
19377     addEventListener<K extends keyof MIDIAccessEventMap>(type: K, listener: (this: MIDIAccess, ev: MIDIAccessEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19378     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19379     removeEventListener<K extends keyof MIDIAccessEventMap>(type: K, listener: (this: MIDIAccess, ev: MIDIAccessEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19380     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19383 declare var MIDIAccess: {
19384     prototype: MIDIAccess;
19385     new(): MIDIAccess;
19386     isInstance(obj): obj is MIDIAccess;
19390  * Available only in secure contexts.
19392  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIConnectionEvent)
19393  */
19394 interface MIDIConnectionEvent extends Event {
19395     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIConnectionEvent/port) */
19396     readonly port: MIDIPort | null;
19399 declare var MIDIConnectionEvent: {
19400     prototype: MIDIConnectionEvent;
19401     new(type: string, eventInitDict?: MIDIConnectionEventInit): MIDIConnectionEvent;
19402     isInstance(obj): obj is MIDIConnectionEvent;
19405 interface MIDIInputEventMap extends MIDIPortEventMap {
19406     "midimessage": Event;
19410  * Available only in secure contexts.
19412  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIInput)
19413  */
19414 interface MIDIInput extends MIDIPort {
19415     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIInput/midimessage_event) */
19416     onmidimessage: ((this: MIDIInput, ev: Event) => any) | null;
19417     addEventListener<K extends keyof MIDIInputEventMap>(type: K, listener: (this: MIDIInput, ev: MIDIInputEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19418     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19419     removeEventListener<K extends keyof MIDIInputEventMap>(type: K, listener: (this: MIDIInput, ev: MIDIInputEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19420     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19423 declare var MIDIInput: {
19424     prototype: MIDIInput;
19425     new(): MIDIInput;
19426     isInstance(obj): obj is MIDIInput;
19430  * Available only in secure contexts.
19432  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIInputMap)
19433  */
19434 interface MIDIInputMap {
19435     forEach(callbackfn: (value: MIDIInput, key: string, parent: MIDIInputMap) => void, thisArg?: any): void;
19438 declare var MIDIInputMap: {
19439     prototype: MIDIInputMap;
19440     new(): MIDIInputMap;
19441     isInstance(obj): obj is MIDIInputMap;
19445  * Available only in secure contexts.
19447  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIMessageEvent)
19448  */
19449 interface MIDIMessageEvent extends Event {
19450     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIMessageEvent/data) */
19451     readonly data: Uint8Array;
19454 declare var MIDIMessageEvent: {
19455     prototype: MIDIMessageEvent;
19456     new(type: string, eventInitDict?: MIDIMessageEventInit): MIDIMessageEvent;
19457     isInstance(obj): obj is MIDIMessageEvent;
19461  * Available only in secure contexts.
19463  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput)
19464  */
19465 interface MIDIOutput extends MIDIPort {
19466     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput/clear) */
19467     clear(): void;
19468     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput/send) */
19469     send(data: number[], timestamp?: DOMHighResTimeStamp): void;
19470     addEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIOutput, ev: MIDIPortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19471     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19472     removeEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIOutput, ev: MIDIPortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19473     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19476 declare var MIDIOutput: {
19477     prototype: MIDIOutput;
19478     new(): MIDIOutput;
19479     isInstance(obj): obj is MIDIOutput;
19483  * Available only in secure contexts.
19485  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutputMap)
19486  */
19487 interface MIDIOutputMap {
19488     forEach(callbackfn: (value: MIDIOutput, key: string, parent: MIDIOutputMap) => void, thisArg?: any): void;
19491 declare var MIDIOutputMap: {
19492     prototype: MIDIOutputMap;
19493     new(): MIDIOutputMap;
19494     isInstance(obj): obj is MIDIOutputMap;
19497 interface MIDIPortEventMap {
19498     "statechange": Event;
19502  * Available only in secure contexts.
19504  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort)
19505  */
19506 interface MIDIPort extends EventTarget {
19507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/connection) */
19508     readonly connection: MIDIPortConnectionState;
19509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/id) */
19510     readonly id: string;
19511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/manufacturer) */
19512     readonly manufacturer: string | null;
19513     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/name) */
19514     readonly name: string | null;
19515     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/statechange_event) */
19516     onstatechange: ((this: MIDIPort, ev: Event) => any) | null;
19517     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/state) */
19518     readonly state: MIDIPortDeviceState;
19519     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/type) */
19520     readonly type: MIDIPortType;
19521     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/version) */
19522     readonly version: string | null;
19523     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/close) */
19524     close(): Promise<MIDIPort>;
19525     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/open) */
19526     open(): Promise<MIDIPort>;
19527     addEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIPort, ev: MIDIPortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19528     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19529     removeEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIPort, ev: MIDIPortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19530     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19533 declare var MIDIPort: {
19534     prototype: MIDIPort;
19535     new(): MIDIPort;
19536     isInstance(obj): obj is MIDIPort;
19539 interface MOZ_debug {
19540     getParameter(pname: GLenum): any;
19541     readonly EXTENSIONS: 0x1F03;
19542     readonly WSI_INFO: 0x10000;
19543     readonly UNPACK_REQUIRE_FASTPATH: 0x10001;
19544     readonly DOES_INDEX_VALIDATION: 0x10002;
19547 interface MatchGlob {
19548     readonly glob: UTF8String;
19549     matches(string: UTF8String): boolean;
19552 declare var MatchGlob: {
19553     prototype: MatchGlob;
19554     new(glob: UTF8String, allowQuestion?: boolean): MatchGlob;
19555     isInstance(obj): obj is MatchGlob;
19558 interface MatchPattern {
19559     readonly matchesAllWebUrls: boolean;
19560     readonly pattern: string;
19561     matches(uri: URI, explicit?: boolean): boolean;
19562     matches(url: string, explicit?: boolean): boolean;
19563     matchesCookie(cookie: Cookie): boolean;
19564     overlaps(pattern: MatchPattern): boolean;
19565     subsumes(pattern: MatchPattern): boolean;
19566     subsumesDomain(pattern: MatchPattern): boolean;
19569 declare var MatchPattern: {
19570     prototype: MatchPattern;
19571     new(pattern: string, options?: MatchPatternOptions): MatchPattern;
19572     isInstance(obj): obj is MatchPattern;
19575 interface MatchPatternSet {
19576     readonly matchesAllWebUrls: boolean;
19577     readonly patterns: MatchPattern[];
19578     matches(uri: URI, explicit?: boolean): boolean;
19579     matches(url: string, explicit?: boolean): boolean;
19580     matchesCookie(cookie: Cookie): boolean;
19581     overlaps(pattern: MatchPattern): boolean;
19582     overlaps(patternSet: MatchPatternSet): boolean;
19583     overlapsAll(patternSet: MatchPatternSet): boolean;
19584     subsumes(pattern: MatchPattern): boolean;
19585     subsumesDomain(pattern: MatchPattern): boolean;
19588 declare var MatchPatternSet: {
19589     prototype: MatchPatternSet;
19590     new(patterns: (string | MatchPattern)[], options?: MatchPatternOptions): MatchPatternSet;
19591     isInstance(obj): obj is MatchPatternSet;
19594 interface MathMLElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap, OnErrorEventHandlerForNodesEventMap, TouchEventHandlersEventMap {
19597 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MathMLElement) */
19598 interface MathMLElement extends Element, ElementCSSInlineStyle, GlobalEventHandlers, HTMLOrForeignElement, OnErrorEventHandlerForNodes, TouchEventHandlers {
19599     addEventListener<K extends keyof MathMLElementEventMap>(type: K, listener: (this: MathMLElement, ev: MathMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19600     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19601     removeEventListener<K extends keyof MathMLElementEventMap>(type: K, listener: (this: MathMLElement, ev: MathMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19602     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19605 declare var MathMLElement: {
19606     prototype: MathMLElement;
19607     new(): MathMLElement;
19608     isInstance(obj): obj is MathMLElement;
19611 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities) */
19612 interface MediaCapabilities {
19613     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities/decodingInfo) */
19614     decodingInfo(configuration: MediaDecodingConfiguration): Promise<MediaCapabilitiesInfo>;
19615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities/encodingInfo) */
19616     encodingInfo(configuration: MediaEncodingConfiguration): Promise<MediaCapabilitiesInfo>;
19619 declare var MediaCapabilities: {
19620     prototype: MediaCapabilities;
19621     new(): MediaCapabilities;
19622     isInstance(obj): obj is MediaCapabilities;
19625 interface MediaCapabilitiesInfo {
19626     readonly powerEfficient: boolean;
19627     readonly smooth: boolean;
19628     readonly supported: boolean;
19631 declare var MediaCapabilitiesInfo: {
19632     prototype: MediaCapabilitiesInfo;
19633     new(): MediaCapabilitiesInfo;
19634     isInstance(obj): obj is MediaCapabilitiesInfo;
19637 interface MediaControllerEventMap {
19638     "activated": Event;
19639     "deactivated": Event;
19640     "metadatachange": Event;
19641     "playbackstatechange": Event;
19642     "positionstatechange": Event;
19643     "supportedkeyschange": Event;
19646 /** @deprecated */
19647 interface MediaController extends EventTarget {
19648     readonly id: number;
19649     readonly isActive: boolean;
19650     readonly isAudible: boolean;
19651     readonly isPlaying: boolean;
19652     onactivated: ((this: MediaController, ev: Event) => any) | null;
19653     ondeactivated: ((this: MediaController, ev: Event) => any) | null;
19654     onmetadatachange: ((this: MediaController, ev: Event) => any) | null;
19655     onplaybackstatechange: ((this: MediaController, ev: Event) => any) | null;
19656     onpositionstatechange: ((this: MediaController, ev: Event) => any) | null;
19657     onsupportedkeyschange: ((this: MediaController, ev: Event) => any) | null;
19658     /** @deprecated */
19659     readonly playbackState: MediaSessionPlaybackState;
19660     readonly supportedKeys: MediaControlKey[];
19661     focus(): void;
19662     getMetadata(): MediaMetadataInit;
19663     nextTrack(): void;
19664     /** @deprecated */
19665     pause(): void;
19666     /** @deprecated */
19667     play(): void;
19668     prevTrack(): void;
19669     seekBackward(): void;
19670     seekForward(): void;
19671     seekTo(seekTime: number, fastSeek?: boolean): void;
19672     skipAd(): void;
19673     stop(): void;
19674     addEventListener<K extends keyof MediaControllerEventMap>(type: K, listener: (this: MediaController, ev: MediaControllerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19675     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19676     removeEventListener<K extends keyof MediaControllerEventMap>(type: K, listener: (this: MediaController, ev: MediaControllerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19677     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19680 /** @deprecated */
19681 declare var MediaController: {
19682     prototype: MediaController;
19683     new(): MediaController;
19684     isInstance(obj): obj is MediaController;
19688  * The MediaDevicesInfo interface contains information that describes a single media input or output device.
19690  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo)
19691  */
19692 interface MediaDeviceInfo {
19693     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/deviceId) */
19694     readonly deviceId: string;
19695     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/groupId) */
19696     readonly groupId: string;
19697     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/kind) */
19698     readonly kind: MediaDeviceKind;
19699     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/label) */
19700     readonly label: string;
19701     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/toJSON) */
19702     toJSON(): any;
19705 declare var MediaDeviceInfo: {
19706     prototype: MediaDeviceInfo;
19707     new(): MediaDeviceInfo;
19708     isInstance(obj): obj is MediaDeviceInfo;
19711 interface MediaDevicesEventMap {
19712     "devicechange": Event;
19716  * Provides access to connected media input devices like cameras and microphones, as well as screen sharing. In essence, it lets you obtain access to any hardware source of media data.
19718  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices)
19719  */
19720 interface MediaDevices extends EventTarget {
19721     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/devicechange_event) */
19722     ondevicechange: ((this: MediaDevices, ev: Event) => any) | null;
19723     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/enumerateDevices) */
19724     enumerateDevices(): Promise<MediaDeviceInfo[]>;
19725     /**
19726      * Available only in secure contexts.
19727      *
19728      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/getDisplayMedia)
19729      */
19730     getDisplayMedia(constraints?: DisplayMediaStreamConstraints): Promise<MediaStream>;
19731     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/getSupportedConstraints) */
19732     getSupportedConstraints(): MediaTrackSupportedConstraints;
19733     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/getUserMedia) */
19734     getUserMedia(constraints?: MediaStreamConstraints): Promise<MediaStream>;
19735     /**
19736      * Available only in secure contexts.
19737      *
19738      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/selectAudioOutput)
19739      */
19740     selectAudioOutput(options?: AudioOutputOptions): Promise<MediaDeviceInfo>;
19741     addEventListener<K extends keyof MediaDevicesEventMap>(type: K, listener: (this: MediaDevices, ev: MediaDevicesEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19742     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19743     removeEventListener<K extends keyof MediaDevicesEventMap>(type: K, listener: (this: MediaDevices, ev: MediaDevicesEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19744     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19747 declare var MediaDevices: {
19748     prototype: MediaDevices;
19749     new(): MediaDevices;
19750     isInstance(obj): obj is MediaDevices;
19754  * A MediaElementSourceNode has no inputs and exactly one output, and is created using the AudioContext.createMediaElementSource method. The amount of channels in the output equals the number of channels of the audio referenced by the HTMLMediaElement used in the creation of the node, or is 1 if the HTMLMediaElement has no audio.
19756  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaElementAudioSourceNode)
19757  */
19758 interface MediaElementAudioSourceNode extends AudioNode, AudioNodePassThrough {
19759     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaElementAudioSourceNode/mediaElement) */
19760     readonly mediaElement: HTMLMediaElement;
19763 declare var MediaElementAudioSourceNode: {
19764     prototype: MediaElementAudioSourceNode;
19765     new(context: AudioContext, options: MediaElementAudioSourceOptions): MediaElementAudioSourceNode;
19766     isInstance(obj): obj is MediaElementAudioSourceNode;
19769 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaEncryptedEvent) */
19770 interface MediaEncryptedEvent extends Event {
19771     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaEncryptedEvent/initData) */
19772     readonly initData: ArrayBuffer | null;
19773     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaEncryptedEvent/initDataType) */
19774     readonly initDataType: string;
19777 declare var MediaEncryptedEvent: {
19778     prototype: MediaEncryptedEvent;
19779     new(type: string, eventInitDict?: MediaKeyNeededEventInit): MediaEncryptedEvent;
19780     isInstance(obj): obj is MediaEncryptedEvent;
19784  * An error which occurred while handling media in an HTML media element based on HTMLMediaElement, such as <audio> or <video>.
19786  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaError)
19787  */
19788 interface MediaError {
19789     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaError/code) */
19790     readonly code: number;
19791     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaError/message) */
19792     readonly message: string;
19793     readonly MEDIA_ERR_ABORTED: 1;
19794     readonly MEDIA_ERR_NETWORK: 2;
19795     readonly MEDIA_ERR_DECODE: 3;
19796     readonly MEDIA_ERR_SRC_NOT_SUPPORTED: 4;
19799 declare var MediaError: {
19800     prototype: MediaError;
19801     new(): MediaError;
19802     readonly MEDIA_ERR_ABORTED: 1;
19803     readonly MEDIA_ERR_NETWORK: 2;
19804     readonly MEDIA_ERR_DECODE: 3;
19805     readonly MEDIA_ERR_SRC_NOT_SUPPORTED: 4;
19806     isInstance(obj): obj is MediaError;
19809 interface MediaKeyError extends Event {
19810     readonly systemCode: number;
19813 declare var MediaKeyError: {
19814     prototype: MediaKeyError;
19815     new(): MediaKeyError;
19816     isInstance(obj): obj is MediaKeyError;
19820  * This EncryptedMediaExtensions API interface contains the content and related data when the content decryption module generates a message for the session.
19822  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyMessageEvent)
19823  */
19824 interface MediaKeyMessageEvent extends Event {
19825     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyMessageEvent/message) */
19826     readonly message: ArrayBuffer;
19827     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyMessageEvent/messageType) */
19828     readonly messageType: MediaKeyMessageType;
19831 declare var MediaKeyMessageEvent: {
19832     prototype: MediaKeyMessageEvent;
19833     new(type: string, eventInitDict: MediaKeyMessageEventInit): MediaKeyMessageEvent;
19834     isInstance(obj): obj is MediaKeyMessageEvent;
19837 interface MediaKeySessionEventMap {
19838     "keystatuseschange": Event;
19839     "message": Event;
19843  * This EncryptedMediaExtensions API interface represents a context for message exchange with a content decryption module (CDM).
19845  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession)
19846  */
19847 interface MediaKeySession extends EventTarget {
19848     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/closed) */
19849     readonly closed: Promise<undefined>;
19850     "error": ErrorEvent;
19851     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/expiration) */
19852     readonly expiration: number;
19853     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/keyStatuses) */
19854     readonly keyStatuses: MediaKeyStatusMap;
19855     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/keystatuseschange_event) */
19856     onkeystatuseschange: ((this: MediaKeySession, ev: Event) => any) | null;
19857     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/message_event) */
19858     onmessage: ((this: MediaKeySession, ev: Event) => any) | null;
19859     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/sessionId) */
19860     readonly sessionId: string;
19861     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/close) */
19862     close(): Promise<void>;
19863     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/generateRequest) */
19864     generateRequest(initDataType: string, initData: BufferSource): Promise<void>;
19865     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/load) */
19866     load(sessionId: string): Promise<boolean>;
19867     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/remove) */
19868     remove(): Promise<void>;
19869     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/update) */
19870     update(response: BufferSource): Promise<void>;
19871     addEventListener<K extends keyof MediaKeySessionEventMap>(type: K, listener: (this: MediaKeySession, ev: MediaKeySessionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
19872     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
19873     removeEventListener<K extends keyof MediaKeySessionEventMap>(type: K, listener: (this: MediaKeySession, ev: MediaKeySessionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
19874     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
19877 declare var MediaKeySession: {
19878     prototype: MediaKeySession;
19879     new(): MediaKeySession;
19880     isInstance(obj): obj is MediaKeySession;
19884  * This EncryptedMediaExtensions API interface is a read-only map of media key statuses by key IDs.
19886  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap)
19887  */
19888 interface MediaKeyStatusMap {
19889     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/size) */
19890     readonly size: number;
19891     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/get) */
19892     get(keyId: BufferSource): MediaKeyStatus | undefined;
19893     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/has) */
19894     has(keyId: BufferSource): boolean;
19895     forEach(callbackfn: (value: MediaKeyStatus, key: ArrayBuffer, parent: MediaKeyStatusMap) => void, thisArg?: any): void;
19898 declare var MediaKeyStatusMap: {
19899     prototype: MediaKeyStatusMap;
19900     new(): MediaKeyStatusMap;
19901     isInstance(obj): obj is MediaKeyStatusMap;
19905  * This EncryptedMediaExtensions API interface provides access to a Key System for decryption and/or a content protection provider. You can request an instance of this object using the Navigator.requestMediaKeySystemAccess method.
19907  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess)
19908  */
19909 interface MediaKeySystemAccess {
19910     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/keySystem) */
19911     readonly keySystem: string;
19912     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/createMediaKeys) */
19913     createMediaKeys(): Promise<MediaKeys>;
19914     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/getConfiguration) */
19915     getConfiguration(): MediaKeySystemConfiguration;
19918 declare var MediaKeySystemAccess: {
19919     prototype: MediaKeySystemAccess;
19920     new(): MediaKeySystemAccess;
19921     isInstance(obj): obj is MediaKeySystemAccess;
19925  * This EncryptedMediaExtensions API interface the represents a set of keys that an associated HTMLMediaElement can use for decryption of media data during playback.
19927  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeys)
19928  */
19929 interface MediaKeys {
19930     readonly keySystem: string;
19931     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeys/createSession) */
19932     createSession(sessionType?: MediaKeySessionType): MediaKeySession;
19933     getStatusForPolicy(policy?: MediaKeysPolicy): Promise<MediaKeyStatus>;
19934     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeys/setServerCertificate) */
19935     setServerCertificate(serverCertificate: BufferSource): Promise<void>;
19938 declare var MediaKeys: {
19939     prototype: MediaKeys;
19940     new(): MediaKeys;
19941     isInstance(obj): obj is MediaKeys;
19944 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList) */
19945 interface MediaList {
19946     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/length) */
19947     readonly length: number;
19948     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/mediaText) */
19949     mediaText: UTF8String;
19950     toString(): string;
19951     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/appendMedium) */
19952     appendMedium(newMedium: UTF8String): void;
19953     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/deleteMedium) */
19954     deleteMedium(oldMedium: UTF8String): void;
19955     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/item) */
19956     item(index: number): UTF8String | null;
19957     [index: number]: UTF8String;
19960 declare var MediaList: {
19961     prototype: MediaList;
19962     new(): MediaList;
19963     isInstance(obj): obj is MediaList;
19966 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata) */
19967 interface MediaMetadata {
19968     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/album) */
19969     album: string;
19970     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/artist) */
19971     artist: string;
19972     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/artwork) */
19973     artwork: any[];
19974     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/title) */
19975     title: string;
19978 declare var MediaMetadata: {
19979     prototype: MediaMetadata;
19980     new(init?: MediaMetadataInit): MediaMetadata;
19981     isInstance(obj): obj is MediaMetadata;
19984 interface MediaQueryListEventMap {
19985     "change": Event;
19989  * Stores information on a media query applied to a document, and handles sending notifications to listeners when the media query state change (i.e. when the media query test starts or stops evaluating to true).
19991  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList)
19992  */
19993 interface MediaQueryList extends EventTarget {
19994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/matches) */
19995     readonly matches: boolean;
19996     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/media) */
19997     readonly media: UTF8String;
19998     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/change_event) */
19999     onchange: ((this: MediaQueryList, ev: Event) => any) | null;
20000     /**
20001      * @deprecated
20002      *
20003      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/addListener)
20004      */
20005     addListener(listener: EventListener | null): void;
20006     /**
20007      * @deprecated
20008      *
20009      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/removeListener)
20010      */
20011     removeListener(listener: EventListener | null): void;
20012     addEventListener<K extends keyof MediaQueryListEventMap>(type: K, listener: (this: MediaQueryList, ev: MediaQueryListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
20013     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
20014     removeEventListener<K extends keyof MediaQueryListEventMap>(type: K, listener: (this: MediaQueryList, ev: MediaQueryListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
20015     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
20018 declare var MediaQueryList: {
20019     prototype: MediaQueryList;
20020     new(): MediaQueryList;
20021     isInstance(obj): obj is MediaQueryList;
20024 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryListEvent) */
20025 interface MediaQueryListEvent extends Event {
20026     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryListEvent/matches) */
20027     readonly matches: boolean;
20028     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryListEvent/media) */
20029     readonly media: UTF8String;
20032 declare var MediaQueryListEvent: {
20033     prototype: MediaQueryListEvent;
20034     new(type: string, eventInitDict?: MediaQueryListEventInit): MediaQueryListEvent;
20035     isInstance(obj): obj is MediaQueryListEvent;
20038 interface MediaRecorderEventMap {
20039     "dataavailable": Event;
20040     "error": ErrorEvent;
20041     "pause": Event;
20042     "resume": Event;
20043     "start": Event;
20044     "stop": Event;
20047 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder) */
20048 interface MediaRecorder extends EventTarget {
20049     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/audioBitsPerSecond) */
20050     readonly audioBitsPerSecond: number;
20051     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/mimeType) */
20052     readonly mimeType: string;
20053     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/dataavailable_event) */
20054     ondataavailable: ((this: MediaRecorder, ev: Event) => any) | null;
20055     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/error_event) */
20056     onerror: OnErrorEventHandler;
20057     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/pause_event) */
20058     onpause: ((this: MediaRecorder, ev: Event) => any) | null;
20059     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/resume_event) */
20060     onresume: ((this: MediaRecorder, ev: Event) => any) | null;
20061     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/start_event) */
20062     onstart: ((this: MediaRecorder, ev: Event) => any) | null;
20063     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/stop_event) */
20064     onstop: ((this: MediaRecorder, ev: Event) => any) | null;
20065     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/state) */
20066     readonly state: RecordingState;
20067     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/stream) */
20068     readonly stream: MediaStream;
20069     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/videoBitsPerSecond) */
20070     readonly videoBitsPerSecond: number;
20071     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/pause) */
20072     pause(): void;
20073     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/requestData) */
20074     requestData(): void;
20075     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/resume) */
20076     resume(): void;
20077     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/start) */
20078     start(timeslice?: number): void;
20079     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/stop) */
20080     stop(): void;
20081     addEventListener<K extends keyof MediaRecorderEventMap>(type: K, listener: (this: MediaRecorder, ev: MediaRecorderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
20082     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
20083     removeEventListener<K extends keyof MediaRecorderEventMap>(type: K, listener: (this: MediaRecorder, ev: MediaRecorderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
20084     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
20087 declare var MediaRecorder: {
20088     prototype: MediaRecorder;
20089     new(stream: MediaStream, options?: MediaRecorderOptions): MediaRecorder;
20090     new(node: AudioNode, output?: number, options?: MediaRecorderOptions): MediaRecorder;
20091     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/isTypeSupported_static) */
20092     isTypeSupported(type: string): boolean;
20093     isInstance(obj): obj is MediaRecorder;
20097  * @deprecated
20099  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorderErrorEvent)
20100  */
20101 interface MediaRecorderErrorEvent extends Event {
20102     /**
20103      * @deprecated
20104      *
20105      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorderErrorEvent/error)
20106      */
20107     "error": ErrorEvent;
20110 /** @deprecated */
20111 declare var MediaRecorderErrorEvent: {
20112     prototype: MediaRecorderErrorEvent;
20113     new(type: string, eventInitDict: MediaRecorderErrorEventInit): MediaRecorderErrorEvent;
20114     isInstance(obj): obj is MediaRecorderErrorEvent;
20117 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession) */
20118 interface MediaSession {
20119     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/metadata) */
20120     metadata: MediaMetadata | null;
20121     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/playbackState) */
20122     playbackState: MediaSessionPlaybackState;
20123     notifyHandler(details: MediaSessionActionDetails): void;
20124     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/setActionHandler) */
20125     setActionHandler(action: MediaSessionAction, handler: MediaSessionActionHandler | null): void;
20126     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/setPositionState) */
20127     setPositionState(state?: MediaPositionState): void;
20130 declare var MediaSession: {
20131     prototype: MediaSession;
20132     new(): MediaSession;
20133     isInstance(obj): obj is MediaSession;
20136 interface MediaSourceEventMap {
20137     "sourceclose": Event;
20138     "sourceended": Event;
20139     "sourceopen": Event;
20143  * This Media Source Extensions API interface represents a source of media data for an HTMLMediaElement object. A MediaSource object can be attached to a HTMLMediaElement to be played in the user agent.
20145  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource)
20146  */
20147 interface MediaSource extends EventTarget {
20148     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/activeSourceBuffers) */
20149     readonly activeSourceBuffers: SourceBufferList;
20150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/duration) */
20151     duration: number;
20152     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceclose_event) */
20153     onsourceclose: ((this: MediaSource, ev: Event) => any) | null;
20154     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceended_event) */
20155     onsourceended: ((this: MediaSource, ev: Event) => any) | null;
20156     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceopen_event) */
20157     onsourceopen: ((this: MediaSource, ev: Event) => any) | null;
20158     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/readyState) */
20159     readonly readyState: MediaSourceReadyState;
20160     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceBuffers) */
20161     readonly sourceBuffers: SourceBufferList;
20162     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/addSourceBuffer) */
20163     addSourceBuffer(type: string): SourceBuffer;
20164     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/clearLiveSeekableRange) */
20165     clearLiveSeekableRange(): void;
20166     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/endOfStream) */
20167     endOfStream(error?: MediaSourceEndOfStreamError): void;
20168     mozDebugReaderData(): Promise<MediaSourceDecoderDebugInfo>;
20169     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/removeSourceBuffer) */
20170     removeSourceBuffer(sourceBuffer: SourceBuffer): void;
20171     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/setLiveSeekableRange) */
20172     setLiveSeekableRange(start: number, end: number): void;
20173     addEventListener<K extends keyof MediaSourceEventMap>(type: K, listener: (this: MediaSource, ev: MediaSourceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
20174     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
20175     removeEventListener<K extends keyof MediaSourceEventMap>(type: K, listener: (this: MediaSource, ev: MediaSourceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
20176     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
20179 declare var MediaSource: {
20180     prototype: MediaSource;
20181     new(): MediaSource;
20182     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/isTypeSupported_static) */
20183     isTypeSupported(type: string): boolean;
20184     isInstance(obj): obj is MediaSource;
20187 interface MediaStreamEventMap {
20188     "addtrack": Event;
20189     "removetrack": Event;
20193  * A stream of media content. A stream consists of several tracks such as video or audio tracks. Each track is specified as an instance of MediaStreamTrack.
20195  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream)
20196  */
20197 interface MediaStream extends EventTarget {
20198     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/active) */
20199     readonly active: boolean;
20200     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/id) */
20201     readonly id: string;
20202     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/addtrack_event) */
20203     onaddtrack: ((this: MediaStream, ev: Event) => any) | null;
20204     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/removetrack_event) */
20205     onremovetrack: ((this: MediaStream, ev: Event) => any) | null;
20206     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/addTrack) */
20207     addTrack(track: MediaStreamTrack): void;
20208     assignId(id: string): void;
20209     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/clone) */
20210     clone(): MediaStream;
20211     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getAudioTracks) */
20212     getAudioTracks(): MediaStreamTrack[];
20213     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getTrackById) */
20214     getTrackById(trackId: string): MediaStreamTrack | null;
20215     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getTracks) */
20216     getTracks(): MediaStreamTrack[];
20217     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getVideoTracks) */
20218     getVideoTracks(): MediaStreamTrack[];
20219     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/removeTrack) */
20220     removeTrack(track: MediaStreamTrack): void;
20221     addEventListener<K extends keyof MediaStreamEventMap>(type: K, listener: (this: MediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
20222     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
20223     removeEventListener<K extends keyof MediaStreamEventMap>(type: K, listener: (this: MediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
20224     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
20227 declare var MediaStream: {
20228     prototype: MediaStream;
20229     new(): MediaStream;
20230     new(stream: MediaStream): MediaStream;
20231     new(tracks: MediaStreamTrack[]): MediaStream;
20232     countUnderlyingStreams(): Promise<number>;
20233     isInstance(obj): obj is MediaStream;
20236 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioDestinationNode) */
20237 interface MediaStreamAudioDestinationNode extends AudioNode {
20238     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioDestinationNode/stream) */
20239     readonly stream: MediaStream;
20242 declare var MediaStreamAudioDestinationNode: {
20243     prototype: MediaStreamAudioDestinationNode;
20244     new(context: AudioContext, options?: AudioNodeOptions): MediaStreamAudioDestinationNode;
20245     isInstance(obj): obj is MediaStreamAudioDestinationNode;
20249  * A type of AudioNode which operates as an audio source whose media is received from a MediaStream obtained using the WebRTC or Media Capture and Streams APIs.
20251  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioSourceNode)
20252  */
20253 interface MediaStreamAudioSourceNode extends AudioNode, AudioNodePassThrough {
20254     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioSourceNode/mediaStream) */
20255     readonly mediaStream: MediaStream;
20258 declare var MediaStreamAudioSourceNode: {
20259     prototype: MediaStreamAudioSourceNode;
20260     new(context: AudioContext, options: MediaStreamAudioSourceOptions): MediaStreamAudioSourceNode;
20261     isInstance(obj): obj is MediaStreamAudioSourceNode;
20264 interface MediaStreamError {
20265     readonly constraint: string | null;
20266     readonly message: string | null;
20267     readonly name: string;
20271  * Events that occurs in relation to a MediaStream. Two events of this type can be thrown: addstream and removestream.
20272  * @deprecated
20274  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamEvent)
20275  */
20276 interface MediaStreamEvent extends Event {
20277     /**
20278      * @deprecated
20279      *
20280      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamEvent/stream)
20281      */
20282     readonly stream: MediaStream | null;
20285 /** @deprecated */
20286 declare var MediaStreamEvent: {
20287     prototype: MediaStreamEvent;
20288     new(type: string, eventInitDict?: MediaStreamEventInit): MediaStreamEvent;
20289     isInstance(obj): obj is MediaStreamEvent;
20292 interface MediaStreamTrackEventMap {
20293     "ended": Event;
20294     "mute": Event;
20295     "unmute": Event;
20299  * A single media track within a stream; typically, these are audio or video tracks, but other track types may exist as well.
20301  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack)
20302  */
20303 interface MediaStreamTrack extends EventTarget {
20304     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/enabled) */
20305     enabled: boolean;
20306     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/id) */
20307     readonly id: string;
20308     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/kind) */
20309     readonly kind: string;
20310     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/label) */
20311     readonly label: string;
20312     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/muted) */
20313     readonly muted: boolean;
20314     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/ended_event) */
20315     onended: ((this: MediaStreamTrack, ev: Event) => any) | null;
20316     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/mute_event) */
20317     onmute: ((this: MediaStreamTrack, ev: Event) => any) | null;
20318     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/unmute_event) */
20319     onunmute: ((this: MediaStreamTrack, ev: Event) => any) | null;
20320     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/readyState) */
20321     readonly readyState: MediaStreamTrackState;
20322     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/applyConstraints) */
20323     applyConstraints(constraints?: MediaTrackConstraints): Promise<void>;
20324     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/clone) */
20325     clone(): MediaStreamTrack;
20326     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getConstraints) */
20327     getConstraints(): MediaTrackConstraints;
20328     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getSettings) */
20329     getSettings(): MediaTrackSettings;
20330     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/stop) */
20331     stop(): void;
20332     addEventListener<K extends keyof MediaStreamTrackEventMap>(type: K, listener: (this: MediaStreamTrack, ev: MediaStreamTrackEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
20333     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
20334     removeEventListener<K extends keyof MediaStreamTrackEventMap>(type: K, listener: (this: MediaStreamTrack, ev: MediaStreamTrackEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
20335     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
20338 declare var MediaStreamTrack: {
20339     prototype: MediaStreamTrack;
20340     new(): MediaStreamTrack;
20341     isInstance(obj): obj is MediaStreamTrack;
20344 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrackAudioSourceNode) */
20345 interface MediaStreamTrackAudioSourceNode extends AudioNode, AudioNodePassThrough {
20348 declare var MediaStreamTrackAudioSourceNode: {
20349     prototype: MediaStreamTrackAudioSourceNode;
20350     new(context: AudioContext, options: MediaStreamTrackAudioSourceOptions): MediaStreamTrackAudioSourceNode;
20351     isInstance(obj): obj is MediaStreamTrackAudioSourceNode;
20355  * Events which indicate that a MediaStream has had tracks added to or removed from the stream through calls to Media Stream API methods. These events are sent to the stream when these changes occur.
20357  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrackEvent)
20358  */
20359 interface MediaStreamTrackEvent extends Event {
20360     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrackEvent/track) */
20361     readonly track: MediaStreamTrack;
20364 declare var MediaStreamTrackEvent: {
20365     prototype: MediaStreamTrackEvent;
20366     new(type: string, eventInitDict: MediaStreamTrackEventInit): MediaStreamTrackEvent;
20367     isInstance(obj): obj is MediaStreamTrackEvent;
20371  * @deprecated
20372  * Available only in secure contexts.
20374  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MerchantValidationEvent)
20375  */
20376 interface MerchantValidationEvent extends Event {
20377     /**
20378      * @deprecated
20379      *
20380      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MerchantValidationEvent/methodName)
20381      */
20382     readonly methodName: string;
20383     /**
20384      * @deprecated
20385      *
20386      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MerchantValidationEvent/validationURL)
20387      */
20388     readonly validationURL: string;
20389     /**
20390      * @deprecated
20391      *
20392      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MerchantValidationEvent/complete)
20393      */
20394     complete(merchantSessionPromise: any): void;
20397 /** @deprecated */
20398 declare var MerchantValidationEvent: {
20399     prototype: MerchantValidationEvent;
20400     new(type: string, eventInitDict?: MerchantValidationEventInit): MerchantValidationEvent;
20401     isInstance(obj): obj is MerchantValidationEvent;
20404 interface MessageBroadcaster extends MessageListenerManager {
20405     readonly childCount: number;
20406     broadcastAsyncMessage(messageName?: string | null, obj?: any): void;
20407     getChildAt(aIndex: number): MessageListenerManager | null;
20408     releaseCachedProcesses(): void;
20411 declare var MessageBroadcaster: {
20412     prototype: MessageBroadcaster;
20413     new(): MessageBroadcaster;
20414     isInstance(obj): obj is MessageBroadcaster;
20418  * This Channel Messaging API interface allows us to create a new message channel and send data through it via its two MessagePort properties.
20420  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel)
20421  */
20422 interface MessageChannel {
20423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port1) */
20424     readonly port1: MessagePort;
20425     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port2) */
20426     readonly port2: MessagePort;
20429 declare var MessageChannel: {
20430     prototype: MessageChannel;
20431     new(): MessageChannel;
20432     isInstance(obj): obj is MessageChannel;
20436  * A message received by a target object.
20438  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent)
20439  */
20440 interface MessageEvent extends Event {
20441     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/data) */
20442     readonly data: any;
20443     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/lastEventId) */
20444     readonly lastEventId: string;
20445     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/origin) */
20446     readonly origin: string;
20447     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/ports) */
20448     readonly ports: MessagePort[];
20449     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/source) */
20450     readonly source: MessageEventSource | null;
20451     /**
20452      * @deprecated
20453      *
20454      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/initMessageEvent)
20455      */
20456     initMessageEvent(type: string, bubbles?: boolean, cancelable?: boolean, data?: any, origin?: string, lastEventId?: string, source?: MessageEventSource | null, ports?: MessagePort[]): void;
20459 declare var MessageEvent: {
20460     prototype: MessageEvent;
20461     new(type: string, eventInitDict?: MessageEventInit): MessageEvent;
20462     isInstance(obj): obj is MessageEvent;
20465 interface MessageListenerManager extends MessageListenerManagerMixin {
20468 declare var MessageListenerManager: {
20469     prototype: MessageListenerManager;
20470     new(): MessageListenerManager;
20471     isInstance(obj): obj is MessageListenerManager;
20474 interface MessageListenerManagerMixin {
20475     addMessageListener(messageName: string, listener: MessageListener, listenWhenClosed?: boolean): void;
20476     addWeakMessageListener(messageName: string, listener: MessageListener): void;
20477     removeMessageListener(messageName: string, listener: MessageListener): void;
20478     removeWeakMessageListener(messageName: string, listener: MessageListener): void;
20481 interface MessageManagerGlobal {
20482     atob(asciiString: string): string;
20483     btoa(base64Data: string): string;
20484     dump(str: string): void;
20487 interface MessagePortEventMap {
20488     "message": Event;
20489     "messageerror": Event;
20493  * This Channel Messaging API interface represents one of the two ports of a MessageChannel, allowing messages to be sent from one port and listening out for them arriving at the other.
20495  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort)
20496  */
20497 interface MessagePort extends EventTarget {
20498     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/message_event) */
20499     onmessage: ((this: MessagePort, ev: Event) => any) | null;
20500     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/messageerror_event) */
20501     onmessageerror: ((this: MessagePort, ev: Event) => any) | null;
20502     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/close) */
20503     close(): void;
20504     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/postMessage) */
20505     postMessage(message: any, transferable: any[]): void;
20506     postMessage(message: any, options?: StructuredSerializeOptions): void;
20507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/start) */
20508     start(): void;
20509     addEventListener<K extends keyof MessagePortEventMap>(type: K, listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
20510     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
20511     removeEventListener<K extends keyof MessagePortEventMap>(type: K, listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
20512     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
20515 declare var MessagePort: {
20516     prototype: MessagePort;
20517     new(): MessagePort;
20518     isInstance(obj): obj is MessagePort;
20521 interface MessageSender extends MessageListenerManager, MessageSenderMixin {
20524 declare var MessageSender: {
20525     prototype: MessageSender;
20526     new(): MessageSender;
20527     isInstance(obj): obj is MessageSender;
20530 interface MessageSenderMixin {
20531     readonly processMessageManager: MessageSender | null;
20532     readonly remoteType: UTF8String;
20533     sendAsyncMessage(messageName?: string | null, obj?: any, transfers?: any): void;
20537  * Provides contains information about a MIME type associated with a particular plugin. NavigatorPlugins.mimeTypes returns an array of this object.
20538  * @deprecated
20540  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType)
20541  */
20542 interface MimeType {
20543     /**
20544      * @deprecated
20545      *
20546      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/description)
20547      */
20548     readonly description: string;
20549     /**
20550      * @deprecated
20551      *
20552      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/enabledPlugin)
20553      */
20554     readonly enabledPlugin: Plugin;
20555     /**
20556      * @deprecated
20557      *
20558      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/suffixes)
20559      */
20560     readonly suffixes: string;
20561     /**
20562      * @deprecated
20563      *
20564      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/type)
20565      */
20566     readonly type: string;
20569 /** @deprecated */
20570 declare var MimeType: {
20571     prototype: MimeType;
20572     new(): MimeType;
20573     isInstance(obj): obj is MimeType;
20577  * Returns an array of MimeType instances, each of which contains information about a supported browser plugins. This object is returned by NavigatorPlugins.mimeTypes.
20578  * @deprecated
20580  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray)
20581  */
20582 interface MimeTypeArray {
20583     /**
20584      * @deprecated
20585      *
20586      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray/length)
20587      */
20588     readonly length: number;
20589     /**
20590      * @deprecated
20591      *
20592      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray/item)
20593      */
20594     item(index: number): MimeType | null;
20595     /**
20596      * @deprecated
20597      *
20598      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray/namedItem)
20599      */
20600     namedItem(name: string): MimeType | null;
20601     [index: number]: MimeType;
20604 /** @deprecated */
20605 declare var MimeTypeArray: {
20606     prototype: MimeTypeArray;
20607     new(): MimeTypeArray;
20608     isInstance(obj): obj is MimeTypeArray;
20612  * Events that occur due to the user interacting with a pointing device (such as a mouse). Common events using this interface include click, dblclick, mouseup, mousedown.
20614  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent)
20615  */
20616 interface MouseEvent extends UIEvent {
20617     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/altKey) */
20618     readonly altKey: boolean;
20619     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/button) */
20620     readonly button: number;
20621     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/buttons) */
20622     readonly buttons: number;
20623     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/clientX) */
20624     readonly clientX: number;
20625     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/clientY) */
20626     readonly clientY: number;
20627     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/ctrlKey) */
20628     readonly ctrlKey: boolean;
20629     readonly inputSource: number;
20630     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/metaKey) */
20631     readonly metaKey: boolean;
20632     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/movementX) */
20633     readonly movementX: number;
20634     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/movementY) */
20635     readonly movementY: number;
20636     readonly mozInputSource: number;
20637     readonly mozPressure: number;
20638     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/offsetX) */
20639     readonly offsetX: number;
20640     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/offsetY) */
20641     readonly offsetY: number;
20642     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/pageX) */
20643     readonly pageX: number;
20644     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/pageY) */
20645     readonly pageY: number;
20646     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/relatedTarget) */
20647     readonly relatedTarget: EventTarget | null;
20648     readonly screen: nsIScreen | null;
20649     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/screenX) */
20650     readonly screenX: number;
20651     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/screenY) */
20652     readonly screenY: number;
20653     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/shiftKey) */
20654     readonly shiftKey: boolean;
20655     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/x) */
20656     readonly x: number;
20657     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/y) */
20658     readonly y: number;
20659     clickEventPrevented(): boolean;
20660     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/getModifierState) */
20661     getModifierState(keyArg: string): boolean;
20662     /**
20663      * @deprecated
20664      *
20665      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/initMouseEvent)
20666      */
20667     initMouseEvent(typeArg: string, canBubbleArg?: boolean, cancelableArg?: boolean, viewArg?: Window | null, detailArg?: number, screenXArg?: number, screenYArg?: number, clientXArg?: number, clientYArg?: number, ctrlKeyArg?: boolean, altKeyArg?: boolean, shiftKeyArg?: boolean, metaKeyArg?: boolean, buttonArg?: number, relatedTargetArg?: EventTarget | null): void;
20668     initNSMouseEvent(typeArg: string, canBubbleArg?: boolean, cancelableArg?: boolean, viewArg?: Window | null, detailArg?: number, screenXArg?: number, screenYArg?: number, clientXArg?: number, clientYArg?: number, ctrlKeyArg?: boolean, altKeyArg?: boolean, shiftKeyArg?: boolean, metaKeyArg?: boolean, buttonArg?: number, relatedTargetArg?: EventTarget | null, pressure?: number, inputSourceArg?: number): void;
20669     preventClickEvent(): void;
20670     readonly MOZ_SOURCE_UNKNOWN: 0;
20671     readonly MOZ_SOURCE_MOUSE: 1;
20672     readonly MOZ_SOURCE_PEN: 2;
20673     readonly MOZ_SOURCE_ERASER: 3;
20674     readonly MOZ_SOURCE_CURSOR: 4;
20675     readonly MOZ_SOURCE_TOUCH: 5;
20676     readonly MOZ_SOURCE_KEYBOARD: 6;
20679 declare var MouseEvent: {
20680     prototype: MouseEvent;
20681     new(typeArg: string, mouseEventInitDict?: MouseEventInit): MouseEvent;
20682     readonly MOZ_SOURCE_UNKNOWN: 0;
20683     readonly MOZ_SOURCE_MOUSE: 1;
20684     readonly MOZ_SOURCE_PEN: 2;
20685     readonly MOZ_SOURCE_ERASER: 3;
20686     readonly MOZ_SOURCE_CURSOR: 4;
20687     readonly MOZ_SOURCE_TOUCH: 5;
20688     readonly MOZ_SOURCE_KEYBOARD: 6;
20689     isInstance(obj): obj is MouseEvent;
20693  * @deprecated
20695  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseScrollEvent)
20696  */
20697 interface MouseScrollEvent extends MouseEvent {
20698     readonly axis: number;
20699     initMouseScrollEvent(type: string, canBubble?: boolean, cancelable?: boolean, view?: Window | null, detail?: number, screenX?: number, screenY?: number, clientX?: number, clientY?: number, ctrlKey?: boolean, altKey?: boolean, shiftKey?: boolean, metaKey?: boolean, button?: number, relatedTarget?: EventTarget | null, axis?: number): void;
20700     readonly HORIZONTAL_AXIS: 1;
20701     readonly VERTICAL_AXIS: 2;
20704 /** @deprecated */
20705 declare var MouseScrollEvent: {
20706     prototype: MouseScrollEvent;
20707     new(): MouseScrollEvent;
20708     readonly HORIZONTAL_AXIS: 1;
20709     readonly VERTICAL_AXIS: 2;
20710     isInstance(obj): obj is MouseScrollEvent;
20713 interface MozApplicationEvent extends Event {
20714     readonly application: DOMApplication | null;
20717 declare var MozApplicationEvent: {
20718     prototype: MozApplicationEvent;
20719     new(type: string, eventInitDict?: MozApplicationEventInit): MozApplicationEvent;
20720     isInstance(obj): obj is MozApplicationEvent;
20723 interface MozCanvasPrintState {
20724     readonly context: nsISupports;
20725     done(): void;
20728 declare var MozCanvasPrintState: {
20729     prototype: MozCanvasPrintState;
20730     new(): MozCanvasPrintState;
20731     isInstance(obj): obj is MozCanvasPrintState;
20734 interface MozDocumentMatcher {
20735     readonly allFrames: boolean;
20736     readonly checkPermissions: boolean;
20737     readonly excludeMatches: MatchPatternSet | null;
20738     readonly extension: WebExtensionPolicy | null;
20739     readonly frameID: number | null;
20740     readonly matchAboutBlank: boolean;
20741     readonly matches: MatchPatternSet;
20742     readonly originAttributesPatterns: any;
20743     matchesURI(uri: URI): boolean;
20744     matchesWindowGlobal(windowGlobal: WindowGlobalChild, ignorePermissions?: boolean): boolean;
20747 declare var MozDocumentMatcher: {
20748     prototype: MozDocumentMatcher;
20749     new(options: MozDocumentMatcherInit): MozDocumentMatcher;
20750     isInstance(obj): obj is MozDocumentMatcher;
20753 interface MozDocumentObserver {
20754     disconnect(): void;
20755     observe(matchers: MozDocumentMatcher[]): void;
20758 declare var MozDocumentObserver: {
20759     prototype: MozDocumentObserver;
20760     new(callbacks: MozDocumentCallback): MozDocumentObserver;
20761     isInstance(obj): obj is MozDocumentObserver;
20764 interface MozEditableElement {
20765     readonly editor: nsIEditor | null;
20766     readonly hasEditor: boolean;
20767     readonly isInputEventTarget: boolean;
20768     setUserInput(input: string): void;
20771 interface MozFrameLoaderOwner {
20772     readonly browsingContext: BrowsingContext | null;
20773     readonly frameLoader: FrameLoader | null;
20774     changeRemoteness(aOptions: RemotenessOptions): void;
20775     swapFrameLoaders(aOtherLoaderOwner: XULFrameElement): void;
20776     swapFrameLoaders(aOtherLoaderOwner: HTMLIFrameElement): void;
20779 interface MozImageLoadingContent {
20780     readonly currentRequestFinalURI: URI | null;
20781     readonly currentURI: URI | null;
20782     loadingEnabled: boolean;
20783     addObserver(aObserver: imgINotificationObserver): void;
20784     forceReload(aNotify?: boolean): void;
20785     getRequest(aRequestType: number): imgIRequest | null;
20786     getRequestType(aRequest: imgIRequest): number;
20787     removeObserver(aObserver: imgINotificationObserver): void;
20788     readonly UNKNOWN_REQUEST: -1;
20789     readonly CURRENT_REQUEST: 0;
20790     readonly PENDING_REQUEST: 1;
20793 interface MozObjectLoadingContent {
20794     readonly actualType: string;
20795     readonly displayedType: number;
20796     readonly runID: number;
20797     readonly srcURI: URI | null;
20798     getContentTypeForMIMEType(aMimeType: string): number;
20799     getPluginAttributes(): MozPluginParameter[];
20800     getPluginParameters(): MozPluginParameter[];
20801     reload(aClearActivation: boolean): void;
20802     skipFakePlugins(): void;
20803     readonly TYPE_LOADING: 0;
20804     readonly TYPE_IMAGE: 1;
20805     readonly TYPE_FALLBACK: 2;
20806     readonly TYPE_FAKE_PLUGIN: 3;
20807     readonly TYPE_DOCUMENT: 4;
20808     readonly TYPE_NULL: 5;
20811 interface MozObserver {
20814 declare var MozObserver: {
20815     prototype: MozObserver;
20816     new(): MozObserver;
20817     isInstance(obj): obj is MozObserver;
20820 interface MozQueryInterface {
20823 declare var MozQueryInterface: {
20824     prototype: MozQueryInterface;
20825     new(): MozQueryInterface;
20826     isInstance(obj): obj is MozQueryInterface;
20829 interface MozSharedMap extends EventTarget {
20830     get(name: string): StructuredClonable;
20831     has(name: string): boolean;
20832     forEach(callbackfn: (value: StructuredClonable, key: string, parent: MozSharedMap) => void, thisArg?: any): void;
20835 declare var MozSharedMap: {
20836     prototype: MozSharedMap;
20837     new(): MozSharedMap;
20838     isInstance(obj): obj is MozSharedMap;
20841 interface MozSharedMapChangeEvent extends Event {
20842     readonly changedKeys: string[];
20845 declare var MozSharedMapChangeEvent: {
20846     prototype: MozSharedMapChangeEvent;
20847     new(): MozSharedMapChangeEvent;
20848     isInstance(obj): obj is MozSharedMapChangeEvent;
20851 interface MozStorageAsyncStatementParams {
20852     readonly length: number;
20853     [index: number]: any;
20854     [name: string]: any;
20857 declare var MozStorageAsyncStatementParams: {
20858     prototype: MozStorageAsyncStatementParams;
20859     new(): MozStorageAsyncStatementParams;
20860     isInstance(obj): obj is MozStorageAsyncStatementParams;
20863 interface MozStorageStatementParams {
20864     readonly length: number;
20865     [index: number]: any;
20866     [name: string]: any;
20869 declare var MozStorageStatementParams: {
20870     prototype: MozStorageStatementParams;
20871     new(): MozStorageStatementParams;
20872     isInstance(obj): obj is MozStorageStatementParams;
20875 interface MozStorageStatementRow {
20876     [name: string]: any;
20879 declare var MozStorageStatementRow: {
20880     prototype: MozStorageStatementRow;
20881     new(): MozStorageStatementRow;
20882     isInstance(obj): obj is MozStorageStatementRow;
20885 interface MozWritableSharedMap extends MozSharedMap {
20886     delete(name: string): void;
20887     flush(): void;
20888     set(name: string, value: StructuredClonable): void;
20891 declare var MozWritableSharedMap: {
20892     prototype: MozWritableSharedMap;
20893     new(): MozWritableSharedMap;
20894     isInstance(obj): obj is MozWritableSharedMap;
20898  * Provides event properties that are specific to modifications to the Document Object Model (DOM) hierarchy and nodes.
20899  * @deprecated DOM4 [DOM] provides a new mechanism using a MutationObserver interface which addresses the use cases that mutation events solve, but in a more performant manner. Thus, this specification describes mutation events for reference and completeness of legacy behavior, but deprecates the use of the MutationEvent interface.
20901  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent)
20902  */
20903 interface MutationEvent extends Event {
20904     /**
20905      * @deprecated
20906      *
20907      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/attrChange)
20908      */
20909     readonly attrChange: number;
20910     /**
20911      * @deprecated
20912      *
20913      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/attrName)
20914      */
20915     readonly attrName: string;
20916     /**
20917      * @deprecated
20918      *
20919      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/newValue)
20920      */
20921     readonly newValue: string;
20922     /**
20923      * @deprecated
20924      *
20925      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/prevValue)
20926      */
20927     readonly prevValue: string;
20928     /**
20929      * @deprecated
20930      *
20931      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/relatedNode)
20932      */
20933     readonly relatedNode: Node | null;
20934     /**
20935      * @deprecated
20936      *
20937      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/initMutationEvent)
20938      */
20939     initMutationEvent(type: string, canBubble?: boolean, cancelable?: boolean, relatedNode?: Node | null, prevValue?: string, newValue?: string, attrName?: string, attrChange?: number): void;
20940     readonly MODIFICATION: 1;
20941     readonly ADDITION: 2;
20942     readonly REMOVAL: 3;
20943     readonly SMIL: 4;
20946 /** @deprecated */
20947 declare var MutationEvent: {
20948     prototype: MutationEvent;
20949     new(): MutationEvent;
20950     readonly MODIFICATION: 1;
20951     readonly ADDITION: 2;
20952     readonly REMOVAL: 3;
20953     readonly SMIL: 4;
20954     isInstance(obj): obj is MutationEvent;
20958  * Provides the ability to watch for changes being made to the DOM tree. It is designed as a replacement for the older Mutation Events feature which was part of the DOM3 Events specification.
20960  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver)
20961  */
20962 interface MutationObserver {
20963     mergeAttributeRecords: boolean;
20964     readonly mutationCallback: MutationCallback;
20965     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver/disconnect) */
20966     disconnect(): void;
20967     getObservingInfo(): (MutationObservingInfo | null)[];
20968     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver/observe) */
20969     observe(target: Node, options?: MutationObserverInit): void;
20970     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver/takeRecords) */
20971     takeRecords(): MutationRecord[];
20974 declare var MutationObserver: {
20975     prototype: MutationObserver;
20976     new(mutationCallback: MutationCallback): MutationObserver;
20977     isInstance(obj): obj is MutationObserver;
20981  * A MutationRecord represents an individual DOM mutation. It is the object that is passed to MutationObserver's callback.
20983  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord)
20984  */
20985 interface MutationRecord {
20986     readonly addedAnimations: Animation[];
20987     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/addedNodes) */
20988     readonly addedNodes: NodeList;
20989     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/attributeName) */
20990     readonly attributeName: string | null;
20991     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/attributeNamespace) */
20992     readonly attributeNamespace: string | null;
20993     readonly changedAnimations: Animation[];
20994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/nextSibling) */
20995     readonly nextSibling: Node | null;
20996     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/oldValue) */
20997     readonly oldValue: string | null;
20998     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/previousSibling) */
20999     readonly previousSibling: Node | null;
21000     readonly removedAnimations: Animation[];
21001     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/removedNodes) */
21002     readonly removedNodes: NodeList;
21003     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/target) */
21004     readonly target: Node | null;
21005     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/type) */
21006     readonly type: string;
21009 declare var MutationRecord: {
21010     prototype: MutationRecord;
21011     new(): MutationRecord;
21012     isInstance(obj): obj is MutationRecord;
21016  * A collection of Attr objects. Objects inside a NamedNodeMap are not in any particular order, unlike NodeList, although they may be accessed by an index as in an array.
21018  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap)
21019  */
21020 interface NamedNodeMap {
21021     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/length) */
21022     readonly length: number;
21023     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/getNamedItem) */
21024     getNamedItem(name: string): Attr | null;
21025     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/getNamedItemNS) */
21026     getNamedItemNS(namespaceURI: string | null, localName: string): Attr | null;
21027     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/item) */
21028     item(index: number): Attr | null;
21029     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/removeNamedItem) */
21030     removeNamedItem(name: string): Attr;
21031     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/removeNamedItemNS) */
21032     removeNamedItemNS(namespaceURI: string | null, localName: string): Attr;
21033     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/setNamedItem) */
21034     setNamedItem(arg: Attr): Attr | null;
21035     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/setNamedItemNS) */
21036     setNamedItemNS(arg: Attr): Attr | null;
21037     [index: number]: Attr;
21040 declare var NamedNodeMap: {
21041     prototype: NamedNodeMap;
21042     new(): NamedNodeMap;
21043     isInstance(obj): obj is NamedNodeMap;
21047  * Available only in secure contexts.
21049  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager)
21050  */
21051 interface NavigationPreloadManager {
21052     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/disable) */
21053     disable(): Promise<void>;
21054     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/enable) */
21055     enable(): Promise<void>;
21056     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/getState) */
21057     getState(): Promise<NavigationPreloadState>;
21058     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/setHeaderValue) */
21059     setHeaderValue(value: string): Promise<void>;
21062 declare var NavigationPreloadManager: {
21063     prototype: NavigationPreloadManager;
21064     new(): NavigationPreloadManager;
21065     isInstance(obj): obj is NavigationPreloadManager;
21069  * The state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities.
21071  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator)
21072  */
21073 interface Navigator extends GlobalPrivacyControl, NavigatorAutomationInformation, NavigatorConcurrentHardware, NavigatorContentUtils, NavigatorGPU, NavigatorGeolocation, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorOnLine, NavigatorStorage {
21074     /**
21075      * @deprecated
21076      * Available only in secure contexts.
21077      *
21078      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/activeVRDisplays)
21079      */
21080     readonly activeVRDisplays: VRDisplay[];
21081     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/buildID) */
21082     readonly buildID: string;
21083     /**
21084      * Available only in secure contexts.
21085      *
21086      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/clipboard)
21087      */
21088     readonly clipboard: Clipboard;
21089     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/connection) */
21090     readonly connection: NetworkInformation;
21091     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/cookieEnabled) */
21092     readonly cookieEnabled: boolean;
21093     /**
21094      * Available only in secure contexts.
21095      *
21096      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/credentials)
21097      */
21098     readonly credentials: CredentialsContainer;
21099     /**
21100      * @deprecated
21101      *
21102      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/doNotTrack)
21103      */
21104     readonly doNotTrack: string;
21105     readonly isWebVRContentDetected: boolean;
21106     readonly isWebVRContentPresenting: boolean;
21107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/maxTouchPoints) */
21108     readonly maxTouchPoints: number;
21109     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/mediaCapabilities) */
21110     readonly mediaCapabilities: MediaCapabilities;
21111     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/mediaDevices) */
21112     readonly mediaDevices: MediaDevices;
21113     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/mediaSession) */
21114     readonly mediaSession: MediaSession;
21115     /**
21116      * @deprecated
21117      *
21118      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigatorPlugins/mimeTypes)
21119      */
21120     readonly mimeTypes: MimeTypeArray;
21121     readonly mozAddonManager: AddonManager;
21122     readonly mozTCPSocket: LegacyMozTCPSocket;
21123     /**
21124      * @deprecated
21125      *
21126      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/oscpu)
21127      */
21128     readonly oscpu: string;
21129     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/pdfViewerEnabled) */
21130     readonly pdfViewerEnabled: boolean;
21131     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/permissions) */
21132     readonly permissions: Permissions;
21133     /**
21134      * @deprecated
21135      *
21136      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/plugins)
21137      */
21138     readonly plugins: PluginArray;
21139     /**
21140      * @deprecated
21141      *
21142      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/productSub)
21143      */
21144     readonly productSub: string;
21145     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/serviceWorker) */
21146     readonly serviceWorker: ServiceWorkerContainer;
21147     readonly testTrialGatedAttribute: boolean;
21148     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/userActivation) */
21149     readonly userActivation: UserActivation;
21150     /**
21151      * @deprecated
21152      *
21153      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vendor)
21154      */
21155     readonly vendor: string;
21156     /**
21157      * @deprecated
21158      *
21159      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vendorSub)
21160      */
21161     readonly vendorSub: string;
21162     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/wakeLock) */
21163     readonly wakeLock: WakeLock;
21164     /**
21165      * Available only in secure contexts.
21166      *
21167      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/xr)
21168      */
21169     readonly xr: XRSystem;
21170     /**
21171      * Available only in secure contexts.
21172      *
21173      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/canShare)
21174      */
21175     canShare(data?: ShareData): boolean;
21176     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/getAutoplayPolicy) */
21177     getAutoplayPolicy(type: AutoplayPolicyMediaType): AutoplayPolicy;
21178     getAutoplayPolicy(element: HTMLMediaElement): AutoplayPolicy;
21179     getAutoplayPolicy(context: AudioContext): AutoplayPolicy;
21180     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/getBattery) */
21181     getBattery(): Promise<BatteryManager>;
21182     /**
21183      * Available only in secure contexts.
21184      *
21185      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/getGamepads)
21186      */
21187     getGamepads(): (Gamepad | null)[];
21188     /**
21189      * @deprecated
21190      * Available only in secure contexts.
21191      *
21192      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/getVRDisplays)
21193      */
21194     getVRDisplays(): Promise<VRDisplay[]>;
21195     /**
21196      * @deprecated
21197      *
21198      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/javaEnabled)
21199      */
21200     javaEnabled(): boolean;
21201     /**
21202      * @deprecated This is a legacy alias of `getUserMedia`.
21203      *
21204      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/getUserMedia)
21205      */
21206     mozGetUserMedia(constraints: MediaStreamConstraints, successCallback: NavigatorUserMediaSuccessCallback, errorCallback: NavigatorUserMediaErrorCallback): void;
21207     requestGamepadServiceTest(): GamepadServiceTest;
21208     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/requestMIDIAccess) */
21209     requestMIDIAccess(options?: MIDIOptions): Promise<MIDIAccess>;
21210     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/requestMediaKeySystemAccess) */
21211     requestMediaKeySystemAccess(keySystem: string, supportedConfigurations: MediaKeySystemConfiguration[]): Promise<MediaKeySystemAccess>;
21212     requestVRPresentation(display: VRDisplay): void;
21213     requestVRServiceTest(): VRServiceTest;
21214     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/sendBeacon) */
21215     sendBeacon(url: string, data?: BodyInit | null): boolean;
21216     setVibrationPermission(permitted: boolean, persistent?: boolean): void;
21217     /**
21218      * Available only in secure contexts.
21219      *
21220      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/share)
21221      */
21222     share(data?: ShareData): Promise<void>;
21223     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vibrate) */
21224     vibrate(duration: number): boolean;
21225     vibrate(pattern: number[]): boolean;
21228 declare var Navigator: {
21229     prototype: Navigator;
21230     new(): Navigator;
21231     isInstance(obj): obj is Navigator;
21234 interface NavigatorAutomationInformation {
21235     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/webdriver) */
21236     readonly webdriver: boolean;
21239 interface NavigatorConcurrentHardware {
21240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/hardwareConcurrency) */
21241     readonly hardwareConcurrency: number;
21244 interface NavigatorContentUtils {
21245     checkProtocolHandlerAllowed(scheme: string, handlerURI: URI, documentURI: URI): void;
21246     /**
21247      * Available only in secure contexts.
21248      *
21249      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/registerProtocolHandler)
21250      */
21251     registerProtocolHandler(scheme: string, url: string): void;
21254 interface NavigatorGPU {
21255     /**
21256      * Available only in secure contexts.
21257      *
21258      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/gpu)
21259      */
21260     readonly gpu: GPU;
21263 interface NavigatorGeolocation {
21264     readonly geolocation: Geolocation;
21267 interface NavigatorID {
21268     /**
21269      * @deprecated
21270      *
21271      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appCodeName)
21272      */
21273     readonly appCodeName: string;
21274     /**
21275      * @deprecated
21276      *
21277      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appName)
21278      */
21279     readonly appName: string;
21280     /**
21281      * @deprecated
21282      *
21283      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appVersion)
21284      */
21285     readonly appVersion: string;
21286     /**
21287      * @deprecated
21288      *
21289      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/platform)
21290      */
21291     readonly platform: string;
21292     /**
21293      * @deprecated
21294      *
21295      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/product)
21296      */
21297     readonly product: string;
21298     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/userAgent) */
21299     readonly userAgent: string;
21300     /**
21301      * @deprecated
21302      *
21303      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/taintEnabled)
21304      */
21305     taintEnabled(): boolean;
21308 interface NavigatorLanguage {
21309     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/language) */
21310     readonly language: string | null;
21311     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/languages) */
21312     readonly languages: string[];
21315 /** Available only in secure contexts. */
21316 interface NavigatorLocks {
21317     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/locks) */
21318     readonly locks: LockManager;
21321 interface NavigatorOnLine {
21322     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/onLine) */
21323     readonly onLine: boolean;
21326 /** Available only in secure contexts. */
21327 interface NavigatorStorage {
21328     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/storage) */
21329     readonly storage: StorageManager;
21332 interface NetworkInformationEventMap {
21333     "typechange": Event;
21336 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NetworkInformation) */
21337 interface NetworkInformation extends EventTarget {
21338     /**
21339      * @deprecated
21340      *
21341      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NetworkInformation/typechange_event)
21342      */
21343     ontypechange: ((this: NetworkInformation, ev: Event) => any) | null;
21344     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NetworkInformation/type) */
21345     readonly type: ConnectionType;
21346     addEventListener<K extends keyof NetworkInformationEventMap>(type: K, listener: (this: NetworkInformation, ev: NetworkInformationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
21347     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
21348     removeEventListener<K extends keyof NetworkInformationEventMap>(type: K, listener: (this: NetworkInformation, ev: NetworkInformationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
21349     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
21352 declare var NetworkInformation: {
21353     prototype: NetworkInformation;
21354     new(): NetworkInformation;
21355     isInstance(obj): obj is NetworkInformation;
21359  * Node is an interface from which a number of DOM API object types inherit. It allows those types to be treated similarly; for example, inheriting the same set of methods, or being tested in the same way.
21361  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node)
21362  */
21363 interface Node extends EventTarget {
21364     readonly accessibleNode: AccessibleNode | null;
21365     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/baseURI) */
21366     readonly baseURI: string | null;
21367     readonly baseURIObject: URI | null;
21368     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/childNodes) */
21369     readonly childNodes: NodeList;
21370     readonly containingShadowRoot: ShadowRoot | null;
21371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/firstChild) */
21372     readonly firstChild: Node | null;
21373     readonly flattenedTreeParentNode: Node | null;
21374     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isConnected) */
21375     readonly isConnected: boolean;
21376     readonly isNativeAnonymous: boolean;
21377     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/lastChild) */
21378     readonly lastChild: Node | null;
21379     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nextSibling) */
21380     readonly nextSibling: Node | null;
21381     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nodeName) */
21382     readonly nodeName: string;
21383     readonly nodePrincipal: Principal;
21384     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nodeType) */
21385     readonly nodeType: number;
21386     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nodeValue) */
21387     nodeValue: string | null;
21388     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/ownerDocument) */
21389     readonly ownerDocument: Document | null;
21390     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/parentElement) */
21391     readonly parentElement: Element | null;
21392     readonly parentFlexElement: Element | null;
21393     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/parentNode) */
21394     readonly parentNode: Node | null;
21395     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/previousSibling) */
21396     readonly previousSibling: Node | null;
21397     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/textContent) */
21398     textContent: string | null;
21399     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/appendChild) */
21400     appendChild(node: Node): Node;
21401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/cloneNode) */
21402     cloneNode(deep?: boolean): Node;
21403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/compareDocumentPosition) */
21404     compareDocumentPosition(other: Node): number;
21405     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/contains) */
21406     contains(other: Node | null): boolean;
21407     generateXPath(): string;
21408     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/getRootNode) */
21409     getRootNode(options?: GetRootNodeOptions): Node;
21410     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/hasChildNodes) */
21411     hasChildNodes(): boolean;
21412     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/insertBefore) */
21413     insertBefore(node: Node, child: Node | null): Node;
21414     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isDefaultNamespace) */
21415     isDefaultNamespace(namespace: string | null): boolean;
21416     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isEqualNode) */
21417     isEqualNode(node: Node | null): boolean;
21418     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isSameNode) */
21419     isSameNode(node: Node | null): boolean;
21420     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/lookupNamespaceURI) */
21421     lookupNamespaceURI(prefix: string | null): string | null;
21422     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/lookupPrefix) */
21423     lookupPrefix(namespace: string | null): string | null;
21424     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/normalize) */
21425     normalize(): void;
21426     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/removeChild) */
21427     removeChild(child: Node): Node;
21428     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/replaceChild) */
21429     replaceChild(node: Node, child: Node): Node;
21430     readonly ELEMENT_NODE: 1;
21431     readonly ATTRIBUTE_NODE: 2;
21432     readonly TEXT_NODE: 3;
21433     readonly CDATA_SECTION_NODE: 4;
21434     readonly ENTITY_REFERENCE_NODE: 5;
21435     readonly ENTITY_NODE: 6;
21436     readonly PROCESSING_INSTRUCTION_NODE: 7;
21437     readonly COMMENT_NODE: 8;
21438     readonly DOCUMENT_NODE: 9;
21439     readonly DOCUMENT_TYPE_NODE: 10;
21440     readonly DOCUMENT_FRAGMENT_NODE: 11;
21441     readonly NOTATION_NODE: 12;
21442     readonly DOCUMENT_POSITION_DISCONNECTED: 0x01;
21443     readonly DOCUMENT_POSITION_PRECEDING: 0x02;
21444     readonly DOCUMENT_POSITION_FOLLOWING: 0x04;
21445     readonly DOCUMENT_POSITION_CONTAINS: 0x08;
21446     readonly DOCUMENT_POSITION_CONTAINED_BY: 0x10;
21447     readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 0x20;
21450 declare var Node: {
21451     prototype: Node;
21452     new(): Node;
21453     readonly ELEMENT_NODE: 1;
21454     readonly ATTRIBUTE_NODE: 2;
21455     readonly TEXT_NODE: 3;
21456     readonly CDATA_SECTION_NODE: 4;
21457     readonly ENTITY_REFERENCE_NODE: 5;
21458     readonly ENTITY_NODE: 6;
21459     readonly PROCESSING_INSTRUCTION_NODE: 7;
21460     readonly COMMENT_NODE: 8;
21461     readonly DOCUMENT_NODE: 9;
21462     readonly DOCUMENT_TYPE_NODE: 10;
21463     readonly DOCUMENT_FRAGMENT_NODE: 11;
21464     readonly NOTATION_NODE: 12;
21465     readonly DOCUMENT_POSITION_DISCONNECTED: 0x01;
21466     readonly DOCUMENT_POSITION_PRECEDING: 0x02;
21467     readonly DOCUMENT_POSITION_FOLLOWING: 0x04;
21468     readonly DOCUMENT_POSITION_CONTAINS: 0x08;
21469     readonly DOCUMENT_POSITION_CONTAINED_BY: 0x10;
21470     readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 0x20;
21471     isInstance(obj): obj is Node;
21475  * An iterator over the members of a list of the nodes in a subtree of the DOM. The nodes will be returned in document order.
21477  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator)
21478  */
21479 interface NodeIterator {
21480     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/filter) */
21481     readonly filter: NodeFilter | null;
21482     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/pointerBeforeReferenceNode) */
21483     readonly pointerBeforeReferenceNode: boolean;
21484     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/referenceNode) */
21485     readonly referenceNode: Node | null;
21486     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/root) */
21487     readonly root: Node;
21488     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/whatToShow) */
21489     readonly whatToShow: number;
21490     /**
21491      * @deprecated
21492      *
21493      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/detach)
21494      */
21495     detach(): void;
21496     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/nextNode) */
21497     nextNode(): Node | null;
21498     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/previousNode) */
21499     previousNode(): Node | null;
21502 declare var NodeIterator: {
21503     prototype: NodeIterator;
21504     new(): NodeIterator;
21505     isInstance(obj): obj is NodeIterator;
21509  * NodeList objects are collections of nodes, usually returned by properties such as Node.childNodes and methods such as document.querySelectorAll().
21511  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList)
21512  */
21513 interface NodeList {
21514     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/length) */
21515     readonly length: number;
21516     /**
21517      * Performs the specified action for each node in an list.
21518      * @param callbackfn  A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list.
21519      * @param thisArg  An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
21520      */
21521     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/item) */
21522     item(index: number): Node | null;
21523     forEach(callbackfn: (value: Node | null, key: number, parent: NodeList) => void, thisArg?: any): void;
21524     [index: number]: Node;
21527 declare var NodeList: {
21528     prototype: NodeList;
21529     new(): NodeList;
21530     isInstance(obj): obj is NodeList;
21533 interface NodeListOf {
21534     /**
21535      * Performs the specified action for each node in an list.
21536      * @param callbackfn  A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list.
21537      * @param thisArg  An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
21538      */
21541 declare var NodeListOf: {
21542     prototype: NodeListOf;
21543     new(): NodeListOf;
21544     isInstance(obj): obj is NodeListOf;
21547 interface NonDocumentTypeChildNode {
21548     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/nextElementSibling) */
21549     readonly nextElementSibling: Element | null;
21550     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/previousElementSibling) */
21551     readonly previousElementSibling: Element | null;
21554 interface NotificationEventMap {
21555     "click": Event;
21556     "close": Event;
21557     "error": ErrorEvent;
21558     "show": Event;
21562  * This Notifications API interface is used to configure and display desktop notifications to the user.
21564  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification)
21565  */
21566 interface Notification extends EventTarget {
21567     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/body) */
21568     readonly body: string | null;
21569     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/data) */
21570     readonly data: any;
21571     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/dir) */
21572     readonly dir: NotificationDirection;
21573     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/icon) */
21574     readonly icon: string | null;
21575     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/lang) */
21576     readonly lang: string | null;
21577     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/click_event) */
21578     onclick: ((this: Notification, ev: Event) => any) | null;
21579     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/close_event) */
21580     onclose: ((this: Notification, ev: Event) => any) | null;
21581     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/error_event) */
21582     onerror: OnErrorEventHandler;
21583     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/show_event) */
21584     onshow: ((this: Notification, ev: Event) => any) | null;
21585     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/requireInteraction) */
21586     readonly requireInteraction: boolean;
21587     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/silent) */
21588     readonly silent: boolean;
21589     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/tag) */
21590     readonly tag: string | null;
21591     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/title) */
21592     readonly title: string;
21593     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/vibrate) */
21594     readonly vibrate: number[];
21595     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/close) */
21596     close(): void;
21597     addEventListener<K extends keyof NotificationEventMap>(type: K, listener: (this: Notification, ev: NotificationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
21598     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
21599     removeEventListener<K extends keyof NotificationEventMap>(type: K, listener: (this: Notification, ev: NotificationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
21600     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
21603 declare var Notification: {
21604     prototype: Notification;
21605     new(title: string, options?: NotificationOptions): Notification;
21606     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/permission_static) */
21607     readonly permission: NotificationPermission;
21608     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/requestPermission_static) */
21609     requestPermission(permissionCallback?: NotificationPermissionCallback): Promise<NotificationPermission>;
21610     isInstance(obj): obj is Notification;
21614  * The parameter passed into the onnotificationclick handler, the NotificationEvent interface represents a notification click event that is dispatched on the ServiceWorkerGlobalScope of a ServiceWorker.
21616  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NotificationEvent)
21617  */
21618 interface NotificationEvent extends ExtendableEvent {
21619     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NotificationEvent/notification) */
21620     readonly notification: Notification;
21623 declare var NotificationEvent: {
21624     prototype: NotificationEvent;
21625     new(type: string, eventInitDict: NotificationEventInit): NotificationEvent;
21626     isInstance(obj): obj is NotificationEvent;
21629 interface NotifyPaintEvent extends Event {
21630     readonly boundingClientRect: DOMRect;
21631     readonly clientRects: DOMRectList;
21632     readonly paintRequests: PaintRequestList;
21633     readonly paintTimeStamp: DOMHighResTimeStamp;
21634     readonly transactionId: number;
21637 declare var NotifyPaintEvent: {
21638     prototype: NotifyPaintEvent;
21639     new(): NotifyPaintEvent;
21640     isInstance(obj): obj is NotifyPaintEvent;
21643 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed) */
21644 interface OES_draw_buffers_indexed {
21645     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendEquationSeparateiOES) */
21646     blendEquationSeparateiOES(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum): void;
21647     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendEquationiOES) */
21648     blendEquationiOES(buf: GLuint, mode: GLenum): void;
21649     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendFuncSeparateiOES) */
21650     blendFuncSeparateiOES(buf: GLuint, srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
21651     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendFunciOES) */
21652     blendFunciOES(buf: GLuint, src: GLenum, dst: GLenum): void;
21653     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/colorMaskiOES) */
21654     colorMaskiOES(buf: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean): void;
21655     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/disableiOES) */
21656     disableiOES(target: GLenum, index: GLuint): void;
21657     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/enableiOES) */
21658     enableiOES(target: GLenum, index: GLuint): void;
21662  * The OES_element_index_uint extension is part of the WebGL API and adds support for gl.UNSIGNED_INT types to WebGLRenderingContext.drawElements().
21664  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_element_index_uint)
21665  */
21666 interface OES_element_index_uint {
21669 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_fbo_render_mipmap) */
21670 interface OES_fbo_render_mipmap {
21674  * The OES_standard_derivatives extension is part of the WebGL API and adds the GLSL derivative functions dFdx, dFdy, and fwidth.
21676  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_standard_derivatives)
21677  */
21678 interface OES_standard_derivatives {
21679     readonly FRAGMENT_SHADER_DERIVATIVE_HINT_OES: 0x8B8B;
21683  * The OES_texture_float extension is part of the WebGL API and exposes floating-point pixel types for textures.
21685  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_float)
21686  */
21687 interface OES_texture_float {
21691  * The OES_texture_float_linear extension is part of the WebGL API and allows linear filtering with floating-point pixel types for textures.
21693  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_float_linear)
21694  */
21695 interface OES_texture_float_linear {
21699  * The OES_texture_half_float extension is part of the WebGL API and adds texture formats with 16- (aka half float) and 32-bit floating-point components.
21701  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_half_float)
21702  */
21703 interface OES_texture_half_float {
21704     readonly HALF_FLOAT_OES: 0x8D61;
21708  * The OES_texture_half_float_linear extension is part of the WebGL API and allows linear filtering with half floating-point pixel types for textures.
21710  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_half_float_linear)
21711  */
21712 interface OES_texture_half_float_linear {
21715 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object) */
21716 interface OES_vertex_array_object {
21717     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/bindVertexArrayOES) */
21718     bindVertexArrayOES(arrayObject: WebGLVertexArrayObject | null): void;
21719     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/createVertexArrayOES) */
21720     createVertexArrayOES(): WebGLVertexArrayObject | null;
21721     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/deleteVertexArrayOES) */
21722     deleteVertexArrayOES(arrayObject: WebGLVertexArrayObject | null): void;
21723     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/isVertexArrayOES) */
21724     isVertexArrayOES(arrayObject: WebGLVertexArrayObject | null): GLboolean;
21725     readonly VERTEX_ARRAY_BINDING_OES: 0x85B5;
21728 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OVR_multiview2) */
21729 interface OVR_multiview2 {
21730     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OVR_multiview2/framebufferTextureMultiviewOVR) */
21731     framebufferTextureMultiviewOVR(target: GLenum, attachment: GLenum, texture: WebGLTexture | null, level: GLint, baseViewIndex: GLint, numViews: GLsizei): void;
21732     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR: 0x9630;
21733     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR: 0x9632;
21734     readonly MAX_VIEWS_OVR: 0x9631;
21735     readonly FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR: 0x9633;
21739  * The Web Audio API OfflineAudioCompletionEvent interface represents events that occur when the processing of an OfflineAudioContext is terminated. The complete event implements this interface.
21741  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioCompletionEvent)
21742  */
21743 interface OfflineAudioCompletionEvent extends Event {
21744     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioCompletionEvent/renderedBuffer) */
21745     readonly renderedBuffer: AudioBuffer;
21748 declare var OfflineAudioCompletionEvent: {
21749     prototype: OfflineAudioCompletionEvent;
21750     new(type: string, eventInitDict: OfflineAudioCompletionEventInit): OfflineAudioCompletionEvent;
21751     isInstance(obj): obj is OfflineAudioCompletionEvent;
21754 interface OfflineAudioContextEventMap extends BaseAudioContextEventMap {
21755     "complete": Event;
21759  * An AudioContext interface representing an audio-processing graph built from linked together AudioNodes. In contrast with a standard AudioContext, an OfflineAudioContext doesn't render the audio to the device hardware; instead, it generates it, as fast as it can, and outputs the result to an AudioBuffer.
21761  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext)
21762  */
21763 interface OfflineAudioContext extends BaseAudioContext {
21764     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/length) */
21765     readonly length: number;
21766     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/complete_event) */
21767     oncomplete: ((this: OfflineAudioContext, ev: Event) => any) | null;
21768     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/startRendering) */
21769     startRendering(): Promise<AudioBuffer>;
21770     addEventListener<K extends keyof OfflineAudioContextEventMap>(type: K, listener: (this: OfflineAudioContext, ev: OfflineAudioContextEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
21771     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
21772     removeEventListener<K extends keyof OfflineAudioContextEventMap>(type: K, listener: (this: OfflineAudioContext, ev: OfflineAudioContextEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
21773     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
21776 declare var OfflineAudioContext: {
21777     prototype: OfflineAudioContext;
21778     new(contextOptions: OfflineAudioContextOptions): OfflineAudioContext;
21779     new(numberOfChannels: number, length: number, sampleRate: number): OfflineAudioContext;
21780     isInstance(obj): obj is OfflineAudioContext;
21783 interface OffscreenCanvasEventMap {
21784     "contextlost": Event;
21785     "contextrestored": Event;
21788 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas) */
21789 interface OffscreenCanvas extends EventTarget {
21790     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/height) */
21791     height: number;
21792     oncontextlost: ((this: OffscreenCanvas, ev: Event) => any) | null;
21793     oncontextrestored: ((this: OffscreenCanvas, ev: Event) => any) | null;
21794     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/width) */
21795     width: number;
21796     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/convertToBlob) */
21797     convertToBlob(options?: ImageEncodeOptions): Promise<Blob>;
21798     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/getContext) */
21799     getContext(contextId: OffscreenRenderingContextId, contextOptions?: any): OffscreenRenderingContext | null;
21800     /**
21801      * @deprecated This is a legacy alias of `convertToBlob`.
21802      *
21803      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/convertToBlob)
21804      */
21805     toBlob(type?: string, encoderOptions?: any): Promise<Blob>;
21806     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/transferToImageBitmap) */
21807     transferToImageBitmap(): ImageBitmap;
21808     addEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
21809     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
21810     removeEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
21811     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
21814 declare var OffscreenCanvas: {
21815     prototype: OffscreenCanvas;
21816     new(width: number, height: number): OffscreenCanvas;
21817     isInstance(obj): obj is OffscreenCanvas;
21820 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvasRenderingContext2D) */
21821 interface OffscreenCanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPathDrawingStyles, CanvasPathMethods, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform {
21822     readonly canvas: OffscreenCanvas;
21823     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvasRenderingContext2D/commit) */
21824     commit(): void;
21827 declare var OffscreenCanvasRenderingContext2D: {
21828     prototype: OffscreenCanvasRenderingContext2D;
21829     new(): OffscreenCanvasRenderingContext2D;
21830     isInstance(obj): obj is OffscreenCanvasRenderingContext2D;
21833 interface OnErrorEventHandlerForNodesEventMap {
21834     "error": ErrorEvent;
21837 interface OnErrorEventHandlerForNodes {
21838     onerror: OnErrorEventHandler;
21839     addEventListener<K extends keyof OnErrorEventHandlerForNodesEventMap>(type: K, listener: (this: OnErrorEventHandlerForNodes, ev: OnErrorEventHandlerForNodesEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
21840     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
21841     removeEventListener<K extends keyof OnErrorEventHandlerForNodesEventMap>(type: K, listener: (this: OnErrorEventHandlerForNodes, ev: OnErrorEventHandlerForNodesEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
21842     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
21845 interface OnErrorEventHandlerForWindowEventMap {
21846     "error": ErrorEvent;
21849 interface OnErrorEventHandlerForWindow {
21850     onerror: OnErrorEventHandler;
21851     addEventListener<K extends keyof OnErrorEventHandlerForWindowEventMap>(type: K, listener: (this: OnErrorEventHandlerForWindow, ev: OnErrorEventHandlerForWindowEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
21852     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
21853     removeEventListener<K extends keyof OnErrorEventHandlerForWindowEventMap>(type: K, listener: (this: OnErrorEventHandlerForWindow, ev: OnErrorEventHandlerForWindowEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
21854     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
21858  * The OscillatorNode interface represents a periodic waveform, such as a sine wave. It is an AudioScheduledSourceNode audio-processing module that causes a specified frequency of a given wave to be created—in effect, a constant tone.
21860  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode)
21861  */
21862 interface OscillatorNode extends AudioScheduledSourceNode, AudioNodePassThrough {
21863     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/detune) */
21864     readonly detune: AudioParam;
21865     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/frequency) */
21866     readonly frequency: AudioParam;
21867     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/type) */
21868     type: OscillatorType;
21869     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/setPeriodicWave) */
21870     setPeriodicWave(periodicWave: PeriodicWave): void;
21871     addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: OscillatorNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
21872     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
21873     removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: OscillatorNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
21874     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
21877 declare var OscillatorNode: {
21878     prototype: OscillatorNode;
21879     new(context: BaseAudioContext, options?: OscillatorOptions): OscillatorNode;
21880     isInstance(obj): obj is OscillatorNode;
21884  * The PageTransitionEvent is fired when a document is being loaded or unloaded.
21886  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PageTransitionEvent)
21887  */
21888 interface PageTransitionEvent extends Event {
21889     readonly inFrameSwap: boolean;
21890     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PageTransitionEvent/persisted) */
21891     readonly persisted: boolean;
21894 declare var PageTransitionEvent: {
21895     prototype: PageTransitionEvent;
21896     new(type: string, eventInitDict?: PageTransitionEventInit): PageTransitionEvent;
21897     isInstance(obj): obj is PageTransitionEvent;
21900 interface PaintRequest {
21901     readonly clientRect: DOMRect;
21902     readonly reason: string;
21905 declare var PaintRequest: {
21906     prototype: PaintRequest;
21907     new(): PaintRequest;
21908     isInstance(obj): obj is PaintRequest;
21911 interface PaintRequestList {
21912     readonly length: number;
21913     item(index: number): PaintRequest | null;
21914     [index: number]: PaintRequest;
21917 declare var PaintRequestList: {
21918     prototype: PaintRequestList;
21919     new(): PaintRequestList;
21920     isInstance(obj): obj is PaintRequestList;
21923 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaintWorkletGlobalScope) */
21924 interface PaintWorkletGlobalScope extends WorkletGlobalScope {
21925     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaintWorkletGlobalScope/registerPaint) */
21926     registerPaint(name: string, paintCtor: VoidFunction): void;
21929 declare var PaintWorkletGlobalScope: {
21930     prototype: PaintWorkletGlobalScope;
21931     new(): PaintWorkletGlobalScope;
21932     isInstance(obj): obj is PaintWorkletGlobalScope;
21936  * A PannerNode always has exactly one input and one output: the input can be mono or stereo but the output is always stereo (2 channels); you can't have panning effects without at least two audio channels!
21938  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode)
21939  */
21940 interface PannerNode extends AudioNode, AudioNodePassThrough {
21941     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/coneInnerAngle) */
21942     coneInnerAngle: number;
21943     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/coneOuterAngle) */
21944     coneOuterAngle: number;
21945     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/coneOuterGain) */
21946     coneOuterGain: number;
21947     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/distanceModel) */
21948     distanceModel: DistanceModelType;
21949     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/maxDistance) */
21950     maxDistance: number;
21951     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/orientationX) */
21952     readonly orientationX: AudioParam;
21953     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/orientationY) */
21954     readonly orientationY: AudioParam;
21955     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/orientationZ) */
21956     readonly orientationZ: AudioParam;
21957     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/panningModel) */
21958     panningModel: PanningModelType;
21959     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/positionX) */
21960     readonly positionX: AudioParam;
21961     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/positionY) */
21962     readonly positionY: AudioParam;
21963     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/positionZ) */
21964     readonly positionZ: AudioParam;
21965     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/refDistance) */
21966     refDistance: number;
21967     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/rolloffFactor) */
21968     rolloffFactor: number;
21969     /**
21970      * @deprecated
21971      *
21972      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/setOrientation)
21973      */
21974     setOrientation(x: number, y: number, z: number): void;
21975     /**
21976      * @deprecated
21977      *
21978      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/setPosition)
21979      */
21980     setPosition(x: number, y: number, z: number): void;
21983 declare var PannerNode: {
21984     prototype: PannerNode;
21985     new(context: BaseAudioContext, options?: PannerOptions): PannerNode;
21986     isInstance(obj): obj is PannerNode;
21989 interface ParentNode {
21990     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/childElementCount) */
21991     readonly childElementCount: number;
21992     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/children) */
21993     readonly children: HTMLCollection;
21994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/firstElementChild) */
21995     readonly firstElementChild: Element | null;
21996     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/lastElementChild) */
21997     readonly lastElementChild: Element | null;
21998     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/append) */
21999     append(...nodes: (Node | string)[]): void;
22000     getElementsByAttribute(name: string, value: string | null): HTMLCollection;
22001     getElementsByAttributeNS(namespaceURI: string | null, name: string, value: string | null): HTMLCollection;
22002     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/prepend) */
22003     prepend(...nodes: (Node | string)[]): void;
22004     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/replaceChildren) */
22005     replaceChildren(...nodes: (Node | string)[]): void;
22008 interface ParentProcessMessageManager extends MessageBroadcaster, GlobalProcessScriptLoader, ProcessScriptLoader {
22011 declare var ParentProcessMessageManager: {
22012     prototype: ParentProcessMessageManager;
22013     new(): ParentProcessMessageManager;
22014     isInstance(obj): obj is ParentProcessMessageManager;
22018  * This Canvas 2D API interface is used to declare a path that can then be used on a CanvasRenderingContext2D object. The path methods of the CanvasRenderingContext2D interface are also present on this interface, which gives you the convenience of being able to retain and replay your path whenever desired.
22020  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Path2D)
22021  */
22022 interface Path2D extends CanvasPathMethods {
22023     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Path2D/addPath) */
22024     addPath(path: Path2D, transform?: DOMMatrix2DInit): void;
22027 declare var Path2D: {
22028     prototype: Path2D;
22029     new(): Path2D;
22030     new(other: Path2D): Path2D;
22031     new(pathString: string): Path2D;
22032     isInstance(obj): obj is Path2D;
22036  * This Payment Request API interface is used to store shipping or payment address information.
22037  * @deprecated
22038  * Available only in secure contexts.
22040  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress)
22041  */
22042 interface PaymentAddress {
22043     /**
22044      * @deprecated
22045      *
22046      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/addressLine)
22047      */
22048     readonly addressLine: string[];
22049     /**
22050      * @deprecated
22051      *
22052      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/city)
22053      */
22054     readonly city: string;
22055     /**
22056      * @deprecated
22057      *
22058      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/country)
22059      */
22060     readonly country: string;
22061     /**
22062      * @deprecated
22063      *
22064      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/dependentLocality)
22065      */
22066     readonly dependentLocality: string;
22067     /**
22068      * @deprecated
22069      *
22070      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/organization)
22071      */
22072     readonly organization: string;
22073     /**
22074      * @deprecated
22075      *
22076      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/phone)
22077      */
22078     readonly phone: string;
22079     /**
22080      * @deprecated
22081      *
22082      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/postalCode)
22083      */
22084     readonly postalCode: string;
22085     /**
22086      * @deprecated
22087      *
22088      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/recipient)
22089      */
22090     readonly recipient: string;
22091     /**
22092      * @deprecated
22093      *
22094      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/region)
22095      */
22096     readonly region: string;
22097     readonly regionCode: string;
22098     /**
22099      * @deprecated
22100      *
22101      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/sortingCode)
22102      */
22103     readonly sortingCode: string;
22104     /**
22105      * @deprecated
22106      *
22107      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentAddress/toJSON)
22108      */
22109     toJSON(): any;
22112 /** @deprecated */
22113 declare var PaymentAddress: {
22114     prototype: PaymentAddress;
22115     new(): PaymentAddress;
22116     isInstance(obj): obj is PaymentAddress;
22120  * Available only in secure contexts.
22122  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentMethodChangeEvent)
22123  */
22124 interface PaymentMethodChangeEvent extends PaymentRequestUpdateEvent {
22125     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentMethodChangeEvent/methodDetails) */
22126     readonly methodDetails: any;
22127     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentMethodChangeEvent/methodName) */
22128     readonly methodName: string;
22131 declare var PaymentMethodChangeEvent: {
22132     prototype: PaymentMethodChangeEvent;
22133     new(type: string, eventInitDict?: PaymentMethodChangeEventInit): PaymentMethodChangeEvent;
22134     isInstance(obj): obj is PaymentMethodChangeEvent;
22137 interface PaymentRequestEventMap {
22138     "merchantvalidation": Event;
22139     "paymentmethodchange": Event;
22140     "shippingaddresschange": Event;
22141     "shippingoptionchange": Event;
22145  * This Payment Request API interface is the primary access point into the API, and lets web content and apps accept payments from the end user.
22146  * Available only in secure contexts.
22148  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest)
22149  */
22150 interface PaymentRequest extends EventTarget {
22151     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/id) */
22152     readonly id: string;
22153     /**
22154      * @deprecated
22155      *
22156      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/merchantvalidation_event)
22157      */
22158     onmerchantvalidation: ((this: PaymentRequest, ev: Event) => any) | null;
22159     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/paymentmethodchange_event) */
22160     onpaymentmethodchange: ((this: PaymentRequest, ev: Event) => any) | null;
22161     /**
22162      * @deprecated
22163      *
22164      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingaddresschange_event)
22165      */
22166     onshippingaddresschange: ((this: PaymentRequest, ev: Event) => any) | null;
22167     /**
22168      * @deprecated
22169      *
22170      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingoptionchange_event)
22171      */
22172     onshippingoptionchange: ((this: PaymentRequest, ev: Event) => any) | null;
22173     /**
22174      * @deprecated
22175      *
22176      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingAddress)
22177      */
22178     readonly shippingAddress: PaymentAddress | null;
22179     /**
22180      * @deprecated
22181      *
22182      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingOption)
22183      */
22184     readonly shippingOption: string | null;
22185     /**
22186      * @deprecated
22187      *
22188      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/shippingType)
22189      */
22190     readonly shippingType: PaymentShippingType | null;
22191     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/abort) */
22192     abort(): Promise<void>;
22193     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/canMakePayment) */
22194     canMakePayment(): Promise<boolean>;
22195     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/show) */
22196     show(detailsPromise?: PaymentDetailsUpdate | PromiseLike<PaymentDetailsUpdate>): Promise<PaymentResponse>;
22197     addEventListener<K extends keyof PaymentRequestEventMap>(type: K, listener: (this: PaymentRequest, ev: PaymentRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
22198     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
22199     removeEventListener<K extends keyof PaymentRequestEventMap>(type: K, listener: (this: PaymentRequest, ev: PaymentRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
22200     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
22203 declare var PaymentRequest: {
22204     prototype: PaymentRequest;
22205     new(methodData: PaymentMethodData[], details: PaymentDetailsInit, options?: PaymentOptions): PaymentRequest;
22206     isInstance(obj): obj is PaymentRequest;
22210  * This Payment Request API interface enables a web page to update the details of a PaymentRequest in response to a user action.
22211  * Available only in secure contexts.
22213  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequestUpdateEvent)
22214  */
22215 interface PaymentRequestUpdateEvent extends Event {
22216     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequestUpdateEvent/updateWith) */
22217     updateWith(detailsPromise: PaymentDetailsUpdate | PromiseLike<PaymentDetailsUpdate>): void;
22220 declare var PaymentRequestUpdateEvent: {
22221     prototype: PaymentRequestUpdateEvent;
22222     new(type: string, eventInitDict?: PaymentRequestUpdateEventInit): PaymentRequestUpdateEvent;
22223     isInstance(obj): obj is PaymentRequestUpdateEvent;
22226 interface PaymentResponseEventMap {
22227     "payerdetailchange": Event;
22231  * This Payment Request API interface is returned after a user selects a payment method and approves a payment request.
22232  * Available only in secure contexts.
22234  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse)
22235  */
22236 interface PaymentResponse extends EventTarget {
22237     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/details) */
22238     readonly details: any;
22239     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/methodName) */
22240     readonly methodName: string;
22241     /**
22242      * @deprecated
22243      *
22244      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerdetailchange_event)
22245      */
22246     onpayerdetailchange: ((this: PaymentResponse, ev: Event) => any) | null;
22247     /**
22248      * @deprecated
22249      *
22250      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerEmail)
22251      */
22252     readonly payerEmail: string | null;
22253     /**
22254      * @deprecated
22255      *
22256      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerName)
22257      */
22258     readonly payerName: string | null;
22259     /**
22260      * @deprecated
22261      *
22262      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/payerPhone)
22263      */
22264     readonly payerPhone: string | null;
22265     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/requestId) */
22266     readonly requestId: string;
22267     /**
22268      * @deprecated
22269      *
22270      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/shippingAddress)
22271      */
22272     readonly shippingAddress: PaymentAddress | null;
22273     /**
22274      * @deprecated
22275      *
22276      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/shippingOption)
22277      */
22278     readonly shippingOption: string | null;
22279     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/complete) */
22280     complete(result?: PaymentComplete): Promise<void>;
22281     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/retry) */
22282     retry(errorFields?: PaymentValidationErrors): Promise<void>;
22283     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/toJSON) */
22284     toJSON(): any;
22285     addEventListener<K extends keyof PaymentResponseEventMap>(type: K, listener: (this: PaymentResponse, ev: PaymentResponseEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
22286     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
22287     removeEventListener<K extends keyof PaymentResponseEventMap>(type: K, listener: (this: PaymentResponse, ev: PaymentResponseEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
22288     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
22291 declare var PaymentResponse: {
22292     prototype: PaymentResponse;
22293     new(): PaymentResponse;
22294     isInstance(obj): obj is PaymentResponse;
22297 interface PeerConnectionImpl {
22298     certificate: RTCCertificate;
22299     readonly connectionState: RTCPeerConnectionState;
22300     readonly currentLocalDescription: string;
22301     readonly currentOfferer: boolean | null;
22302     readonly currentRemoteDescription: string;
22303     readonly fingerprint: string;
22304     readonly iceConnectionState: RTCIceConnectionState;
22305     readonly iceGatheringState: RTCIceGatheringState;
22306     id: string;
22307     peerIdentity: string;
22308     readonly pendingLocalDescription: string;
22309     readonly pendingOfferer: boolean | null;
22310     readonly pendingRemoteDescription: string;
22311     readonly privacyRequested: boolean;
22312     readonly sctp: RTCSctpTransport | null;
22313     readonly signalingState: RTCSignalingState;
22314     addIceCandidate(candidate: string, mid: string, ufrag: string, level: number | null): void;
22315     addTransceiver(init: RTCRtpTransceiverInit, kind: string, sendTrack: MediaStreamTrack | null, addTrackMagic: boolean): RTCRtpTransceiver;
22316     chain(op: ChainedOperation): Promise<any>;
22317     close(): void;
22318     closeStreams(): void;
22319     createAnswer(): void;
22320     createDataChannel(label: string, protocol: string, type: number, ordered: boolean, maxTime: number, maxNum: number, externalNegotiated: boolean, stream: number): RTCDataChannel;
22321     createOffer(options?: RTCOfferOptions): void;
22322     createdSender(sender: RTCRtpSender): boolean;
22323     disablePacketDump(level: number, type: mozPacketDumpType, sending: boolean): void;
22324     enablePacketDump(level: number, type: mozPacketDumpType, sending: boolean): void;
22325     getRemoteStreams(): MediaStream[];
22326     getStats(selector: MediaStreamTrack | null): Promise<RTCStatsReport>;
22327     getTransceivers(): RTCRtpTransceiver[];
22328     initialize(observer: PeerConnectionObserver, window: Window): void;
22329     onSetDescriptionError(): void;
22330     onSetDescriptionSuccess(type: RTCSdpType, remote: boolean): Promise<void>;
22331     pluginCrash(pluginId: number, name: string): boolean;
22332     restartIce(): void;
22333     restartIceNoRenegotiationNeeded(): void;
22334     setConfiguration(config?: RTCConfiguration): void;
22335     setLocalDescription(action: number, sdp: string): void;
22336     setRemoteDescription(action: number, sdp: string): void;
22337     updateNegotiationNeeded(): void;
22340 declare var PeerConnectionImpl: {
22341     prototype: PeerConnectionImpl;
22342     new(): PeerConnectionImpl;
22343     isInstance(obj): obj is PeerConnectionImpl;
22346 interface PeerConnectionObserver {
22347     fireNegotiationNeededEvent(): void;
22348     fireStreamEvent(stream: MediaStream): void;
22349     fireTrackEvent(receiver: RTCRtpReceiver, streams: MediaStream[]): void;
22350     notifyDataChannel(channel: RTCDataChannel): void;
22351     onAddIceCandidateError(error: PCErrorData): void;
22352     onAddIceCandidateSuccess(): void;
22353     onCreateAnswerError(error: PCErrorData): void;
22354     onCreateAnswerSuccess(answer: string): void;
22355     onCreateOfferError(error: PCErrorData): void;
22356     onCreateOfferSuccess(offer: string): void;
22357     onIceCandidate(level: number, mid: string, candidate: string, ufrag: string): void;
22358     onPacket(level: number, type: mozPacketDumpType, sending: boolean, packet: ArrayBuffer): void;
22359     onSetDescriptionError(error: PCErrorData): void;
22360     onSetDescriptionSuccess(): void;
22361     onStateChange(state: PCObserverStateType): void;
22364 declare var PeerConnectionObserver: {
22365     prototype: PeerConnectionObserver;
22366     new(domPC: RTCPeerConnection): PeerConnectionObserver;
22367     isInstance(obj): obj is PeerConnectionObserver;
22370 interface PerformanceEventMap {
22371     "resourcetimingbufferfull": Event;
22375  * Provides access to performance-related information for the current page. It's part of the High Resolution Time API, but is enhanced by the Performance Timeline API, the Navigation Timing API, the User Timing API, and the Resource Timing API.
22377  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance)
22378  */
22379 interface Performance extends EventTarget {
22380     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/eventCounts) */
22381     readonly eventCounts: EventCounts;
22382     readonly mozMemory: any;
22383     /**
22384      * @deprecated
22385      *
22386      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/navigation)
22387      */
22388     readonly navigation: PerformanceNavigation;
22389     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/resourcetimingbufferfull_event) */
22390     onresourcetimingbufferfull: ((this: Performance, ev: Event) => any) | null;
22391     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/timeOrigin) */
22392     readonly timeOrigin: DOMHighResTimeStamp;
22393     /**
22394      * @deprecated
22395      *
22396      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/timing)
22397      */
22398     readonly timing: PerformanceTiming;
22399     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearMarks) */
22400     clearMarks(markName?: string): void;
22401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearMeasures) */
22402     clearMeasures(measureName?: string): void;
22403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearResourceTimings) */
22404     clearResourceTimings(): void;
22405     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntries) */
22406     getEntries(): PerformanceEntryList;
22407     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */
22408     getEntriesByName(name: string, entryType?: string): PerformanceEntryList;
22409     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */
22410     getEntriesByType(entryType: string): PerformanceEntryList;
22411     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/mark) */
22412     mark(markName: string, markOptions?: PerformanceMarkOptions): PerformanceMark;
22413     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/measure) */
22414     measure(measureName: string, startOrMeasureOptions?: string | PerformanceMeasureOptions, endMark?: string): PerformanceMeasure;
22415     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/now) */
22416     now(): DOMHighResTimeStamp;
22417     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/setResourceTimingBufferSize) */
22418     setResourceTimingBufferSize(maxSize: number): void;
22419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/toJSON) */
22420     toJSON(): any;
22421     addEventListener<K extends keyof PerformanceEventMap>(type: K, listener: (this: Performance, ev: PerformanceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
22422     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
22423     removeEventListener<K extends keyof PerformanceEventMap>(type: K, listener: (this: Performance, ev: PerformanceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
22424     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
22427 declare var Performance: {
22428     prototype: Performance;
22429     new(): Performance;
22430     isInstance(obj): obj is Performance;
22434  * Encapsulates a single performance metric that is part of the performance timeline. A performance entry can be directly created by making a performance mark or measure (for example by calling the mark() method) at an explicit point in an application. Performance entries are also created in indirect ways such as loading a resource (such as an image).
22436  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry)
22437  */
22438 interface PerformanceEntry {
22439     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/duration) */
22440     readonly duration: DOMHighResTimeStamp;
22441     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/entryType) */
22442     readonly entryType: string;
22443     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/name) */
22444     readonly name: string;
22445     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/startTime) */
22446     readonly startTime: DOMHighResTimeStamp;
22447     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/toJSON) */
22448     toJSON(): any;
22451 declare var PerformanceEntry: {
22452     prototype: PerformanceEntry;
22453     new(): PerformanceEntry;
22454     isInstance(obj): obj is PerformanceEntry;
22457 interface PerformanceEntryEvent extends Event {
22458     readonly duration: DOMHighResTimeStamp;
22459     readonly entryType: string;
22460     readonly epoch: number;
22461     readonly name: string;
22462     readonly origin: string;
22463     readonly startTime: DOMHighResTimeStamp;
22466 declare var PerformanceEntryEvent: {
22467     prototype: PerformanceEntryEvent;
22468     new(type: string, eventInitDict?: PerformanceEntryEventInit): PerformanceEntryEvent;
22469     isInstance(obj): obj is PerformanceEntryEvent;
22472 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming) */
22473 interface PerformanceEventTiming extends PerformanceEntry {
22474     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/cancelable) */
22475     readonly cancelable: boolean;
22476     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/processingEnd) */
22477     readonly processingEnd: DOMHighResTimeStamp;
22478     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/processingStart) */
22479     readonly processingStart: DOMHighResTimeStamp;
22480     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/target) */
22481     readonly target: Node | null;
22482     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/toJSON) */
22483     toJSON(): any;
22486 declare var PerformanceEventTiming: {
22487     prototype: PerformanceEventTiming;
22488     new(): PerformanceEventTiming;
22489     isInstance(obj): obj is PerformanceEventTiming;
22493  * PerformanceMark is an abstract interface for PerformanceEntry objects with an entryType of "mark". Entries of this type are created by calling performance.mark() to add a named DOMHighResTimeStamp (the mark) to the browser's performance timeline.
22495  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMark)
22496  */
22497 interface PerformanceMark extends PerformanceEntry {
22498     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMark/detail) */
22499     readonly detail: any;
22502 declare var PerformanceMark: {
22503     prototype: PerformanceMark;
22504     new(markName: string, markOptions?: PerformanceMarkOptions): PerformanceMark;
22505     isInstance(obj): obj is PerformanceMark;
22509  * PerformanceMeasure is an abstract interface for PerformanceEntry objects with an entryType of "measure". Entries of this type are created by calling performance.measure() to add a named DOMHighResTimeStamp (the measure) between two marks to the browser's performance timeline.
22511  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMeasure)
22512  */
22513 interface PerformanceMeasure extends PerformanceEntry {
22514     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMeasure/detail) */
22515     readonly detail: any;
22518 declare var PerformanceMeasure: {
22519     prototype: PerformanceMeasure;
22520     new(): PerformanceMeasure;
22521     isInstance(obj): obj is PerformanceMeasure;
22525  * The legacy PerformanceNavigation interface represents information about how the navigation to the current document was done.
22526  * @deprecated This interface is deprecated in the Navigation Timing Level 2 specification. Please use the PerformanceNavigationTiming interface instead.
22528  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation)
22529  */
22530 interface PerformanceNavigation {
22531     /**
22532      * @deprecated
22533      *
22534      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation/redirectCount)
22535      */
22536     readonly redirectCount: number;
22537     /**
22538      * @deprecated
22539      *
22540      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation/type)
22541      */
22542     readonly type: number;
22543     /**
22544      * @deprecated
22545      *
22546      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation/toJSON)
22547      */
22548     toJSON(): any;
22549     readonly TYPE_NAVIGATE: 0;
22550     readonly TYPE_RELOAD: 1;
22551     readonly TYPE_BACK_FORWARD: 2;
22552     readonly TYPE_RESERVED: 255;
22555 /** @deprecated */
22556 declare var PerformanceNavigation: {
22557     prototype: PerformanceNavigation;
22558     new(): PerformanceNavigation;
22559     readonly TYPE_NAVIGATE: 0;
22560     readonly TYPE_RELOAD: 1;
22561     readonly TYPE_BACK_FORWARD: 2;
22562     readonly TYPE_RESERVED: 255;
22563     isInstance(obj): obj is PerformanceNavigation;
22567  * Provides methods and properties to store and retrieve metrics regarding the browser's document navigation events. For example, this interface can be used to determine how much time it takes to load or unload a document.
22569  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming)
22570  */
22571 interface PerformanceNavigationTiming extends PerformanceResourceTiming {
22572     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domComplete) */
22573     readonly domComplete: DOMHighResTimeStamp;
22574     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domContentLoadedEventEnd) */
22575     readonly domContentLoadedEventEnd: DOMHighResTimeStamp;
22576     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domContentLoadedEventStart) */
22577     readonly domContentLoadedEventStart: DOMHighResTimeStamp;
22578     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domInteractive) */
22579     readonly domInteractive: DOMHighResTimeStamp;
22580     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/loadEventEnd) */
22581     readonly loadEventEnd: DOMHighResTimeStamp;
22582     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/loadEventStart) */
22583     readonly loadEventStart: DOMHighResTimeStamp;
22584     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/redirectCount) */
22585     readonly redirectCount: number;
22586     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/type) */
22587     readonly type: NavigationType;
22588     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/unloadEventEnd) */
22589     readonly unloadEventEnd: DOMHighResTimeStamp;
22590     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/unloadEventStart) */
22591     readonly unloadEventStart: DOMHighResTimeStamp;
22592     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/toJSON) */
22593     toJSON(): any;
22596 declare var PerformanceNavigationTiming: {
22597     prototype: PerformanceNavigationTiming;
22598     new(): PerformanceNavigationTiming;
22599     isInstance(obj): obj is PerformanceNavigationTiming;
22602 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver) */
22603 interface PerformanceObserver {
22604     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/disconnect) */
22605     disconnect(): void;
22606     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/observe) */
22607     observe(options?: PerformanceObserverInit): void;
22608     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/takeRecords) */
22609     takeRecords(): PerformanceEntryList;
22612 declare var PerformanceObserver: {
22613     prototype: PerformanceObserver;
22614     new(callback: PerformanceObserverCallback): PerformanceObserver;
22615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/supportedEntryTypes_static) */
22616     readonly supportedEntryTypes: any;
22617     isInstance(obj): obj is PerformanceObserver;
22620 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList) */
22621 interface PerformanceObserverEntryList {
22622     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntries) */
22623     getEntries(filter?: PerformanceEntryFilterOptions): PerformanceEntryList;
22624     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */
22625     getEntriesByName(name: string, entryType?: string): PerformanceEntryList;
22626     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */
22627     getEntriesByType(entryType: string): PerformanceEntryList;
22630 declare var PerformanceObserverEntryList: {
22631     prototype: PerformanceObserverEntryList;
22632     new(): PerformanceObserverEntryList;
22633     isInstance(obj): obj is PerformanceObserverEntryList;
22636 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformancePaintTiming) */
22637 interface PerformancePaintTiming extends PerformanceEntry {
22640 declare var PerformancePaintTiming: {
22641     prototype: PerformancePaintTiming;
22642     new(): PerformancePaintTiming;
22643     isInstance(obj): obj is PerformancePaintTiming;
22647  * Enables retrieval and analysis of detailed network timing data regarding the loading of an application's resources. An application can use the timing metrics to determine, for example, the length of time it takes to fetch a specific resource, such as an XMLHttpRequest, <SVG>, image, or script.
22649  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming)
22650  */
22651 interface PerformanceResourceTiming extends PerformanceEntry {
22652     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/connectEnd) */
22653     readonly connectEnd: DOMHighResTimeStamp;
22654     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/connectStart) */
22655     readonly connectStart: DOMHighResTimeStamp;
22656     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/decodedBodySize) */
22657     readonly decodedBodySize: number;
22658     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/domainLookupEnd) */
22659     readonly domainLookupEnd: DOMHighResTimeStamp;
22660     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/domainLookupStart) */
22661     readonly domainLookupStart: DOMHighResTimeStamp;
22662     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/encodedBodySize) */
22663     readonly encodedBodySize: number;
22664     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/fetchStart) */
22665     readonly fetchStart: DOMHighResTimeStamp;
22666     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/initiatorType) */
22667     readonly initiatorType: string;
22668     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/nextHopProtocol) */
22669     readonly nextHopProtocol: string;
22670     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/redirectEnd) */
22671     readonly redirectEnd: DOMHighResTimeStamp;
22672     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/redirectStart) */
22673     readonly redirectStart: DOMHighResTimeStamp;
22674     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/requestStart) */
22675     readonly requestStart: DOMHighResTimeStamp;
22676     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/responseEnd) */
22677     readonly responseEnd: DOMHighResTimeStamp;
22678     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/responseStart) */
22679     readonly responseStart: DOMHighResTimeStamp;
22680     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/secureConnectionStart) */
22681     readonly secureConnectionStart: DOMHighResTimeStamp;
22682     /**
22683      * Available only in secure contexts.
22684      *
22685      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/serverTiming)
22686      */
22687     readonly serverTiming: PerformanceServerTiming[];
22688     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/transferSize) */
22689     readonly transferSize: number;
22690     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/workerStart) */
22691     readonly workerStart: DOMHighResTimeStamp;
22692     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/toJSON) */
22693     toJSON(): any;
22696 declare var PerformanceResourceTiming: {
22697     prototype: PerformanceResourceTiming;
22698     new(): PerformanceResourceTiming;
22699     isInstance(obj): obj is PerformanceResourceTiming;
22703  * Available only in secure contexts.
22705  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming)
22706  */
22707 interface PerformanceServerTiming {
22708     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/description) */
22709     readonly description: string;
22710     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/duration) */
22711     readonly duration: DOMHighResTimeStamp;
22712     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/name) */
22713     readonly name: string;
22714     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/toJSON) */
22715     toJSON(): any;
22718 declare var PerformanceServerTiming: {
22719     prototype: PerformanceServerTiming;
22720     new(): PerformanceServerTiming;
22721     isInstance(obj): obj is PerformanceServerTiming;
22725  * A legacy interface kept for backwards compatibility and contains properties that offer performance timing information for various events which occur during the loading and use of the current page. You get a PerformanceTiming object describing your page using the window.performance.timing property.
22726  * @deprecated This interface is deprecated in the Navigation Timing Level 2 specification. Please use the PerformanceNavigationTiming interface instead.
22728  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming)
22729  */
22730 interface PerformanceTiming {
22731     /**
22732      * @deprecated
22733      *
22734      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/connectEnd)
22735      */
22736     readonly connectEnd: number;
22737     /**
22738      * @deprecated
22739      *
22740      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/connectStart)
22741      */
22742     readonly connectStart: number;
22743     /**
22744      * @deprecated
22745      *
22746      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domComplete)
22747      */
22748     readonly domComplete: number;
22749     /**
22750      * @deprecated
22751      *
22752      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domContentLoadedEventEnd)
22753      */
22754     readonly domContentLoadedEventEnd: number;
22755     /**
22756      * @deprecated
22757      *
22758      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domContentLoadedEventStart)
22759      */
22760     readonly domContentLoadedEventStart: number;
22761     /**
22762      * @deprecated
22763      *
22764      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domInteractive)
22765      */
22766     readonly domInteractive: number;
22767     /**
22768      * @deprecated
22769      *
22770      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domLoading)
22771      */
22772     readonly domLoading: number;
22773     /**
22774      * @deprecated
22775      *
22776      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domainLookupEnd)
22777      */
22778     readonly domainLookupEnd: number;
22779     /**
22780      * @deprecated
22781      *
22782      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domainLookupStart)
22783      */
22784     readonly domainLookupStart: number;
22785     /**
22786      * @deprecated
22787      *
22788      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/fetchStart)
22789      */
22790     readonly fetchStart: number;
22791     /**
22792      * @deprecated
22793      *
22794      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/loadEventEnd)
22795      */
22796     readonly loadEventEnd: number;
22797     /**
22798      * @deprecated
22799      *
22800      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/loadEventStart)
22801      */
22802     readonly loadEventStart: number;
22803     /**
22804      * @deprecated
22805      *
22806      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/navigationStart)
22807      */
22808     readonly navigationStart: number;
22809     /**
22810      * @deprecated
22811      *
22812      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/redirectEnd)
22813      */
22814     readonly redirectEnd: number;
22815     /**
22816      * @deprecated
22817      *
22818      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/redirectStart)
22819      */
22820     readonly redirectStart: number;
22821     /**
22822      * @deprecated
22823      *
22824      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/requestStart)
22825      */
22826     readonly requestStart: number;
22827     /**
22828      * @deprecated
22829      *
22830      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/responseEnd)
22831      */
22832     readonly responseEnd: number;
22833     /**
22834      * @deprecated
22835      *
22836      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/responseStart)
22837      */
22838     readonly responseStart: number;
22839     /**
22840      * @deprecated
22841      *
22842      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/secureConnectionStart)
22843      */
22844     readonly secureConnectionStart: number;
22845     readonly timeToContentfulPaint: number;
22846     readonly timeToDOMContentFlushed: number;
22847     readonly timeToFirstInteractive: number;
22848     readonly timeToNonBlankPaint: number;
22849     /**
22850      * @deprecated
22851      *
22852      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/unloadEventEnd)
22853      */
22854     readonly unloadEventEnd: number;
22855     /**
22856      * @deprecated
22857      *
22858      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/unloadEventStart)
22859      */
22860     readonly unloadEventStart: number;
22861     /**
22862      * @deprecated
22863      *
22864      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/toJSON)
22865      */
22866     toJSON(): any;
22869 /** @deprecated */
22870 declare var PerformanceTiming: {
22871     prototype: PerformanceTiming;
22872     new(): PerformanceTiming;
22873     isInstance(obj): obj is PerformanceTiming;
22877  * PeriodicWave has no inputs or outputs; it is used to define custom oscillators when calling OscillatorNode.setPeriodicWave(). The PeriodicWave itself is created/returned by AudioContext.createPeriodicWave().
22879  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PeriodicWave)
22880  */
22881 interface PeriodicWave {
22884 declare var PeriodicWave: {
22885     prototype: PeriodicWave;
22886     new(context: BaseAudioContext, options?: PeriodicWaveOptions): PeriodicWave;
22887     isInstance(obj): obj is PeriodicWave;
22890 interface PermissionStatusEventMap {
22891     "change": Event;
22894 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus) */
22895 interface PermissionStatus extends EventTarget {
22896     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/name) */
22897     readonly name: PermissionName;
22898     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/change_event) */
22899     onchange: ((this: PermissionStatus, ev: Event) => any) | null;
22900     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/state) */
22901     readonly state: PermissionState;
22902     addEventListener<K extends keyof PermissionStatusEventMap>(type: K, listener: (this: PermissionStatus, ev: PermissionStatusEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
22903     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
22904     removeEventListener<K extends keyof PermissionStatusEventMap>(type: K, listener: (this: PermissionStatus, ev: PermissionStatusEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
22905     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
22908 declare var PermissionStatus: {
22909     prototype: PermissionStatus;
22910     new(): PermissionStatus;
22911     isInstance(obj): obj is PermissionStatus;
22914 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Permissions) */
22915 interface Permissions {
22916     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Permissions/query) */
22917     query(permission: any): Promise<PermissionStatus>;
22920 declare var Permissions: {
22921     prototype: Permissions;
22922     new(): Permissions;
22923     isInstance(obj): obj is Permissions;
22926 interface PlacesBookmark extends PlacesEvent {
22927     readonly guid: string;
22928     readonly id: number;
22929     readonly isTagging: boolean;
22930     readonly itemType: number;
22931     readonly parentGuid: string;
22932     readonly parentId: number;
22933     readonly source: number;
22934     readonly url: string;
22937 declare var PlacesBookmark: {
22938     prototype: PlacesBookmark;
22939     new(): PlacesBookmark;
22940     isInstance(obj): obj is PlacesBookmark;
22943 interface PlacesBookmarkAddition extends PlacesBookmark {
22944     readonly dateAdded: number;
22945     readonly frecency: number;
22946     readonly hidden: boolean;
22947     readonly index: number;
22948     readonly lastVisitDate: number | null;
22949     readonly tags: string;
22950     readonly targetFolderGuid: string;
22951     readonly targetFolderItemId: number;
22952     readonly targetFolderTitle: string;
22953     readonly title: string;
22954     readonly visitCount: number;
22957 declare var PlacesBookmarkAddition: {
22958     prototype: PlacesBookmarkAddition;
22959     new(initDict: PlacesBookmarkAdditionInit): PlacesBookmarkAddition;
22960     isInstance(obj): obj is PlacesBookmarkAddition;
22963 interface PlacesBookmarkChanged extends PlacesBookmark {
22964     readonly lastModified: number;
22967 declare var PlacesBookmarkChanged: {
22968     prototype: PlacesBookmarkChanged;
22969     new(): PlacesBookmarkChanged;
22970     isInstance(obj): obj is PlacesBookmarkChanged;
22973 interface PlacesBookmarkGuid extends PlacesBookmarkChanged {
22976 declare var PlacesBookmarkGuid: {
22977     prototype: PlacesBookmarkGuid;
22978     new(initDict: PlacesBookmarkGuidInit): PlacesBookmarkGuid;
22979     isInstance(obj): obj is PlacesBookmarkGuid;
22982 interface PlacesBookmarkKeyword extends PlacesBookmarkChanged {
22983     readonly keyword: string;
22986 declare var PlacesBookmarkKeyword: {
22987     prototype: PlacesBookmarkKeyword;
22988     new(initDict: PlacesBookmarkKeywordInit): PlacesBookmarkKeyword;
22989     isInstance(obj): obj is PlacesBookmarkKeyword;
22992 interface PlacesBookmarkMoved extends PlacesBookmark {
22993     readonly dateAdded: number;
22994     readonly frecency: number;
22995     readonly hidden: boolean;
22996     readonly index: number;
22997     readonly lastVisitDate: number | null;
22998     readonly oldIndex: number;
22999     readonly oldParentGuid: string;
23000     readonly tags: string;
23001     readonly title: string;
23002     readonly visitCount: number;
23005 declare var PlacesBookmarkMoved: {
23006     prototype: PlacesBookmarkMoved;
23007     new(initDict: PlacesBookmarkMovedInit): PlacesBookmarkMoved;
23008     isInstance(obj): obj is PlacesBookmarkMoved;
23011 interface PlacesBookmarkRemoved extends PlacesBookmark {
23012     readonly index: number;
23013     readonly isDescendantRemoval: boolean;
23014     readonly title: string;
23017 declare var PlacesBookmarkRemoved: {
23018     prototype: PlacesBookmarkRemoved;
23019     new(initDict: PlacesBookmarkRemovedInit): PlacesBookmarkRemoved;
23020     isInstance(obj): obj is PlacesBookmarkRemoved;
23023 interface PlacesBookmarkTags extends PlacesBookmarkChanged {
23024     readonly tags: string[];
23027 declare var PlacesBookmarkTags: {
23028     prototype: PlacesBookmarkTags;
23029     new(initDict: PlacesBookmarkTagsInit): PlacesBookmarkTags;
23030     isInstance(obj): obj is PlacesBookmarkTags;
23033 interface PlacesBookmarkTime extends PlacesBookmarkChanged {
23034     readonly dateAdded: number;
23037 declare var PlacesBookmarkTime: {
23038     prototype: PlacesBookmarkTime;
23039     new(initDict: PlacesBookmarkTimeInit): PlacesBookmarkTime;
23040     isInstance(obj): obj is PlacesBookmarkTime;
23043 interface PlacesBookmarkTitle extends PlacesBookmarkChanged {
23044     readonly title: string;
23047 declare var PlacesBookmarkTitle: {
23048     prototype: PlacesBookmarkTitle;
23049     new(initDict: PlacesBookmarkTitleInit): PlacesBookmarkTitle;
23050     isInstance(obj): obj is PlacesBookmarkTitle;
23053 interface PlacesBookmarkUrl extends PlacesBookmarkChanged {
23056 declare var PlacesBookmarkUrl: {
23057     prototype: PlacesBookmarkUrl;
23058     new(initDict: PlacesBookmarkUrlInit): PlacesBookmarkUrl;
23059     isInstance(obj): obj is PlacesBookmarkUrl;
23062 interface PlacesEvent {
23063     readonly type: PlacesEventType;
23066 declare var PlacesEvent: {
23067     prototype: PlacesEvent;
23068     new(): PlacesEvent;
23069     isInstance(obj): obj is PlacesEvent;
23072 interface PlacesFavicon extends PlacesEvent {
23073     readonly faviconUrl: string;
23074     readonly pageGuid: string;
23075     readonly url: string;
23078 declare var PlacesFavicon: {
23079     prototype: PlacesFavicon;
23080     new(initDict: PlacesFaviconInit): PlacesFavicon;
23081     isInstance(obj): obj is PlacesFavicon;
23084 interface PlacesHistoryCleared extends PlacesEvent {
23087 declare var PlacesHistoryCleared: {
23088     prototype: PlacesHistoryCleared;
23089     new(): PlacesHistoryCleared;
23090     isInstance(obj): obj is PlacesHistoryCleared;
23093 interface PlacesPurgeCaches extends PlacesEvent {
23096 declare var PlacesPurgeCaches: {
23097     prototype: PlacesPurgeCaches;
23098     new(): PlacesPurgeCaches;
23099     isInstance(obj): obj is PlacesPurgeCaches;
23102 interface PlacesRanking extends PlacesEvent {
23105 declare var PlacesRanking: {
23106     prototype: PlacesRanking;
23107     new(): PlacesRanking;
23108     isInstance(obj): obj is PlacesRanking;
23111 interface PlacesVisit extends PlacesEvent {
23112     readonly frecency: number;
23113     readonly hidden: boolean;
23114     readonly lastKnownTitle: string | null;
23115     readonly pageGuid: string;
23116     readonly referringVisitId: number;
23117     readonly transitionType: number;
23118     readonly typedCount: number;
23119     readonly url: string;
23120     readonly visitCount: number;
23121     readonly visitId: number;
23122     readonly visitTime: number;
23125 declare var PlacesVisit: {
23126     prototype: PlacesVisit;
23127     new(): PlacesVisit;
23128     isInstance(obj): obj is PlacesVisit;
23131 interface PlacesVisitRemoved extends PlacesEvent {
23132     readonly isPartialVisistsRemoval: boolean;
23133     readonly isRemovedFromStore: boolean;
23134     readonly pageGuid: string;
23135     readonly reason: number;
23136     readonly transitionType: number;
23137     readonly url: string;
23138     readonly REASON_DELETED: 0;
23139     readonly REASON_EXPIRED: 1;
23142 declare var PlacesVisitRemoved: {
23143     prototype: PlacesVisitRemoved;
23144     new(initDict: PlacesVisitRemovedInit): PlacesVisitRemoved;
23145     readonly REASON_DELETED: 0;
23146     readonly REASON_EXPIRED: 1;
23147     isInstance(obj): obj is PlacesVisitRemoved;
23150 interface PlacesVisitTitle extends PlacesEvent {
23151     readonly pageGuid: string;
23152     readonly title: string;
23153     readonly url: string;
23156 declare var PlacesVisitTitle: {
23157     prototype: PlacesVisitTitle;
23158     new(initDict: PlacesVisitTitleInit): PlacesVisitTitle;
23159     isInstance(obj): obj is PlacesVisitTitle;
23162 interface PlacesWeakCallbackWrapper {
23165 declare var PlacesWeakCallbackWrapper: {
23166     prototype: PlacesWeakCallbackWrapper;
23167     new(callback: PlacesEventCallback): PlacesWeakCallbackWrapper;
23168     isInstance(obj): obj is PlacesWeakCallbackWrapper;
23172  * Provides information about a browser plugin.
23173  * @deprecated
23175  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin)
23176  */
23177 interface Plugin {
23178     /**
23179      * @deprecated
23180      *
23181      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/description)
23182      */
23183     readonly description: string;
23184     /**
23185      * @deprecated
23186      *
23187      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/filename)
23188      */
23189     readonly filename: string;
23190     /** @deprecated */
23191     readonly length: number;
23192     /**
23193      * @deprecated
23194      *
23195      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/name)
23196      */
23197     readonly name: string;
23198     /**
23199      * @deprecated
23200      *
23201      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/item)
23202      */
23203     item(index: number): MimeType | null;
23204     /**
23205      * @deprecated
23206      *
23207      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/namedItem)
23208      */
23209     namedItem(name: string): MimeType | null;
23210     [index: number]: MimeType;
23213 /** @deprecated */
23214 declare var Plugin: {
23215     prototype: Plugin;
23216     new(): Plugin;
23217     isInstance(obj): obj is Plugin;
23221  * Used to store a list of Plugin objects describing the available plugins; it's returned by the window.navigator.plugins property. The PluginArray is not a JavaScript array, but has the length property and supports accessing individual items using bracket notation (plugins[2]), as well as via item(index) and namedItem("name") methods.
23222  * @deprecated
23224  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray)
23225  */
23226 interface PluginArray {
23227     /**
23228      * @deprecated
23229      *
23230      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/length)
23231      */
23232     readonly length: number;
23233     /**
23234      * @deprecated
23235      *
23236      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/item)
23237      */
23238     item(index: number): Plugin | null;
23239     /**
23240      * @deprecated
23241      *
23242      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/namedItem)
23243      */
23244     namedItem(name: string): Plugin | null;
23245     /**
23246      * @deprecated
23247      *
23248      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/refresh)
23249      */
23250     refresh(): void;
23251     [index: number]: Plugin;
23254 /** @deprecated */
23255 declare var PluginArray: {
23256     prototype: PluginArray;
23257     new(): PluginArray;
23258     isInstance(obj): obj is PluginArray;
23261 interface PluginCrashedEvent extends Event {
23262     readonly gmpPlugin: boolean;
23263     readonly pluginDumpID: string;
23264     readonly pluginFilename: string | null;
23265     readonly pluginID: number;
23266     readonly pluginName: string;
23267     readonly submittedCrashReport: boolean;
23270 declare var PluginCrashedEvent: {
23271     prototype: PluginCrashedEvent;
23272     new(type: string, eventInitDict?: PluginCrashedEventInit): PluginCrashedEvent;
23273     isInstance(obj): obj is PluginCrashedEvent;
23277  * The state of a DOM event produced by a pointer such as the geometry of the contact point, the device type that generated the event, the amount of pressure that was applied on the contact surface, etc.
23279  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent)
23280  */
23281 interface PointerEvent extends MouseEvent {
23282     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/height) */
23283     readonly height: number;
23284     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/isPrimary) */
23285     readonly isPrimary: boolean;
23286     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/pointerId) */
23287     readonly pointerId: number;
23288     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/pointerType) */
23289     readonly pointerType: string;
23290     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/pressure) */
23291     readonly pressure: number;
23292     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/tangentialPressure) */
23293     readonly tangentialPressure: number;
23294     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/tiltX) */
23295     readonly tiltX: number;
23296     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/tiltY) */
23297     readonly tiltY: number;
23298     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/twist) */
23299     readonly twist: number;
23300     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/width) */
23301     readonly width: number;
23302     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/getCoalescedEvents) */
23303     getCoalescedEvents(): PointerEvent[];
23304     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/getPredictedEvents) */
23305     getPredictedEvents(): PointerEvent[];
23308 declare var PointerEvent: {
23309     prototype: PointerEvent;
23310     new(type: string, eventInitDict?: PointerEventInit): PointerEvent;
23311     isInstance(obj): obj is PointerEvent;
23315  * PopStateEvent is an event handler for the popstate event on the window.
23317  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PopStateEvent)
23318  */
23319 interface PopStateEvent extends Event {
23320     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PopStateEvent/state) */
23321     readonly state: any;
23324 declare var PopStateEvent: {
23325     prototype: PopStateEvent;
23326     new(type: string, eventInitDict?: PopStateEventInit): PopStateEvent;
23327     isInstance(obj): obj is PopStateEvent;
23330 interface PopoverInvokerElement {
23331     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetAction) */
23332     popoverTargetAction: string;
23333     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetElement) */
23334     popoverTargetElement: Element | null;
23337 interface PopupBlockedEvent extends Event {
23338     readonly popupWindowFeatures: string | null;
23339     readonly popupWindowName: string | null;
23340     readonly popupWindowURI: URI | null;
23341     readonly requestingWindow: Window | null;
23344 declare var PopupBlockedEvent: {
23345     prototype: PopupBlockedEvent;
23346     new(type: string, eventInitDict?: PopupBlockedEventInit): PopupBlockedEvent;
23347     isInstance(obj): obj is PopupBlockedEvent;
23350 interface PopupPositionedEvent extends Event {
23351     readonly alignmentOffset: number;
23352     readonly alignmentPosition: string;
23353     readonly isAnchored: boolean;
23354     readonly popupAlignment: string;
23357 declare var PopupPositionedEvent: {
23358     prototype: PopupPositionedEvent;
23359     new(type: string, init?: PopupPositionedEventInit): PopupPositionedEvent;
23360     isInstance(obj): obj is PopupPositionedEvent;
23363 interface PositionStateEvent extends Event {
23364     readonly duration: number;
23365     readonly playbackRate: number;
23366     readonly position: number;
23369 declare var PositionStateEvent: {
23370     prototype: PositionStateEvent;
23371     new(type: string, eventInitDict?: PositionStateEventInit): PositionStateEvent;
23372     isInstance(obj): obj is PositionStateEvent;
23375 interface PrecompiledScript {
23376     readonly hasReturnValue: boolean;
23377     readonly url: string;
23378     executeInGlobal(global: any, options?: ExecuteInGlobalOptions): any;
23381 declare var PrecompiledScript: {
23382     prototype: PrecompiledScript;
23383     new(): PrecompiledScript;
23384     isInstance(obj): obj is PrecompiledScript;
23387 interface ProcessMessageManager extends MessageSender, ProcessScriptLoader {
23388     readonly isInProcess: boolean;
23389     readonly osPid: number;
23392 declare var ProcessMessageManager: {
23393     prototype: ProcessMessageManager;
23394     new(): ProcessMessageManager;
23395     isInstance(obj): obj is ProcessMessageManager;
23398 interface ProcessScriptLoader {
23399     getDelayedProcessScripts(): any[][];
23400     loadProcessScript(url: string, allowDelayedLoad: boolean): void;
23401     removeDelayedProcessScript(url: string): void;
23405  * A processing instruction embeds application-specific instructions in XML which can be ignored by other applications that don't recognize them.
23407  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProcessingInstruction)
23408  */
23409 interface ProcessingInstruction extends CharacterData, LinkStyle {
23410     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProcessingInstruction/target) */
23411     readonly target: string;
23414 declare var ProcessingInstruction: {
23415     prototype: ProcessingInstruction;
23416     new(): ProcessingInstruction;
23417     isInstance(obj): obj is ProcessingInstruction;
23421  * Events measuring progress of an underlying process, like an HTTP request (for an XMLHttpRequest, or the loading of the underlying resource of an <img>, <audio>, <video>, <style> or <link>).
23423  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent)
23424  */
23425 interface ProgressEvent extends Event {
23426     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/lengthComputable) */
23427     readonly lengthComputable: boolean;
23428     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/loaded) */
23429     readonly loaded: number;
23430     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/total) */
23431     readonly total: number;
23434 declare var ProgressEvent: {
23435     prototype: ProgressEvent;
23436     new(type: string, eventInitDict?: ProgressEventInit): ProgressEvent;
23437     isInstance(obj): obj is ProgressEvent;
23440 interface PromiseNativeHandler {
23443 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent) */
23444 interface PromiseRejectionEvent extends Event {
23445     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/promise) */
23446     readonly promise: Promise<any>;
23447     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/reason) */
23448     readonly reason: any;
23451 declare var PromiseRejectionEvent: {
23452     prototype: PromiseRejectionEvent;
23453     new(type: string, eventInitDict: PromiseRejectionEventInit): PromiseRejectionEvent;
23454     isInstance(obj): obj is PromiseRejectionEvent;
23458  * Available only in secure contexts.
23460  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential)
23461  */
23462 interface PublicKeyCredential extends Credential {
23463     readonly authenticatorAttachment: string | null;
23464     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/rawId) */
23465     readonly rawId: ArrayBuffer;
23466     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/response) */
23467     readonly response: AuthenticatorResponse;
23468     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/getClientExtensionResults) */
23469     getClientExtensionResults(): AuthenticationExtensionsClientOutputs;
23470     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/toJSON) */
23471     toJSON(): any;
23474 declare var PublicKeyCredential: {
23475     prototype: PublicKeyCredential;
23476     new(): PublicKeyCredential;
23477     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/isConditionalMediationAvailable) */
23478     isConditionalMediationAvailable(): Promise<boolean>;
23479     isExternalCTAP2SecurityKeySupported(): Promise<boolean>;
23480     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/isUserVerifyingPlatformAuthenticatorAvailable_static) */
23481     isUserVerifyingPlatformAuthenticatorAvailable(): Promise<boolean>;
23482     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/parseCreationOptionsFromJSON_static) */
23483     parseCreationOptionsFromJSON(options: PublicKeyCredentialCreationOptionsJSON): PublicKeyCredentialCreationOptions;
23484     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/parseRequestOptionsFromJSON_static) */
23485     parseRequestOptionsFromJSON(options: PublicKeyCredentialRequestOptionsJSON): PublicKeyCredentialRequestOptions;
23486     isInstance(obj): obj is PublicKeyCredential;
23490  * This Push API interface represents a push message that has been received. This event is sent to the global scope of a ServiceWorker. It contains the information sent from an application server to a PushSubscription.
23492  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushEvent)
23493  */
23494 interface PushEvent extends ExtendableEvent {
23495     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushEvent/data) */
23496     readonly data: PushMessageData | null;
23499 declare var PushEvent: {
23500     prototype: PushEvent;
23501     new(type: string, eventInitDict?: PushEventInit): PushEvent;
23502     isInstance(obj): obj is PushEvent;
23506  * This Push API interface provides a way to receive notifications from third-party servers as well as request URLs for push notifications.
23508  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager)
23509  */
23510 interface PushManager {
23511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/getSubscription) */
23512     getSubscription(): Promise<PushSubscription | null>;
23513     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/permissionState) */
23514     permissionState(options?: PushSubscriptionOptionsInit): Promise<PermissionState>;
23515     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/subscribe) */
23516     subscribe(options?: PushSubscriptionOptionsInit): Promise<PushSubscription>;
23519 declare var PushManager: {
23520     prototype: PushManager;
23521     new(scope: string): PushManager;
23522     isInstance(obj): obj is PushManager;
23525 interface PushManagerImpl {
23526     getSubscription(): Promise<PushSubscription | null>;
23527     permissionState(options?: PushSubscriptionOptionsInit): Promise<PermissionState>;
23528     subscribe(options?: PushSubscriptionOptionsInit): Promise<PushSubscription>;
23531 declare var PushManagerImpl: {
23532     prototype: PushManagerImpl;
23533     new(scope: string): PushManagerImpl;
23534     isInstance(obj): obj is PushManagerImpl;
23538  * This Push API interface provides methods which let you retrieve the push data sent by a server in various formats.
23540  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData)
23541  */
23542 interface PushMessageData {
23543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/arrayBuffer) */
23544     arrayBuffer(): ArrayBuffer;
23545     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/blob) */
23546     blob(): Blob;
23547     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/json) */
23548     json(): any;
23549     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/text) */
23550     text(): string;
23553 declare var PushMessageData: {
23554     prototype: PushMessageData;
23555     new(): PushMessageData;
23556     isInstance(obj): obj is PushMessageData;
23560  * This Push API interface provides a subcription's URL endpoint and allows unsubscription from a push service.
23562  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription)
23563  */
23564 interface PushSubscription {
23565     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/endpoint) */
23566     readonly endpoint: string;
23567     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/expirationTime) */
23568     readonly expirationTime: EpochTimeStamp | null;
23569     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/options) */
23570     readonly options: PushSubscriptionOptions;
23571     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/getKey) */
23572     getKey(name: PushEncryptionKeyName): ArrayBuffer | null;
23573     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/toJSON) */
23574     toJSON(): PushSubscriptionJSON;
23575     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/unsubscribe) */
23576     unsubscribe(): Promise<boolean>;
23579 declare var PushSubscription: {
23580     prototype: PushSubscription;
23581     new(initDict: PushSubscriptionInit): PushSubscription;
23582     isInstance(obj): obj is PushSubscription;
23585 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions) */
23586 interface PushSubscriptionOptions {
23587     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions/applicationServerKey) */
23588     readonly applicationServerKey: ArrayBuffer | null;
23591 declare var PushSubscriptionOptions: {
23592     prototype: PushSubscriptionOptions;
23593     new(): PushSubscriptionOptions;
23594     isInstance(obj): obj is PushSubscriptionOptions;
23597 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCCertificate) */
23598 interface RTCCertificate {
23599     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCCertificate/expires) */
23600     readonly expires: DOMTimeStamp;
23603 declare var RTCCertificate: {
23604     prototype: RTCCertificate;
23605     new(): RTCCertificate;
23606     isInstance(obj): obj is RTCCertificate;
23609 interface RTCDTMFSenderEventMap {
23610     "tonechange": Event;
23613 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender) */
23614 interface RTCDTMFSender extends EventTarget {
23615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender/tonechange_event) */
23616     ontonechange: ((this: RTCDTMFSender, ev: Event) => any) | null;
23617     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender/toneBuffer) */
23618     readonly toneBuffer: string;
23619     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender/insertDTMF) */
23620     insertDTMF(tones: string, duration?: number, interToneGap?: number): void;
23621     addEventListener<K extends keyof RTCDTMFSenderEventMap>(type: K, listener: (this: RTCDTMFSender, ev: RTCDTMFSenderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
23622     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
23623     removeEventListener<K extends keyof RTCDTMFSenderEventMap>(type: K, listener: (this: RTCDTMFSender, ev: RTCDTMFSenderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
23624     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
23627 declare var RTCDTMFSender: {
23628     prototype: RTCDTMFSender;
23629     new(): RTCDTMFSender;
23630     isInstance(obj): obj is RTCDTMFSender;
23634  * Events sent to indicate that DTMF tones have started or finished playing. This interface is used by the tonechange event.
23636  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFToneChangeEvent)
23637  */
23638 interface RTCDTMFToneChangeEvent extends Event {
23639     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFToneChangeEvent/tone) */
23640     readonly tone: string;
23643 declare var RTCDTMFToneChangeEvent: {
23644     prototype: RTCDTMFToneChangeEvent;
23645     new(type: string, eventInitDict?: RTCDTMFToneChangeEventInit): RTCDTMFToneChangeEvent;
23646     isInstance(obj): obj is RTCDTMFToneChangeEvent;
23649 interface RTCDataChannelEventMap {
23650     "bufferedamountlow": Event;
23651     "close": Event;
23652     "error": ErrorEvent;
23653     "message": Event;
23654     "open": Event;
23657 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel) */
23658 interface RTCDataChannel extends EventTarget {
23659     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/binaryType) */
23660     binaryType: RTCDataChannelType;
23661     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedAmount) */
23662     readonly bufferedAmount: number;
23663     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedAmountLowThreshold) */
23664     bufferedAmountLowThreshold: number;
23665     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/id) */
23666     readonly id: number | null;
23667     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/label) */
23668     readonly label: string;
23669     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxPacketLifeTime) */
23670     readonly maxPacketLifeTime: number | null;
23671     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxRetransmits) */
23672     readonly maxRetransmits: number | null;
23673     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/negotiated) */
23674     readonly negotiated: boolean;
23675     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedamountlow_event) */
23676     onbufferedamountlow: ((this: RTCDataChannel, ev: Event) => any) | null;
23677     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/close_event) */
23678     onclose: ((this: RTCDataChannel, ev: Event) => any) | null;
23679     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/error_event) */
23680     onerror: OnErrorEventHandler;
23681     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/message_event) */
23682     onmessage: ((this: RTCDataChannel, ev: Event) => any) | null;
23683     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/open_event) */
23684     onopen: ((this: RTCDataChannel, ev: Event) => any) | null;
23685     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/ordered) */
23686     readonly ordered: boolean;
23687     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/protocol) */
23688     readonly protocol: string;
23689     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/readyState) */
23690     readonly readyState: RTCDataChannelState;
23691     /**
23692      * @deprecated
23693      *
23694      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/reliable)
23695      */
23696     readonly reliable: boolean;
23697     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/close) */
23698     close(): void;
23699     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/send) */
23700     send(data: string): void;
23701     send(data: Blob): void;
23702     send(data: ArrayBuffer): void;
23703     send(data: ArrayBufferView): void;
23704     addEventListener<K extends keyof RTCDataChannelEventMap>(type: K, listener: (this: RTCDataChannel, ev: RTCDataChannelEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
23705     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
23706     removeEventListener<K extends keyof RTCDataChannelEventMap>(type: K, listener: (this: RTCDataChannel, ev: RTCDataChannelEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
23707     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
23710 declare var RTCDataChannel: {
23711     prototype: RTCDataChannel;
23712     new(): RTCDataChannel;
23713     isInstance(obj): obj is RTCDataChannel;
23716 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannelEvent) */
23717 interface RTCDataChannelEvent extends Event {
23718     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannelEvent/channel) */
23719     readonly channel: RTCDataChannel;
23722 declare var RTCDataChannelEvent: {
23723     prototype: RTCDataChannelEvent;
23724     new(type: string, eventInitDict: RTCDataChannelEventInit): RTCDataChannelEvent;
23725     isInstance(obj): obj is RTCDataChannelEvent;
23728 interface RTCDtlsTransportEventMap {
23729     "statechange": Event;
23732 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport) */
23733 interface RTCDtlsTransport extends EventTarget {
23734     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport/statechange_event) */
23735     onstatechange: ((this: RTCDtlsTransport, ev: Event) => any) | null;
23736     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport/state) */
23737     readonly state: RTCDtlsTransportState;
23738     addEventListener<K extends keyof RTCDtlsTransportEventMap>(type: K, listener: (this: RTCDtlsTransport, ev: RTCDtlsTransportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
23739     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
23740     removeEventListener<K extends keyof RTCDtlsTransportEventMap>(type: K, listener: (this: RTCDtlsTransport, ev: RTCDtlsTransportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
23741     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
23744 declare var RTCDtlsTransport: {
23745     prototype: RTCDtlsTransport;
23746     new(): RTCDtlsTransport;
23747     isInstance(obj): obj is RTCDtlsTransport;
23750 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame) */
23751 interface RTCEncodedAudioFrame {
23752     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/data) */
23753     data: ArrayBuffer;
23754     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/timestamp) */
23755     readonly timestamp: number;
23756     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/getMetadata) */
23757     getMetadata(): RTCEncodedAudioFrameMetadata;
23760 declare var RTCEncodedAudioFrame: {
23761     prototype: RTCEncodedAudioFrame;
23762     new(): RTCEncodedAudioFrame;
23763     isInstance(obj): obj is RTCEncodedAudioFrame;
23766 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame) */
23767 interface RTCEncodedVideoFrame {
23768     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/data) */
23769     data: ArrayBuffer;
23770     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/timestamp) */
23771     readonly timestamp: number;
23772     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/type) */
23773     readonly type: RTCEncodedVideoFrameType;
23774     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/getMetadata) */
23775     getMetadata(): RTCEncodedVideoFrameMetadata;
23778 declare var RTCEncodedVideoFrame: {
23779     prototype: RTCEncodedVideoFrame;
23780     new(): RTCEncodedVideoFrame;
23781     isInstance(obj): obj is RTCEncodedVideoFrame;
23785  * The RTCIceCandidate interface—part of the WebRTC API—represents a candidate Internet Connectivity Establishment (ICE) configuration which may be used to establish an RTCPeerConnection.
23787  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate)
23788  */
23789 interface RTCIceCandidate {
23790     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/candidate) */
23791     candidate: string;
23792     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMLineIndex) */
23793     sdpMLineIndex: number | null;
23794     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMid) */
23795     sdpMid: string | null;
23796     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/usernameFragment) */
23797     usernameFragment: string | null;
23798     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/toJSON) */
23799     toJSON(): any;
23802 declare var RTCIceCandidate: {
23803     prototype: RTCIceCandidate;
23804     new(candidateInitDict?: RTCIceCandidateInit): RTCIceCandidate;
23805     isInstance(obj): obj is RTCIceCandidate;
23808 interface RTCIdentityProviderRegistrar {
23809     readonly hasIdp: boolean;
23810     generateAssertion(contents: string, origin: string, options?: RTCIdentityProviderOptions): Promise<RTCIdentityAssertionResult>;
23811     register(idp: RTCIdentityProvider): void;
23812     validateAssertion(assertion: string, origin: string): Promise<RTCIdentityValidationResult>;
23815 interface RTCPeerConnectionEventMap {
23816     "addstream": Event;
23817     "addtrack": Event;
23818     "connectionstatechange": Event;
23819     "datachannel": Event;
23820     "icecandidate": Event;
23821     "iceconnectionstatechange": Event;
23822     "icegatheringstatechange": Event;
23823     "negotiationneeded": Event;
23824     "signalingstatechange": Event;
23825     "track": Event;
23829  * A WebRTC connection between the local computer and a remote peer. It provides methods to connect to a remote peer, maintain and monitor the connection, and close the connection once it's no longer needed.
23831  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection)
23832  */
23833 interface RTCPeerConnection extends EventTarget {
23834     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/canTrickleIceCandidates) */
23835     readonly canTrickleIceCandidates: boolean | null;
23836     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/connectionState) */
23837     readonly connectionState: RTCPeerConnectionState;
23838     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/currentLocalDescription) */
23839     readonly currentLocalDescription: RTCSessionDescription | null;
23840     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/currentRemoteDescription) */
23841     readonly currentRemoteDescription: RTCSessionDescription | null;
23842     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/iceConnectionState) */
23843     readonly iceConnectionState: RTCIceConnectionState;
23844     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/iceGatheringState) */
23845     readonly iceGatheringState: RTCIceGatheringState;
23846     id: string;
23847     readonly idpLoginUrl: string | null;
23848     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/localDescription) */
23849     readonly localDescription: RTCSessionDescription | null;
23850     /**
23851      * @deprecated
23852      *
23853      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addstream_event)
23854      */
23855     onaddstream: ((this: RTCPeerConnection, ev: Event) => any) | null;
23856     onaddtrack: ((this: RTCPeerConnection, ev: Event) => any) | null;
23857     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/connectionstatechange_event) */
23858     onconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
23859     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/datachannel_event) */
23860     ondatachannel: ((this: RTCPeerConnection, ev: Event) => any) | null;
23861     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/icecandidate_event) */
23862     onicecandidate: ((this: RTCPeerConnection, ev: Event) => any) | null;
23863     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/iceconnectionstatechange_event) */
23864     oniceconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
23865     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/icegatheringstatechange_event) */
23866     onicegatheringstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
23867     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/negotiationneeded_event) */
23868     onnegotiationneeded: ((this: RTCPeerConnection, ev: Event) => any) | null;
23869     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/signalingstatechange_event) */
23870     onsignalingstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
23871     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/track_event) */
23872     ontrack: ((this: RTCPeerConnection, ev: Event) => any) | null;
23873     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/peerIdentity) */
23874     readonly peerIdentity: Promise<RTCIdentityAssertion>;
23875     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/pendingLocalDescription) */
23876     readonly pendingLocalDescription: RTCSessionDescription | null;
23877     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/pendingRemoteDescription) */
23878     readonly pendingRemoteDescription: RTCSessionDescription | null;
23879     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/remoteDescription) */
23880     readonly remoteDescription: RTCSessionDescription | null;
23881     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/sctp) */
23882     readonly sctp: RTCSctpTransport | null;
23883     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/signalingState) */
23884     readonly signalingState: RTCSignalingState;
23885     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addIceCandidate) */
23886     addIceCandidate(candidate: RTCIceCandidate, successCallback: VoidFunction, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
23887     /**
23888      * @deprecated
23889      *
23890      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addStream)
23891      */
23892     addStream(stream: MediaStream): void;
23893     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addTrack) */
23894     addTrack(track: MediaStreamTrack, ...streams: MediaStream[]): RTCRtpSender;
23895     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addTransceiver) */
23896     addTransceiver(trackOrKind: MediaStreamTrack | string, init?: RTCRtpTransceiverInit): RTCRtpTransceiver;
23897     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/close) */
23898     close(): void;
23899     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/createAnswer) */
23900     createAnswer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
23901     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/createDataChannel) */
23902     createDataChannel(label: string, dataChannelDict?: RTCDataChannelInit): RTCDataChannel;
23903     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/createOffer) */
23904     createOffer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback, options?: RTCOfferOptions): Promise<void>;
23905     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getConfiguration) */
23906     getConfiguration(): RTCConfiguration;
23907     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getIdentityAssertion) */
23908     getIdentityAssertion(): Promise<string>;
23909     /**
23910      * @deprecated
23911      *
23912      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getLocalStreams)
23913      */
23914     getLocalStreams(): MediaStream[];
23915     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getReceivers) */
23916     getReceivers(): RTCRtpReceiver[];
23917     /**
23918      * @deprecated
23919      *
23920      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getRemoteStreams)
23921      */
23922     getRemoteStreams(): MediaStream[];
23923     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getSenders) */
23924     getSenders(): RTCRtpSender[];
23925     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getStats) */
23926     getStats(selector?: MediaStreamTrack | null): Promise<RTCStatsReport>;
23927     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getTransceivers) */
23928     getTransceivers(): RTCRtpTransceiver[];
23929     mozDisablePacketDump(level: number, type: mozPacketDumpType, sending: boolean): void;
23930     mozEnablePacketDump(level: number, type: mozPacketDumpType, sending: boolean): void;
23931     mozSetPacketCallback(callback: mozPacketCallback): void;
23932     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/removeTrack) */
23933     removeTrack(sender: RTCRtpSender): void;
23934     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/restartIce) */
23935     restartIce(): void;
23936     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/setConfiguration) */
23937     setConfiguration(configuration?: RTCConfiguration): void;
23938     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/setIdentityProvider) */
23939     setIdentityProvider(provider: string, options?: RTCIdentityProviderOptions): void;
23940     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/setLocalDescription) */
23941     setLocalDescription(description: RTCSessionDescriptionInit, successCallback: VoidFunction, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
23942     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/setRemoteDescription) */
23943     setRemoteDescription(description: RTCSessionDescriptionInit, successCallback: VoidFunction, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
23944     addEventListener<K extends keyof RTCPeerConnectionEventMap>(type: K, listener: (this: RTCPeerConnection, ev: RTCPeerConnectionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
23945     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
23946     removeEventListener<K extends keyof RTCPeerConnectionEventMap>(type: K, listener: (this: RTCPeerConnection, ev: RTCPeerConnectionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
23947     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
23950 declare var RTCPeerConnection: {
23951     prototype: RTCPeerConnection;
23952     new(configuration?: RTCConfiguration, constraints?: any): RTCPeerConnection;
23953     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/generateCertificate_static) */
23954     generateCertificate(keygenAlgorithm: AlgorithmIdentifier): Promise<RTCCertificate>;
23955     isInstance(obj): obj is RTCPeerConnection;
23959  * Events that occurs in relation to ICE candidates with the target, usually an RTCPeerConnection. Only one event is of this type: icecandidate.
23961  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceEvent)
23962  */
23963 interface RTCPeerConnectionIceEvent extends Event {
23964     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceEvent/candidate) */
23965     readonly candidate: RTCIceCandidate | null;
23968 declare var RTCPeerConnectionIceEvent: {
23969     prototype: RTCPeerConnectionIceEvent;
23970     new(type: string, eventInitDict?: RTCPeerConnectionIceEventInit): RTCPeerConnectionIceEvent;
23971     isInstance(obj): obj is RTCPeerConnectionIceEvent;
23974 interface RTCPeerConnectionStatic {
23975     registerPeerConnectionLifecycleCallback(cb: PeerConnectionLifecycleCallback): void;
23978 declare var RTCPeerConnectionStatic: {
23979     prototype: RTCPeerConnectionStatic;
23980     new(): RTCPeerConnectionStatic;
23981     isInstance(obj): obj is RTCPeerConnectionStatic;
23985  * This WebRTC API interface manages the reception and decoding of data for a MediaStreamTrack on an RTCPeerConnection.
23987  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver)
23988  */
23989 interface RTCRtpReceiver {
23990     jitterBufferTarget: DOMHighResTimeStamp | null;
23991     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/track) */
23992     readonly track: MediaStreamTrack;
23993     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/transform) */
23994     transform: RTCRtpTransform | null;
23995     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/transport) */
23996     readonly transport: RTCDtlsTransport | null;
23997     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getContributingSources) */
23998     getContributingSources(): RTCRtpContributingSource[];
23999     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getStats) */
24000     getStats(): Promise<RTCStatsReport>;
24001     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getSynchronizationSources) */
24002     getSynchronizationSources(): RTCRtpSynchronizationSource[];
24003     mozInsertAudioLevelForContributingSource(source: number, timestamp: DOMHighResTimeStamp, rtpTimestamp: number, hasLevel: boolean, level: number): void;
24006 declare var RTCRtpReceiver: {
24007     prototype: RTCRtpReceiver;
24008     new(): RTCRtpReceiver;
24009     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getCapabilities_static) */
24010     getCapabilities(kind: string): RTCRtpCapabilities | null;
24011     isInstance(obj): obj is RTCRtpReceiver;
24014 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransform) */
24015 interface RTCRtpScriptTransform {
24018 declare var RTCRtpScriptTransform: {
24019     prototype: RTCRtpScriptTransform;
24020     new(worker: Worker, options?: any, transfer?: any[]): RTCRtpScriptTransform;
24021     isInstance(obj): obj is RTCRtpScriptTransform;
24024 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer) */
24025 interface RTCRtpScriptTransformer {
24026     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/options) */
24027     readonly options: any;
24028     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/readable) */
24029     readonly readable: ReadableStream;
24030     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/writable) */
24031     readonly writable: WritableStream;
24032     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/generateKeyFrame) */
24033     generateKeyFrame(rid?: string): Promise<number>;
24034     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/sendKeyFrameRequest) */
24035     sendKeyFrameRequest(): Promise<void>;
24038 declare var RTCRtpScriptTransformer: {
24039     prototype: RTCRtpScriptTransformer;
24040     new(): RTCRtpScriptTransformer;
24041     isInstance(obj): obj is RTCRtpScriptTransformer;
24045  * Provides the ability to control and obtain details about how a particular MediaStreamTrack is encoded and sent to a remote peer.
24047  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender)
24048  */
24049 interface RTCRtpSender {
24050     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/dtmf) */
24051     readonly dtmf: RTCDTMFSender | null;
24052     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/track) */
24053     readonly track: MediaStreamTrack | null;
24054     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transform) */
24055     transform: RTCRtpTransform | null;
24056     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transport) */
24057     readonly transport: RTCDtlsTransport | null;
24058     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getParameters) */
24059     getParameters(): RTCRtpSendParameters;
24060     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getStats) */
24061     getStats(): Promise<RTCStatsReport>;
24062     getStreams(): MediaStream[];
24063     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/replaceTrack) */
24064     replaceTrack(withTrack: MediaStreamTrack | null): Promise<void>;
24065     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/setParameters) */
24066     setParameters(parameters: RTCRtpSendParameters): Promise<void>;
24067     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/setStreams) */
24068     setStreams(...streams: MediaStream[]): void;
24069     setStreamsImpl(...streams: MediaStream[]): void;
24070     setTrack(track: MediaStreamTrack | null): void;
24073 declare var RTCRtpSender: {
24074     prototype: RTCRtpSender;
24075     new(): RTCRtpSender;
24076     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities_static) */
24077     getCapabilities(kind: string): RTCRtpCapabilities | null;
24078     isInstance(obj): obj is RTCRtpSender;
24081 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver) */
24082 interface RTCRtpTransceiver {
24083     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/currentDirection) */
24084     readonly currentDirection: RTCRtpTransceiverDirection | null;
24085     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/direction) */
24086     direction: RTCRtpTransceiverDirection;
24087     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/mid) */
24088     readonly mid: string | null;
24089     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/receiver) */
24090     readonly receiver: RTCRtpReceiver;
24091     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/sender) */
24092     readonly sender: RTCRtpSender;
24093     /**
24094      * @deprecated
24095      *
24096      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/stopped)
24097      */
24098     readonly stopped: boolean;
24099     getKind(): string;
24100     hasBeenUsedToSend(): boolean;
24101     setDirectionInternal(direction: RTCRtpTransceiverDirection): void;
24102     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/stop) */
24103     stop(): void;
24106 declare var RTCRtpTransceiver: {
24107     prototype: RTCRtpTransceiver;
24108     new(): RTCRtpTransceiver;
24109     isInstance(obj): obj is RTCRtpTransceiver;
24112 interface RTCSctpTransportEventMap {
24113     "statechange": Event;
24116 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport) */
24117 interface RTCSctpTransport extends EventTarget {
24118     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/maxChannels) */
24119     readonly maxChannels: number | null;
24120     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/maxMessageSize) */
24121     readonly maxMessageSize: number;
24122     onstatechange: ((this: RTCSctpTransport, ev: Event) => any) | null;
24123     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/state) */
24124     readonly state: RTCSctpTransportState;
24125     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/transport) */
24126     readonly transport: RTCDtlsTransport;
24127     addEventListener<K extends keyof RTCSctpTransportEventMap>(type: K, listener: (this: RTCSctpTransport, ev: RTCSctpTransportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24128     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24129     removeEventListener<K extends keyof RTCSctpTransportEventMap>(type: K, listener: (this: RTCSctpTransport, ev: RTCSctpTransportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24130     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24133 declare var RTCSctpTransport: {
24134     prototype: RTCSctpTransport;
24135     new(): RTCSctpTransport;
24136     isInstance(obj): obj is RTCSctpTransport;
24140  * One end of a connection—or potential connection—and how it's configured. Each RTCSessionDescription consists of a description type indicating which part of the offer/answer negotiation process it describes and of the SDP descriptor of the session.
24142  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription)
24143  */
24144 interface RTCSessionDescription {
24145     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription/sdp) */
24146     sdp: string;
24147     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription/type) */
24148     type: RTCSdpType;
24149     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription/toJSON) */
24150     toJSON(): any;
24153 declare var RTCSessionDescription: {
24154     prototype: RTCSessionDescription;
24155     new(descriptionInitDict?: RTCSessionDescriptionInit): RTCSessionDescription;
24156     isInstance(obj): obj is RTCSessionDescription;
24159 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCStatsReport) */
24160 interface RTCStatsReport {
24161     forEach(callbackfn: (value: any, key: string, parent: RTCStatsReport) => void, thisArg?: any): void;
24164 declare var RTCStatsReport: {
24165     prototype: RTCStatsReport;
24166     new(): RTCStatsReport;
24167     isInstance(obj): obj is RTCStatsReport;
24170 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent) */
24171 interface RTCTrackEvent extends Event {
24172     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/receiver) */
24173     readonly receiver: RTCRtpReceiver;
24174     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/streams) */
24175     readonly streams: MediaStream[];
24176     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/track) */
24177     readonly track: MediaStreamTrack;
24178     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/transceiver) */
24179     readonly transceiver: RTCRtpTransceiver;
24182 declare var RTCTrackEvent: {
24183     prototype: RTCTrackEvent;
24184     new(type: string, eventInitDict: RTCTrackEventInit): RTCTrackEvent;
24185     isInstance(obj): obj is RTCTrackEvent;
24188 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTransformEvent) */
24189 interface RTCTransformEvent extends Event {
24190     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTransformEvent/transformer) */
24191     readonly transformer: RTCRtpScriptTransformer;
24194 declare var RTCTransformEvent: {
24195     prototype: RTCTransformEvent;
24196     new(type: string, eventInitDict: RTCTransformEventInit): RTCTransformEvent;
24197     isInstance(obj): obj is RTCTransformEvent;
24200 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RadioNodeList) */
24201 interface RadioNodeList extends NodeList {
24202     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RadioNodeList/value) */
24203     value: string;
24206 declare var RadioNodeList: {
24207     prototype: RadioNodeList;
24208     new(): RadioNodeList;
24209     isInstance(obj): obj is RadioNodeList;
24213  * A fragment of a document that can contain nodes and parts of text nodes.
24215  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range)
24216  */
24217 interface Range extends AbstractRange {
24218     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/commonAncestorContainer) */
24219     readonly commonAncestorContainer: Node;
24220     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/cloneContents) */
24221     cloneContents(): DocumentFragment;
24222     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/cloneRange) */
24223     cloneRange(): Range;
24224     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/collapse) */
24225     collapse(toStart?: boolean): void;
24226     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/compareBoundaryPoints) */
24227     compareBoundaryPoints(how: number, sourceRange: Range): number;
24228     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/comparePoint) */
24229     comparePoint(node: Node, offset: number): number;
24230     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/createContextualFragment) */
24231     createContextualFragment(fragment: string): DocumentFragment;
24232     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/deleteContents) */
24233     deleteContents(): void;
24234     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/detach) */
24235     detach(): void;
24236     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/extractContents) */
24237     extractContents(): DocumentFragment;
24238     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/getBoundingClientRect) */
24239     getBoundingClientRect(): DOMRect;
24240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/getClientRects) */
24241     getClientRects(): DOMRectList | null;
24242     getClientRectsAndTexts(): ClientRectsAndTexts;
24243     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/insertNode) */
24244     insertNode(node: Node): void;
24245     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/intersectsNode) */
24246     intersectsNode(node: Node): boolean;
24247     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/isPointInRange) */
24248     isPointInRange(node: Node, offset: number): boolean;
24249     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/selectNode) */
24250     selectNode(refNode: Node): void;
24251     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/selectNodeContents) */
24252     selectNodeContents(refNode: Node): void;
24253     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setEnd) */
24254     setEnd(refNode: Node, offset: number): void;
24255     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setEndAfter) */
24256     setEndAfter(refNode: Node): void;
24257     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setEndBefore) */
24258     setEndBefore(refNode: Node): void;
24259     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setStart) */
24260     setStart(refNode: Node, offset: number): void;
24261     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setStartAfter) */
24262     setStartAfter(refNode: Node): void;
24263     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setStartBefore) */
24264     setStartBefore(refNode: Node): void;
24265     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/surroundContents) */
24266     surroundContents(newParent: Node): void;
24267     toString(): string;
24268     readonly START_TO_START: 0;
24269     readonly START_TO_END: 1;
24270     readonly END_TO_END: 2;
24271     readonly END_TO_START: 3;
24274 declare var Range: {
24275     prototype: Range;
24276     new(): Range;
24277     readonly START_TO_START: 0;
24278     readonly START_TO_END: 1;
24279     readonly END_TO_END: 2;
24280     readonly END_TO_START: 3;
24281     isInstance(obj): obj is Range;
24284 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController) */
24285 interface ReadableByteStreamController {
24286     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/byobRequest) */
24287     readonly byobRequest: ReadableStreamBYOBRequest | null;
24288     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/desiredSize) */
24289     readonly desiredSize: number | null;
24290     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/close) */
24291     close(): void;
24292     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/enqueue) */
24293     enqueue(chunk: ArrayBufferView): void;
24294     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/error) */
24295     error(e?: any): void;
24298 declare var ReadableByteStreamController: {
24299     prototype: ReadableByteStreamController;
24300     new(): ReadableByteStreamController;
24301     isInstance(obj): obj is ReadableByteStreamController;
24305  * This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object.
24307  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream)
24308  */
24309 interface ReadableStream {
24310     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/locked) */
24311     readonly locked: boolean;
24312     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/cancel) */
24313     cancel(reason?: any): Promise<void>;
24314     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader) */
24315     getReader(options?: ReadableStreamGetReaderOptions): ReadableStreamReader;
24316     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeThrough) */
24317     pipeThrough(transform: ReadableWritablePair, options?: StreamPipeOptions): ReadableStream;
24318     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeTo) */
24319     pipeTo(destination: WritableStream, options?: StreamPipeOptions): Promise<void>;
24320     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/tee) */
24321     tee(): ReadableStream[];
24324 declare var ReadableStream: {
24325     prototype: ReadableStream;
24326     new(underlyingSource?: any, strategy?: QueuingStrategy): ReadableStream;
24327     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/from_static) */
24328     from(asyncIterable: any): ReadableStream;
24329     isInstance(obj): obj is ReadableStream;
24332 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader) */
24333 interface ReadableStreamBYOBReader extends ReadableStreamGenericReader {
24334     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/read) */
24335     read(view: ArrayBufferView): Promise<ReadableStreamReadResult>;
24336     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/releaseLock) */
24337     releaseLock(): void;
24340 declare var ReadableStreamBYOBReader: {
24341     prototype: ReadableStreamBYOBReader;
24342     new(stream: ReadableStream): ReadableStreamBYOBReader;
24343     isInstance(obj): obj is ReadableStreamBYOBReader;
24346 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest) */
24347 interface ReadableStreamBYOBRequest {
24348     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/view) */
24349     readonly view: ArrayBufferView | null;
24350     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respond) */
24351     respond(bytesWritten: number): void;
24352     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respondWithNewView) */
24353     respondWithNewView(view: ArrayBufferView): void;
24356 declare var ReadableStreamBYOBRequest: {
24357     prototype: ReadableStreamBYOBRequest;
24358     new(): ReadableStreamBYOBRequest;
24359     isInstance(obj): obj is ReadableStreamBYOBRequest;
24362 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController) */
24363 interface ReadableStreamDefaultController {
24364     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/desiredSize) */
24365     readonly desiredSize: number | null;
24366     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/close) */
24367     close(): void;
24368     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/enqueue) */
24369     enqueue(chunk?: any): void;
24370     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/error) */
24371     error(e?: any): void;
24374 declare var ReadableStreamDefaultController: {
24375     prototype: ReadableStreamDefaultController;
24376     new(): ReadableStreamDefaultController;
24377     isInstance(obj): obj is ReadableStreamDefaultController;
24380 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader) */
24381 interface ReadableStreamDefaultReader extends ReadableStreamGenericReader {
24382     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/read) */
24383     read(): Promise<ReadableStreamReadResult>;
24384     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/releaseLock) */
24385     releaseLock(): void;
24388 declare var ReadableStreamDefaultReader: {
24389     prototype: ReadableStreamDefaultReader;
24390     new(stream: ReadableStream): ReadableStreamDefaultReader;
24391     isInstance(obj): obj is ReadableStreamDefaultReader;
24394 interface ReadableStreamGenericReader {
24395     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/closed) */
24396     readonly closed: Promise<undefined>;
24397     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/cancel) */
24398     cancel(reason?: any): Promise<void>;
24401 interface ReferrerInfo {
24404 declare var ReferrerInfo: {
24405     prototype: ReferrerInfo;
24406     new(): ReferrerInfo;
24407     isInstance(obj): obj is ReferrerInfo;
24410 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report) */
24411 interface Report {
24412     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/body) */
24413     readonly body: ReportBody | null;
24414     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/type) */
24415     readonly type: string;
24416     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/url) */
24417     readonly url: string;
24418     toJSON(): any;
24421 declare var Report: {
24422     prototype: Report;
24423     new(): Report;
24424     isInstance(obj): obj is Report;
24427 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportBody) */
24428 interface ReportBody {
24429     toJSON(): any;
24432 declare var ReportBody: {
24433     prototype: ReportBody;
24434     new(): ReportBody;
24435     isInstance(obj): obj is ReportBody;
24438 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver) */
24439 interface ReportingObserver {
24440     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/disconnect) */
24441     disconnect(): void;
24442     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/observe) */
24443     observe(): void;
24444     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/takeRecords) */
24445     takeRecords(): ReportList;
24448 declare var ReportingObserver: {
24449     prototype: ReportingObserver;
24450     new(callback: ReportingObserverCallback, options?: ReportingObserverOptions): ReportingObserver;
24451     isInstance(obj): obj is ReportingObserver;
24455  * This Fetch API interface represents a resource request.
24457  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request)
24458  */
24459 interface Request extends Body {
24460     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/cache) */
24461     readonly cache: RequestCache;
24462     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/credentials) */
24463     readonly credentials: RequestCredentials;
24464     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/destination) */
24465     readonly destination: RequestDestination;
24466     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/headers) */
24467     readonly headers: Headers;
24468     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/integrity) */
24469     readonly integrity: string;
24470     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/method) */
24471     readonly method: string;
24472     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/mode) */
24473     readonly mode: RequestMode;
24474     readonly mozErrors: boolean;
24475     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/redirect) */
24476     readonly redirect: RequestRedirect;
24477     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/referrer) */
24478     readonly referrer: string;
24479     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/referrerPolicy) */
24480     readonly referrerPolicy: ReferrerPolicy;
24481     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/signal) */
24482     readonly signal: AbortSignal;
24483     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/url) */
24484     readonly url: string;
24485     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/clone) */
24486     clone(): Request;
24487     overrideContentPolicyType(context: nsContentPolicyType): void;
24490 declare var Request: {
24491     prototype: Request;
24492     new(input: RequestInfo | URL, init?: RequestInit): Request;
24493     isInstance(obj): obj is Request;
24496 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver) */
24497 interface ResizeObserver {
24498     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver/disconnect) */
24499     disconnect(): void;
24500     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver/observe) */
24501     observe(target: Element, options?: ResizeObserverOptions): void;
24502     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver/unobserve) */
24503     unobserve(target: Element): void;
24506 declare var ResizeObserver: {
24507     prototype: ResizeObserver;
24508     new(callback: ResizeObserverCallback): ResizeObserver;
24509     isInstance(obj): obj is ResizeObserver;
24512 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry) */
24513 interface ResizeObserverEntry {
24514     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/borderBoxSize) */
24515     readonly borderBoxSize: ResizeObserverSize[];
24516     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/contentBoxSize) */
24517     readonly contentBoxSize: ResizeObserverSize[];
24518     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/contentRect) */
24519     readonly contentRect: DOMRectReadOnly;
24520     readonly devicePixelContentBoxSize: ResizeObserverSize[];
24521     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/target) */
24522     readonly target: Element;
24525 declare var ResizeObserverEntry: {
24526     prototype: ResizeObserverEntry;
24527     new(): ResizeObserverEntry;
24528     isInstance(obj): obj is ResizeObserverEntry;
24531 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverSize) */
24532 interface ResizeObserverSize {
24533     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverSize/blockSize) */
24534     readonly blockSize: number;
24535     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverSize/inlineSize) */
24536     readonly inlineSize: number;
24539 declare var ResizeObserverSize: {
24540     prototype: ResizeObserverSize;
24541     new(): ResizeObserverSize;
24542     isInstance(obj): obj is ResizeObserverSize;
24546  * This Fetch API interface represents the response to a request.
24548  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response)
24549  */
24550 // @ts-ignore
24551 interface Response extends Body {
24552     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/body) */
24553     readonly body: ReadableStream | null;
24554     readonly hasCacheInfoChannel: boolean;
24555     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/headers) */
24556     readonly headers: Headers;
24557     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/ok) */
24558     readonly ok: boolean;
24559     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirected) */
24560     readonly redirected: boolean;
24561     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/status) */
24562     readonly status: number;
24563     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/statusText) */
24564     readonly statusText: string;
24565     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/type) */
24566     readonly type: ResponseType;
24567     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/url) */
24568     readonly url: string;
24569     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/clone) */
24570     clone(): Response;
24571     cloneUnfiltered(): Response;
24574 declare var Response: {
24575     prototype: Response;
24576     new(body?: Blob | BufferSource | FormData | URLSearchParams | ReadableStream | string | null, init?: ResponseInit): Response;
24577     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/error_static) */
24578     error(): Response;
24579     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json_static) */
24580     json(data: any, init?: ResponseInit): Response;
24581     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirect_static) */
24582     redirect(url: string | URL, status?: number): Response;
24583     isInstance(obj): obj is Response;
24587  * Provides access to the properties of <a> element, as well as methods to manipulate them.
24589  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAElement)
24590  */
24591 interface SVGAElement extends SVGGraphicsElement, SVGURIReference {
24592     download: string;
24593     hreflang: string;
24594     ping: string;
24595     referrerPolicy: string;
24596     rel: string;
24597     readonly relList: DOMTokenList;
24598     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAElement/target) */
24599     readonly target: SVGAnimatedString;
24600     text: string;
24601     type: string;
24602     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24603     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24604     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24605     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24608 declare var SVGAElement: {
24609     prototype: SVGAElement;
24610     new(): SVGAElement;
24611     isInstance(obj): obj is SVGAElement;
24615  * Used to represent a value that can be an <angle> or <number> value. An SVGAngle reflected through the animVal attribute is always read only.
24617  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAngle)
24618  */
24619 interface SVGAngle {
24620     readonly unitType: number;
24621     value: number;
24622     valueAsString: string;
24623     valueInSpecifiedUnits: number;
24624     convertToSpecifiedUnits(unitType: number): void;
24625     newValueSpecifiedUnits(unitType: number, valueInSpecifiedUnits: number): void;
24626     readonly SVG_ANGLETYPE_UNKNOWN: 0;
24627     readonly SVG_ANGLETYPE_UNSPECIFIED: 1;
24628     readonly SVG_ANGLETYPE_DEG: 2;
24629     readonly SVG_ANGLETYPE_RAD: 3;
24630     readonly SVG_ANGLETYPE_GRAD: 4;
24633 declare var SVGAngle: {
24634     prototype: SVGAngle;
24635     new(): SVGAngle;
24636     readonly SVG_ANGLETYPE_UNKNOWN: 0;
24637     readonly SVG_ANGLETYPE_UNSPECIFIED: 1;
24638     readonly SVG_ANGLETYPE_DEG: 2;
24639     readonly SVG_ANGLETYPE_RAD: 3;
24640     readonly SVG_ANGLETYPE_GRAD: 4;
24641     isInstance(obj): obj is SVGAngle;
24644 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimateElement) */
24645 interface SVGAnimateElement extends SVGAnimationElement {
24646     addEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimateElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24647     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24648     removeEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimateElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24649     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24652 declare var SVGAnimateElement: {
24653     prototype: SVGAnimateElement;
24654     new(): SVGAnimateElement;
24655     isInstance(obj): obj is SVGAnimateElement;
24658 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimateMotionElement) */
24659 interface SVGAnimateMotionElement extends SVGAnimationElement {
24660     addEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimateMotionElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24661     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24662     removeEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimateMotionElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24663     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24666 declare var SVGAnimateMotionElement: {
24667     prototype: SVGAnimateMotionElement;
24668     new(): SVGAnimateMotionElement;
24669     isInstance(obj): obj is SVGAnimateMotionElement;
24672 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimateTransformElement) */
24673 interface SVGAnimateTransformElement extends SVGAnimationElement {
24674     addEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimateTransformElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24675     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24676     removeEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimateTransformElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24677     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24680 declare var SVGAnimateTransformElement: {
24681     prototype: SVGAnimateTransformElement;
24682     new(): SVGAnimateTransformElement;
24683     isInstance(obj): obj is SVGAnimateTransformElement;
24687  * Used for attributes of basic type <angle> which can be animated.
24689  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedAngle)
24690  */
24691 interface SVGAnimatedAngle {
24692     readonly animVal: SVGAngle;
24693     readonly baseVal: SVGAngle;
24696 declare var SVGAnimatedAngle: {
24697     prototype: SVGAnimatedAngle;
24698     new(): SVGAnimatedAngle;
24699     isInstance(obj): obj is SVGAnimatedAngle;
24703  * Used for attributes of type boolean which can be animated.
24705  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedBoolean)
24706  */
24707 interface SVGAnimatedBoolean {
24708     readonly animVal: boolean;
24709     baseVal: boolean;
24712 declare var SVGAnimatedBoolean: {
24713     prototype: SVGAnimatedBoolean;
24714     new(): SVGAnimatedBoolean;
24715     isInstance(obj): obj is SVGAnimatedBoolean;
24719  * Used for attributes whose value must be a constant from a particular enumeration and which can be animated.
24721  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedEnumeration)
24722  */
24723 interface SVGAnimatedEnumeration {
24724     readonly animVal: number;
24725     baseVal: number;
24728 declare var SVGAnimatedEnumeration: {
24729     prototype: SVGAnimatedEnumeration;
24730     new(): SVGAnimatedEnumeration;
24731     isInstance(obj): obj is SVGAnimatedEnumeration;
24735  * Used for attributes of basic type <integer> which can be animated.
24737  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedInteger)
24738  */
24739 interface SVGAnimatedInteger {
24740     readonly animVal: number;
24741     baseVal: number;
24744 declare var SVGAnimatedInteger: {
24745     prototype: SVGAnimatedInteger;
24746     new(): SVGAnimatedInteger;
24747     isInstance(obj): obj is SVGAnimatedInteger;
24751  * Used for attributes of basic type <length> which can be animated.
24753  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedLength)
24754  */
24755 interface SVGAnimatedLength {
24756     readonly animVal: SVGLength;
24757     readonly baseVal: SVGLength;
24760 declare var SVGAnimatedLength: {
24761     prototype: SVGAnimatedLength;
24762     new(): SVGAnimatedLength;
24763     isInstance(obj): obj is SVGAnimatedLength;
24767  * Used for attributes of type SVGLengthList which can be animated.
24769  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedLengthList)
24770  */
24771 interface SVGAnimatedLengthList {
24772     readonly animVal: SVGLengthList;
24773     readonly baseVal: SVGLengthList;
24776 declare var SVGAnimatedLengthList: {
24777     prototype: SVGAnimatedLengthList;
24778     new(): SVGAnimatedLengthList;
24779     isInstance(obj): obj is SVGAnimatedLengthList;
24783  * Used for attributes of basic type <Number> which can be animated.
24785  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedNumber)
24786  */
24787 interface SVGAnimatedNumber {
24788     readonly animVal: number;
24789     baseVal: number;
24792 declare var SVGAnimatedNumber: {
24793     prototype: SVGAnimatedNumber;
24794     new(): SVGAnimatedNumber;
24795     isInstance(obj): obj is SVGAnimatedNumber;
24799  * The SVGAnimatedNumber interface is used for attributes which take a list of numbers and which can be animated.
24801  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedNumberList)
24802  */
24803 interface SVGAnimatedNumberList {
24804     readonly animVal: SVGNumberList;
24805     readonly baseVal: SVGNumberList;
24808 declare var SVGAnimatedNumberList: {
24809     prototype: SVGAnimatedNumberList;
24810     new(): SVGAnimatedNumberList;
24811     isInstance(obj): obj is SVGAnimatedNumberList;
24814 interface SVGAnimatedPathData {
24815     readonly animatedPathSegList: SVGPathSegList;
24816     readonly pathSegList: SVGPathSegList;
24819 interface SVGAnimatedPoints {
24820     readonly animatedPoints: SVGPointList;
24821     readonly points: SVGPointList;
24825  * Used for attributes of type SVGPreserveAspectRatio which can be animated.
24827  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedPreserveAspectRatio)
24828  */
24829 interface SVGAnimatedPreserveAspectRatio {
24830     readonly animVal: SVGPreserveAspectRatio;
24831     readonly baseVal: SVGPreserveAspectRatio;
24834 declare var SVGAnimatedPreserveAspectRatio: {
24835     prototype: SVGAnimatedPreserveAspectRatio;
24836     new(): SVGAnimatedPreserveAspectRatio;
24837     isInstance(obj): obj is SVGAnimatedPreserveAspectRatio;
24841  * Used for attributes of basic SVGRect which can be animated.
24843  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedRect)
24844  */
24845 interface SVGAnimatedRect {
24846     readonly animVal: SVGRect | null;
24847     readonly baseVal: SVGRect | null;
24850 declare var SVGAnimatedRect: {
24851     prototype: SVGAnimatedRect;
24852     new(): SVGAnimatedRect;
24853     isInstance(obj): obj is SVGAnimatedRect;
24857  * The SVGAnimatedString interface represents string attributes which can be animated from each SVG declaration. You need to create SVG attribute before doing anything else, everything should be declared inside this.
24859  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedString)
24860  */
24861 interface SVGAnimatedString {
24862     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedString/animVal) */
24863     readonly animVal: string;
24864     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedString/baseVal) */
24865     baseVal: string;
24868 declare var SVGAnimatedString: {
24869     prototype: SVGAnimatedString;
24870     new(): SVGAnimatedString;
24871     isInstance(obj): obj is SVGAnimatedString;
24875  * Used for attributes which take a list of numbers and which can be animated.
24877  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedTransformList)
24878  */
24879 interface SVGAnimatedTransformList {
24880     readonly animVal: SVGTransformList;
24881     readonly baseVal: SVGTransformList;
24884 declare var SVGAnimatedTransformList: {
24885     prototype: SVGAnimatedTransformList;
24886     new(): SVGAnimatedTransformList;
24887     isInstance(obj): obj is SVGAnimatedTransformList;
24890 interface SVGAnimationElementEventMap extends SVGElementEventMap {
24891     "begin": Event;
24892     "end": Event;
24893     "repeat": Event;
24896 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimationElement) */
24897 interface SVGAnimationElement extends SVGElement, SVGTests {
24898     onbegin: ((this: SVGAnimationElement, ev: Event) => any) | null;
24899     onend: ((this: SVGAnimationElement, ev: Event) => any) | null;
24900     onrepeat: ((this: SVGAnimationElement, ev: Event) => any) | null;
24901     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimationElement/targetElement) */
24902     readonly targetElement: SVGElement | null;
24903     beginElement(): void;
24904     beginElementAt(offset: number): void;
24905     endElement(): void;
24906     endElementAt(offset: number): void;
24907     getCurrentTime(): number;
24908     getSimpleDuration(): number;
24909     getStartTime(): number;
24910     addEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimationElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24911     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24912     removeEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGAnimationElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24913     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24916 declare var SVGAnimationElement: {
24917     prototype: SVGAnimationElement;
24918     new(): SVGAnimationElement;
24919     isInstance(obj): obj is SVGAnimationElement;
24923  * An interface for the <circle> element. The circle element is defined by the cx and cy attributes that denote the coordinates of the centre of the circle.
24925  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement)
24926  */
24927 interface SVGCircleElement extends SVGGeometryElement {
24928     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement/cx) */
24929     readonly cx: SVGAnimatedLength;
24930     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement/cy) */
24931     readonly cy: SVGAnimatedLength;
24932     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement/r) */
24933     readonly r: SVGAnimatedLength;
24934     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGCircleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24935     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24936     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGCircleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24937     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24940 declare var SVGCircleElement: {
24941     prototype: SVGCircleElement;
24942     new(): SVGCircleElement;
24943     isInstance(obj): obj is SVGCircleElement;
24947  * Provides access to the properties of <clipPath> elements, as well as methods to manipulate them.
24949  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGClipPathElement)
24950  */
24951 interface SVGClipPathElement extends SVGElement {
24952     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGClipPathElement/clipPathUnits) */
24953     readonly clipPathUnits: SVGAnimatedEnumeration;
24954     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGClipPathElement/transform) */
24955     readonly transform: SVGAnimatedTransformList;
24956     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGClipPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24957     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24958     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGClipPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24959     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24962 declare var SVGClipPathElement: {
24963     prototype: SVGClipPathElement;
24964     new(): SVGClipPathElement;
24965     isInstance(obj): obj is SVGClipPathElement;
24969  * A base interface used by the component transfer function interfaces.
24971  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGComponentTransferFunctionElement)
24972  */
24973 interface SVGComponentTransferFunctionElement extends SVGElement {
24974     readonly amplitude: SVGAnimatedNumber;
24975     readonly exponent: SVGAnimatedNumber;
24976     readonly intercept: SVGAnimatedNumber;
24977     readonly offset: SVGAnimatedNumber;
24978     readonly slope: SVGAnimatedNumber;
24979     readonly tableValues: SVGAnimatedNumberList;
24980     readonly type: SVGAnimatedEnumeration;
24981     readonly SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN: 0;
24982     readonly SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY: 1;
24983     readonly SVG_FECOMPONENTTRANSFER_TYPE_TABLE: 2;
24984     readonly SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE: 3;
24985     readonly SVG_FECOMPONENTTRANSFER_TYPE_LINEAR: 4;
24986     readonly SVG_FECOMPONENTTRANSFER_TYPE_GAMMA: 5;
24987     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGComponentTransferFunctionElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
24988     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
24989     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGComponentTransferFunctionElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
24990     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
24993 declare var SVGComponentTransferFunctionElement: {
24994     prototype: SVGComponentTransferFunctionElement;
24995     new(): SVGComponentTransferFunctionElement;
24996     readonly SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN: 0;
24997     readonly SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY: 1;
24998     readonly SVG_FECOMPONENTTRANSFER_TYPE_TABLE: 2;
24999     readonly SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE: 3;
25000     readonly SVG_FECOMPONENTTRANSFER_TYPE_LINEAR: 4;
25001     readonly SVG_FECOMPONENTTRANSFER_TYPE_GAMMA: 5;
25002     isInstance(obj): obj is SVGComponentTransferFunctionElement;
25006  * Corresponds to the <defs> element.
25008  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGDefsElement)
25009  */
25010 interface SVGDefsElement extends SVGGraphicsElement {
25011     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDefsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25012     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25013     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDefsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25014     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25017 declare var SVGDefsElement: {
25018     prototype: SVGDefsElement;
25019     new(): SVGDefsElement;
25020     isInstance(obj): obj is SVGDefsElement;
25024  * Corresponds to the <desc> element.
25026  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGDescElement)
25027  */
25028 interface SVGDescElement extends SVGElement {
25029     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDescElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25030     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25031     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDescElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25032     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25035 declare var SVGDescElement: {
25036     prototype: SVGDescElement;
25037     new(): SVGDescElement;
25038     isInstance(obj): obj is SVGDescElement;
25041 interface SVGElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap, OnErrorEventHandlerForNodesEventMap, TouchEventHandlersEventMap {
25045  * All of the SVG DOM interfaces that correspond directly to elements in the SVG language derive from the SVGElement interface.
25047  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGElement)
25048  */
25049 interface SVGElement extends Element, ElementCSSInlineStyle, GlobalEventHandlers, HTMLOrForeignElement, OnErrorEventHandlerForNodes, TouchEventHandlers {
25050     /** @deprecated */
25051     //classNme
25052     id: string;
25053     nonce: string;
25054     readonly ownerSVGElement: SVGSVGElement | null;
25055     readonly viewportElement: SVGElement | null;
25056     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25057     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25058     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25059     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25062 declare var SVGElement: {
25063     prototype: SVGElement;
25064     new(): SVGElement;
25065     isInstance(obj): obj is SVGElement;
25069  * Provides access to the properties of <ellipse> elements.
25071  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGEllipseElement)
25072  */
25073 interface SVGEllipseElement extends SVGGeometryElement {
25074     readonly cx: SVGAnimatedLength;
25075     readonly cy: SVGAnimatedLength;
25076     readonly rx: SVGAnimatedLength;
25077     readonly ry: SVGAnimatedLength;
25078     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGEllipseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25079     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25080     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGEllipseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25081     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25084 declare var SVGEllipseElement: {
25085     prototype: SVGEllipseElement;
25086     new(): SVGEllipseElement;
25087     isInstance(obj): obj is SVGEllipseElement;
25091  * Corresponds to the <feBlend> element.
25093  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEBlendElement)
25094  */
25095 interface SVGFEBlendElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25096     readonly in1: SVGAnimatedString;
25097     readonly in2: SVGAnimatedString;
25098     readonly mode: SVGAnimatedEnumeration;
25099     readonly SVG_FEBLEND_MODE_UNKNOWN: 0;
25100     readonly SVG_FEBLEND_MODE_NORMAL: 1;
25101     readonly SVG_FEBLEND_MODE_MULTIPLY: 2;
25102     readonly SVG_FEBLEND_MODE_SCREEN: 3;
25103     readonly SVG_FEBLEND_MODE_DARKEN: 4;
25104     readonly SVG_FEBLEND_MODE_LIGHTEN: 5;
25105     readonly SVG_FEBLEND_MODE_OVERLAY: 6;
25106     readonly SVG_FEBLEND_MODE_COLOR_DODGE: 7;
25107     readonly SVG_FEBLEND_MODE_COLOR_BURN: 8;
25108     readonly SVG_FEBLEND_MODE_HARD_LIGHT: 9;
25109     readonly SVG_FEBLEND_MODE_SOFT_LIGHT: 10;
25110     readonly SVG_FEBLEND_MODE_DIFFERENCE: 11;
25111     readonly SVG_FEBLEND_MODE_EXCLUSION: 12;
25112     readonly SVG_FEBLEND_MODE_HUE: 13;
25113     readonly SVG_FEBLEND_MODE_SATURATION: 14;
25114     readonly SVG_FEBLEND_MODE_COLOR: 15;
25115     readonly SVG_FEBLEND_MODE_LUMINOSITY: 16;
25116     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEBlendElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25117     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25118     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEBlendElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25119     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25122 declare var SVGFEBlendElement: {
25123     prototype: SVGFEBlendElement;
25124     new(): SVGFEBlendElement;
25125     readonly SVG_FEBLEND_MODE_UNKNOWN: 0;
25126     readonly SVG_FEBLEND_MODE_NORMAL: 1;
25127     readonly SVG_FEBLEND_MODE_MULTIPLY: 2;
25128     readonly SVG_FEBLEND_MODE_SCREEN: 3;
25129     readonly SVG_FEBLEND_MODE_DARKEN: 4;
25130     readonly SVG_FEBLEND_MODE_LIGHTEN: 5;
25131     readonly SVG_FEBLEND_MODE_OVERLAY: 6;
25132     readonly SVG_FEBLEND_MODE_COLOR_DODGE: 7;
25133     readonly SVG_FEBLEND_MODE_COLOR_BURN: 8;
25134     readonly SVG_FEBLEND_MODE_HARD_LIGHT: 9;
25135     readonly SVG_FEBLEND_MODE_SOFT_LIGHT: 10;
25136     readonly SVG_FEBLEND_MODE_DIFFERENCE: 11;
25137     readonly SVG_FEBLEND_MODE_EXCLUSION: 12;
25138     readonly SVG_FEBLEND_MODE_HUE: 13;
25139     readonly SVG_FEBLEND_MODE_SATURATION: 14;
25140     readonly SVG_FEBLEND_MODE_COLOR: 15;
25141     readonly SVG_FEBLEND_MODE_LUMINOSITY: 16;
25142     isInstance(obj): obj is SVGFEBlendElement;
25146  * Corresponds to the <feColorMatrix> element.
25148  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement)
25149  */
25150 interface SVGFEColorMatrixElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25151     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement/in1) */
25152     readonly in1: SVGAnimatedString;
25153     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement/type) */
25154     readonly type: SVGAnimatedEnumeration;
25155     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement/values) */
25156     readonly values: SVGAnimatedNumberList;
25157     readonly SVG_FECOLORMATRIX_TYPE_UNKNOWN: 0;
25158     readonly SVG_FECOLORMATRIX_TYPE_MATRIX: 1;
25159     readonly SVG_FECOLORMATRIX_TYPE_SATURATE: 2;
25160     readonly SVG_FECOLORMATRIX_TYPE_HUEROTATE: 3;
25161     readonly SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA: 4;
25162     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEColorMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25163     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25164     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEColorMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25165     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25168 declare var SVGFEColorMatrixElement: {
25169     prototype: SVGFEColorMatrixElement;
25170     new(): SVGFEColorMatrixElement;
25171     readonly SVG_FECOLORMATRIX_TYPE_UNKNOWN: 0;
25172     readonly SVG_FECOLORMATRIX_TYPE_MATRIX: 1;
25173     readonly SVG_FECOLORMATRIX_TYPE_SATURATE: 2;
25174     readonly SVG_FECOLORMATRIX_TYPE_HUEROTATE: 3;
25175     readonly SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA: 4;
25176     isInstance(obj): obj is SVGFEColorMatrixElement;
25180  * Corresponds to the <feComponentTransfer> element.
25182  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEComponentTransferElement)
25183  */
25184 interface SVGFEComponentTransferElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25185     readonly in1: SVGAnimatedString;
25186     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEComponentTransferElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25187     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25188     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEComponentTransferElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25189     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25192 declare var SVGFEComponentTransferElement: {
25193     prototype: SVGFEComponentTransferElement;
25194     new(): SVGFEComponentTransferElement;
25195     isInstance(obj): obj is SVGFEComponentTransferElement;
25199  * Corresponds to the <feComposite> element.
25201  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFECompositeElement)
25202  */
25203 interface SVGFECompositeElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25204     readonly in1: SVGAnimatedString;
25205     readonly in2: SVGAnimatedString;
25206     readonly k1: SVGAnimatedNumber;
25207     readonly k2: SVGAnimatedNumber;
25208     readonly k3: SVGAnimatedNumber;
25209     readonly k4: SVGAnimatedNumber;
25210     readonly operator: SVGAnimatedEnumeration;
25211     readonly SVG_FECOMPOSITE_OPERATOR_UNKNOWN: 0;
25212     readonly SVG_FECOMPOSITE_OPERATOR_OVER: 1;
25213     readonly SVG_FECOMPOSITE_OPERATOR_IN: 2;
25214     readonly SVG_FECOMPOSITE_OPERATOR_OUT: 3;
25215     readonly SVG_FECOMPOSITE_OPERATOR_ATOP: 4;
25216     readonly SVG_FECOMPOSITE_OPERATOR_XOR: 5;
25217     readonly SVG_FECOMPOSITE_OPERATOR_ARITHMETIC: 6;
25218     readonly SVG_FECOMPOSITE_OPERATOR_LIGHTER: 7;
25219     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFECompositeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25220     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25221     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFECompositeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25222     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25225 declare var SVGFECompositeElement: {
25226     prototype: SVGFECompositeElement;
25227     new(): SVGFECompositeElement;
25228     readonly SVG_FECOMPOSITE_OPERATOR_UNKNOWN: 0;
25229     readonly SVG_FECOMPOSITE_OPERATOR_OVER: 1;
25230     readonly SVG_FECOMPOSITE_OPERATOR_IN: 2;
25231     readonly SVG_FECOMPOSITE_OPERATOR_OUT: 3;
25232     readonly SVG_FECOMPOSITE_OPERATOR_ATOP: 4;
25233     readonly SVG_FECOMPOSITE_OPERATOR_XOR: 5;
25234     readonly SVG_FECOMPOSITE_OPERATOR_ARITHMETIC: 6;
25235     readonly SVG_FECOMPOSITE_OPERATOR_LIGHTER: 7;
25236     isInstance(obj): obj is SVGFECompositeElement;
25240  * Corresponds to the <feConvolveMatrix> element.
25242  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEConvolveMatrixElement)
25243  */
25244 interface SVGFEConvolveMatrixElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25245     readonly bias: SVGAnimatedNumber;
25246     readonly divisor: SVGAnimatedNumber;
25247     readonly edgeMode: SVGAnimatedEnumeration;
25248     readonly in1: SVGAnimatedString;
25249     readonly kernelMatrix: SVGAnimatedNumberList;
25250     readonly kernelUnitLengthX: SVGAnimatedNumber;
25251     readonly kernelUnitLengthY: SVGAnimatedNumber;
25252     readonly orderX: SVGAnimatedInteger;
25253     readonly orderY: SVGAnimatedInteger;
25254     readonly preserveAlpha: SVGAnimatedBoolean;
25255     readonly targetX: SVGAnimatedInteger;
25256     readonly targetY: SVGAnimatedInteger;
25257     readonly SVG_EDGEMODE_UNKNOWN: 0;
25258     readonly SVG_EDGEMODE_DUPLICATE: 1;
25259     readonly SVG_EDGEMODE_WRAP: 2;
25260     readonly SVG_EDGEMODE_NONE: 3;
25261     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEConvolveMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25262     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25263     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEConvolveMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25264     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25267 declare var SVGFEConvolveMatrixElement: {
25268     prototype: SVGFEConvolveMatrixElement;
25269     new(): SVGFEConvolveMatrixElement;
25270     readonly SVG_EDGEMODE_UNKNOWN: 0;
25271     readonly SVG_EDGEMODE_DUPLICATE: 1;
25272     readonly SVG_EDGEMODE_WRAP: 2;
25273     readonly SVG_EDGEMODE_NONE: 3;
25274     isInstance(obj): obj is SVGFEConvolveMatrixElement;
25278  * Corresponds to the <feDiffuseLighting> element.
25280  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDiffuseLightingElement)
25281  */
25282 interface SVGFEDiffuseLightingElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25283     readonly diffuseConstant: SVGAnimatedNumber;
25284     readonly in1: SVGAnimatedString;
25285     readonly kernelUnitLengthX: SVGAnimatedNumber;
25286     readonly kernelUnitLengthY: SVGAnimatedNumber;
25287     readonly surfaceScale: SVGAnimatedNumber;
25288     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDiffuseLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25289     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25290     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDiffuseLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25291     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25294 declare var SVGFEDiffuseLightingElement: {
25295     prototype: SVGFEDiffuseLightingElement;
25296     new(): SVGFEDiffuseLightingElement;
25297     isInstance(obj): obj is SVGFEDiffuseLightingElement;
25301  * Corresponds to the <feDisplacementMap> element.
25303  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDisplacementMapElement)
25304  */
25305 interface SVGFEDisplacementMapElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25306     readonly in1: SVGAnimatedString;
25307     readonly in2: SVGAnimatedString;
25308     readonly scale: SVGAnimatedNumber;
25309     readonly xChannelSelector: SVGAnimatedEnumeration;
25310     readonly yChannelSelector: SVGAnimatedEnumeration;
25311     readonly SVG_CHANNEL_UNKNOWN: 0;
25312     readonly SVG_CHANNEL_R: 1;
25313     readonly SVG_CHANNEL_G: 2;
25314     readonly SVG_CHANNEL_B: 3;
25315     readonly SVG_CHANNEL_A: 4;
25316     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDisplacementMapElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25317     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25318     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDisplacementMapElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25319     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25322 declare var SVGFEDisplacementMapElement: {
25323     prototype: SVGFEDisplacementMapElement;
25324     new(): SVGFEDisplacementMapElement;
25325     readonly SVG_CHANNEL_UNKNOWN: 0;
25326     readonly SVG_CHANNEL_R: 1;
25327     readonly SVG_CHANNEL_G: 2;
25328     readonly SVG_CHANNEL_B: 3;
25329     readonly SVG_CHANNEL_A: 4;
25330     isInstance(obj): obj is SVGFEDisplacementMapElement;
25334  * Corresponds to the <feDistantLight> element.
25336  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDistantLightElement)
25337  */
25338 interface SVGFEDistantLightElement extends SVGElement {
25339     readonly azimuth: SVGAnimatedNumber;
25340     readonly elevation: SVGAnimatedNumber;
25341     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDistantLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25342     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25343     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDistantLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25344     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25347 declare var SVGFEDistantLightElement: {
25348     prototype: SVGFEDistantLightElement;
25349     new(): SVGFEDistantLightElement;
25350     isInstance(obj): obj is SVGFEDistantLightElement;
25353 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDropShadowElement) */
25354 interface SVGFEDropShadowElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25355     readonly dx: SVGAnimatedNumber;
25356     readonly dy: SVGAnimatedNumber;
25357     readonly in1: SVGAnimatedString;
25358     readonly stdDeviationX: SVGAnimatedNumber;
25359     readonly stdDeviationY: SVGAnimatedNumber;
25360     setStdDeviation(stdDeviationX: number, stdDeviationY: number): void;
25361     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDropShadowElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25362     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25363     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDropShadowElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25364     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25367 declare var SVGFEDropShadowElement: {
25368     prototype: SVGFEDropShadowElement;
25369     new(): SVGFEDropShadowElement;
25370     isInstance(obj): obj is SVGFEDropShadowElement;
25374  * Corresponds to the <feFlood> element.
25376  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFloodElement)
25377  */
25378 interface SVGFEFloodElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25379     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFloodElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25380     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25381     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFloodElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25382     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25385 declare var SVGFEFloodElement: {
25386     prototype: SVGFEFloodElement;
25387     new(): SVGFEFloodElement;
25388     isInstance(obj): obj is SVGFEFloodElement;
25392  * Corresponds to the <feFuncA> element.
25394  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncAElement)
25395  */
25396 interface SVGFEFuncAElement extends SVGComponentTransferFunctionElement {
25397     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25398     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25399     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25400     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25403 declare var SVGFEFuncAElement: {
25404     prototype: SVGFEFuncAElement;
25405     new(): SVGFEFuncAElement;
25406     isInstance(obj): obj is SVGFEFuncAElement;
25410  * Corresponds to the <feFuncB> element.
25412  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncBElement)
25413  */
25414 interface SVGFEFuncBElement extends SVGComponentTransferFunctionElement {
25415     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncBElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25416     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25417     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncBElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25418     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25421 declare var SVGFEFuncBElement: {
25422     prototype: SVGFEFuncBElement;
25423     new(): SVGFEFuncBElement;
25424     isInstance(obj): obj is SVGFEFuncBElement;
25428  * Corresponds to the <feFuncG> element.
25430  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncGElement)
25431  */
25432 interface SVGFEFuncGElement extends SVGComponentTransferFunctionElement {
25433     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25434     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25435     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25436     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25439 declare var SVGFEFuncGElement: {
25440     prototype: SVGFEFuncGElement;
25441     new(): SVGFEFuncGElement;
25442     isInstance(obj): obj is SVGFEFuncGElement;
25446  * Corresponds to the <feFuncR> element.
25448  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncRElement)
25449  */
25450 interface SVGFEFuncRElement extends SVGComponentTransferFunctionElement {
25451     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncRElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25452     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25453     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncRElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25454     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25457 declare var SVGFEFuncRElement: {
25458     prototype: SVGFEFuncRElement;
25459     new(): SVGFEFuncRElement;
25460     isInstance(obj): obj is SVGFEFuncRElement;
25464  * Corresponds to the <feGaussianBlur> element.
25466  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEGaussianBlurElement)
25467  */
25468 interface SVGFEGaussianBlurElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25469     readonly in1: SVGAnimatedString;
25470     readonly stdDeviationX: SVGAnimatedNumber;
25471     readonly stdDeviationY: SVGAnimatedNumber;
25472     setStdDeviation(stdDeviationX: number, stdDeviationY: number): void;
25473     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEGaussianBlurElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25474     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25475     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEGaussianBlurElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25476     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25479 declare var SVGFEGaussianBlurElement: {
25480     prototype: SVGFEGaussianBlurElement;
25481     new(): SVGFEGaussianBlurElement;
25482     isInstance(obj): obj is SVGFEGaussianBlurElement;
25486  * Corresponds to the <feImage> element.
25488  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEImageElement)
25489  */
25490 interface SVGFEImageElement extends SVGElement, SVGFilterPrimitiveStandardAttributes, SVGURIReference {
25491     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEImageElement) */
25492     crossOrigin: string | null;
25493     readonly preserveAspectRatio: SVGAnimatedPreserveAspectRatio;
25494     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25495     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25496     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25497     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25500 declare var SVGFEImageElement: {
25501     prototype: SVGFEImageElement;
25502     new(): SVGFEImageElement;
25503     isInstance(obj): obj is SVGFEImageElement;
25507  * Corresponds to the <feMerge> element.
25509  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEMergeElement)
25510  */
25511 interface SVGFEMergeElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25512     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25513     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25514     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25515     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25518 declare var SVGFEMergeElement: {
25519     prototype: SVGFEMergeElement;
25520     new(): SVGFEMergeElement;
25521     isInstance(obj): obj is SVGFEMergeElement;
25525  * Corresponds to the <feMergeNode> element.
25527  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEMergeNodeElement)
25528  */
25529 interface SVGFEMergeNodeElement extends SVGElement {
25530     readonly in1: SVGAnimatedString;
25531     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeNodeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25532     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25533     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeNodeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25534     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25537 declare var SVGFEMergeNodeElement: {
25538     prototype: SVGFEMergeNodeElement;
25539     new(): SVGFEMergeNodeElement;
25540     isInstance(obj): obj is SVGFEMergeNodeElement;
25544  * Corresponds to the <feMorphology> element.
25546  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEMorphologyElement)
25547  */
25548 interface SVGFEMorphologyElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25549     readonly in1: SVGAnimatedString;
25550     readonly operator: SVGAnimatedEnumeration;
25551     readonly radiusX: SVGAnimatedNumber;
25552     readonly radiusY: SVGAnimatedNumber;
25553     readonly SVG_MORPHOLOGY_OPERATOR_UNKNOWN: 0;
25554     readonly SVG_MORPHOLOGY_OPERATOR_ERODE: 1;
25555     readonly SVG_MORPHOLOGY_OPERATOR_DILATE: 2;
25556     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMorphologyElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25557     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25558     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMorphologyElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25559     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25562 declare var SVGFEMorphologyElement: {
25563     prototype: SVGFEMorphologyElement;
25564     new(): SVGFEMorphologyElement;
25565     readonly SVG_MORPHOLOGY_OPERATOR_UNKNOWN: 0;
25566     readonly SVG_MORPHOLOGY_OPERATOR_ERODE: 1;
25567     readonly SVG_MORPHOLOGY_OPERATOR_DILATE: 2;
25568     isInstance(obj): obj is SVGFEMorphologyElement;
25572  * Corresponds to the <feOffset> element.
25574  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEOffsetElement)
25575  */
25576 interface SVGFEOffsetElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25577     readonly dx: SVGAnimatedNumber;
25578     readonly dy: SVGAnimatedNumber;
25579     readonly in1: SVGAnimatedString;
25580     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEOffsetElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25581     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25582     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEOffsetElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25583     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25586 declare var SVGFEOffsetElement: {
25587     prototype: SVGFEOffsetElement;
25588     new(): SVGFEOffsetElement;
25589     isInstance(obj): obj is SVGFEOffsetElement;
25593  * Corresponds to the <fePointLight> element.
25595  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEPointLightElement)
25596  */
25597 interface SVGFEPointLightElement extends SVGElement {
25598     readonly x: SVGAnimatedNumber;
25599     readonly y: SVGAnimatedNumber;
25600     readonly z: SVGAnimatedNumber;
25601     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEPointLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25602     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25603     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEPointLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25604     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25607 declare var SVGFEPointLightElement: {
25608     prototype: SVGFEPointLightElement;
25609     new(): SVGFEPointLightElement;
25610     isInstance(obj): obj is SVGFEPointLightElement;
25614  * Corresponds to the <feSpecularLighting> element.
25616  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFESpecularLightingElement)
25617  */
25618 interface SVGFESpecularLightingElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25619     readonly in1: SVGAnimatedString;
25620     readonly kernelUnitLengthX: SVGAnimatedNumber;
25621     readonly kernelUnitLengthY: SVGAnimatedNumber;
25622     readonly specularConstant: SVGAnimatedNumber;
25623     readonly specularExponent: SVGAnimatedNumber;
25624     readonly surfaceScale: SVGAnimatedNumber;
25625     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpecularLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25626     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25627     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpecularLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25628     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25631 declare var SVGFESpecularLightingElement: {
25632     prototype: SVGFESpecularLightingElement;
25633     new(): SVGFESpecularLightingElement;
25634     isInstance(obj): obj is SVGFESpecularLightingElement;
25638  * Corresponds to the <feSpotLight> element.
25640  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFESpotLightElement)
25641  */
25642 interface SVGFESpotLightElement extends SVGElement {
25643     readonly limitingConeAngle: SVGAnimatedNumber;
25644     readonly pointsAtX: SVGAnimatedNumber;
25645     readonly pointsAtY: SVGAnimatedNumber;
25646     readonly pointsAtZ: SVGAnimatedNumber;
25647     readonly specularExponent: SVGAnimatedNumber;
25648     readonly x: SVGAnimatedNumber;
25649     readonly y: SVGAnimatedNumber;
25650     readonly z: SVGAnimatedNumber;
25651     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpotLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25652     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25653     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpotLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25654     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25657 declare var SVGFESpotLightElement: {
25658     prototype: SVGFESpotLightElement;
25659     new(): SVGFESpotLightElement;
25660     isInstance(obj): obj is SVGFESpotLightElement;
25664  * Corresponds to the <feTile> element.
25666  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFETileElement)
25667  */
25668 interface SVGFETileElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25669     readonly in1: SVGAnimatedString;
25670     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETileElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25671     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25672     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETileElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25673     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25676 declare var SVGFETileElement: {
25677     prototype: SVGFETileElement;
25678     new(): SVGFETileElement;
25679     isInstance(obj): obj is SVGFETileElement;
25683  * Corresponds to the <feTurbulence> element.
25685  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFETurbulenceElement)
25686  */
25687 interface SVGFETurbulenceElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
25688     readonly baseFrequencyX: SVGAnimatedNumber;
25689     readonly baseFrequencyY: SVGAnimatedNumber;
25690     readonly numOctaves: SVGAnimatedInteger;
25691     readonly seed: SVGAnimatedNumber;
25692     readonly stitchTiles: SVGAnimatedEnumeration;
25693     readonly type: SVGAnimatedEnumeration;
25694     readonly SVG_TURBULENCE_TYPE_UNKNOWN: 0;
25695     readonly SVG_TURBULENCE_TYPE_FRACTALNOISE: 1;
25696     readonly SVG_TURBULENCE_TYPE_TURBULENCE: 2;
25697     readonly SVG_STITCHTYPE_UNKNOWN: 0;
25698     readonly SVG_STITCHTYPE_STITCH: 1;
25699     readonly SVG_STITCHTYPE_NOSTITCH: 2;
25700     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETurbulenceElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25701     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25702     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETurbulenceElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25703     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25706 declare var SVGFETurbulenceElement: {
25707     prototype: SVGFETurbulenceElement;
25708     new(): SVGFETurbulenceElement;
25709     readonly SVG_TURBULENCE_TYPE_UNKNOWN: 0;
25710     readonly SVG_TURBULENCE_TYPE_FRACTALNOISE: 1;
25711     readonly SVG_TURBULENCE_TYPE_TURBULENCE: 2;
25712     readonly SVG_STITCHTYPE_UNKNOWN: 0;
25713     readonly SVG_STITCHTYPE_STITCH: 1;
25714     readonly SVG_STITCHTYPE_NOSTITCH: 2;
25715     isInstance(obj): obj is SVGFETurbulenceElement;
25719  * Provides access to the properties of <filter> elements, as well as methods to manipulate them.
25721  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFilterElement)
25722  */
25723 interface SVGFilterElement extends SVGElement, SVGURIReference {
25724     readonly filterUnits: SVGAnimatedEnumeration;
25725     readonly height: SVGAnimatedLength;
25726     readonly primitiveUnits: SVGAnimatedEnumeration;
25727     readonly width: SVGAnimatedLength;
25728     readonly x: SVGAnimatedLength;
25729     readonly y: SVGAnimatedLength;
25730     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFilterElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25731     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25732     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFilterElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25733     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25736 declare var SVGFilterElement: {
25737     prototype: SVGFilterElement;
25738     new(): SVGFilterElement;
25739     isInstance(obj): obj is SVGFilterElement;
25742 interface SVGFilterPrimitiveStandardAttributes {
25743     readonly height: SVGAnimatedLength;
25744     readonly result: SVGAnimatedString;
25745     readonly width: SVGAnimatedLength;
25746     readonly x: SVGAnimatedLength;
25747     readonly y: SVGAnimatedLength;
25750 interface SVGFitToViewBox {
25751     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/preserveAspectRatio) */
25752     readonly preserveAspectRatio: SVGAnimatedPreserveAspectRatio;
25753     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/viewBox) */
25754     readonly viewBox: SVGAnimatedRect;
25758  * Provides access to the properties of <foreignObject> elements, as well as methods to manipulate them.
25760  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGForeignObjectElement)
25761  */
25762 interface SVGForeignObjectElement extends SVGGraphicsElement {
25763     readonly height: SVGAnimatedLength;
25764     readonly width: SVGAnimatedLength;
25765     readonly x: SVGAnimatedLength;
25766     readonly y: SVGAnimatedLength;
25767     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGForeignObjectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25768     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25769     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGForeignObjectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25770     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25773 declare var SVGForeignObjectElement: {
25774     prototype: SVGForeignObjectElement;
25775     new(): SVGForeignObjectElement;
25776     isInstance(obj): obj is SVGForeignObjectElement;
25780  * Corresponds to the <g> element.
25782  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGElement)
25783  */
25784 interface SVGGElement extends SVGGraphicsElement {
25785     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25786     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25787     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25788     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25791 declare var SVGGElement: {
25792     prototype: SVGGElement;
25793     new(): SVGGElement;
25794     isInstance(obj): obj is SVGGElement;
25797 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement) */
25798 interface SVGGeometryElement extends SVGGraphicsElement {
25799     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/pathLength) */
25800     readonly pathLength: SVGAnimatedNumber;
25801     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/getPointAtLength) */
25802     getPointAtLength(distance: number): SVGPoint;
25803     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/getTotalLength) */
25804     getTotalLength(): number;
25805     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInFill) */
25806     isPointInFill(point?: DOMPointInit): boolean;
25807     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInStroke) */
25808     isPointInStroke(point?: DOMPointInit): boolean;
25809     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGeometryElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25810     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25811     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGeometryElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25812     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25815 declare var SVGGeometryElement: {
25816     prototype: SVGGeometryElement;
25817     new(): SVGGeometryElement;
25818     isInstance(obj): obj is SVGGeometryElement;
25822  * The SVGGradient interface is a base interface used by SVGLinearGradientElement and SVGRadialGradientElement.
25824  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGradientElement)
25825  */
25826 interface SVGGradientElement extends SVGElement, SVGURIReference {
25827     readonly gradientTransform: SVGAnimatedTransformList;
25828     readonly gradientUnits: SVGAnimatedEnumeration;
25829     readonly spreadMethod: SVGAnimatedEnumeration;
25830     readonly SVG_SPREADMETHOD_UNKNOWN: 0;
25831     readonly SVG_SPREADMETHOD_PAD: 1;
25832     readonly SVG_SPREADMETHOD_REFLECT: 2;
25833     readonly SVG_SPREADMETHOD_REPEAT: 3;
25834     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25835     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25836     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25837     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25840 declare var SVGGradientElement: {
25841     prototype: SVGGradientElement;
25842     new(): SVGGradientElement;
25843     readonly SVG_SPREADMETHOD_UNKNOWN: 0;
25844     readonly SVG_SPREADMETHOD_PAD: 1;
25845     readonly SVG_SPREADMETHOD_REFLECT: 2;
25846     readonly SVG_SPREADMETHOD_REPEAT: 3;
25847     isInstance(obj): obj is SVGGradientElement;
25851  * SVG elements whose primary purpose is to directly render graphics into a group.
25853  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGraphicsElement)
25854  */
25855 interface SVGGraphicsElement extends SVGElement, SVGTests {
25856     readonly farthestViewportElement: SVGElement | null;
25857     readonly nearestViewportElement: SVGElement | null;
25858     readonly transform: SVGAnimatedTransformList;
25859     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGraphicsElement/getBBox) */
25860     getBBox(aOptions?: SVGBoundingBoxOptions): SVGRect;
25861     getCTM(): SVGMatrix | null;
25862     getScreenCTM(): SVGMatrix | null;
25863     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGraphicsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25864     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25865     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGraphicsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25866     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25869 declare var SVGGraphicsElement: {
25870     prototype: SVGGraphicsElement;
25871     new(): SVGGraphicsElement;
25872     isInstance(obj): obj is SVGGraphicsElement;
25876  * Corresponds to the <image> element.
25878  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement)
25879  */
25880 interface SVGImageElement extends SVGGraphicsElement, MozImageLoadingContent, SVGURIReference {
25881     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/crossorigin) */
25882     crossOrigin: string | null;
25883     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/decoding) */
25884     decoding: string;
25885     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/height) */
25886     readonly height: SVGAnimatedLength;
25887     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/preserveAspectRatio) */
25888     readonly preserveAspectRatio: SVGAnimatedPreserveAspectRatio;
25889     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/width) */
25890     readonly width: SVGAnimatedLength;
25891     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/x) */
25892     readonly x: SVGAnimatedLength;
25893     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/y) */
25894     readonly y: SVGAnimatedLength;
25895     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/decode) */
25896     decode(): Promise<void>;
25897     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25898     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25899     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25900     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25903 declare var SVGImageElement: {
25904     prototype: SVGImageElement;
25905     new(): SVGImageElement;
25906     readonly UNKNOWN_REQUEST: -1;
25907     readonly CURRENT_REQUEST: 0;
25908     readonly PENDING_REQUEST: 1;
25909     isInstance(obj): obj is SVGImageElement;
25913  * Correspond to the <length> basic data type.
25915  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLength)
25916  */
25917 interface SVGLength {
25918     readonly unitType: number;
25919     value: number;
25920     valueAsString: string;
25921     valueInSpecifiedUnits: number;
25922     convertToSpecifiedUnits(unitType: number): void;
25923     newValueSpecifiedUnits(unitType: number, valueInSpecifiedUnits: number): void;
25924     readonly SVG_LENGTHTYPE_UNKNOWN: 0;
25925     readonly SVG_LENGTHTYPE_NUMBER: 1;
25926     readonly SVG_LENGTHTYPE_PERCENTAGE: 2;
25927     readonly SVG_LENGTHTYPE_EMS: 3;
25928     readonly SVG_LENGTHTYPE_EXS: 4;
25929     readonly SVG_LENGTHTYPE_PX: 5;
25930     readonly SVG_LENGTHTYPE_CM: 6;
25931     readonly SVG_LENGTHTYPE_MM: 7;
25932     readonly SVG_LENGTHTYPE_IN: 8;
25933     readonly SVG_LENGTHTYPE_PT: 9;
25934     readonly SVG_LENGTHTYPE_PC: 10;
25937 declare var SVGLength: {
25938     prototype: SVGLength;
25939     new(): SVGLength;
25940     readonly SVG_LENGTHTYPE_UNKNOWN: 0;
25941     readonly SVG_LENGTHTYPE_NUMBER: 1;
25942     readonly SVG_LENGTHTYPE_PERCENTAGE: 2;
25943     readonly SVG_LENGTHTYPE_EMS: 3;
25944     readonly SVG_LENGTHTYPE_EXS: 4;
25945     readonly SVG_LENGTHTYPE_PX: 5;
25946     readonly SVG_LENGTHTYPE_CM: 6;
25947     readonly SVG_LENGTHTYPE_MM: 7;
25948     readonly SVG_LENGTHTYPE_IN: 8;
25949     readonly SVG_LENGTHTYPE_PT: 9;
25950     readonly SVG_LENGTHTYPE_PC: 10;
25951     isInstance(obj): obj is SVGLength;
25955  * The SVGLengthList defines a list of SVGLength objects.
25957  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLengthList)
25958  */
25959 interface SVGLengthList {
25960     readonly length: number;
25961     readonly numberOfItems: number;
25962     appendItem(newItem: SVGLength): SVGLength;
25963     clear(): void;
25964     getItem(index: number): SVGLength;
25965     initialize(newItem: SVGLength): SVGLength;
25966     insertItemBefore(newItem: SVGLength, index: number): SVGLength;
25967     removeItem(index: number): SVGLength;
25968     replaceItem(newItem: SVGLength, index: number): SVGLength;
25969     [index: number]: SVGLength;
25972 declare var SVGLengthList: {
25973     prototype: SVGLengthList;
25974     new(): SVGLengthList;
25975     isInstance(obj): obj is SVGLengthList;
25979  * Provides access to the properties of <line> elements, as well as methods to manipulate them.
25981  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLineElement)
25982  */
25983 interface SVGLineElement extends SVGGeometryElement {
25984     readonly x1: SVGAnimatedLength;
25985     readonly x2: SVGAnimatedLength;
25986     readonly y1: SVGAnimatedLength;
25987     readonly y2: SVGAnimatedLength;
25988     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
25989     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
25990     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
25991     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
25994 declare var SVGLineElement: {
25995     prototype: SVGLineElement;
25996     new(): SVGLineElement;
25997     isInstance(obj): obj is SVGLineElement;
26001  * Corresponds to the <linearGradient> element.
26003  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLinearGradientElement)
26004  */
26005 interface SVGLinearGradientElement extends SVGGradientElement {
26006     readonly x1: SVGAnimatedLength;
26007     readonly x2: SVGAnimatedLength;
26008     readonly y1: SVGAnimatedLength;
26009     readonly y2: SVGAnimatedLength;
26010     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLinearGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26011     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26012     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLinearGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26013     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26016 declare var SVGLinearGradientElement: {
26017     prototype: SVGLinearGradientElement;
26018     new(): SVGLinearGradientElement;
26019     isInstance(obj): obj is SVGLinearGradientElement;
26022 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMPathElement) */
26023 interface SVGMPathElement extends SVGElement, SVGURIReference {
26024     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26025     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26026     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26027     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26030 declare var SVGMPathElement: {
26031     prototype: SVGMPathElement;
26032     new(): SVGMPathElement;
26033     isInstance(obj): obj is SVGMPathElement;
26036 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement) */
26037 interface SVGMarkerElement extends SVGElement, SVGFitToViewBox {
26038     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/markerHeight) */
26039     readonly markerHeight: SVGAnimatedLength;
26040     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/markerUnits) */
26041     readonly markerUnits: SVGAnimatedEnumeration;
26042     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/markerWidth) */
26043     readonly markerWidth: SVGAnimatedLength;
26044     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/orientAngle) */
26045     readonly orientAngle: SVGAnimatedAngle;
26046     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/orientType) */
26047     readonly orientType: SVGAnimatedEnumeration;
26048     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/refX) */
26049     readonly refX: SVGAnimatedLength;
26050     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/refY) */
26051     readonly refY: SVGAnimatedLength;
26052     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/setOrientToAngle) */
26053     setOrientToAngle(angle: SVGAngle): void;
26054     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/setOrientToAuto) */
26055     setOrientToAuto(): void;
26056     readonly SVG_MARKERUNITS_UNKNOWN: 0;
26057     readonly SVG_MARKERUNITS_USERSPACEONUSE: 1;
26058     readonly SVG_MARKERUNITS_STROKEWIDTH: 2;
26059     readonly SVG_MARKER_ORIENT_UNKNOWN: 0;
26060     readonly SVG_MARKER_ORIENT_AUTO: 1;
26061     readonly SVG_MARKER_ORIENT_ANGLE: 2;
26062     readonly SVG_MARKER_ORIENT_AUTO_START_REVERSE: 3;
26063     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMarkerElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26064     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26065     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMarkerElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26066     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26069 declare var SVGMarkerElement: {
26070     prototype: SVGMarkerElement;
26071     new(): SVGMarkerElement;
26072     readonly SVG_MARKERUNITS_UNKNOWN: 0;
26073     readonly SVG_MARKERUNITS_USERSPACEONUSE: 1;
26074     readonly SVG_MARKERUNITS_STROKEWIDTH: 2;
26075     readonly SVG_MARKER_ORIENT_UNKNOWN: 0;
26076     readonly SVG_MARKER_ORIENT_AUTO: 1;
26077     readonly SVG_MARKER_ORIENT_ANGLE: 2;
26078     readonly SVG_MARKER_ORIENT_AUTO_START_REVERSE: 3;
26079     isInstance(obj): obj is SVGMarkerElement;
26083  * Provides access to the properties of <mask> elements, as well as methods to manipulate them.
26085  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement)
26086  */
26087 interface SVGMaskElement extends SVGElement {
26088     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/height) */
26089     readonly height: SVGAnimatedLength;
26090     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/maskContentUnits) */
26091     readonly maskContentUnits: SVGAnimatedEnumeration;
26092     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/maskUnits) */
26093     readonly maskUnits: SVGAnimatedEnumeration;
26094     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/width) */
26095     readonly width: SVGAnimatedLength;
26096     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/x) */
26097     readonly x: SVGAnimatedLength;
26098     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/y) */
26099     readonly y: SVGAnimatedLength;
26100     readonly SVG_MASKTYPE_LUMINANCE: 0;
26101     readonly SVG_MASKTYPE_ALPHA: 1;
26102     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMaskElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26103     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26104     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMaskElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26105     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26108 declare var SVGMaskElement: {
26109     prototype: SVGMaskElement;
26110     new(): SVGMaskElement;
26111     readonly SVG_MASKTYPE_LUMINANCE: 0;
26112     readonly SVG_MASKTYPE_ALPHA: 1;
26113     isInstance(obj): obj is SVGMaskElement;
26116 interface SVGMatrix {
26117     a: number;
26118     b: number;
26119     c: number;
26120     d: number;
26121     e: number;
26122     f: number;
26123     flipX(): SVGMatrix;
26124     flipY(): SVGMatrix;
26125     inverse(): SVGMatrix;
26126     multiply(secondMatrix: SVGMatrix): SVGMatrix;
26127     rotate(angle: number): SVGMatrix;
26128     rotateFromVector(x: number, y: number): SVGMatrix;
26129     scale(scaleFactor: number): SVGMatrix;
26130     scaleNonUniform(scaleFactorX: number, scaleFactorY: number): SVGMatrix;
26131     skewX(angle: number): SVGMatrix;
26132     skewY(angle: number): SVGMatrix;
26133     translate(x: number, y: number): SVGMatrix;
26136 declare var SVGMatrix: {
26137     prototype: SVGMatrix;
26138     new(): SVGMatrix;
26139     isInstance(obj): obj is SVGMatrix;
26143  * Corresponds to the <metadata> element.
26145  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMetadataElement)
26146  */
26147 interface SVGMetadataElement extends SVGElement {
26148     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMetadataElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26149     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26150     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMetadataElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26151     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26154 declare var SVGMetadataElement: {
26155     prototype: SVGMetadataElement;
26156     new(): SVGMetadataElement;
26157     isInstance(obj): obj is SVGMetadataElement;
26161  * Corresponds to the <number> basic data type.
26163  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGNumber)
26164  */
26165 interface SVGNumber {
26166     value: number;
26169 declare var SVGNumber: {
26170     prototype: SVGNumber;
26171     new(): SVGNumber;
26172     isInstance(obj): obj is SVGNumber;
26176  * The SVGNumberList defines a list of SVGNumber objects.
26178  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGNumberList)
26179  */
26180 interface SVGNumberList {
26181     readonly length: number;
26182     readonly numberOfItems: number;
26183     appendItem(newItem: SVGNumber): SVGNumber;
26184     clear(): void;
26185     getItem(index: number): SVGNumber;
26186     initialize(newItem: SVGNumber): SVGNumber;
26187     insertItemBefore(newItem: SVGNumber, index: number): SVGNumber;
26188     removeItem(index: number): SVGNumber;
26189     replaceItem(newItem: SVGNumber, index: number): SVGNumber;
26190     [index: number]: SVGNumber;
26193 declare var SVGNumberList: {
26194     prototype: SVGNumberList;
26195     new(): SVGNumberList;
26196     isInstance(obj): obj is SVGNumberList;
26200  * Corresponds to the <path> element.
26202  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPathElement)
26203  */
26204 interface SVGPathElement extends SVGGeometryElement, SVGAnimatedPathData {
26205     /** @deprecated */
26206     getPathSegAtLength(distance: number): number;
26207     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26208     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26209     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26210     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26213 declare var SVGPathElement: {
26214     prototype: SVGPathElement;
26215     new(): SVGPathElement;
26216     isInstance(obj): obj is SVGPathElement;
26219 interface SVGPathSeg {
26220     readonly pathSegType: number;
26221     readonly pathSegTypeAsLetter: string;
26222     readonly PATHSEG_UNKNOWN: 0;
26223     readonly PATHSEG_CLOSEPATH: 1;
26224     readonly PATHSEG_MOVETO_ABS: 2;
26225     readonly PATHSEG_MOVETO_REL: 3;
26226     readonly PATHSEG_LINETO_ABS: 4;
26227     readonly PATHSEG_LINETO_REL: 5;
26228     readonly PATHSEG_CURVETO_CUBIC_ABS: 6;
26229     readonly PATHSEG_CURVETO_CUBIC_REL: 7;
26230     readonly PATHSEG_CURVETO_QUADRATIC_ABS: 8;
26231     readonly PATHSEG_CURVETO_QUADRATIC_REL: 9;
26232     readonly PATHSEG_ARC_ABS: 10;
26233     readonly PATHSEG_ARC_REL: 11;
26234     readonly PATHSEG_LINETO_HORIZONTAL_ABS: 12;
26235     readonly PATHSEG_LINETO_HORIZONTAL_REL: 13;
26236     readonly PATHSEG_LINETO_VERTICAL_ABS: 14;
26237     readonly PATHSEG_LINETO_VERTICAL_REL: 15;
26238     readonly PATHSEG_CURVETO_CUBIC_SMOOTH_ABS: 16;
26239     readonly PATHSEG_CURVETO_CUBIC_SMOOTH_REL: 17;
26240     readonly PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS: 18;
26241     readonly PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL: 19;
26244 interface SVGPathSegArcAbs extends SVGPathSeg {
26245     angle: number;
26246     largeArcFlag: boolean;
26247     r1: number;
26248     r2: number;
26249     sweepFlag: boolean;
26250     x: number;
26251     y: number;
26254 interface SVGPathSegArcRel extends SVGPathSeg {
26255     angle: number;
26256     largeArcFlag: boolean;
26257     r1: number;
26258     r2: number;
26259     sweepFlag: boolean;
26260     x: number;
26261     y: number;
26264 interface SVGPathSegClosePath extends SVGPathSeg {
26267 interface SVGPathSegCurvetoCubicAbs extends SVGPathSeg {
26268     x: number;
26269     x1: number;
26270     x2: number;
26271     y: number;
26272     y1: number;
26273     y2: number;
26276 interface SVGPathSegCurvetoCubicRel extends SVGPathSeg {
26277     x: number;
26278     x1: number;
26279     x2: number;
26280     y: number;
26281     y1: number;
26282     y2: number;
26285 interface SVGPathSegCurvetoCubicSmoothAbs extends SVGPathSeg {
26286     x: number;
26287     x2: number;
26288     y: number;
26289     y2: number;
26292 interface SVGPathSegCurvetoCubicSmoothRel extends SVGPathSeg {
26293     x: number;
26294     x2: number;
26295     y: number;
26296     y2: number;
26299 interface SVGPathSegCurvetoQuadraticAbs extends SVGPathSeg {
26300     x: number;
26301     x1: number;
26302     y: number;
26303     y1: number;
26306 interface SVGPathSegCurvetoQuadraticRel extends SVGPathSeg {
26307     x: number;
26308     x1: number;
26309     y: number;
26310     y1: number;
26313 interface SVGPathSegCurvetoQuadraticSmoothAbs extends SVGPathSeg {
26314     x: number;
26315     y: number;
26318 interface SVGPathSegCurvetoQuadraticSmoothRel extends SVGPathSeg {
26319     x: number;
26320     y: number;
26323 interface SVGPathSegLinetoAbs extends SVGPathSeg {
26324     x: number;
26325     y: number;
26328 interface SVGPathSegLinetoHorizontalAbs extends SVGPathSeg {
26329     x: number;
26332 interface SVGPathSegLinetoHorizontalRel extends SVGPathSeg {
26333     x: number;
26336 interface SVGPathSegLinetoRel extends SVGPathSeg {
26337     x: number;
26338     y: number;
26341 interface SVGPathSegLinetoVerticalAbs extends SVGPathSeg {
26342     y: number;
26345 interface SVGPathSegLinetoVerticalRel extends SVGPathSeg {
26346     y: number;
26349 interface SVGPathSegList {
26350     readonly length: number;
26351     readonly numberOfItems: number;
26352     getItem(index: number): SVGPathSeg;
26353     [index: number]: SVGPathSeg;
26356 declare var SVGPathSegList: {
26357     prototype: SVGPathSegList;
26358     new(): SVGPathSegList;
26359     isInstance(obj): obj is SVGPathSegList;
26362 interface SVGPathSegMovetoAbs extends SVGPathSeg {
26363     x: number;
26364     y: number;
26367 interface SVGPathSegMovetoRel extends SVGPathSeg {
26368     x: number;
26369     y: number;
26373  * Corresponds to the <pattern> element.
26375  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPatternElement)
26376  */
26377 interface SVGPatternElement extends SVGElement, SVGFitToViewBox, SVGURIReference {
26378     readonly height: SVGAnimatedLength;
26379     readonly patternContentUnits: SVGAnimatedEnumeration;
26380     readonly patternTransform: SVGAnimatedTransformList;
26381     readonly patternUnits: SVGAnimatedEnumeration;
26382     readonly width: SVGAnimatedLength;
26383     readonly x: SVGAnimatedLength;
26384     readonly y: SVGAnimatedLength;
26385     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPatternElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26386     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26387     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPatternElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26388     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26391 declare var SVGPatternElement: {
26392     prototype: SVGPatternElement;
26393     new(): SVGPatternElement;
26394     isInstance(obj): obj is SVGPatternElement;
26398  * An SVGPoint represents a 2D or 3D point in the SVG coordinate system.
26399  * @deprecated
26401  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPoint)
26402  */
26403 interface SVGPoint {
26404     /**
26405      * @deprecated
26406      *
26407      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPoint/x)
26408      */
26409     x: number;
26410     /**
26411      * @deprecated
26412      *
26413      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPoint/y)
26414      */
26415     y: number;
26416     /**
26417      * @deprecated
26418      *
26419      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPoint/matrixTransform)
26420      */
26421     matrixTransform(matrix?: DOMMatrix2DInit): SVGPoint;
26424 /** @deprecated */
26425 declare var SVGPoint: {
26426     prototype: SVGPoint;
26427     new(): SVGPoint;
26428     isInstance(obj): obj is SVGPoint;
26431 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList) */
26432 interface SVGPointList {
26433     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/length) */
26434     readonly length: number;
26435     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/numberOfItems) */
26436     readonly numberOfItems: number;
26437     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/appendItem) */
26438     appendItem(newItem: SVGPoint): SVGPoint;
26439     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/clear) */
26440     clear(): void;
26441     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/getItem) */
26442     getItem(index: number): SVGPoint;
26443     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/initialize) */
26444     initialize(newItem: SVGPoint): SVGPoint;
26445     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/insertItemBefore) */
26446     insertItemBefore(newItem: SVGPoint, index: number): SVGPoint;
26447     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/removeItem) */
26448     removeItem(index: number): SVGPoint;
26449     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/replaceItem) */
26450     replaceItem(newItem: SVGPoint, index: number): SVGPoint;
26451     [index: number]: SVGPoint;
26454 declare var SVGPointList: {
26455     prototype: SVGPointList;
26456     new(): SVGPointList;
26457     isInstance(obj): obj is SVGPointList;
26461  * Provides access to the properties of <polygon> elements, as well as methods to manipulate them.
26463  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPolygonElement)
26464  */
26465 interface SVGPolygonElement extends SVGGeometryElement, SVGAnimatedPoints {
26466     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolygonElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26467     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26468     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolygonElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26469     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26472 declare var SVGPolygonElement: {
26473     prototype: SVGPolygonElement;
26474     new(): SVGPolygonElement;
26475     isInstance(obj): obj is SVGPolygonElement;
26479  * Provides access to the properties of <polyline> elements, as well as methods to manipulate them.
26481  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPolylineElement)
26482  */
26483 interface SVGPolylineElement extends SVGGeometryElement, SVGAnimatedPoints {
26484     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolylineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26485     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26486     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolylineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26487     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26490 declare var SVGPolylineElement: {
26491     prototype: SVGPolylineElement;
26492     new(): SVGPolylineElement;
26493     isInstance(obj): obj is SVGPolylineElement;
26497  * Corresponds to the preserveAspectRatio attribute, which is available for some of SVG's elements.
26499  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPreserveAspectRatio)
26500  */
26501 interface SVGPreserveAspectRatio {
26502     align: number;
26503     meetOrSlice: number;
26504     readonly SVG_PRESERVEASPECTRATIO_UNKNOWN: 0;
26505     readonly SVG_PRESERVEASPECTRATIO_NONE: 1;
26506     readonly SVG_PRESERVEASPECTRATIO_XMINYMIN: 2;
26507     readonly SVG_PRESERVEASPECTRATIO_XMIDYMIN: 3;
26508     readonly SVG_PRESERVEASPECTRATIO_XMAXYMIN: 4;
26509     readonly SVG_PRESERVEASPECTRATIO_XMINYMID: 5;
26510     readonly SVG_PRESERVEASPECTRATIO_XMIDYMID: 6;
26511     readonly SVG_PRESERVEASPECTRATIO_XMAXYMID: 7;
26512     readonly SVG_PRESERVEASPECTRATIO_XMINYMAX: 8;
26513     readonly SVG_PRESERVEASPECTRATIO_XMIDYMAX: 9;
26514     readonly SVG_PRESERVEASPECTRATIO_XMAXYMAX: 10;
26515     readonly SVG_MEETORSLICE_UNKNOWN: 0;
26516     readonly SVG_MEETORSLICE_MEET: 1;
26517     readonly SVG_MEETORSLICE_SLICE: 2;
26520 declare var SVGPreserveAspectRatio: {
26521     prototype: SVGPreserveAspectRatio;
26522     new(): SVGPreserveAspectRatio;
26523     readonly SVG_PRESERVEASPECTRATIO_UNKNOWN: 0;
26524     readonly SVG_PRESERVEASPECTRATIO_NONE: 1;
26525     readonly SVG_PRESERVEASPECTRATIO_XMINYMIN: 2;
26526     readonly SVG_PRESERVEASPECTRATIO_XMIDYMIN: 3;
26527     readonly SVG_PRESERVEASPECTRATIO_XMAXYMIN: 4;
26528     readonly SVG_PRESERVEASPECTRATIO_XMINYMID: 5;
26529     readonly SVG_PRESERVEASPECTRATIO_XMIDYMID: 6;
26530     readonly SVG_PRESERVEASPECTRATIO_XMAXYMID: 7;
26531     readonly SVG_PRESERVEASPECTRATIO_XMINYMAX: 8;
26532     readonly SVG_PRESERVEASPECTRATIO_XMIDYMAX: 9;
26533     readonly SVG_PRESERVEASPECTRATIO_XMAXYMAX: 10;
26534     readonly SVG_MEETORSLICE_UNKNOWN: 0;
26535     readonly SVG_MEETORSLICE_MEET: 1;
26536     readonly SVG_MEETORSLICE_SLICE: 2;
26537     isInstance(obj): obj is SVGPreserveAspectRatio;
26541  * Corresponds to the <RadialGradient> element.
26543  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGRadialGradientElement)
26544  */
26545 interface SVGRadialGradientElement extends SVGGradientElement {
26546     readonly cx: SVGAnimatedLength;
26547     readonly cy: SVGAnimatedLength;
26548     readonly fr: SVGAnimatedLength;
26549     readonly fx: SVGAnimatedLength;
26550     readonly fy: SVGAnimatedLength;
26551     readonly r: SVGAnimatedLength;
26552     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRadialGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26553     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26554     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRadialGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26555     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26558 declare var SVGRadialGradientElement: {
26559     prototype: SVGRadialGradientElement;
26560     new(): SVGRadialGradientElement;
26561     isInstance(obj): obj is SVGRadialGradientElement;
26565  * The SVGRect represents a rectangle. Rectangles consist of an x and y coordinate pair identifying a minimum x value, a minimum y value, and a width and height, which are constrained to be non-negative.
26567  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGRect)
26568  */
26569 interface SVGRect {
26570     height: number;
26571     width: number;
26572     x: number;
26573     y: number;
26576 declare var SVGRect: {
26577     prototype: SVGRect;
26578     new(): SVGRect;
26579     isInstance(obj): obj is SVGRect;
26583  * Provides access to the properties of <rect> elements, as well as methods to manipulate them.
26585  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGRectElement)
26586  */
26587 interface SVGRectElement extends SVGGeometryElement {
26588     readonly height: SVGAnimatedLength;
26589     readonly rx: SVGAnimatedLength;
26590     readonly ry: SVGAnimatedLength;
26591     readonly width: SVGAnimatedLength;
26592     readonly x: SVGAnimatedLength;
26593     readonly y: SVGAnimatedLength;
26594     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26595     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26596     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26597     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26600 declare var SVGRectElement: {
26601     prototype: SVGRectElement;
26602     new(): SVGRectElement;
26603     isInstance(obj): obj is SVGRectElement;
26607  * Provides access to the properties of <svg> elements, as well as methods to manipulate them. This interface contains also various miscellaneous commonly-used utility methods, such as matrix operations and the ability to control the time of redraw on visual rendering devices.
26609  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSVGElement)
26610  */
26611 interface SVGSVGElement extends SVGGraphicsElement, SVGFitToViewBox, SVGZoomAndPan {
26612     currentScale: number;
26613     readonly currentTranslate: SVGPoint;
26614     readonly height: SVGAnimatedLength;
26615     readonly width: SVGAnimatedLength;
26616     readonly x: SVGAnimatedLength;
26617     readonly y: SVGAnimatedLength;
26618     animationsPaused(): boolean;
26619     createSVGAngle(): SVGAngle;
26620     createSVGLength(): SVGLength;
26621     createSVGMatrix(): SVGMatrix;
26622     createSVGNumber(): SVGNumber;
26623     createSVGPoint(): SVGPoint;
26624     createSVGRect(): SVGRect;
26625     createSVGTransform(): SVGTransform;
26626     createSVGTransformFromMatrix(matrix?: DOMMatrix2DInit): SVGTransform;
26627     deselectAll(): void;
26628     /** @deprecated */
26629     forceRedraw(): void;
26630     getCurrentTime(): number;
26631     getElementById(elementId: string): Element | null;
26632     pauseAnimations(): void;
26633     setCurrentTime(seconds: number): void;
26634     /** @deprecated */
26635     suspendRedraw(maxWaitMilliseconds: number): number;
26636     unpauseAnimations(): void;
26637     /** @deprecated */
26638     unsuspendRedraw(suspendHandleID: number): void;
26639     /** @deprecated */
26640     unsuspendRedrawAll(): void;
26641     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26642     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26643     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26644     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26647 declare var SVGSVGElement: {
26648     prototype: SVGSVGElement;
26649     new(): SVGSVGElement;
26650     readonly SVG_ZOOMANDPAN_UNKNOWN: 0;
26651     readonly SVG_ZOOMANDPAN_DISABLE: 1;
26652     readonly SVG_ZOOMANDPAN_MAGNIFY: 2;
26653     isInstance(obj): obj is SVGSVGElement;
26657  * Corresponds to the SVG <script> element.
26659  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGScriptElement)
26660  */
26661 interface SVGScriptElement extends SVGElement, SVGURIReference {
26662     async: boolean;
26663     crossOrigin: string | null;
26664     defer: boolean;
26665     type: string;
26666     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGScriptElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26667     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26668     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGScriptElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26669     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26672 declare var SVGScriptElement: {
26673     prototype: SVGScriptElement;
26674     new(): SVGScriptElement;
26675     isInstance(obj): obj is SVGScriptElement;
26678 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSetElement) */
26679 interface SVGSetElement extends SVGAnimationElement {
26680     addEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGSetElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26681     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26682     removeEventListener<K extends keyof SVGAnimationElementEventMap>(type: K, listener: (this: SVGSetElement, ev: SVGAnimationElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26683     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26686 declare var SVGSetElement: {
26687     prototype: SVGSetElement;
26688     new(): SVGSetElement;
26689     isInstance(obj): obj is SVGSetElement;
26693  * Corresponds to the <stop> element.
26695  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStopElement)
26696  */
26697 interface SVGStopElement extends SVGElement {
26698     readonly offset: SVGAnimatedNumber;
26699     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStopElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26700     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26701     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStopElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26702     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26705 declare var SVGStopElement: {
26706     prototype: SVGStopElement;
26707     new(): SVGStopElement;
26708     isInstance(obj): obj is SVGStopElement;
26712  * The SVGStringList defines a list of DOMString objects.
26714  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStringList)
26715  */
26716 interface SVGStringList {
26717     readonly length: number;
26718     readonly numberOfItems: number;
26719     appendItem(newItem: string): string;
26720     clear(): void;
26721     getItem(index: number): string;
26722     initialize(newItem: string): string;
26723     insertItemBefore(newItem: string, index: number): string;
26724     removeItem(index: number): string;
26725     replaceItem(newItem: string, index: number): string;
26726     [index: number]: string;
26729 declare var SVGStringList: {
26730     prototype: SVGStringList;
26731     new(): SVGStringList;
26732     isInstance(obj): obj is SVGStringList;
26736  * Corresponds to the SVG <style> element.
26738  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement)
26739  */
26740 interface SVGStyleElement extends SVGElement, LinkStyle {
26741     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement/disabled) */
26742     disabled: boolean;
26743     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement/media) */
26744     media: string;
26745     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement/title) */
26746     title: string;
26747     /**
26748      * @deprecated
26749      *
26750      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement/type)
26751      */
26752     type: string;
26753     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStyleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26754     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26755     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStyleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26756     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26759 declare var SVGStyleElement: {
26760     prototype: SVGStyleElement;
26761     new(): SVGStyleElement;
26762     isInstance(obj): obj is SVGStyleElement;
26766  * Corresponds to the <switch> element.
26768  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSwitchElement)
26769  */
26770 interface SVGSwitchElement extends SVGGraphicsElement {
26771     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSwitchElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26772     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26773     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSwitchElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26774     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26777 declare var SVGSwitchElement: {
26778     prototype: SVGSwitchElement;
26779     new(): SVGSwitchElement;
26780     isInstance(obj): obj is SVGSwitchElement;
26784  * Corresponds to the <symbol> element.
26786  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSymbolElement)
26787  */
26788 interface SVGSymbolElement extends SVGElement, SVGFitToViewBox, SVGTests {
26789     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSymbolElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26790     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26791     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSymbolElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26792     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26795 declare var SVGSymbolElement: {
26796     prototype: SVGSymbolElement;
26797     new(): SVGSymbolElement;
26798     isInstance(obj): obj is SVGSymbolElement;
26802  * A <tspan> element.
26804  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTSpanElement)
26805  */
26806 interface SVGTSpanElement extends SVGTextPositioningElement {
26807     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTSpanElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26808     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26809     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTSpanElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26810     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26813 declare var SVGTSpanElement: {
26814     prototype: SVGTSpanElement;
26815     new(): SVGTSpanElement;
26816     isInstance(obj): obj is SVGTSpanElement;
26819 interface SVGTests {
26820     readonly requiredExtensions: SVGStringList;
26821     readonly systemLanguage: SVGStringList;
26825  * Implemented by elements that support rendering child text content. It is inherited by various text-related interfaces, such as SVGTextElement, SVGTSpanElement, SVGTRefElement, SVGAltGlyphElement and SVGTextPathElement.
26827  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextContentElement)
26828  */
26829 interface SVGTextContentElement extends SVGGraphicsElement {
26830     readonly lengthAdjust: SVGAnimatedEnumeration;
26831     readonly textLength: SVGAnimatedLength;
26832     getCharNumAtPosition(point?: DOMPointInit): number;
26833     getComputedTextLength(): number;
26834     getEndPositionOfChar(charnum: number): SVGPoint;
26835     getExtentOfChar(charnum: number): SVGRect;
26836     getNumberOfChars(): number;
26837     getRotationOfChar(charnum: number): number;
26838     getStartPositionOfChar(charnum: number): SVGPoint;
26839     getSubStringLength(charnum: number, nchars: number): number;
26840     /** @deprecated */
26841     selectSubString(charnum: number, nchars: number): void;
26842     readonly LENGTHADJUST_UNKNOWN: 0;
26843     readonly LENGTHADJUST_SPACING: 1;
26844     readonly LENGTHADJUST_SPACINGANDGLYPHS: 2;
26845     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextContentElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26846     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26847     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextContentElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26848     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26851 declare var SVGTextContentElement: {
26852     prototype: SVGTextContentElement;
26853     new(): SVGTextContentElement;
26854     readonly LENGTHADJUST_UNKNOWN: 0;
26855     readonly LENGTHADJUST_SPACING: 1;
26856     readonly LENGTHADJUST_SPACINGANDGLYPHS: 2;
26857     isInstance(obj): obj is SVGTextContentElement;
26861  * Corresponds to the <text> elements.
26863  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextElement)
26864  */
26865 interface SVGTextElement extends SVGTextPositioningElement {
26866     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26867     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26868     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26869     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26872 declare var SVGTextElement: {
26873     prototype: SVGTextElement;
26874     new(): SVGTextElement;
26875     isInstance(obj): obj is SVGTextElement;
26879  * Corresponds to the <textPath> element.
26881  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextPathElement)
26882  */
26883 interface SVGTextPathElement extends SVGTextContentElement, SVGURIReference {
26884     readonly method: SVGAnimatedEnumeration;
26885     readonly spacing: SVGAnimatedEnumeration;
26886     readonly startOffset: SVGAnimatedLength;
26887     readonly TEXTPATH_METHODTYPE_UNKNOWN: 0;
26888     readonly TEXTPATH_METHODTYPE_ALIGN: 1;
26889     readonly TEXTPATH_METHODTYPE_STRETCH: 2;
26890     readonly TEXTPATH_SPACINGTYPE_UNKNOWN: 0;
26891     readonly TEXTPATH_SPACINGTYPE_AUTO: 1;
26892     readonly TEXTPATH_SPACINGTYPE_EXACT: 2;
26893     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26894     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26895     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26896     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26899 declare var SVGTextPathElement: {
26900     prototype: SVGTextPathElement;
26901     new(): SVGTextPathElement;
26902     readonly TEXTPATH_METHODTYPE_UNKNOWN: 0;
26903     readonly TEXTPATH_METHODTYPE_ALIGN: 1;
26904     readonly TEXTPATH_METHODTYPE_STRETCH: 2;
26905     readonly TEXTPATH_SPACINGTYPE_UNKNOWN: 0;
26906     readonly TEXTPATH_SPACINGTYPE_AUTO: 1;
26907     readonly TEXTPATH_SPACINGTYPE_EXACT: 2;
26908     isInstance(obj): obj is SVGTextPathElement;
26912  * Implemented by elements that support attributes that position individual text glyphs. It is inherited by SVGTextElement, SVGTSpanElement, SVGTRefElement and SVGAltGlyphElement.
26914  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextPositioningElement)
26915  */
26916 interface SVGTextPositioningElement extends SVGTextContentElement {
26917     readonly dx: SVGAnimatedLengthList;
26918     readonly dy: SVGAnimatedLengthList;
26919     readonly rotate: SVGAnimatedNumberList;
26920     readonly x: SVGAnimatedLengthList;
26921     readonly y: SVGAnimatedLengthList;
26922     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPositioningElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26923     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26924     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPositioningElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26925     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26928 declare var SVGTextPositioningElement: {
26929     prototype: SVGTextPositioningElement;
26930     new(): SVGTextPositioningElement;
26931     isInstance(obj): obj is SVGTextPositioningElement;
26935  * Corresponds to the <title> element.
26937  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTitleElement)
26938  */
26939 interface SVGTitleElement extends SVGElement {
26940     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTitleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
26941     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
26942     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTitleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
26943     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
26946 declare var SVGTitleElement: {
26947     prototype: SVGTitleElement;
26948     new(): SVGTitleElement;
26949     isInstance(obj): obj is SVGTitleElement;
26953  * SVGTransform is the interface for one of the component transformations within an SVGTransformList; thus, an SVGTransform object corresponds to a single component (e.g., scale(…) or matrix(…)) within a transform attribute.
26955  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTransform)
26956  */
26957 interface SVGTransform {
26958     readonly angle: number;
26959     readonly matrix: SVGMatrix;
26960     readonly type: number;
26961     setMatrix(matrix?: DOMMatrix2DInit): void;
26962     setRotate(angle: number, cx: number, cy: number): void;
26963     setScale(sx: number, sy: number): void;
26964     setSkewX(angle: number): void;
26965     setSkewY(angle: number): void;
26966     setTranslate(tx: number, ty: number): void;
26967     readonly SVG_TRANSFORM_UNKNOWN: 0;
26968     readonly SVG_TRANSFORM_MATRIX: 1;
26969     readonly SVG_TRANSFORM_TRANSLATE: 2;
26970     readonly SVG_TRANSFORM_SCALE: 3;
26971     readonly SVG_TRANSFORM_ROTATE: 4;
26972     readonly SVG_TRANSFORM_SKEWX: 5;
26973     readonly SVG_TRANSFORM_SKEWY: 6;
26976 declare var SVGTransform: {
26977     prototype: SVGTransform;
26978     new(): SVGTransform;
26979     readonly SVG_TRANSFORM_UNKNOWN: 0;
26980     readonly SVG_TRANSFORM_MATRIX: 1;
26981     readonly SVG_TRANSFORM_TRANSLATE: 2;
26982     readonly SVG_TRANSFORM_SCALE: 3;
26983     readonly SVG_TRANSFORM_ROTATE: 4;
26984     readonly SVG_TRANSFORM_SKEWX: 5;
26985     readonly SVG_TRANSFORM_SKEWY: 6;
26986     isInstance(obj): obj is SVGTransform;
26990  * The SVGTransformList defines a list of SVGTransform objects.
26992  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTransformList)
26993  */
26994 interface SVGTransformList {
26995     readonly length: number;
26996     readonly numberOfItems: number;
26997     appendItem(newItem: SVGTransform): SVGTransform;
26998     clear(): void;
26999     consolidate(): SVGTransform | null;
27000     createSVGTransformFromMatrix(matrix?: DOMMatrix2DInit): SVGTransform;
27001     getItem(index: number): SVGTransform;
27002     initialize(newItem: SVGTransform): SVGTransform;
27003     insertItemBefore(newItem: SVGTransform, index: number): SVGTransform;
27004     removeItem(index: number): SVGTransform;
27005     replaceItem(newItem: SVGTransform, index: number): SVGTransform;
27006     [index: number]: SVGTransform;
27009 declare var SVGTransformList: {
27010     prototype: SVGTransformList;
27011     new(): SVGTransformList;
27012     isInstance(obj): obj is SVGTransformList;
27015 interface SVGURIReference {
27016     readonly href: SVGAnimatedString;
27020  * A commonly used set of constants used for reflecting gradientUnits, patternContentUnits and other similar attributes.
27022  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGUnitTypes)
27023  */
27024 interface SVGUnitTypes {
27025     readonly SVG_UNIT_TYPE_UNKNOWN: 0;
27026     readonly SVG_UNIT_TYPE_USERSPACEONUSE: 1;
27027     readonly SVG_UNIT_TYPE_OBJECTBOUNDINGBOX: 2;
27030 declare var SVGUnitTypes: {
27031     prototype: SVGUnitTypes;
27032     new(): SVGUnitTypes;
27033     readonly SVG_UNIT_TYPE_UNKNOWN: 0;
27034     readonly SVG_UNIT_TYPE_USERSPACEONUSE: 1;
27035     readonly SVG_UNIT_TYPE_OBJECTBOUNDINGBOX: 2;
27036     isInstance(obj): obj is SVGUnitTypes;
27040  * Corresponds to the <use> element.
27042  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGUseElement)
27043  */
27044 interface SVGUseElement extends SVGGraphicsElement, SVGURIReference {
27045     readonly height: SVGAnimatedLength;
27046     readonly width: SVGAnimatedLength;
27047     readonly x: SVGAnimatedLength;
27048     readonly y: SVGAnimatedLength;
27049     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGUseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27050     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27051     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGUseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27052     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27055 declare var SVGUseElement: {
27056     prototype: SVGUseElement;
27057     new(): SVGUseElement;
27058     isInstance(obj): obj is SVGUseElement;
27062  * Provides access to the properties of <view> elements, as well as methods to manipulate them.
27064  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGViewElement)
27065  */
27066 interface SVGViewElement extends SVGElement, SVGFitToViewBox, SVGZoomAndPan {
27067     addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGViewElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27068     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27069     removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGViewElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27070     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27073 declare var SVGViewElement: {
27074     prototype: SVGViewElement;
27075     new(): SVGViewElement;
27076     readonly SVG_ZOOMANDPAN_UNKNOWN: 0;
27077     readonly SVG_ZOOMANDPAN_DISABLE: 1;
27078     readonly SVG_ZOOMANDPAN_MAGNIFY: 2;
27079     isInstance(obj): obj is SVGViewElement;
27082 interface SVGZoomAndPan {
27083     zoomAndPan: number;
27084     readonly SVG_ZOOMANDPAN_UNKNOWN: 0;
27085     readonly SVG_ZOOMANDPAN_DISABLE: 1;
27086     readonly SVG_ZOOMANDPAN_MAGNIFY: 2;
27090  * Available only in secure contexts.
27092  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Sanitizer)
27093  */
27094 interface Sanitizer {
27095     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Sanitizer/sanitize) */
27096     sanitize(input: SanitizerInput): DocumentFragment;
27099 declare var Sanitizer: {
27100     prototype: Sanitizer;
27101     new(sanitizerConfig?: SanitizerConfig): Sanitizer;
27102     isInstance(obj): obj is Sanitizer;
27105 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Scheduler) */
27106 interface Scheduler {
27107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Scheduler/postTask) */
27108     postTask(callback: SchedulerPostTaskCallback, options?: SchedulerPostTaskOptions): Promise<any>;
27111 declare var Scheduler: {
27112     prototype: Scheduler;
27113     new(): Scheduler;
27114     isInstance(obj): obj is Scheduler;
27117 interface ScreenEventMap {
27118     "change": Event;
27119     "mozorientationchange": Event;
27123  * A screen, usually the one on which the current window is being rendered, and is obtained using window.screen.
27125  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen)
27126  */
27127 interface Screen extends EventTarget {
27128     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/availHeight) */
27129     readonly availHeight: number;
27130     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/availLeft) */
27131     readonly availLeft: number;
27132     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/availTop) */
27133     readonly availTop: number;
27134     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/availWidth) */
27135     readonly availWidth: number;
27136     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/colorDepth) */
27137     readonly colorDepth: number;
27138     readonly colorGamut: ScreenColorGamut;
27139     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/height) */
27140     readonly height: number;
27141     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/left) */
27142     readonly left: number;
27143     readonly luminance: ScreenLuminance | null;
27144     /**
27145      * @deprecated This is a legacy alias of `orientation`.
27146      *
27147      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/orientation)
27148      */
27149     readonly mozOrientation: string;
27150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/change_event) */
27151     onchange: ((this: Screen, ev: Event) => any) | null;
27152     /**
27153      * @deprecated This is a legacy alias of `onorientationchange`.
27154      *
27155      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/orientationchange_event)
27156      */
27157     onmozorientationchange: ((this: Screen, ev: Event) => any) | null;
27158     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/orientation) */
27159     readonly orientation: ScreenOrientation;
27160     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/pixelDepth) */
27161     readonly pixelDepth: number;
27162     /**
27163      * @deprecated
27164      *
27165      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/top)
27166      */
27167     readonly top: number;
27168     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/width) */
27169     readonly width: number;
27170     /**
27171      * @deprecated This is a legacy alias of `lockOrientation`.
27172      *
27173      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/lockOrientation)
27174      */
27175     mozLockOrientation(orientation: string): boolean;
27176     mozLockOrientation(orientation: string[]): boolean;
27177     /**
27178      * @deprecated This is a legacy alias of `unlockOrientation`.
27179      *
27180      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/unlockOrientation)
27181      */
27182     mozUnlockOrientation(): void;
27183     addEventListener<K extends keyof ScreenEventMap>(type: K, listener: (this: Screen, ev: ScreenEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27184     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27185     removeEventListener<K extends keyof ScreenEventMap>(type: K, listener: (this: Screen, ev: ScreenEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27186     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27189 declare var Screen: {
27190     prototype: Screen;
27191     new(): Screen;
27192     isInstance(obj): obj is Screen;
27195 interface ScreenLuminance {
27196     readonly max: number;
27197     readonly maxAverage: number;
27198     readonly min: number;
27201 declare var ScreenLuminance: {
27202     prototype: ScreenLuminance;
27203     new(): ScreenLuminance;
27204     isInstance(obj): obj is ScreenLuminance;
27207 interface ScreenOrientationEventMap {
27208     "change": Event;
27211 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation) */
27212 interface ScreenOrientation extends EventTarget {
27213     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/angle) */
27214     readonly angle: number;
27215     onchange: ((this: ScreenOrientation, ev: Event) => any) | null;
27216     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/type) */
27217     readonly type: OrientationType;
27218     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/lock) */
27219     lock(orientation: OrientationLockType): Promise<void>;
27220     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/unlock) */
27221     unlock(): void;
27222     addEventListener<K extends keyof ScreenOrientationEventMap>(type: K, listener: (this: ScreenOrientation, ev: ScreenOrientationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27223     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27224     removeEventListener<K extends keyof ScreenOrientationEventMap>(type: K, listener: (this: ScreenOrientation, ev: ScreenOrientationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27225     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27228 declare var ScreenOrientation: {
27229     prototype: ScreenOrientation;
27230     new(): ScreenOrientation;
27231     isInstance(obj): obj is ScreenOrientation;
27234 interface ScriptProcessorNodeEventMap {
27235     "audioprocess": Event;
27239  * Allows the generation, processing, or analyzing of audio using JavaScript.
27240  * @deprecated As of the August 29 2014 Web Audio API spec publication, this feature has been marked as deprecated, and was replaced by AudioWorklet (see AudioWorkletNode).
27242  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScriptProcessorNode)
27243  */
27244 interface ScriptProcessorNode extends AudioNode, AudioNodePassThrough {
27245     /**
27246      * @deprecated
27247      *
27248      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScriptProcessorNode/bufferSize)
27249      */
27250     readonly bufferSize: number;
27251     /**
27252      * @deprecated
27253      *
27254      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScriptProcessorNode/audioprocess_event)
27255      */
27256     onaudioprocess: ((this: ScriptProcessorNode, ev: Event) => any) | null;
27257     addEventListener<K extends keyof ScriptProcessorNodeEventMap>(type: K, listener: (this: ScriptProcessorNode, ev: ScriptProcessorNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27258     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27259     removeEventListener<K extends keyof ScriptProcessorNodeEventMap>(type: K, listener: (this: ScriptProcessorNode, ev: ScriptProcessorNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27260     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27263 /** @deprecated */
27264 declare var ScriptProcessorNode: {
27265     prototype: ScriptProcessorNode;
27266     new(): ScriptProcessorNode;
27267     isInstance(obj): obj is ScriptProcessorNode;
27270 interface ScrollAreaEvent extends UIEvent {
27271     readonly height: number;
27272     readonly width: number;
27273     readonly x: number;
27274     readonly y: number;
27275     initScrollAreaEvent(type: string, canBubble?: boolean, cancelable?: boolean, view?: Window | null, detail?: number, x?: number, y?: number, width?: number, height?: number): void;
27278 declare var ScrollAreaEvent: {
27279     prototype: ScrollAreaEvent;
27280     new(): ScrollAreaEvent;
27281     isInstance(obj): obj is ScrollAreaEvent;
27284 interface ScrollViewChangeEvent extends Event {
27285     readonly state: ScrollState;
27288 declare var ScrollViewChangeEvent: {
27289     prototype: ScrollViewChangeEvent;
27290     new(type: string, eventInit?: ScrollViewChangeEventInit): ScrollViewChangeEvent;
27291     isInstance(obj): obj is ScrollViewChangeEvent;
27295  * Inherits from Event, and represents the event object of an event sent on a document or worker when its content security policy is violated.
27297  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent)
27298  */
27299 interface SecurityPolicyViolationEvent extends Event {
27300     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/blockedURI) */
27301     readonly blockedURI: string;
27302     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/columnNumber) */
27303     readonly columnNumber: number;
27304     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/disposition) */
27305     readonly disposition: SecurityPolicyViolationEventDisposition;
27306     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/documentURI) */
27307     readonly documentURI: string;
27308     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/effectiveDirective) */
27309     readonly effectiveDirective: string;
27310     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/lineNumber) */
27311     readonly lineNumber: number;
27312     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/originalPolicy) */
27313     readonly originalPolicy: string;
27314     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/referrer) */
27315     readonly referrer: string;
27316     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/sample) */
27317     readonly sample: string;
27318     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/sourceFile) */
27319     readonly sourceFile: string;
27320     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/statusCode) */
27321     readonly statusCode: number;
27322     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/violatedDirective) */
27323     readonly violatedDirective: string;
27326 declare var SecurityPolicyViolationEvent: {
27327     prototype: SecurityPolicyViolationEvent;
27328     new(type: string, eventInitDict?: SecurityPolicyViolationEventInit): SecurityPolicyViolationEvent;
27329     isInstance(obj): obj is SecurityPolicyViolationEvent;
27333  * A Selection object represents the range of text selected by the user or the current position of the caret. To obtain a Selection object for examination or modification, call Window.getSelection().
27335  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection)
27336  */
27337 interface Selection {
27338     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/anchorNode) */
27339     readonly anchorNode: Node | null;
27340     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/anchorOffset) */
27341     readonly anchorOffset: number;
27342     caretBidiLevel: number | null;
27343     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/focusNode) */
27344     readonly focusNode: Node | null;
27345     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/focusOffset) */
27346     readonly focusOffset: number;
27347     interlinePosition: boolean;
27348     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/isCollapsed) */
27349     readonly isCollapsed: boolean;
27350     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/rangeCount) */
27351     readonly rangeCount: number;
27352     readonly selectionType: number;
27353     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/type) */
27354     readonly type: string;
27355     GetRangesForInterval(beginNode: Node, beginOffset: number, endNode: Node, endOffset: number, allowAdjacent: boolean): Range[];
27356     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/addRange) */
27357     addRange(range: Range): void;
27358     addSelectionListener(newListener: nsISelectionListener): void;
27359     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapse) */
27360     collapse(node: Node | null, offset?: number): void;
27361     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapseToEnd) */
27362     collapseToEnd(): void;
27363     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapseToStart) */
27364     collapseToStart(): void;
27365     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/containsNode) */
27366     containsNode(node: Node, allowPartialContainment?: boolean): boolean;
27367     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/deleteFromDocument) */
27368     deleteFromDocument(): void;
27369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/removeAllRanges) */
27370     empty(): void;
27371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/extend) */
27372     extend(node: Node, offset?: number): void;
27373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/getRangeAt) */
27374     getRangeAt(index: number): Range;
27375     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/modify) */
27376     modify(alter: string, direction: string, granularity: string): void;
27377     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/removeAllRanges) */
27378     removeAllRanges(): void;
27379     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/removeRange) */
27380     removeRange(range: Range): void;
27381     removeSelectionListener(listenerToRemove: nsISelectionListener): void;
27382     resetColors(): void;
27383     scrollIntoView(aRegion: number, aIsSynchronous: boolean, aVPercent: number, aHPercent: number): void;
27384     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/selectAllChildren) */
27385     selectAllChildren(node: Node): void;
27386     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/setBaseAndExtent) */
27387     setBaseAndExtent(anchorNode: Node, anchorOffset: number, focusNode: Node, focusOffset: number): void;
27388     setColors(aForegroundColor: string, aBackgroundColor: string, aAltForegroundColor: string, aAltBackgroundColor: string): void;
27389     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapse) */
27390     setPosition(node: Node | null, offset?: number): void;
27391     toStringWithFormat(formatType: string, flags: number, wrapColumn: number): string;
27392     toString(): string;
27395 declare var Selection: {
27396     prototype: Selection;
27397     new(): Selection;
27398     isInstance(obj): obj is Selection;
27401 interface ServiceWorkerEventMap extends AbstractWorkerEventMap {
27402     "statechange": Event;
27406  * This ServiceWorker API interface provides a reference to a service worker. Multiple browsing contexts (e.g. pages, workers, etc.) can be associated with the same service worker, each through a unique ServiceWorker object.
27408  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker)
27409  */
27410 interface ServiceWorker extends EventTarget, AbstractWorker {
27411     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/statechange_event) */
27412     onstatechange: ((this: ServiceWorker, ev: Event) => any) | null;
27413     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/scriptURL) */
27414     readonly scriptURL: string;
27415     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/state) */
27416     readonly state: ServiceWorkerState;
27417     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/postMessage) */
27418     postMessage(message: any, transferable: any[]): void;
27419     postMessage(message: any, options?: StructuredSerializeOptions): void;
27420     addEventListener<K extends keyof ServiceWorkerEventMap>(type: K, listener: (this: ServiceWorker, ev: ServiceWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27421     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27422     removeEventListener<K extends keyof ServiceWorkerEventMap>(type: K, listener: (this: ServiceWorker, ev: ServiceWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27423     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27426 declare var ServiceWorker: {
27427     prototype: ServiceWorker;
27428     new(): ServiceWorker;
27429     isInstance(obj): obj is ServiceWorker;
27432 interface ServiceWorkerContainerEventMap {
27433     "controllerchange": Event;
27434     "message": Event;
27435     "messageerror": Event;
27439  * The ServiceWorkerContainer interface of the ServiceWorker API provides an object representing the service worker as an overall unit in the network ecosystem, including facilities to register, unregister and update service workers, and access the state of service workers and their registrations.
27441  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer)
27442  */
27443 interface ServiceWorkerContainer extends EventTarget {
27444     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/controller) */
27445     readonly controller: ServiceWorker | null;
27446     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/controllerchange_event) */
27447     oncontrollerchange: ((this: ServiceWorkerContainer, ev: Event) => any) | null;
27448     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/message_event) */
27449     onmessage: ((this: ServiceWorkerContainer, ev: Event) => any) | null;
27450     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/messageerror_event) */
27451     onmessageerror: ((this: ServiceWorkerContainer, ev: Event) => any) | null;
27452     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/ready) */
27453     readonly ready: Promise<ServiceWorkerRegistration>;
27454     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistration) */
27455     getRegistration(documentURL?: string | URL): Promise<ServiceWorkerRegistration | undefined>;
27456     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistrations) */
27457     getRegistrations(): Promise<ServiceWorkerRegistration[]>;
27458     getScopeForUrl(url: string): string;
27459     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/register) */
27460     register(scriptURL: string | URL, options?: RegistrationOptions): Promise<ServiceWorkerRegistration>;
27461     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/startMessages) */
27462     startMessages(): void;
27463     addEventListener<K extends keyof ServiceWorkerContainerEventMap>(type: K, listener: (this: ServiceWorkerContainer, ev: ServiceWorkerContainerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27464     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27465     removeEventListener<K extends keyof ServiceWorkerContainerEventMap>(type: K, listener: (this: ServiceWorkerContainer, ev: ServiceWorkerContainerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27466     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27469 declare var ServiceWorkerContainer: {
27470     prototype: ServiceWorkerContainer;
27471     new(): ServiceWorkerContainer;
27472     isInstance(obj): obj is ServiceWorkerContainer;
27475 interface ServiceWorkerGlobalScopeEventMap extends WorkerGlobalScopeEventMap {
27476     "activate": Event;
27477     "fetch": Event;
27478     "install": Event;
27479     "message": Event;
27480     "messageerror": Event;
27481     "notificationclick": Event;
27482     "notificationclose": Event;
27483     "push": Event;
27484     "pushsubscriptionchange": Event;
27488  * This ServiceWorker API interface represents the global execution context of a service worker.
27490  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope)
27491  */
27492 interface ServiceWorkerGlobalScope extends WorkerGlobalScope, ExtensionGlobalsMixin {
27493     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/clients) */
27494     readonly clients: Clients;
27495     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/activate_event) */
27496     onactivate: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27497     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/fetch_event) */
27498     onfetch: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27499     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/install_event) */
27500     oninstall: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27501     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/message_event) */
27502     onmessage: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27503     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/messageerror_event) */
27504     onmessageerror: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27505     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/notificationclick_event) */
27506     onnotificationclick: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/notificationclose_event) */
27508     onnotificationclose: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/push_event) */
27510     onpush: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/pushsubscriptionchange_event) */
27512     onpushsubscriptionchange: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
27513     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/registration) */
27514     readonly registration: ServiceWorkerRegistration;
27515     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/skipWaiting) */
27516     skipWaiting(): Promise<void>;
27517     addEventListener<K extends keyof ServiceWorkerGlobalScopeEventMap>(type: K, listener: (this: ServiceWorkerGlobalScope, ev: ServiceWorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27518     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27519     removeEventListener<K extends keyof ServiceWorkerGlobalScopeEventMap>(type: K, listener: (this: ServiceWorkerGlobalScope, ev: ServiceWorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27520     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27523 declare var ServiceWorkerGlobalScope: {
27524     prototype: ServiceWorkerGlobalScope;
27525     new(): ServiceWorkerGlobalScope;
27526     isInstance(obj): obj is ServiceWorkerGlobalScope;
27529 interface ServiceWorkerRegistrationEventMap {
27530     "updatefound": Event;
27534  * This ServiceWorker API interface represents the service worker registration. You register a service worker to control one or more pages that share the same origin.
27536  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration)
27537  */
27538 interface ServiceWorkerRegistration extends EventTarget {
27539     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/active) */
27540     readonly active: ServiceWorker | null;
27541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/installing) */
27542     readonly installing: ServiceWorker | null;
27543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/navigationPreload) */
27544     readonly navigationPreload: NavigationPreloadManager;
27545     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/updatefound_event) */
27546     onupdatefound: ((this: ServiceWorkerRegistration, ev: Event) => any) | null;
27547     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/pushManager) */
27548     readonly pushManager: PushManager;
27549     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/scope) */
27550     readonly scope: string;
27551     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/updateViaCache) */
27552     readonly updateViaCache: ServiceWorkerUpdateViaCache;
27553     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/waiting) */
27554     readonly waiting: ServiceWorker | null;
27555     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/getNotifications) */
27556     getNotifications(filter?: GetNotificationOptions): Promise<Notification[]>;
27557     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/showNotification) */
27558     showNotification(title: string, options?: NotificationOptions): Promise<void>;
27559     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/unregister) */
27560     unregister(): Promise<boolean>;
27561     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/update) */
27562     update(): Promise<void>;
27563     addEventListener<K extends keyof ServiceWorkerRegistrationEventMap>(type: K, listener: (this: ServiceWorkerRegistration, ev: ServiceWorkerRegistrationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27564     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27565     removeEventListener<K extends keyof ServiceWorkerRegistrationEventMap>(type: K, listener: (this: ServiceWorkerRegistration, ev: ServiceWorkerRegistrationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27566     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27569 declare var ServiceWorkerRegistration: {
27570     prototype: ServiceWorkerRegistration;
27571     new(): ServiceWorkerRegistration;
27572     isInstance(obj): obj is ServiceWorkerRegistration;
27575 interface SessionStoreFormData {
27576     readonly children: (SessionStoreFormData | null)[] | null;
27577     readonly id: Record<string, FormDataValue> | null;
27578     readonly innerHTML: string | null;
27579     readonly url: string | null;
27580     readonly xpath: Record<string, FormDataValue> | null;
27581     toJSON(): any;
27584 declare var SessionStoreFormData: {
27585     prototype: SessionStoreFormData;
27586     new(): SessionStoreFormData;
27587     isInstance(obj): obj is SessionStoreFormData;
27590 interface SessionStoreScrollData {
27591     readonly children: (SessionStoreScrollData | null)[] | null;
27592     readonly scroll: string | null;
27593     toJSON(): any;
27596 declare var SessionStoreScrollData: {
27597     prototype: SessionStoreScrollData;
27598     new(): SessionStoreScrollData;
27599     isInstance(obj): obj is SessionStoreScrollData;
27602 interface ShadowRealmGlobalScope {
27605 interface ShadowRootEventMap {
27606     "slotchange": Event;
27609 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot) */
27610 interface ShadowRoot extends DocumentFragment, DocumentOrShadowRoot {
27611     readonly clonable: boolean;
27612     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/delegatesFocus) */
27613     readonly delegatesFocus: boolean;
27614     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/host) */
27615     readonly host: Element;
27616     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/innerHTML) */
27617     innerHTML: string;
27618     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/mode) */
27619     readonly mode: ShadowRootMode;
27620     onslotchange: ((this: ShadowRoot, ev: Event) => any) | null;
27621     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/slotAssignment) */
27622     readonly slotAssignment: SlotAssignmentMode;
27623     /** Throws a "NotSupportedError" DOMException if context object is a shadow root. */
27624     createElementAndAppendChildAt(parentNode: Node, localName: string): Node;
27625     getElementById(elementId: string): Element | null;
27626     importNodeAndAppendChildAt(parentNode: Node, node: Node, deep?: boolean): Node;
27627     isUAWidget(): boolean;
27628     setHTMLUnsafe(html: string): void;
27629     setIsUAWidget(): void;
27630     addEventListener<K extends keyof ShadowRootEventMap>(type: K, listener: (this: ShadowRoot, ev: ShadowRootEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27631     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27632     removeEventListener<K extends keyof ShadowRootEventMap>(type: K, listener: (this: ShadowRoot, ev: ShadowRootEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27633     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27636 declare var ShadowRoot: {
27637     prototype: ShadowRoot;
27638     new(): ShadowRoot;
27639     isInstance(obj): obj is ShadowRoot;
27642 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorker) */
27643 interface SharedWorker extends EventTarget, AbstractWorker {
27644     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorker/port) */
27645     readonly port: MessagePort;
27646     addEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: SharedWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27647     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27648     removeEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: SharedWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27649     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27652 declare var SharedWorker: {
27653     prototype: SharedWorker;
27654     new(scriptURL: string | URL, options?: string | WorkerOptions): SharedWorker;
27655     isInstance(obj): obj is SharedWorker;
27658 interface SharedWorkerGlobalScopeEventMap extends WorkerGlobalScopeEventMap {
27659     "connect": Event;
27662 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope) */
27663 interface SharedWorkerGlobalScope extends WorkerGlobalScope {
27664     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope/name) */
27665     readonly name: string;
27666     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope/connect_event) */
27667     onconnect: ((this: SharedWorkerGlobalScope, ev: Event) => any) | null;
27668     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope/close) */
27669     close(): void;
27670     addEventListener<K extends keyof SharedWorkerGlobalScopeEventMap>(type: K, listener: (this: SharedWorkerGlobalScope, ev: SharedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27671     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27672     removeEventListener<K extends keyof SharedWorkerGlobalScopeEventMap>(type: K, listener: (this: SharedWorkerGlobalScope, ev: SharedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27673     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27676 declare var SharedWorkerGlobalScope: {
27677     prototype: SharedWorkerGlobalScope;
27678     new(): SharedWorkerGlobalScope;
27679     isInstance(obj): obj is SharedWorkerGlobalScope;
27682 interface SimpleGestureEvent extends MouseEvent {
27683     allowedDirections: number;
27684     readonly clickCount: number;
27685     readonly delta: number;
27686     readonly direction: number;
27687     initSimpleGestureEvent(typeArg: string, canBubbleArg?: boolean, cancelableArg?: boolean, viewArg?: Window | null, detailArg?: number, screenXArg?: number, screenYArg?: number, clientXArg?: number, clientYArg?: number, ctrlKeyArg?: boolean, altKeyArg?: boolean, shiftKeyArg?: boolean, metaKeyArg?: boolean, buttonArg?: number, relatedTargetArg?: EventTarget | null, allowedDirectionsArg?: number, directionArg?: number, deltaArg?: number, clickCount?: number): void;
27688     readonly DIRECTION_UP: 1;
27689     readonly DIRECTION_DOWN: 2;
27690     readonly DIRECTION_LEFT: 4;
27691     readonly DIRECTION_RIGHT: 8;
27692     readonly ROTATION_COUNTERCLOCKWISE: 1;
27693     readonly ROTATION_CLOCKWISE: 2;
27696 declare var SimpleGestureEvent: {
27697     prototype: SimpleGestureEvent;
27698     new(): SimpleGestureEvent;
27699     readonly DIRECTION_UP: 1;
27700     readonly DIRECTION_DOWN: 2;
27701     readonly DIRECTION_LEFT: 4;
27702     readonly DIRECTION_RIGHT: 8;
27703     readonly ROTATION_COUNTERCLOCKWISE: 1;
27704     readonly ROTATION_CLOCKWISE: 2;
27705     isInstance(obj): obj is SimpleGestureEvent;
27708 interface SourceBufferEventMap {
27709     "abort": Event;
27710     "error": ErrorEvent;
27711     "update": Event;
27712     "updateend": Event;
27713     "updatestart": Event;
27717  * A chunk of media to be passed into an HTMLMediaElement and played, via a MediaSource object. This can be made up of one or several media segments.
27719  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer)
27720  */
27721 interface SourceBuffer extends EventTarget {
27722     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowEnd) */
27723     appendWindowEnd: number;
27724     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowStart) */
27725     appendWindowStart: number;
27726     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/buffered) */
27727     readonly buffered: TimeRanges;
27728     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/mode) */
27729     mode: SourceBufferAppendMode;
27730     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/abort_event) */
27731     onabort: ((this: SourceBuffer, ev: Event) => any) | null;
27732     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/error_event) */
27733     onerror: OnErrorEventHandler;
27734     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/update_event) */
27735     onupdate: ((this: SourceBuffer, ev: Event) => any) | null;
27736     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/updateend_event) */
27737     onupdateend: ((this: SourceBuffer, ev: Event) => any) | null;
27738     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/updatestart_event) */
27739     onupdatestart: ((this: SourceBuffer, ev: Event) => any) | null;
27740     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/timestampOffset) */
27741     timestampOffset: number;
27742     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/updating) */
27743     readonly updating: boolean;
27744     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/abort) */
27745     abort(): void;
27746     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendBuffer) */
27747     appendBuffer(data: ArrayBuffer): void;
27748     appendBuffer(data: ArrayBufferView): void;
27749     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendBufferAsync) */
27750     appendBufferAsync(data: ArrayBuffer): Promise<void>;
27751     appendBufferAsync(data: ArrayBufferView): Promise<void>;
27752     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/changeType) */
27753     changeType(type: string): void;
27754     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/remove) */
27755     remove(start: number, end: number): void;
27756     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/removeAsync) */
27757     removeAsync(start: number, end: number): Promise<void>;
27758     addEventListener<K extends keyof SourceBufferEventMap>(type: K, listener: (this: SourceBuffer, ev: SourceBufferEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27759     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27760     removeEventListener<K extends keyof SourceBufferEventMap>(type: K, listener: (this: SourceBuffer, ev: SourceBufferEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27761     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27764 declare var SourceBuffer: {
27765     prototype: SourceBuffer;
27766     new(): SourceBuffer;
27767     isInstance(obj): obj is SourceBuffer;
27770 interface SourceBufferListEventMap {
27771     "addsourcebuffer": Event;
27772     "removesourcebuffer": Event;
27776  * A simple container list for multiple SourceBuffer objects.
27778  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList)
27779  */
27780 interface SourceBufferList extends EventTarget {
27781     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList/length) */
27782     readonly length: number;
27783     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList/addsourcebuffer_event) */
27784     onaddsourcebuffer: ((this: SourceBufferList, ev: Event) => any) | null;
27785     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList/removesourcebuffer_event) */
27786     onremovesourcebuffer: ((this: SourceBufferList, ev: Event) => any) | null;
27787     addEventListener<K extends keyof SourceBufferListEventMap>(type: K, listener: (this: SourceBufferList, ev: SourceBufferListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27788     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27789     removeEventListener<K extends keyof SourceBufferListEventMap>(type: K, listener: (this: SourceBufferList, ev: SourceBufferListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27790     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27791     [index: number]: SourceBuffer;
27794 declare var SourceBufferList: {
27795     prototype: SourceBufferList;
27796     new(): SourceBufferList;
27797     isInstance(obj): obj is SourceBufferList;
27800 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammar) */
27801 interface SpeechGrammar {
27802     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammar/src) */
27803     src: string;
27804     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammar/weight) */
27805     weight: number;
27808 declare var SpeechGrammar: {
27809     prototype: SpeechGrammar;
27810     new(): SpeechGrammar;
27811     isInstance(obj): obj is SpeechGrammar;
27814 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammarList) */
27815 interface SpeechGrammarList {
27816     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammarList/length) */
27817     readonly length: number;
27818     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammarList/addFromString) */
27819     addFromString(string: string, weight?: number): void;
27820     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammarList/addFromURI) */
27821     addFromURI(src: string, weight?: number): void;
27822     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechGrammarList/item) */
27823     item(index: number): SpeechGrammar;
27824     [index: number]: SpeechGrammar;
27827 declare var SpeechGrammarList: {
27828     prototype: SpeechGrammarList;
27829     new(): SpeechGrammarList;
27830     isInstance(obj): obj is SpeechGrammarList;
27833 interface SpeechRecognitionEventMap {
27834     "audioend": Event;
27835     "audiostart": Event;
27836     "end": Event;
27837     "error": ErrorEvent;
27838     "nomatch": Event;
27839     "result": Event;
27840     "soundend": Event;
27841     "soundstart": Event;
27842     "speechend": Event;
27843     "speechstart": Event;
27844     "start": Event;
27847 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition) */
27848 interface SpeechRecognition extends EventTarget {
27849     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/continuous) */
27850     continuous: boolean;
27851     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/grammars) */
27852     grammars: SpeechGrammarList;
27853     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/interimResults) */
27854     interimResults: boolean;
27855     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/lang) */
27856     lang: string;
27857     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/maxAlternatives) */
27858     maxAlternatives: number;
27859     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/audioend_event) */
27860     onaudioend: ((this: SpeechRecognition, ev: Event) => any) | null;
27861     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/audiostart_event) */
27862     onaudiostart: ((this: SpeechRecognition, ev: Event) => any) | null;
27863     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/end_event) */
27864     onend: ((this: SpeechRecognition, ev: Event) => any) | null;
27865     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/error_event) */
27866     onerror: OnErrorEventHandler;
27867     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/nomatch_event) */
27868     onnomatch: ((this: SpeechRecognition, ev: Event) => any) | null;
27869     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/result_event) */
27870     onresult: ((this: SpeechRecognition, ev: Event) => any) | null;
27871     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/soundend_event) */
27872     onsoundend: ((this: SpeechRecognition, ev: Event) => any) | null;
27873     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/soundstart_event) */
27874     onsoundstart: ((this: SpeechRecognition, ev: Event) => any) | null;
27875     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/speechend_event) */
27876     onspeechend: ((this: SpeechRecognition, ev: Event) => any) | null;
27877     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/speechstart_event) */
27878     onspeechstart: ((this: SpeechRecognition, ev: Event) => any) | null;
27879     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/start_event) */
27880     onstart: ((this: SpeechRecognition, ev: Event) => any) | null;
27881     serviceURI: string;
27882     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/abort) */
27883     abort(): void;
27884     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/start) */
27885     start(stream?: MediaStream): void;
27886     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognition/stop) */
27887     stop(): void;
27888     addEventListener<K extends keyof SpeechRecognitionEventMap>(type: K, listener: (this: SpeechRecognition, ev: SpeechRecognitionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
27889     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
27890     removeEventListener<K extends keyof SpeechRecognitionEventMap>(type: K, listener: (this: SpeechRecognition, ev: SpeechRecognitionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
27891     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
27894 declare var SpeechRecognition: {
27895     prototype: SpeechRecognition;
27896     new(): SpeechRecognition;
27897     isInstance(obj): obj is SpeechRecognition;
27900 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionAlternative) */
27901 interface SpeechRecognitionAlternative {
27902     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionAlternative/confidence) */
27903     readonly confidence: number;
27904     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionAlternative/transcript) */
27905     readonly transcript: string;
27908 declare var SpeechRecognitionAlternative: {
27909     prototype: SpeechRecognitionAlternative;
27910     new(): SpeechRecognitionAlternative;
27911     isInstance(obj): obj is SpeechRecognitionAlternative;
27914 interface SpeechRecognitionError extends Event {
27915     "error": ErrorEvent;
27916     readonly message: string | null;
27919 declare var SpeechRecognitionError: {
27920     prototype: SpeechRecognitionError;
27921     new(type: string, eventInitDict?: SpeechRecognitionErrorInit): SpeechRecognitionError;
27922     isInstance(obj): obj is SpeechRecognitionError;
27925 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionEvent) */
27926 interface SpeechRecognitionEvent extends Event {
27927     /**
27928      * @deprecated
27929      *
27930      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionEvent/emma)
27931      */
27932     readonly emma: Document | null;
27933     /**
27934      * @deprecated
27935      *
27936      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionEvent/interpretation)
27937      */
27938     readonly interpretation: any;
27939     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionEvent/resultIndex) */
27940     readonly resultIndex: number;
27941     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionEvent/results) */
27942     readonly results: SpeechRecognitionResultList | null;
27945 declare var SpeechRecognitionEvent: {
27946     prototype: SpeechRecognitionEvent;
27947     new(type: string, eventInitDict?: SpeechRecognitionEventInit): SpeechRecognitionEvent;
27948     isInstance(obj): obj is SpeechRecognitionEvent;
27951 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult) */
27952 interface SpeechRecognitionResult {
27953     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult/isFinal) */
27954     readonly isFinal: boolean;
27955     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult/length) */
27956     readonly length: number;
27957     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult/item) */
27958     item(index: number): SpeechRecognitionAlternative;
27959     [index: number]: SpeechRecognitionAlternative;
27962 declare var SpeechRecognitionResult: {
27963     prototype: SpeechRecognitionResult;
27964     new(): SpeechRecognitionResult;
27965     isInstance(obj): obj is SpeechRecognitionResult;
27968 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResultList) */
27969 interface SpeechRecognitionResultList {
27970     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResultList/length) */
27971     readonly length: number;
27972     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResultList/item) */
27973     item(index: number): SpeechRecognitionResult;
27974     [index: number]: SpeechRecognitionResult;
27977 declare var SpeechRecognitionResultList: {
27978     prototype: SpeechRecognitionResultList;
27979     new(): SpeechRecognitionResultList;
27980     isInstance(obj): obj is SpeechRecognitionResultList;
27983 interface SpeechSynthesisEventMap {
27984     "voiceschanged": Event;
27988  * This Web Speech API interface is the controller interface for the speech service; this can be used to retrieve information about the synthesis voices available on the device, start and pause speech, and other commands besides.
27990  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis)
27991  */
27992 interface SpeechSynthesis extends EventTarget {
27993     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/voiceschanged_event) */
27994     onvoiceschanged: ((this: SpeechSynthesis, ev: Event) => any) | null;
27995     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/paused) */
27996     readonly paused: boolean;
27997     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/pending) */
27998     readonly pending: boolean;
27999     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/speaking) */
28000     readonly speaking: boolean;
28001     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/cancel) */
28002     cancel(): void;
28003     forceEnd(): void;
28004     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/getVoices) */
28005     getVoices(): SpeechSynthesisVoice[];
28006     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/pause) */
28007     pause(): void;
28008     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/resume) */
28009     resume(): void;
28010     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/speak) */
28011     speak(utterance: SpeechSynthesisUtterance): void;
28012     addEventListener<K extends keyof SpeechSynthesisEventMap>(type: K, listener: (this: SpeechSynthesis, ev: SpeechSynthesisEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
28013     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
28014     removeEventListener<K extends keyof SpeechSynthesisEventMap>(type: K, listener: (this: SpeechSynthesis, ev: SpeechSynthesisEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
28015     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
28018 declare var SpeechSynthesis: {
28019     prototype: SpeechSynthesis;
28020     new(): SpeechSynthesis;
28021     isInstance(obj): obj is SpeechSynthesis;
28024 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisErrorEvent) */
28025 interface SpeechSynthesisErrorEvent extends SpeechSynthesisEvent {
28026     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisErrorEvent/error) */
28027     "error": ErrorEvent;
28030 declare var SpeechSynthesisErrorEvent: {
28031     prototype: SpeechSynthesisErrorEvent;
28032     new(type: string, eventInitDict: SpeechSynthesisErrorEventInit): SpeechSynthesisErrorEvent;
28033     isInstance(obj): obj is SpeechSynthesisErrorEvent;
28037  * This Web Speech API interface contains information about the current state of SpeechSynthesisUtterance objects that have been processed in the speech service.
28039  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent)
28040  */
28041 interface SpeechSynthesisEvent extends Event {
28042     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/charIndex) */
28043     readonly charIndex: number;
28044     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/charLength) */
28045     readonly charLength: number | null;
28046     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/elapsedTime) */
28047     readonly elapsedTime: number;
28048     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/name) */
28049     readonly name: string | null;
28050     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/utterance) */
28051     readonly utterance: SpeechSynthesisUtterance;
28054 declare var SpeechSynthesisEvent: {
28055     prototype: SpeechSynthesisEvent;
28056     new(type: string, eventInitDict: SpeechSynthesisEventInit): SpeechSynthesisEvent;
28057     isInstance(obj): obj is SpeechSynthesisEvent;
28060 interface SpeechSynthesisGetter {
28061     readonly speechSynthesis: SpeechSynthesis;
28064 interface SpeechSynthesisUtteranceEventMap {
28065     "boundary": Event;
28066     "end": Event;
28067     "error": ErrorEvent;
28068     "mark": Event;
28069     "pause": Event;
28070     "resume": Event;
28071     "start": Event;
28075  * This Web Speech API interface represents a speech request. It contains the content the speech service should read and information about how to read it (e.g. language, pitch and volume.)
28077  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance)
28078  */
28079 interface SpeechSynthesisUtterance extends EventTarget {
28080     readonly chosenVoiceURI: string;
28081     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/lang) */
28082     lang: string;
28083     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/boundary_event) */
28084     onboundary: ((this: SpeechSynthesisUtterance, ev: Event) => any) | null;
28085     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/end_event) */
28086     onend: ((this: SpeechSynthesisUtterance, ev: Event) => any) | null;
28087     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/error_event) */
28088     onerror: OnErrorEventHandler;
28089     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/mark_event) */
28090     onmark: ((this: SpeechSynthesisUtterance, ev: Event) => any) | null;
28091     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/pause_event) */
28092     onpause: ((this: SpeechSynthesisUtterance, ev: Event) => any) | null;
28093     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/resume_event) */
28094     onresume: ((this: SpeechSynthesisUtterance, ev: Event) => any) | null;
28095     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/start_event) */
28096     onstart: ((this: SpeechSynthesisUtterance, ev: Event) => any) | null;
28097     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/pitch) */
28098     pitch: number;
28099     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/rate) */
28100     rate: number;
28101     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/text) */
28102     text: string;
28103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/voice) */
28104     voice: SpeechSynthesisVoice | null;
28105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/volume) */
28106     volume: number;
28107     addEventListener<K extends keyof SpeechSynthesisUtteranceEventMap>(type: K, listener: (this: SpeechSynthesisUtterance, ev: SpeechSynthesisUtteranceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
28108     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
28109     removeEventListener<K extends keyof SpeechSynthesisUtteranceEventMap>(type: K, listener: (this: SpeechSynthesisUtterance, ev: SpeechSynthesisUtteranceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
28110     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
28113 declare var SpeechSynthesisUtterance: {
28114     prototype: SpeechSynthesisUtterance;
28115     new(): SpeechSynthesisUtterance;
28116     new(text: string): SpeechSynthesisUtterance;
28117     isInstance(obj): obj is SpeechSynthesisUtterance;
28121  * This Web Speech API interface represents a voice that the system supports. Every SpeechSynthesisVoice has its own relative speech service including information about language, name and URI.
28123  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice)
28124  */
28125 interface SpeechSynthesisVoice {
28126     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/default) */
28127     readonly default: boolean;
28128     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/lang) */
28129     readonly lang: string;
28130     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/localService) */
28131     readonly localService: boolean;
28132     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/name) */
28133     readonly name: string;
28134     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/voiceURI) */
28135     readonly voiceURI: string;
28138 declare var SpeechSynthesisVoice: {
28139     prototype: SpeechSynthesisVoice;
28140     new(): SpeechSynthesisVoice;
28141     isInstance(obj): obj is SpeechSynthesisVoice;
28144 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StaticRange) */
28145 interface StaticRange extends AbstractRange {
28148 declare var StaticRange: {
28149     prototype: StaticRange;
28150     new(init: StaticRangeInit): StaticRange;
28151     isInstance(obj): obj is StaticRange;
28155  * The pan property takes a unitless value between -1 (full left pan) and 1 (full right pan). This interface was introduced as a much simpler way to apply a simple panning effect than having to use a full PannerNode.
28157  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StereoPannerNode)
28158  */
28159 interface StereoPannerNode extends AudioNode, AudioNodePassThrough {
28160     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StereoPannerNode/pan) */
28161     readonly pan: AudioParam;
28164 declare var StereoPannerNode: {
28165     prototype: StereoPannerNode;
28166     new(context: BaseAudioContext, options?: StereoPannerOptions): StereoPannerNode;
28167     isInstance(obj): obj is StereoPannerNode;
28171  * This Web Storage API interface provides access to a particular domain's session or local storage. It allows, for example, the addition, modification, or deletion of stored data items.
28173  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage)
28174  */
28175 interface Storage {
28176     readonly hasSnapshot: boolean;
28177     readonly isSessionOnly: boolean;
28178     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/length) */
28179     readonly length: number;
28180     readonly snapshotUsage: number;
28181     beginExplicitSnapshot(): void;
28182     checkpointExplicitSnapshot(): void;
28183     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/clear) */
28184     clear(): void;
28185     close(): void;
28186     endExplicitSnapshot(): void;
28187     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/getItem) */
28188     getItem(key: string): string | null;
28189     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/key) */
28190     key(index: number): string | null;
28191     open(): void;
28192     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/removeItem) */
28193     removeItem(key: string): void;
28194     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/setItem) */
28195     setItem(key: string, value: string): void;
28198 declare var Storage: {
28199     prototype: Storage;
28200     new(): Storage;
28201     isInstance(obj): obj is Storage;
28205  * A StorageEvent is sent to a window when a storage area it has access to is changed within the context of another document.
28207  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent)
28208  */
28209 interface StorageEvent extends Event {
28210     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/key) */
28211     readonly key: string | null;
28212     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/newValue) */
28213     readonly newValue: string | null;
28214     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/oldValue) */
28215     readonly oldValue: string | null;
28216     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/storageArea) */
28217     readonly storageArea: Storage | null;
28218     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/url) */
28219     readonly url: string | null;
28220     /**
28221      * @deprecated
28222      *
28223      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/initStorageEvent)
28224      */
28225     initStorageEvent(type: string, canBubble?: boolean, cancelable?: boolean, key?: string | null, oldValue?: string | null, newValue?: string | null, url?: string | null, storageArea?: Storage | null): void;
28228 declare var StorageEvent: {
28229     prototype: StorageEvent;
28230     new(type: string, eventInitDict?: StorageEventInit): StorageEvent;
28231     isInstance(obj): obj is StorageEvent;
28235  * Available only in secure contexts.
28237  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager)
28238  */
28239 interface StorageManager {
28240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/estimate) */
28241     estimate(): Promise<StorageEstimate>;
28242     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/getDirectory) */
28243     getDirectory(): Promise<FileSystemDirectoryHandle>;
28244     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/persist) */
28245     persist(): Promise<boolean>;
28246     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/persisted) */
28247     persisted(): Promise<boolean>;
28248     shutdown(): void;
28251 declare var StorageManager: {
28252     prototype: StorageManager;
28253     new(): StorageManager;
28254     isInstance(obj): obj is StorageManager;
28257 interface StreamFilterEventMap {
28258     "data": Event;
28259     "error": ErrorEvent;
28260     "start": Event;
28261     "stop": Event;
28264 interface StreamFilter extends EventTarget {
28265     "error": ErrorEvent;
28266     ondata: ((this: StreamFilter, ev: Event) => any) | null;
28267     onerror: OnErrorEventHandler;
28268     onstart: ((this: StreamFilter, ev: Event) => any) | null;
28269     onstop: ((this: StreamFilter, ev: Event) => any) | null;
28270     readonly status: StreamFilterStatus;
28271     close(): void;
28272     disconnect(): void;
28273     resume(): void;
28274     suspend(): void;
28275     write(data: ArrayBuffer | Uint8Array): void;
28276     addEventListener<K extends keyof StreamFilterEventMap>(type: K, listener: (this: StreamFilter, ev: StreamFilterEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
28277     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
28278     removeEventListener<K extends keyof StreamFilterEventMap>(type: K, listener: (this: StreamFilter, ev: StreamFilterEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
28279     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
28282 declare var StreamFilter: {
28283     prototype: StreamFilter;
28284     new(): StreamFilter;
28285     create(requestId: number, addonId: string): StreamFilter;
28286     isInstance(obj): obj is StreamFilter;
28289 interface StreamFilterDataEvent extends Event {
28290     readonly data: ArrayBuffer;
28293 declare var StreamFilterDataEvent: {
28294     prototype: StreamFilterDataEvent;
28295     new(type: string, eventInitDict?: StreamFilterDataEventInit): StreamFilterDataEvent;
28296     isInstance(obj): obj is StreamFilterDataEvent;
28299 interface StructuredCloneHolder {
28300     deserialize(global: any, keepData?: boolean): any;
28303 declare var StructuredCloneHolder: {
28304     prototype: StructuredCloneHolder;
28305     new(name: UTF8String, anonymizedName: UTF8String | null, data: any, global?: any): StructuredCloneHolder;
28306     isInstance(obj): obj is StructuredCloneHolder;
28309 interface StructuredCloneTester {
28310     readonly deserializable: boolean;
28311     readonly serializable: boolean;
28314 declare var StructuredCloneTester: {
28315     prototype: StructuredCloneTester;
28316     new(serializable: boolean, deserializable: boolean): StructuredCloneTester;
28317     isInstance(obj): obj is StructuredCloneTester;
28321  * A single style sheet. CSS style sheets will further implement the more specialized CSSStyleSheet interface.
28323  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet)
28324  */
28325 interface StyleSheet {
28326     readonly associatedDocument: Document | null;
28327     readonly constructed: boolean;
28328     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/disabled) */
28329     disabled: boolean;
28330     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/href) */
28331     readonly href: string | null;
28332     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/media) */
28333     readonly media: MediaList;
28334     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/ownerNode) */
28335     readonly ownerNode: Node | null;
28336     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/parentStyleSheet) */
28337     readonly parentStyleSheet: StyleSheet | null;
28338     readonly sourceMapURL: UTF8String;
28339     readonly sourceURL: UTF8String;
28340     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/title) */
28341     readonly title: string | null;
28342     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/type) */
28343     readonly type: string;
28346 declare var StyleSheet: {
28347     prototype: StyleSheet;
28348     new(): StyleSheet;
28349     isInstance(obj): obj is StyleSheet;
28352 interface StyleSheetApplicableStateChangeEvent extends Event {
28353     readonly applicable: boolean;
28354     readonly stylesheet: CSSStyleSheet | null;
28357 declare var StyleSheetApplicableStateChangeEvent: {
28358     prototype: StyleSheetApplicableStateChangeEvent;
28359     new(type: string, eventInitDict?: StyleSheetApplicableStateChangeEventInit): StyleSheetApplicableStateChangeEvent;
28360     isInstance(obj): obj is StyleSheetApplicableStateChangeEvent;
28364  * A list of StyleSheet.
28366  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheetList)
28367  */
28368 interface StyleSheetList {
28369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheetList/length) */
28370     readonly length: number;
28371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheetList/item) */
28372     item(index: number): CSSStyleSheet | null;
28373     [index: number]: CSSStyleSheet;
28376 declare var StyleSheetList: {
28377     prototype: StyleSheetList;
28378     new(): StyleSheetList;
28379     isInstance(obj): obj is StyleSheetList;
28382 interface StyleSheetRemovedEvent extends Event {
28383     readonly stylesheet: CSSStyleSheet | null;
28386 declare var StyleSheetRemovedEvent: {
28387     prototype: StyleSheetRemovedEvent;
28388     new(type: string, eventInitDict?: StyleSheetRemovedEventInit): StyleSheetRemovedEvent;
28389     isInstance(obj): obj is StyleSheetRemovedEvent;
28392 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubmitEvent) */
28393 interface SubmitEvent extends Event {
28394     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubmitEvent/submitter) */
28395     readonly submitter: HTMLElement | null;
28398 declare var SubmitEvent: {
28399     prototype: SubmitEvent;
28400     new(type: string, eventInitDict?: SubmitEventInit): SubmitEvent;
28401     isInstance(obj): obj is SubmitEvent;
28405  * This Web Crypto API interface provides a number of low-level cryptographic functions. It is accessed via the Crypto.subtle properties available in a window context (via Window.crypto).
28406  * Available only in secure contexts.
28408  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto)
28409  */
28410 interface SubtleCrypto {
28411     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/decrypt) */
28412     decrypt(algorithm: AlgorithmIdentifier, key: CryptoKey, data: BufferSource): Promise<any>;
28413     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveBits) */
28414     deriveBits(algorithm: AlgorithmIdentifier, baseKey: CryptoKey, length: number): Promise<any>;
28415     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) */
28416     deriveKey(algorithm: AlgorithmIdentifier, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier, extractable: boolean, keyUsages: KeyUsage[]): Promise<any>;
28417     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/digest) */
28418     digest(algorithm: AlgorithmIdentifier, data: BufferSource): Promise<any>;
28419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/encrypt) */
28420     encrypt(algorithm: AlgorithmIdentifier, key: CryptoKey, data: BufferSource): Promise<any>;
28421     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/exportKey) */
28422     exportKey(format: KeyFormat, key: CryptoKey): Promise<any>;
28423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) */
28424     generateKey(algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: KeyUsage[]): Promise<any>;
28425     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) */
28426     importKey(format: KeyFormat, keyData: any, algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: KeyUsage[]): Promise<any>;
28427     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/sign) */
28428     sign(algorithm: AlgorithmIdentifier, key: CryptoKey, data: BufferSource): Promise<any>;
28429     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) */
28430     unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier, unwrappedKeyAlgorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: KeyUsage[]): Promise<any>;
28431     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/verify) */
28432     verify(algorithm: AlgorithmIdentifier, key: CryptoKey, signature: BufferSource, data: BufferSource): Promise<any>;
28433     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/wrapKey) */
28434     wrapKey(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AlgorithmIdentifier): Promise<any>;
28437 declare var SubtleCrypto: {
28438     prototype: SubtleCrypto;
28439     new(): SubtleCrypto;
28440     isInstance(obj): obj is SubtleCrypto;
28443 interface SyncMessageSender extends MessageSender, SyncMessageSenderMixin {
28446 declare var SyncMessageSender: {
28447     prototype: SyncMessageSender;
28448     new(): SyncMessageSender;
28449     isInstance(obj): obj is SyncMessageSender;
28452 interface SyncMessageSenderMixin {
28453     sendSyncMessage(messageName?: string | null, obj?: any): any[];
28456 interface SyncReadFile {
28457     readonly size: number;
28458     close(): void;
28459     readBytesInto(dest: Uint8Array, offset: number): void;
28462 declare var SyncReadFile: {
28463     prototype: SyncReadFile;
28464     new(): SyncReadFile;
28465     isInstance(obj): obj is SyncReadFile;
28468 interface TCPServerSocketEventMap {
28469     "connect": Event;
28470     "error": ErrorEvent;
28473 interface TCPServerSocket extends EventTarget {
28474     readonly localPort: number;
28475     onconnect: ((this: TCPServerSocket, ev: Event) => any) | null;
28476     onerror: OnErrorEventHandler;
28477     close(): void;
28478     addEventListener<K extends keyof TCPServerSocketEventMap>(type: K, listener: (this: TCPServerSocket, ev: TCPServerSocketEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
28479     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
28480     removeEventListener<K extends keyof TCPServerSocketEventMap>(type: K, listener: (this: TCPServerSocket, ev: TCPServerSocketEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
28481     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
28484 declare var TCPServerSocket: {
28485     prototype: TCPServerSocket;
28486     new(port: number, options?: ServerSocketOptions, backlog?: number): TCPServerSocket;
28487     isInstance(obj): obj is TCPServerSocket;
28490 interface TCPServerSocketEvent extends Event {
28491     readonly socket: TCPSocket;
28494 declare var TCPServerSocketEvent: {
28495     prototype: TCPServerSocketEvent;
28496     new(type: string, eventInitDict?: TCPServerSocketEventInit): TCPServerSocketEvent;
28497     isInstance(obj): obj is TCPServerSocketEvent;
28500 interface TCPSocketEventMap {
28501     "close": Event;
28502     "data": Event;
28503     "drain": Event;
28504     "error": ErrorEvent;
28505     "open": Event;
28508 interface TCPSocket extends EventTarget {
28509     readonly binaryType: TCPSocketBinaryType;
28510     readonly bufferedAmount: number;
28511     readonly host: string;
28512     onclose: ((this: TCPSocket, ev: Event) => any) | null;
28513     ondata: ((this: TCPSocket, ev: Event) => any) | null;
28514     ondrain: ((this: TCPSocket, ev: Event) => any) | null;
28515     onerror: OnErrorEventHandler;
28516     onopen: ((this: TCPSocket, ev: Event) => any) | null;
28517     readonly port: number;
28518     readonly readyState: TCPReadyState;
28519     readonly ssl: boolean;
28520     readonly transport: nsISocketTransport | null;
28521     close(): void;
28522     closeImmediately(): void;
28523     resume(): void;
28524     send(data: string): boolean;
28525     send(data: ArrayBuffer, byteOffset?: number, byteLength?: number): boolean;
28526     suspend(): void;
28527     upgradeToSecure(): void;
28528     addEventListener<K extends keyof TCPSocketEventMap>(type: K, listener: (this: TCPSocket, ev: TCPSocketEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
28529     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
28530     removeEventListener<K extends keyof TCPSocketEventMap>(type: K, listener: (this: TCPSocket, ev: TCPSocketEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
28531     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
28534 declare var TCPSocket: {
28535     prototype: TCPSocket;
28536     new(host: string, port: number, options?: SocketOptions): TCPSocket;
28537     isInstance(obj): obj is TCPSocket;
28540 interface TCPSocketErrorEvent extends Event {
28541     readonly errorCode: number;
28542     readonly message: string;
28543     readonly name: string;
28546 declare var TCPSocketErrorEvent: {
28547     prototype: TCPSocketErrorEvent;
28548     new(type: string, eventInitDict?: TCPSocketErrorEventInit): TCPSocketErrorEvent;
28549     isInstance(obj): obj is TCPSocketErrorEvent;
28552 interface TCPSocketEvent extends Event {
28553     readonly data: any;
28556 declare var TCPSocketEvent: {
28557     prototype: TCPSocketEvent;
28558     new(type: string, eventInitDict?: TCPSocketEventInit): TCPSocketEvent;
28559     isInstance(obj): obj is TCPSocketEvent;
28562 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TaskController) */
28563 interface TaskController extends AbortController {
28564     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TaskController/setPriority) */
28565     setPriority(priority: TaskPriority): void;
28568 declare var TaskController: {
28569     prototype: TaskController;
28570     new(init?: TaskControllerInit): TaskController;
28571     isInstance(obj): obj is TaskController;
28574 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TaskPriorityChangeEvent) */
28575 interface TaskPriorityChangeEvent extends Event {
28576     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TaskPriorityChangeEvent/previousPriority) */
28577     readonly previousPriority: TaskPriority;
28580 declare var TaskPriorityChangeEvent: {
28581     prototype: TaskPriorityChangeEvent;
28582     new(type: string, priorityChangeEventInitDict: TaskPriorityChangeEventInit): TaskPriorityChangeEvent;
28583     isInstance(obj): obj is TaskPriorityChangeEvent;
28586 interface TaskSignalEventMap extends AbortSignalEventMap {
28587     "prioritychange": Event;
28590 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TaskSignal) */
28591 interface TaskSignal extends AbortSignal {
28592     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TaskSignal/prioritychange_event) */
28593     onprioritychange: ((this: TaskSignal, ev: Event) => any) | null;
28594     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TaskSignal/priority) */
28595     readonly priority: TaskPriority;
28596     addEventListener<K extends keyof TaskSignalEventMap>(type: K, listener: (this: TaskSignal, ev: TaskSignalEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
28597     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
28598     removeEventListener<K extends keyof TaskSignalEventMap>(type: K, listener: (this: TaskSignal, ev: TaskSignalEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
28599     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
28602 declare var TaskSignal: {
28603     prototype: TaskSignal;
28604     new(): TaskSignal;
28605     isInstance(obj): obj is TaskSignal;
28608 interface TestFunctions {
28609     allowSharedArrayBuffer: ArrayBuffer;
28610     allowSharedArrayBufferView: ArrayBufferView;
28611     arrayBuffer: ArrayBuffer;
28612     arrayBufferView: ArrayBufferView;
28613     clampedNullableOctet: number | null;
28614     enforcedNullableOctet: number | null;
28615     readonly one: number;
28616     sequenceOfAllowSharedArrayBuffer: ArrayBuffer[];
28617     sequenceOfAllowSharedArrayBufferView: ArrayBufferView[];
28618     sequenceOfArrayBuffer: ArrayBuffer[];
28619     sequenceOfArrayBufferView: ArrayBufferView[];
28620     readonly two: number;
28621     readonly wrapperCachedNonISupportsObject: WrapperCachedNonISupportsTestInterface;
28622     getLongLiteralString(): string;
28623     getMediumLiteralString(): string;
28624     getShortLiteralString(): string;
28625     getStringDataAsAString(): string;
28626     getStringDataAsAString(length: number): string;
28627     getStringDataAsDOMString(length?: number): string;
28628     getStringType(str: string): StringType;
28629     getStringbufferString(input: string): string;
28630     setStringData(arg: string): void;
28631     staticAndNonStaticOverload(): boolean;
28632     staticAndNonStaticOverload(foo?: number): boolean;
28633     stringbufferMatchesStored(str: string): boolean;
28634     testAllowShared(buffer: ArrayBufferView): void;
28635     testAllowShared(buffer: ArrayBuffer): void;
28636     testDictWithAllowShared(buffer?: DictWithAllowSharedBufferSource): void;
28637     testNotAllowShared(buffer: ArrayBufferView): void;
28638     testNotAllowShared(buffer: ArrayBuffer): void;
28639     testNotAllowShared(buffer: string): void;
28640     testThrowNsresult(): void;
28641     testThrowNsresultFromNative(): void;
28642     testUnionOfAllowSharedBuffferSource(foo: ArrayBuffer | ArrayBufferView): void;
28643     testUnionOfBuffferSource(foo: ArrayBuffer | ArrayBufferView | string): void;
28644     toJSON(): any;
28647 declare var TestFunctions: {
28648     prototype: TestFunctions;
28649     new(): TestFunctions;
28650     passThroughCallbackPromise(callback: PromiseReturner): Promise<any>;
28651     passThroughPromise(arg: any): Promise<any>;
28652     throwToRejectPromise(): Promise<any>;
28653     throwUncatchableException(): void;
28654     isInstance(obj): obj is TestFunctions;
28657 interface TestInterfaceAsyncIterableDouble {
28660 declare var TestInterfaceAsyncIterableDouble: {
28661     prototype: TestInterfaceAsyncIterableDouble;
28662     new(): TestInterfaceAsyncIterableDouble;
28663     isInstance(obj): obj is TestInterfaceAsyncIterableDouble;
28666 interface TestInterfaceAsyncIterableDoubleUnion {
28669 declare var TestInterfaceAsyncIterableDoubleUnion: {
28670     prototype: TestInterfaceAsyncIterableDoubleUnion;
28671     new(): TestInterfaceAsyncIterableDoubleUnion;
28672     isInstance(obj): obj is TestInterfaceAsyncIterableDoubleUnion;
28675 interface TestInterfaceAsyncIterableSingle {
28678 declare var TestInterfaceAsyncIterableSingle: {
28679     prototype: TestInterfaceAsyncIterableSingle;
28680     new(options?: TestInterfaceAsyncIterableSingleOptions): TestInterfaceAsyncIterableSingle;
28681     isInstance(obj): obj is TestInterfaceAsyncIterableSingle;
28684 interface TestInterfaceAsyncIterableSingleWithArgs {
28685     readonly returnCallCount: number;
28686     readonly returnLastCalledWith: any;
28689 declare var TestInterfaceAsyncIterableSingleWithArgs: {
28690     prototype: TestInterfaceAsyncIterableSingleWithArgs;
28691     new(): TestInterfaceAsyncIterableSingleWithArgs;
28692     isInstance(obj): obj is TestInterfaceAsyncIterableSingleWithArgs;
28695 interface TestInterfaceIterableDouble {
28696     forEach(callbackfn: (value: string, key: string, parent: TestInterfaceIterableDouble) => void, thisArg?: any): void;
28699 declare var TestInterfaceIterableDouble: {
28700     prototype: TestInterfaceIterableDouble;
28701     new(): TestInterfaceIterableDouble;
28702     isInstance(obj): obj is TestInterfaceIterableDouble;
28705 interface TestInterfaceIterableDoubleUnion {
28706     forEach(callbackfn: (value: string | number, key: string, parent: TestInterfaceIterableDoubleUnion) => void, thisArg?: any): void;
28709 declare var TestInterfaceIterableDoubleUnion: {
28710     prototype: TestInterfaceIterableDoubleUnion;
28711     new(): TestInterfaceIterableDoubleUnion;
28712     isInstance(obj): obj is TestInterfaceIterableDoubleUnion;
28715 interface TestInterfaceIterableSingle {
28716     readonly length: number;
28717     forEach(callbackfn: (value: number, key: number, parent: TestInterfaceIterableSingle) => void, thisArg?: any): void;
28718     [index: number]: number;
28721 declare var TestInterfaceIterableSingle: {
28722     prototype: TestInterfaceIterableSingle;
28723     new(): TestInterfaceIterableSingle;
28724     isInstance(obj): obj is TestInterfaceIterableSingle;
28727 interface TestInterfaceJSEventMap {
28728     "something": Event;
28731 interface TestInterfaceJS extends EventTarget {
28732     readonly anyArg: any;
28733     anyAttr: any;
28734     readonly objectArg: any;
28735     objectAttr: any;
28736     onsomething: ((this: TestInterfaceJS, ev: Event) => any) | null;
28737     anySequenceLength(seq: any[]): number;
28738     convertSVS(svs: string): string;
28739     getCallerPrincipal(): string;
28740     getDictionaryArg(): TestInterfaceJSDictionary;
28741     getDictionaryAttr(): TestInterfaceJSDictionary;
28742     objectSequenceLength(seq: any[]): number;
28743     pingPongAny(arg: any): any;
28744     pingPongDictionary(dict?: TestInterfaceJSDictionary): TestInterfaceJSDictionary;
28745     pingPongDictionaryOrLong(dictOrLong?: TestInterfaceJSUnionableDictionary | number): number;
28746     pingPongNullableUnion(something: TestInterfaceJS | number | null): TestInterfaceJS | number | null;
28747     pingPongObject(obj: any): any;
28748     pingPongObjectOrString(objOrString: any): any;
28749     pingPongRecord(rec: Record<string, any>): string;
28750     pingPongUnion(something: TestInterfaceJS | number): TestInterfaceJS | number;
28751     pingPongUnionContainingNull(something: TestInterfaceJS | string): string | TestInterfaceJS;
28752     returnBadUnion(): Location | TestInterfaceJS;
28753     setDictionaryAttr(dict?: TestInterfaceJSDictionary): void;
28754     testPromiseWithDOMExceptionThrowingPromiseInit(): Promise<void>;
28755     testPromiseWithDOMExceptionThrowingThenFunction(): Promise<void>;
28756     testPromiseWithDOMExceptionThrowingThenable(): Promise<void>;
28757     testPromiseWithThrowingChromePromiseInit(): Promise<void>;
28758     testPromiseWithThrowingChromeThenFunction(): Promise<void>;
28759     testPromiseWithThrowingChromeThenable(): Promise<void>;
28760     testPromiseWithThrowingContentPromiseInit(func: Function): Promise<void>;
28761     testPromiseWithThrowingContentThenFunction(func: AnyCallback): Promise<void>;
28762     testPromiseWithThrowingContentThenable(thenable: any): Promise<void>;
28763     testSequenceOverload(arg: string[]): void;
28764     testSequenceOverload(arg: string): void;
28765     testSequenceUnion(arg: string[] | string): void;
28766     testThrowCallbackError(callback: Function): void;
28767     testThrowDOMException(): void;
28768     testThrowError(): void;
28769     testThrowSelfHosted(): void;
28770     testThrowTypeError(): void;
28771     testThrowXraySelfHosted(): void;
28772     addEventListener<K extends keyof TestInterfaceJSEventMap>(type: K, listener: (this: TestInterfaceJS, ev: TestInterfaceJSEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
28773     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
28774     removeEventListener<K extends keyof TestInterfaceJSEventMap>(type: K, listener: (this: TestInterfaceJS, ev: TestInterfaceJSEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
28775     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
28778 declare var TestInterfaceJS: {
28779     prototype: TestInterfaceJS;
28780     new(anyArg?: any, objectArg?: any, dictionaryArg?: TestInterfaceJSDictionary): TestInterfaceJS;
28781     isInstance(obj): obj is TestInterfaceJS;
28784 interface TestInterfaceLength {
28787 declare var TestInterfaceLength: {
28788     prototype: TestInterfaceLength;
28789     new(arg: boolean): TestInterfaceLength;
28790     isInstance(obj): obj is TestInterfaceLength;
28793 interface TestInterfaceMaplike {
28794     clearInternal(): void;
28795     deleteInternal(aKey: string): boolean;
28796     getInternal(aKey: string): number;
28797     hasInternal(aKey: string): boolean;
28798     setInternal(aKey: string, aValue: number): void;
28799     forEach(callbackfn: (value: number, key: string, parent: TestInterfaceMaplike) => void, thisArg?: any): void;
28802 declare var TestInterfaceMaplike: {
28803     prototype: TestInterfaceMaplike;
28804     new(): TestInterfaceMaplike;
28805     isInstance(obj): obj is TestInterfaceMaplike;
28808 interface TestInterfaceMaplikeJSObject {
28809     clearInternal(): void;
28810     deleteInternal(aKey: string): boolean;
28811     getInternal(aKey: string): any;
28812     hasInternal(aKey: string): boolean;
28813     setInternal(aKey: string, aObject: any): void;
28814     forEach(callbackfn: (value: any, key: string, parent: TestInterfaceMaplikeJSObject) => void, thisArg?: any): void;
28817 declare var TestInterfaceMaplikeJSObject: {
28818     prototype: TestInterfaceMaplikeJSObject;
28819     new(): TestInterfaceMaplikeJSObject;
28820     isInstance(obj): obj is TestInterfaceMaplikeJSObject;
28823 interface TestInterfaceMaplikeObject {
28824     clearInternal(): void;
28825     deleteInternal(aKey: string): boolean;
28826     getInternal(aKey: string): TestInterfaceMaplike | null;
28827     hasInternal(aKey: string): boolean;
28828     setInternal(aKey: string): void;
28829     forEach(callbackfn: (value: TestInterfaceMaplike, key: string, parent: TestInterfaceMaplikeObject) => void, thisArg?: any): void;
28832 declare var TestInterfaceMaplikeObject: {
28833     prototype: TestInterfaceMaplikeObject;
28834     new(): TestInterfaceMaplikeObject;
28835     isInstance(obj): obj is TestInterfaceMaplikeObject;
28838 interface TestInterfaceObservableArray {
28839     observableArrayBoolean: boolean[];
28840     observableArrayInterface: TestInterfaceObservableArray[];
28841     observableArrayObject: any[];
28842     booleanAppendElementInternal(value: boolean): void;
28843     booleanElementAtInternal(index: number): boolean;
28844     booleanLengthInternal(): number;
28845     booleanRemoveLastElementInternal(): void;
28846     booleanReplaceElementAtInternal(index: number, value: boolean): void;
28847     interfaceAppendElementInternal(value: TestInterfaceObservableArray): void;
28848     interfaceElementAtInternal(index: number): TestInterfaceObservableArray;
28849     interfaceLengthInternal(): number;
28850     interfaceRemoveLastElementInternal(): void;
28851     interfaceReplaceElementAtInternal(index: number, value: TestInterfaceObservableArray): void;
28852     objectAppendElementInternal(value: any): void;
28853     objectElementAtInternal(index: number): any;
28854     objectLengthInternal(): number;
28855     objectRemoveLastElementInternal(): void;
28856     objectReplaceElementAtInternal(index: number, value: any): void;
28859 declare var TestInterfaceObservableArray: {
28860     prototype: TestInterfaceObservableArray;
28861     new(callbacks?: ObservableArrayCallbacks): TestInterfaceObservableArray;
28862     isInstance(obj): obj is TestInterfaceObservableArray;
28865 interface TestInterfaceSetlike {
28866     forEach(callbackfn: (value: string, key: string, parent: TestInterfaceSetlike) => void, thisArg?: any): void;
28869 declare var TestInterfaceSetlike: {
28870     prototype: TestInterfaceSetlike;
28871     new(): TestInterfaceSetlike;
28872     isInstance(obj): obj is TestInterfaceSetlike;
28875 interface TestInterfaceSetlikeNode {
28876     forEach(callbackfn: (value: Node, key: Node, parent: TestInterfaceSetlikeNode) => void, thisArg?: any): void;
28879 declare var TestInterfaceSetlikeNode: {
28880     prototype: TestInterfaceSetlikeNode;
28881     new(): TestInterfaceSetlikeNode;
28882     isInstance(obj): obj is TestInterfaceSetlikeNode;
28885 interface TestTrialInterface {
28888 declare var TestTrialInterface: {
28889     prototype: TestTrialInterface;
28890     new(): TestTrialInterface;
28891     isInstance(obj): obj is TestTrialInterface;
28894 interface TestingDeprecatedInterface {
28895     readonly deprecatedAttribute: boolean;
28896     deprecatedMethod(): void;
28899 declare var TestingDeprecatedInterface: {
28900     prototype: TestingDeprecatedInterface;
28901     new(): TestingDeprecatedInterface;
28902     isInstance(obj): obj is TestingDeprecatedInterface;
28906  * The textual content of Element or Attr. If an element has no markup within its content, it has a single child implementing Text that contains the element's text. However, if the element contains markup, it is parsed into information items and Text nodes that form its children.
28908  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Text)
28909  */
28910 interface Text extends CharacterData, GeometryUtils {
28911     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Text/assignedSlot) */
28912     readonly assignedSlot: HTMLSlotElement | null;
28913     readonly openOrClosedAssignedSlot: HTMLSlotElement | null;
28914     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Text/wholeText) */
28915     readonly wholeText: string;
28916     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Text/splitText) */
28917     splitText(offset: number): Text;
28920 declare var Text: {
28921     prototype: Text;
28922     new(data?: string): Text;
28923     isInstance(obj): obj is Text;
28926 interface TextClause {
28927     readonly endOffset: number;
28928     readonly isCaret: boolean;
28929     readonly isTargetClause: boolean;
28930     readonly startOffset: number;
28933 declare var TextClause: {
28934     prototype: TextClause;
28935     new(): TextClause;
28936     isInstance(obj): obj is TextClause;
28940  * A decoder for a specific method, that is a specific character encoding, like utf-8, iso-8859-2, koi8, cp1261, gbk, etc. A decoder takes a stream of bytes as input and emits a stream of code points. For a more scalable, non-native library, see StringView â€“ a C-like representation of strings based on typed arrays.
28942  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder)
28943  */
28944 interface TextDecoder extends TextDecoderCommon {
28945     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/decode) */
28946     decode(input?: BufferSource, options?: TextDecodeOptions): string;
28949 declare var TextDecoder: {
28950     prototype: TextDecoder;
28951     new(label?: string, options?: TextDecoderOptions): TextDecoder;
28952     isInstance(obj): obj is TextDecoder;
28955 interface TextDecoderCommon {
28956     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/encoding) */
28957     readonly encoding: string;
28958     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/fatal) */
28959     readonly fatal: boolean;
28960     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/ignoreBOM) */
28961     readonly ignoreBOM: boolean;
28964 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoderStream) */
28965 interface TextDecoderStream extends GenericTransformStream, TextDecoderCommon {
28968 declare var TextDecoderStream: {
28969     prototype: TextDecoderStream;
28970     new(label?: string, options?: TextDecoderOptions): TextDecoderStream;
28971     isInstance(obj): obj is TextDecoderStream;
28975  * TextEncoder takes a stream of code points as input and emits a stream of bytes. For a more scalable, non-native library, see StringView â€“ a C-like representation of strings based on typed arrays.
28977  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder)
28978  */
28979 interface TextEncoder extends TextEncoderCommon {
28980     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encode) */
28981     encode(input?: UTF8String): Uint8Array;
28982     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encodeInto) */
28983     encodeInto(source: JSString, destination: Uint8Array): TextEncoderEncodeIntoResult;
28986 declare var TextEncoder: {
28987     prototype: TextEncoder;
28988     new(): TextEncoder;
28989     isInstance(obj): obj is TextEncoder;
28992 interface TextEncoderCommon {
28993     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encoding) */
28994     readonly encoding: string;
28997 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoderStream) */
28998 interface TextEncoderStream extends GenericTransformStream, TextEncoderCommon {
29001 declare var TextEncoderStream: {
29002     prototype: TextEncoderStream;
29003     new(): TextEncoderStream;
29004     isInstance(obj): obj is TextEncoderStream;
29008  * The dimensions of a piece of text in the canvas, as created by the CanvasRenderingContext2D.measureText() method.
29010  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics)
29011  */
29012 interface TextMetrics {
29013     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxAscent) */
29014     readonly actualBoundingBoxAscent: number;
29015     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxDescent) */
29016     readonly actualBoundingBoxDescent: number;
29017     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxLeft) */
29018     readonly actualBoundingBoxLeft: number;
29019     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxRight) */
29020     readonly actualBoundingBoxRight: number;
29021     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/alphabeticBaseline) */
29022     readonly alphabeticBaseline: number;
29023     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/emHeightAscent) */
29024     readonly emHeightAscent: number;
29025     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/emHeightDescent) */
29026     readonly emHeightDescent: number;
29027     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/fontBoundingBoxAscent) */
29028     readonly fontBoundingBoxAscent: number;
29029     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/fontBoundingBoxDescent) */
29030     readonly fontBoundingBoxDescent: number;
29031     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/hangingBaseline) */
29032     readonly hangingBaseline: number;
29033     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/ideographicBaseline) */
29034     readonly ideographicBaseline: number;
29035     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/width) */
29036     readonly width: number;
29039 declare var TextMetrics: {
29040     prototype: TextMetrics;
29041     new(): TextMetrics;
29042     isInstance(obj): obj is TextMetrics;
29045 interface TextTrackEventMap {
29046     "cuechange": Event;
29050  * This interface also inherits properties from EventTarget.
29052  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack)
29053  */
29054 interface TextTrack extends EventTarget {
29055     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/activeCues) */
29056     readonly activeCues: TextTrackCueList | null;
29057     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/cues) */
29058     readonly cues: TextTrackCueList | null;
29059     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/id) */
29060     readonly id: string;
29061     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/inBandMetadataTrackDispatchType) */
29062     readonly inBandMetadataTrackDispatchType: string;
29063     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/kind) */
29064     readonly kind: TextTrackKind;
29065     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/label) */
29066     readonly label: string;
29067     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/language) */
29068     readonly language: string;
29069     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/mode) */
29070     mode: TextTrackMode;
29071     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/cuechange_event) */
29072     oncuechange: ((this: TextTrack, ev: Event) => any) | null;
29073     readonly textTrackList: TextTrackList | null;
29074     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/addCue) */
29075     addCue(cue: VTTCue): void;
29076     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/removeCue) */
29077     removeCue(cue: VTTCue): void;
29078     addEventListener<K extends keyof TextTrackEventMap>(type: K, listener: (this: TextTrack, ev: TextTrackEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
29079     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
29080     removeEventListener<K extends keyof TextTrackEventMap>(type: K, listener: (this: TextTrack, ev: TextTrackEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
29081     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
29084 declare var TextTrack: {
29085     prototype: TextTrack;
29086     new(): TextTrack;
29087     isInstance(obj): obj is TextTrack;
29090 interface TextTrackCueEventMap {
29091     "enter": Event;
29092     "exit": Event;
29096  * TextTrackCues represent a string of text that will be displayed for some duration of time on a TextTrack. This includes the start and end times that the cue will be displayed. A TextTrackCue cannot be used directly, instead one of the derived types (e.g. VTTCue) must be used.
29098  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue)
29099  */
29100 interface TextTrackCue extends EventTarget {
29101     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/endTime) */
29102     endTime: number;
29103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/id) */
29104     id: string;
29105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/enter_event) */
29106     onenter: ((this: TextTrackCue, ev: Event) => any) | null;
29107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/exit_event) */
29108     onexit: ((this: TextTrackCue, ev: Event) => any) | null;
29109     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/pauseOnExit) */
29110     pauseOnExit: boolean;
29111     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/startTime) */
29112     startTime: number;
29113     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/track) */
29114     readonly track: TextTrack | null;
29115     addEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: TextTrackCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
29116     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
29117     removeEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: TextTrackCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
29118     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
29121 declare var TextTrackCue: {
29122     prototype: TextTrackCue;
29123     new(): TextTrackCue;
29124     isInstance(obj): obj is TextTrackCue;
29127 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCueList) */
29128 interface TextTrackCueList {
29129     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCueList/length) */
29130     readonly length: number;
29131     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCueList/getCueById) */
29132     getCueById(id: string): VTTCue | null;
29133     [index: number]: VTTCue;
29136 declare var TextTrackCueList: {
29137     prototype: TextTrackCueList;
29138     new(): TextTrackCueList;
29139     isInstance(obj): obj is TextTrackCueList;
29142 interface TextTrackListEventMap {
29143     "addtrack": Event;
29144     "change": Event;
29145     "removetrack": Event;
29148 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList) */
29149 interface TextTrackList extends EventTarget {
29150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/length) */
29151     readonly length: number;
29152     readonly mediaElement: HTMLMediaElement | null;
29153     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/addtrack_event) */
29154     onaddtrack: ((this: TextTrackList, ev: Event) => any) | null;
29155     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/change_event) */
29156     onchange: ((this: TextTrackList, ev: Event) => any) | null;
29157     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/removetrack_event) */
29158     onremovetrack: ((this: TextTrackList, ev: Event) => any) | null;
29159     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/getTrackById) */
29160     getTrackById(id: string): TextTrack | null;
29161     addEventListener<K extends keyof TextTrackListEventMap>(type: K, listener: (this: TextTrackList, ev: TextTrackListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
29162     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
29163     removeEventListener<K extends keyof TextTrackListEventMap>(type: K, listener: (this: TextTrackList, ev: TextTrackListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
29164     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
29165     [index: number]: TextTrack;
29168 declare var TextTrackList: {
29169     prototype: TextTrackList;
29170     new(): TextTrackList;
29171     isInstance(obj): obj is TextTrackList;
29174 interface TimeEvent extends Event {
29175     readonly detail: number;
29176     readonly view: WindowProxy | null;
29177     initTimeEvent(aType: string, aView?: Window | null, aDetail?: number): void;
29180 declare var TimeEvent: {
29181     prototype: TimeEvent;
29182     new(): TimeEvent;
29183     isInstance(obj): obj is TimeEvent;
29187  * Used to represent a set of time ranges, primarily for the purpose of tracking which portions of media have been buffered when loading it for use by the <audio> and <video> elements.
29189  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges)
29190  */
29191 interface TimeRanges {
29192     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges/length) */
29193     readonly length: number;
29194     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges/end) */
29195     end(index: number): number;
29196     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges/start) */
29197     start(index: number): number;
29200 declare var TimeRanges: {
29201     prototype: TimeRanges;
29202     new(): TimeRanges;
29203     isInstance(obj): obj is TimeRanges;
29206 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent) */
29207 interface ToggleEvent extends Event {
29208     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/newState) */
29209     readonly newState: string;
29210     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/oldState) */
29211     readonly oldState: string;
29214 declare var ToggleEvent: {
29215     prototype: ToggleEvent;
29216     new(type: string, eventInitDict?: ToggleEventInit): ToggleEvent;
29217     isInstance(obj): obj is ToggleEvent;
29221  * A single contact point on a touch-sensitive device. The contact point is commonly a finger or stylus and the device may be a touchscreen or trackpad.
29223  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch)
29224  */
29225 interface Touch {
29226     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/clientX) */
29227     readonly clientX: number;
29228     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/clientY) */
29229     readonly clientY: number;
29230     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/force) */
29231     readonly force: number;
29232     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/identifier) */
29233     readonly identifier: number;
29234     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/pageX) */
29235     readonly pageX: number;
29236     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/pageY) */
29237     readonly pageY: number;
29238     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/radiusX) */
29239     readonly radiusX: number;
29240     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/radiusY) */
29241     readonly radiusY: number;
29242     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/rotationAngle) */
29243     readonly rotationAngle: number;
29244     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/screenX) */
29245     readonly screenX: number;
29246     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/screenY) */
29247     readonly screenY: number;
29248     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/target) */
29249     readonly target: EventTarget | null;
29252 declare var Touch: {
29253     prototype: Touch;
29254     new(touchInitDict: TouchInit): Touch;
29255     isInstance(obj): obj is Touch;
29259  * An event sent when the state of contacts with a touch-sensitive surface changes. This surface can be a touch screen or trackpad, for example. The event can describe one or more points of contact with the screen and includes support for detecting movement, addition and removal of contact points, and so forth.
29261  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent)
29262  */
29263 interface TouchEvent extends UIEvent {
29264     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/altKey) */
29265     readonly altKey: boolean;
29266     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/changedTouches) */
29267     readonly changedTouches: TouchList;
29268     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/ctrlKey) */
29269     readonly ctrlKey: boolean;
29270     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/metaKey) */
29271     readonly metaKey: boolean;
29272     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/shiftKey) */
29273     readonly shiftKey: boolean;
29274     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/targetTouches) */
29275     readonly targetTouches: TouchList;
29276     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/touches) */
29277     readonly touches: TouchList;
29278     initTouchEvent(type: string, canBubble?: boolean, cancelable?: boolean, view?: Window | null, detail?: number, ctrlKey?: boolean, altKey?: boolean, shiftKey?: boolean, metaKey?: boolean, touches?: TouchList | null, targetTouches?: TouchList | null, changedTouches?: TouchList | null): void;
29281 declare var TouchEvent: {
29282     prototype: TouchEvent;
29283     new(type: string, eventInitDict?: TouchEventInit): TouchEvent;
29284     isInstance(obj): obj is TouchEvent;
29287 interface TouchEventHandlersEventMap {
29288     touchcancel: TouchEvent;
29289     touchend: TouchEvent;
29290     touchmove: TouchEvent;
29291     touchstart: TouchEvent;
29294 interface TouchEventHandlers {
29295     ontouchcancel: ((this: TouchEventHandlers, ev: Event) => any) | null;
29296     ontouchend: ((this: TouchEventHandlers, ev: Event) => any) | null;
29297     ontouchmove: ((this: TouchEventHandlers, ev: Event) => any) | null;
29298     ontouchstart: ((this: TouchEventHandlers, ev: Event) => any) | null;
29299     addEventListener<K extends keyof TouchEventHandlersEventMap>(type: K, listener: (this: TouchEventHandlers, ev: TouchEventHandlersEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
29300     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
29301     removeEventListener<K extends keyof TouchEventHandlersEventMap>(type: K, listener: (this: TouchEventHandlers, ev: TouchEventHandlersEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
29302     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
29306  * A list of contact points on a touch surface. For example, if the user has three fingers on the touch surface (such as a screen or trackpad), the corresponding TouchList object would have one Touch object for each finger, for a total of three entries.
29308  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchList)
29309  */
29310 interface TouchList {
29311     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchList/length) */
29312     readonly length: number;
29313     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchList/item) */
29314     item(index: number): Touch | null;
29315     [index: number]: Touch;
29318 declare var TouchList: {
29319     prototype: TouchList;
29320     new(): TouchList;
29321     isInstance(obj): obj is TouchList;
29325  * The TrackEvent interface, part of the HTML DOM specification, is used for events which represent changes to the set of available tracks on an HTML media element; these events are addtrack and removetrack.
29327  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TrackEvent)
29328  */
29329 interface TrackEvent extends Event {
29330     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TrackEvent/track) */
29331     readonly track: VideoTrack | AudioTrack | TextTrack | null;
29334 declare var TrackEvent: {
29335     prototype: TrackEvent;
29336     new(type: string, eventInitDict?: TrackEventInit): TrackEvent;
29337     isInstance(obj): obj is TrackEvent;
29340 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream) */
29341 interface TransformStream {
29342     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/readable) */
29343     readonly readable: ReadableStream;
29344     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/writable) */
29345     readonly writable: WritableStream;
29348 declare var TransformStream: {
29349     prototype: TransformStream;
29350     new(transformer?: any, writableStrategy?: QueuingStrategy, readableStrategy?: QueuingStrategy): TransformStream;
29351     isInstance(obj): obj is TransformStream;
29354 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController) */
29355 interface TransformStreamDefaultController {
29356     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/desiredSize) */
29357     readonly desiredSize: number | null;
29358     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/enqueue) */
29359     enqueue(chunk?: any): void;
29360     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/error) */
29361     error(reason?: any): void;
29362     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/terminate) */
29363     terminate(): void;
29366 declare var TransformStreamDefaultController: {
29367     prototype: TransformStreamDefaultController;
29368     new(): TransformStreamDefaultController;
29369     isInstance(obj): obj is TransformStreamDefaultController;
29373  * Events providing information related to transitions.
29375  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent)
29376  */
29377 interface TransitionEvent extends Event {
29378     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent/elapsedTime) */
29379     readonly elapsedTime: number;
29380     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent/propertyName) */
29381     readonly propertyName: string;
29382     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent/pseudoElement) */
29383     readonly pseudoElement: string;
29386 declare var TransitionEvent: {
29387     prototype: TransitionEvent;
29388     new(type: string, eventInitDict?: TransitionEventInit): TransitionEvent;
29389     isInstance(obj): obj is TransitionEvent;
29392 interface TreeColumn {
29393     readonly columns: TreeColumns | null;
29394     readonly cycler: boolean;
29395     readonly editable: boolean;
29396     readonly element: Element;
29397     readonly id: string;
29398     readonly index: number;
29399     readonly previousColumn: TreeColumn | null;
29400     readonly primary: boolean;
29401     readonly type: number;
29402     readonly width: number;
29403     readonly x: number;
29404     getNext(): TreeColumn | null;
29405     getPrevious(): TreeColumn | null;
29406     invalidate(): void;
29407     readonly TYPE_TEXT: 1;
29408     readonly TYPE_CHECKBOX: 2;
29411 declare var TreeColumn: {
29412     prototype: TreeColumn;
29413     new(): TreeColumn;
29414     readonly TYPE_TEXT: 1;
29415     readonly TYPE_CHECKBOX: 2;
29416     isInstance(obj): obj is TreeColumn;
29419 interface TreeColumns {
29420     readonly count: number;
29421     readonly length: number;
29422     readonly tree: XULTreeElement | null;
29423     getColumnAt(index: number): TreeColumn | null;
29424     getColumnFor(element: Element | null): TreeColumn | null;
29425     getFirstColumn(): TreeColumn | null;
29426     getKeyColumn(): TreeColumn | null;
29427     getLastColumn(): TreeColumn | null;
29428     getNamedColumn(name: string): TreeColumn | null;
29429     getPrimaryColumn(): TreeColumn | null;
29430     getSortedColumn(): TreeColumn | null;
29431     invalidateColumns(): void;
29432     [index: number]: TreeColumn;
29435 declare var TreeColumns: {
29436     prototype: TreeColumns;
29437     new(): TreeColumns;
29438     isInstance(obj): obj is TreeColumns;
29441 interface TreeContentView extends TreeView {
29442     getIndexOfItem(item: Element | null): number;
29443     getItemAtIndex(row: number): Element | null;
29446 declare var TreeContentView: {
29447     prototype: TreeContentView;
29448     new(): TreeContentView;
29449     readonly DROP_BEFORE: -1;
29450     readonly DROP_ON: 0;
29451     readonly DROP_AFTER: 1;
29452     isInstance(obj): obj is TreeContentView;
29455 interface TreeView {
29456     readonly rowCount: number;
29457     selection: nsITreeSelection | null;
29458     canDrop(row: number, orientation: number, dataTransfer: DataTransfer | null): boolean;
29459     cycleCell(row: number, column: TreeColumn): void;
29460     cycleHeader(column: TreeColumn): void;
29461     drop(row: number, orientation: number, dataTransfer: DataTransfer | null): void;
29462     getCellProperties(row: number, column: TreeColumn): string;
29463     getCellText(row: number, column: TreeColumn): string;
29464     getCellValue(row: number, column: TreeColumn): string;
29465     getColumnProperties(column: TreeColumn): string;
29466     getImageSrc(row: number, column: TreeColumn): string;
29467     getLevel(row: number): number;
29468     getParentIndex(row: number): number;
29469     getRowProperties(row: number): string;
29470     hasNextSibling(row: number, afterIndex: number): boolean;
29471     isContainer(row: number): boolean;
29472     isContainerEmpty(row: number): boolean;
29473     isContainerOpen(row: number): boolean;
29474     isEditable(row: number, column: TreeColumn): boolean;
29475     isSeparator(row: number): boolean;
29476     isSorted(): boolean;
29477     selectionChanged(): void;
29478     setCellText(row: number, column: TreeColumn, value: string): void;
29479     setCellValue(row: number, column: TreeColumn, value: string): void;
29480     setTree(tree: XULTreeElement | null): void;
29481     toggleOpenState(row: number): void;
29482     readonly DROP_BEFORE: -1;
29483     readonly DROP_ON: 0;
29484     readonly DROP_AFTER: 1;
29488  * The nodes of a document subtree and a position within them.
29490  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker)
29491  */
29492 interface TreeWalker {
29493     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/currentNode) */
29494     currentNode: Node;
29495     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/filter) */
29496     readonly filter: NodeFilter | null;
29497     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/root) */
29498     readonly root: Node;
29499     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/whatToShow) */
29500     readonly whatToShow: number;
29501     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/firstChild) */
29502     firstChild(): Node | null;
29503     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/lastChild) */
29504     lastChild(): Node | null;
29505     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/nextNode) */
29506     nextNode(): Node | null;
29507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/nextSibling) */
29508     nextSibling(): Node | null;
29509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/parentNode) */
29510     parentNode(): Node | null;
29511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/previousNode) */
29512     previousNode(): Node | null;
29513     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/previousSibling) */
29514     previousSibling(): Node | null;
29517 declare var TreeWalker: {
29518     prototype: TreeWalker;
29519     new(): TreeWalker;
29520     isInstance(obj): obj is TreeWalker;
29523 interface UDPMessageEvent extends Event {
29524     readonly data: any;
29525     readonly remoteAddress: string;
29526     readonly remotePort: number;
29529 declare var UDPMessageEvent: {
29530     prototype: UDPMessageEvent;
29531     new(type: string, eventInitDict?: UDPMessageEventInit): UDPMessageEvent;
29532     isInstance(obj): obj is UDPMessageEvent;
29535 interface UDPSocketEventMap {
29536     "message": Event;
29539 interface UDPSocket extends EventTarget {
29540     readonly addressReuse: boolean;
29541     readonly closed: Promise<undefined>;
29542     readonly localAddress: string | null;
29543     readonly localPort: number | null;
29544     readonly loopback: boolean;
29545     onmessage: ((this: UDPSocket, ev: Event) => any) | null;
29546     readonly opened: Promise<undefined>;
29547     readonly readyState: SocketReadyState;
29548     readonly remoteAddress: string | null;
29549     readonly remotePort: number | null;
29550     close(): Promise<void>;
29551     joinMulticastGroup(multicastGroupAddress: string): void;
29552     leaveMulticastGroup(multicastGroupAddress: string): void;
29553     send(data: string | Blob | ArrayBuffer | ArrayBufferView, remoteAddress?: string | null, remotePort?: number | null): boolean;
29554     addEventListener<K extends keyof UDPSocketEventMap>(type: K, listener: (this: UDPSocket, ev: UDPSocketEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
29555     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
29556     removeEventListener<K extends keyof UDPSocketEventMap>(type: K, listener: (this: UDPSocket, ev: UDPSocketEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
29557     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
29560 declare var UDPSocket: {
29561     prototype: UDPSocket;
29562     new(options?: UDPOptions): UDPSocket;
29563     isInstance(obj): obj is UDPSocket;
29567  * Simple user interface events.
29569  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent)
29570  */
29571 interface UIEvent extends Event {
29572     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/detail) */
29573     readonly detail: number;
29574     readonly layerX: number;
29575     readonly layerY: number;
29576     readonly rangeOffset: number;
29577     readonly rangeParent: Node | null;
29578     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/view) */
29579     readonly view: WindowProxy | null;
29580     /**
29581      * @deprecated
29582      *
29583      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/which)
29584      */
29585     readonly which: number;
29586     /**
29587      * @deprecated
29588      *
29589      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/initUIEvent)
29590      */
29591     initUIEvent(aType: string, aCanBubble?: boolean, aCancelable?: boolean, aView?: Window | null, aDetail?: number): void;
29592     readonly SCROLL_PAGE_UP: -32768;
29593     readonly SCROLL_PAGE_DOWN: 32768;
29596 declare var UIEvent: {
29597     prototype: UIEvent;
29598     new(type: string, eventInitDict?: UIEventInit): UIEvent;
29599     readonly SCROLL_PAGE_UP: -32768;
29600     readonly SCROLL_PAGE_DOWN: 32768;
29601     isInstance(obj): obj is UIEvent;
29605  * The URL interface represents an object providing static methods used for creating object URLs.
29607  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL)
29608  */
29609 interface URL {
29610     readonly URI: URI;
29611     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hash) */
29612     hash: string;
29613     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/host) */
29614     host: string;
29615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hostname) */
29616     hostname: string;
29617     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/href) */
29618     href: string;
29619     toString(): string;
29620     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/origin) */
29621     readonly origin: string;
29622     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/password) */
29623     password: string;
29624     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/pathname) */
29625     pathname: string;
29626     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/port) */
29627     port: string;
29628     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/protocol) */
29629     protocol: string;
29630     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/search) */
29631     search: string;
29632     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/searchParams) */
29633     readonly searchParams: URLSearchParams;
29634     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/username) */
29635     username: string;
29636     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/toJSON) */
29637     toJSON(): string;
29640 declare var URL: {
29641     prototype: URL;
29642     new(url: string | URL, base?: string): URL;
29643     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */
29644     canParse(url: string | URL, base?: string): boolean;
29645     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) */
29646     createObjectURL(blob: Blob): string;
29647     createObjectURL(source: MediaSource): string;
29648     fromURI(uri: URI): URL;
29649     isValidObjectURL(url: string): boolean;
29650     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) */
29651     revokeObjectURL(url: string): void;
29652     isInstance(obj): obj is URL;
29655 type webkitURL = URL;
29656 declare var webkitURL: typeof URL;
29658 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams) */
29659 interface URLSearchParams {
29660     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/size) */
29661     readonly size: number;
29662     /**
29663      * Appends a specified key/value pair as a new search parameter.
29664      *
29665      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/append)
29666      */
29667     append(name: string, value: string): void;
29668     /**
29669      * Deletes the given search parameter, and its associated value, from the list of all search parameters.
29670      *
29671      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/delete)
29672      */
29673     delete(name: string, value?: string): void;
29674     /**
29675      * Returns the first value associated to the given search parameter.
29676      *
29677      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/get)
29678      */
29679     get(name: string): string | null;
29680     /**
29681      * Returns all the values association with a given search parameter.
29682      *
29683      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/getAll)
29684      */
29685     getAll(name: string): string[];
29686     /**
29687      * Returns a Boolean indicating if such a search parameter exists.
29688      *
29689      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/has)
29690      */
29691     has(name: string, value?: string): boolean;
29692     /**
29693      * Sets the value associated to a given search parameter to the given value. If there were several values, delete the others.
29694      *
29695      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/set)
29696      */
29697     set(name: string, value: string): void;
29698     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/sort) */
29699     sort(): void;
29700     /** Returns a string containing a query string suitable for use in a URL. Does not include the question mark. */
29701     toString(): string;
29702     forEach(callbackfn: (value: string, key: string, parent: URLSearchParams) => void, thisArg?: any): void;
29705 declare var URLSearchParams: {
29706     prototype: URLSearchParams;
29707     new(init?: string[][] | Record<string, string> | string): URLSearchParams;
29708     isInstance(obj): obj is URLSearchParams;
29711 interface UniFFIPointer {
29714 declare var UniFFIPointer: {
29715     prototype: UniFFIPointer;
29716     new(): UniFFIPointer;
29717     isInstance(obj): obj is UniFFIPointer;
29720 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UserActivation) */
29721 interface UserActivation {
29722     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UserActivation/hasBeenActive) */
29723     readonly hasBeenActive: boolean;
29724     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UserActivation/hasBeenActive) */
29725     readonly isActive: boolean;
29728 declare var UserActivation: {
29729     prototype: UserActivation;
29730     new(): UserActivation;
29731     isInstance(obj): obj is UserActivation;
29734 interface UserProximityEvent extends Event {
29735     readonly near: boolean;
29738 declare var UserProximityEvent: {
29739     prototype: UserProximityEvent;
29740     new(type: string, eventInitDict?: UserProximityEventInit): UserProximityEvent;
29741     isInstance(obj): obj is UserProximityEvent;
29745  * This WebVR API interface represents any VR device supported by this API. It includes generic information such as device IDs and descriptions, as well as methods for starting to present a VR scene, retrieving eye parameters and display capabilities, and other important functionality.
29746  * @deprecated
29747  * Available only in secure contexts.
29749  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay)
29750  */
29751 interface VRDisplay extends EventTarget {
29752     /**
29753      * @deprecated
29754      *
29755      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/capabilities)
29756      */
29757     readonly capabilities: VRDisplayCapabilities;
29758     /**
29759      * @deprecated
29760      *
29761      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/depthFar)
29762      */
29763     depthFar: number;
29764     /**
29765      * @deprecated
29766      *
29767      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/depthNear)
29768      */
29769     depthNear: number;
29770     /**
29771      * @deprecated
29772      *
29773      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/displayId)
29774      */
29775     readonly displayId: number;
29776     /**
29777      * @deprecated
29778      *
29779      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/displayName)
29780      */
29781     readonly displayName: string;
29782     groupMask: number;
29783     /**
29784      * @deprecated
29785      *
29786      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/isConnected)
29787      */
29788     readonly isConnected: boolean;
29789     /**
29790      * @deprecated
29791      *
29792      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/isPresenting)
29793      */
29794     readonly isPresenting: boolean;
29795     readonly presentingGroups: number;
29796     /**
29797      * @deprecated
29798      *
29799      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/stageParameters)
29800      */
29801     readonly stageParameters: VRStageParameters | null;
29802     /**
29803      * @deprecated
29804      *
29805      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/cancelAnimationFrame)
29806      */
29807     cancelAnimationFrame(handle: number): void;
29808     /**
29809      * @deprecated
29810      *
29811      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/exitPresent)
29812      */
29813     exitPresent(): Promise<void>;
29814     /**
29815      * @deprecated
29816      *
29817      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/getEyeParameters)
29818      */
29819     getEyeParameters(whichEye: VREye): VREyeParameters;
29820     /**
29821      * @deprecated
29822      *
29823      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/getFrameData)
29824      */
29825     getFrameData(frameData: VRFrameData): boolean;
29826     /**
29827      * @deprecated
29828      *
29829      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/getLayers)
29830      */
29831     getLayers(): VRLayer[];
29832     /**
29833      * @deprecated
29834      *
29835      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/getPose)
29836      */
29837     getPose(): VRPose;
29838     /**
29839      * @deprecated
29840      *
29841      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/requestAnimationFrame)
29842      */
29843     requestAnimationFrame(callback: FrameRequestCallback): number;
29844     /**
29845      * @deprecated
29846      *
29847      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/requestPresent)
29848      */
29849     requestPresent(layers: VRLayer[]): Promise<void>;
29850     /**
29851      * @deprecated
29852      *
29853      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/resetPose)
29854      */
29855     resetPose(): void;
29856     /**
29857      * @deprecated
29858      *
29859      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplay/submitFrame)
29860      */
29861     submitFrame(): void;
29864 /** @deprecated */
29865 declare var VRDisplay: {
29866     prototype: VRDisplay;
29867     new(): VRDisplay;
29868     isInstance(obj): obj is VRDisplay;
29872  * This WebVR API interface describes the capabilities of a VRDisplay â€” its features can be used to perform VR device capability tests, for example can it return position information.
29873  * @deprecated
29874  * Available only in secure contexts.
29876  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayCapabilities)
29877  */
29878 interface VRDisplayCapabilities {
29879     /**
29880      * @deprecated
29881      *
29882      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayCapabilities/canPresent)
29883      */
29884     readonly canPresent: boolean;
29885     /**
29886      * @deprecated
29887      *
29888      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayCapabilities/hasExternalDisplay)
29889      */
29890     readonly hasExternalDisplay: boolean;
29891     /**
29892      * @deprecated
29893      *
29894      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayCapabilities/hasOrientation)
29895      */
29896     readonly hasOrientation: boolean;
29897     /**
29898      * @deprecated
29899      *
29900      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayCapabilities/hasPosition)
29901      */
29902     readonly hasPosition: boolean;
29903     /**
29904      * @deprecated
29905      *
29906      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayCapabilities/maxLayers)
29907      */
29908     readonly maxLayers: number;
29911 /** @deprecated */
29912 declare var VRDisplayCapabilities: {
29913     prototype: VRDisplayCapabilities;
29914     new(): VRDisplayCapabilities;
29915     isInstance(obj): obj is VRDisplayCapabilities;
29919  * This WebVR API interface represents represents the event object of WebVR-related events (see the list of WebVR window extensions).
29920  * @deprecated
29921  * Available only in secure contexts.
29923  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayEvent)
29924  */
29925 interface VRDisplayEvent extends Event {
29926     /**
29927      * @deprecated
29928      *
29929      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayEvent/display)
29930      */
29931     readonly display: VRDisplay;
29932     /**
29933      * @deprecated
29934      *
29935      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRDisplayEvent/reason)
29936      */
29937     readonly reason: VRDisplayEventReason | null;
29940 /** @deprecated */
29941 declare var VRDisplayEvent: {
29942     prototype: VRDisplayEvent;
29943     new(type: string, eventInitDict: VRDisplayEventInit): VRDisplayEvent;
29944     isInstance(obj): obj is VRDisplayEvent;
29948  * This WebVR API interface represents all the information required to correctly render a scene for a given eye, including field of view information.
29949  * @deprecated
29950  * Available only in secure contexts.
29952  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VREyeParameters)
29953  */
29954 interface VREyeParameters {
29955     /**
29956      * @deprecated
29957      *
29958      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VREyeParameters/fieldOfView)
29959      */
29960     readonly fieldOfView: VRFieldOfView;
29961     /**
29962      * @deprecated
29963      *
29964      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VREyeParameters/offset)
29965      */
29966     readonly offset: Float32Array;
29967     /**
29968      * @deprecated
29969      *
29970      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VREyeParameters/renderHeight)
29971      */
29972     readonly renderHeight: number;
29973     /**
29974      * @deprecated
29975      *
29976      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VREyeParameters/renderWidth)
29977      */
29978     readonly renderWidth: number;
29981 /** @deprecated */
29982 declare var VREyeParameters: {
29983     prototype: VREyeParameters;
29984     new(): VREyeParameters;
29985     isInstance(obj): obj is VREyeParameters;
29989  * This WebVR API interface represents a field of view defined by 4 different degree values describing the view from a center point.
29990  * @deprecated
29991  * Available only in secure contexts.
29993  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFieldOfView)
29994  */
29995 interface VRFieldOfView {
29996     /**
29997      * @deprecated
29998      *
29999      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFieldOfView/downDegrees)
30000      */
30001     readonly downDegrees: number;
30002     /**
30003      * @deprecated
30004      *
30005      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFieldOfView/leftDegrees)
30006      */
30007     readonly leftDegrees: number;
30008     /**
30009      * @deprecated
30010      *
30011      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFieldOfView/rightDegrees)
30012      */
30013     readonly rightDegrees: number;
30014     /**
30015      * @deprecated
30016      *
30017      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFieldOfView/upDegrees)
30018      */
30019     readonly upDegrees: number;
30022 /** @deprecated */
30023 declare var VRFieldOfView: {
30024     prototype: VRFieldOfView;
30025     new(): VRFieldOfView;
30026     isInstance(obj): obj is VRFieldOfView;
30030  * This WebVR API interface represents all the information needed to render a single frame of a VR scene; constructed by VRDisplay.getFrameData().
30031  * @deprecated
30032  * Available only in secure contexts.
30034  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFrameData)
30035  */
30036 interface VRFrameData {
30037     /**
30038      * @deprecated
30039      *
30040      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFrameData/leftProjectionMatrix)
30041      */
30042     readonly leftProjectionMatrix: Float32Array;
30043     /**
30044      * @deprecated
30045      *
30046      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFrameData/leftViewMatrix)
30047      */
30048     readonly leftViewMatrix: Float32Array;
30049     /**
30050      * @deprecated
30051      *
30052      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFrameData/pose)
30053      */
30054     readonly pose: VRPose;
30055     /**
30056      * @deprecated
30057      *
30058      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFrameData/rightProjectionMatrix)
30059      */
30060     readonly rightProjectionMatrix: Float32Array;
30061     /**
30062      * @deprecated
30063      *
30064      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFrameData/rightViewMatrix)
30065      */
30066     readonly rightViewMatrix: Float32Array;
30067     /**
30068      * @deprecated
30069      *
30070      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRFrameData/timestamp)
30071      */
30072     readonly timestamp: DOMHighResTimeStamp;
30075 /** @deprecated */
30076 declare var VRFrameData: {
30077     prototype: VRFrameData;
30078     new(): VRFrameData;
30079     isInstance(obj): obj is VRFrameData;
30082 interface VRMockController {
30083     axisCount: number;
30084     buttonCount: number;
30085     capAngularAcceleration: boolean;
30086     capLinearAcceleration: boolean;
30087     capOrientation: boolean;
30088     capPosition: boolean;
30089     hand: GamepadHand;
30090     hapticCount: number;
30091     clear(): void;
30092     create(): void;
30093     setAxisValue(axisIdx: number, value: number): void;
30094     setButtonPressed(buttonIdx: number, pressed: boolean): void;
30095     setButtonTouched(buttonIdx: number, touched: boolean): void;
30096     setButtonTrigger(buttonIdx: number, trigger: number): void;
30097     setPose(position: Float32Array | null, linearVelocity: Float32Array | null, linearAcceleration: Float32Array | null, orientation: Float32Array | null, angularVelocity: Float32Array | null, angularAcceleration: Float32Array | null): void;
30100 declare var VRMockController: {
30101     prototype: VRMockController;
30102     new(): VRMockController;
30103     isInstance(obj): obj is VRMockController;
30106 interface VRMockDisplay {
30107     capAngularAcceleration: boolean;
30108     capExternal: boolean;
30109     capLinearAcceleration: boolean;
30110     capMountDetection: boolean;
30111     capOrientation: boolean;
30112     capPosition: boolean;
30113     capPositionEmulated: boolean;
30114     capPresent: boolean;
30115     capStageParameters: boolean;
30116     create(): void;
30117     setConnected(connected: boolean): void;
30118     setEyeFOV(eye: VREye, upDegree: number, rightDegree: number, downDegree: number, leftDegree: number): void;
30119     setEyeOffset(eye: VREye, offsetX: number, offsetY: number, offsetZ: number): void;
30120     setEyeResolution(renderWidth: number, renderHeight: number): void;
30121     setMounted(mounted: boolean): void;
30122     setPose(position: Float32Array | null, linearVelocity: Float32Array | null, linearAcceleration: Float32Array | null, orientation: Float32Array | null, angularVelocity: Float32Array | null, angularAcceleration: Float32Array | null): void;
30123     setSittingToStandingTransform(sittingToStandingTransform: Float32Array): void;
30124     setStageSize(width: number, height: number): void;
30127 declare var VRMockDisplay: {
30128     prototype: VRMockDisplay;
30129     new(): VRMockDisplay;
30130     isInstance(obj): obj is VRMockDisplay;
30134  * This WebVR API interface represents the state of a VR sensor at a given timestamp (which includes orientation, position, velocity, and acceleration information.)
30135  * @deprecated
30136  * Available only in secure contexts.
30138  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRPose)
30139  */
30140 interface VRPose {
30141     /**
30142      * @deprecated
30143      *
30144      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRPose/angularAcceleration)
30145      */
30146     readonly angularAcceleration: Float32Array | null;
30147     /**
30148      * @deprecated
30149      *
30150      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRPose/angularVelocity)
30151      */
30152     readonly angularVelocity: Float32Array | null;
30153     /**
30154      * @deprecated
30155      *
30156      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRPose/linearAcceleration)
30157      */
30158     readonly linearAcceleration: Float32Array | null;
30159     /**
30160      * @deprecated
30161      *
30162      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRPose/linearVelocity)
30163      */
30164     readonly linearVelocity: Float32Array | null;
30165     /**
30166      * @deprecated
30167      *
30168      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRPose/orientation)
30169      */
30170     readonly orientation: Float32Array | null;
30171     /**
30172      * @deprecated
30173      *
30174      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRPose/position)
30175      */
30176     readonly position: Float32Array | null;
30179 /** @deprecated */
30180 declare var VRPose: {
30181     prototype: VRPose;
30182     new(): VRPose;
30183     isInstance(obj): obj is VRPose;
30186 interface VRServiceTest {
30187     acknowledgeFrame(): void;
30188     captureFrame(): void;
30189     clearAll(): void;
30190     commit(): void;
30191     end(): void;
30192     getVRController(controllerIdx: number): VRMockController;
30193     getVRDisplay(): VRMockDisplay;
30194     rejectFrame(): void;
30195     reset(): Promise<void>;
30196     run(): Promise<void>;
30197     startTimer(): void;
30198     stopTimer(): void;
30199     timeout(duration: number): void;
30200     wait(duration: number): void;
30201     waitHapticIntensity(controllerIdx: number, hapticIdx: number, intensity: number): void;
30202     waitPresentationEnd(): void;
30203     waitPresentationStart(): void;
30204     waitSubmit(): void;
30207 declare var VRServiceTest: {
30208     prototype: VRServiceTest;
30209     new(): VRServiceTest;
30210     isInstance(obj): obj is VRServiceTest;
30214  * @deprecated
30215  * Available only in secure contexts.
30217  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRStageParameters)
30218  */
30219 interface VRStageParameters {
30220     /**
30221      * @deprecated
30222      *
30223      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRStageParameters/sittingToStandingTransform)
30224      */
30225     readonly sittingToStandingTransform: Float32Array;
30226     /**
30227      * @deprecated
30228      *
30229      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VRStageParameters/sizeX)
30230      */
30231     readonly sizeX: number;
30232     readonly sizeZ: number;
30235 /** @deprecated */
30236 declare var VRStageParameters: {
30237     prototype: VRStageParameters;
30238     new(): VRStageParameters;
30239     isInstance(obj): obj is VRStageParameters;
30242 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue) */
30243 interface VTTCue extends TextTrackCue {
30244     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/align) */
30245     align: AlignSetting;
30246     readonly computedLine: number;
30247     readonly computedPosition: number;
30248     readonly computedPositionAlign: PositionAlignSetting;
30249     displayState: HTMLDivElement | null;
30250     readonly getActive: boolean;
30251     readonly hasBeenReset: boolean;
30252     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/line) */
30253     line: number | AutoKeyword;
30254     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/lineAlign) */
30255     lineAlign: LineAlignSetting;
30256     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/position) */
30257     position: number | AutoKeyword;
30258     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/positionAlign) */
30259     positionAlign: PositionAlignSetting;
30260     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/region) */
30261     region: VTTRegion | null;
30262     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/size) */
30263     size: number;
30264     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/snapToLines) */
30265     snapToLines: boolean;
30266     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/text) */
30267     text: string;
30268     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/vertical) */
30269     vertical: DirectionSetting;
30270     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/getCueAsHTML) */
30271     getCueAsHTML(): DocumentFragment;
30272     addEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: VTTCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
30273     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
30274     removeEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: VTTCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
30275     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
30278 declare var VTTCue: {
30279     prototype: VTTCue;
30280     new(startTime: number, endTime: number, text: string): VTTCue;
30281     isInstance(obj): obj is VTTCue;
30284 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion) */
30285 interface VTTRegion {
30286     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/id) */
30287     id: string;
30288     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/lines) */
30289     lines: number;
30290     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/regionAnchorX) */
30291     regionAnchorX: number;
30292     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/regionAnchorY) */
30293     regionAnchorY: number;
30294     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/scroll) */
30295     scroll: ScrollSetting;
30296     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/viewportAnchorX) */
30297     viewportAnchorX: number;
30298     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/viewportAnchorY) */
30299     viewportAnchorY: number;
30300     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/width) */
30301     width: number;
30304 declare var VTTRegion: {
30305     prototype: VTTRegion;
30306     new(): VTTRegion;
30307     isInstance(obj): obj is VTTRegion;
30311  * The validity states that an element can be in, with respect to constraint validation. Together, they help explain why an element's value fails to validate, if it's not valid.
30313  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState)
30314  */
30315 interface ValidityState {
30316     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/badInput) */
30317     readonly badInput: boolean;
30318     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/customError) */
30319     readonly customError: boolean;
30320     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/patternMismatch) */
30321     readonly patternMismatch: boolean;
30322     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/rangeOverflow) */
30323     readonly rangeOverflow: boolean;
30324     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/rangeUnderflow) */
30325     readonly rangeUnderflow: boolean;
30326     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/stepMismatch) */
30327     readonly stepMismatch: boolean;
30328     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/tooLong) */
30329     readonly tooLong: boolean;
30330     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/tooShort) */
30331     readonly tooShort: boolean;
30332     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/typeMismatch) */
30333     readonly typeMismatch: boolean;
30334     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/valid) */
30335     readonly valid: boolean;
30336     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/valueMissing) */
30337     readonly valueMissing: boolean;
30340 declare var ValidityState: {
30341     prototype: ValidityState;
30342     new(): ValidityState;
30343     isInstance(obj): obj is ValidityState;
30346 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace) */
30347 interface VideoColorSpace {
30348     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/fullRange) */
30349     readonly fullRange: boolean | null;
30350     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/matrix) */
30351     readonly matrix: VideoMatrixCoefficients | null;
30352     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/primaries) */
30353     readonly primaries: VideoColorPrimaries | null;
30354     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/transfer) */
30355     readonly transfer: VideoTransferCharacteristics | null;
30356     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/toJSON) */
30357     toJSON(): any;
30360 declare var VideoColorSpace: {
30361     prototype: VideoColorSpace;
30362     new(init?: VideoColorSpaceInit): VideoColorSpace;
30363     isInstance(obj): obj is VideoColorSpace;
30366 interface VideoDecoderEventMap {
30367     "dequeue": Event;
30371  * Available only in secure contexts.
30373  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder)
30374  */
30375 interface VideoDecoder extends EventTarget {
30376     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/decodeQueueSize) */
30377     readonly decodeQueueSize: number;
30378     ondequeue: ((this: VideoDecoder, ev: Event) => any) | null;
30379     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/state) */
30380     readonly state: CodecState;
30381     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/close) */
30382     close(): void;
30383     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/configure) */
30384     configure(config: VideoDecoderConfig): void;
30385     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/decode) */
30386     decode(chunk: EncodedVideoChunk): void;
30387     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/flush) */
30388     flush(): Promise<void>;
30389     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/reset) */
30390     reset(): void;
30391     addEventListener<K extends keyof VideoDecoderEventMap>(type: K, listener: (this: VideoDecoder, ev: VideoDecoderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
30392     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
30393     removeEventListener<K extends keyof VideoDecoderEventMap>(type: K, listener: (this: VideoDecoder, ev: VideoDecoderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
30394     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
30397 declare var VideoDecoder: {
30398     prototype: VideoDecoder;
30399     new(init: VideoDecoderInit): VideoDecoder;
30400     isConfigSupported(config: VideoDecoderConfig): Promise<VideoDecoderSupport>;
30401     isInstance(obj): obj is VideoDecoder;
30404 interface VideoEncoderEventMap {
30405     "dequeue": Event;
30409  * Available only in secure contexts.
30411  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder)
30412  */
30413 interface VideoEncoder extends EventTarget {
30414     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/encodeQueueSize) */
30415     readonly encodeQueueSize: number;
30416     ondequeue: ((this: VideoEncoder, ev: Event) => any) | null;
30417     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/state) */
30418     readonly state: CodecState;
30419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/close) */
30420     close(): void;
30421     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/configure) */
30422     configure(config: VideoEncoderConfig): void;
30423     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/encode) */
30424     encode(frame: VideoFrame, options?: VideoEncoderEncodeOptions): void;
30425     flush(): Promise<void>;
30426     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/reset) */
30427     reset(): void;
30428     addEventListener<K extends keyof VideoEncoderEventMap>(type: K, listener: (this: VideoEncoder, ev: VideoEncoderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
30429     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
30430     removeEventListener<K extends keyof VideoEncoderEventMap>(type: K, listener: (this: VideoEncoder, ev: VideoEncoderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
30431     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
30434 declare var VideoEncoder: {
30435     prototype: VideoEncoder;
30436     new(init: VideoEncoderInit): VideoEncoder;
30437     isConfigSupported(config: VideoEncoderConfig): Promise<VideoEncoderSupport>;
30438     isInstance(obj): obj is VideoEncoder;
30441 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame) */
30442 interface VideoFrame {
30443     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedHeight) */
30444     readonly codedHeight: number;
30445     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedRect) */
30446     readonly codedRect: DOMRectReadOnly | null;
30447     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedWidth) */
30448     readonly codedWidth: number;
30449     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/colorSpace) */
30450     readonly colorSpace: VideoColorSpace;
30451     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayHeight) */
30452     readonly displayHeight: number;
30453     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayWidth) */
30454     readonly displayWidth: number;
30455     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/duration) */
30456     readonly duration: number | null;
30457     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/format) */
30458     readonly format: VideoPixelFormat | null;
30459     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/timestamp) */
30460     readonly timestamp: number;
30461     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/visibleRect) */
30462     readonly visibleRect: DOMRectReadOnly | null;
30463     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/allocationSize) */
30464     allocationSize(options?: VideoFrameCopyToOptions): number;
30465     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/clone) */
30466     clone(): VideoFrame;
30467     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/close) */
30468     close(): void;
30469     copyTo(destination: ArrayBufferView | ArrayBuffer, options?: VideoFrameCopyToOptions): Promise<PlaneLayout[]>;
30472 declare var VideoFrame: {
30473     prototype: VideoFrame;
30474     new(imageElement: HTMLImageElement, init?: VideoFrameInit): VideoFrame;
30475     new(svgImageElement: SVGImageElement, init?: VideoFrameInit): VideoFrame;
30476     new(canvasElement: HTMLCanvasElement, init?: VideoFrameInit): VideoFrame;
30477     new(videoElement: HTMLVideoElement, init?: VideoFrameInit): VideoFrame;
30478     new(offscreenCanvas: OffscreenCanvas, init?: VideoFrameInit): VideoFrame;
30479     new(imageBitmap: ImageBitmap, init?: VideoFrameInit): VideoFrame;
30480     new(videoFrame: VideoFrame, init?: VideoFrameInit): VideoFrame;
30481     new(bufferView: ArrayBufferView, init: VideoFrameBufferInit): VideoFrame;
30482     new(buffer: ArrayBuffer, init: VideoFrameBufferInit): VideoFrame;
30483     isInstance(obj): obj is VideoFrame;
30487  * Returned by the HTMLVideoElement.getVideoPlaybackQuality() method and contains metrics that can be used to determine the playback quality of a video.
30489  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality)
30490  */
30491 interface VideoPlaybackQuality {
30492     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality/creationTime) */
30493     readonly creationTime: DOMHighResTimeStamp;
30494     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality/droppedVideoFrames) */
30495     readonly droppedVideoFrames: number;
30496     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality/totalVideoFrames) */
30497     readonly totalVideoFrames: number;
30500 declare var VideoPlaybackQuality: {
30501     prototype: VideoPlaybackQuality;
30502     new(): VideoPlaybackQuality;
30503     isInstance(obj): obj is VideoPlaybackQuality;
30507  * A single video track from a <video> element.
30509  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrack)
30510  */
30511 interface VideoTrack {
30512     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrack/id) */
30513     readonly id: string;
30514     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrack/kind) */
30515     readonly kind: string;
30516     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrack/label) */
30517     readonly label: string;
30518     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrack/language) */
30519     readonly language: string;
30520     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrack/selected) */
30521     selected: boolean;
30524 declare var VideoTrack: {
30525     prototype: VideoTrack;
30526     new(): VideoTrack;
30527     isInstance(obj): obj is VideoTrack;
30530 interface VideoTrackListEventMap {
30531     "addtrack": Event;
30532     "change": Event;
30533     "removetrack": Event;
30537  * Used to represent a list of the video tracks contained within a <video> element, with each track represented by a separate VideoTrack object in the list.
30539  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrackList)
30540  */
30541 interface VideoTrackList extends EventTarget {
30542     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrackList/length) */
30543     readonly length: number;
30544     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrackList/addtrack_event) */
30545     onaddtrack: ((this: VideoTrackList, ev: Event) => any) | null;
30546     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrackList/change_event) */
30547     onchange: ((this: VideoTrackList, ev: Event) => any) | null;
30548     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrackList/removetrack_event) */
30549     onremovetrack: ((this: VideoTrackList, ev: Event) => any) | null;
30550     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrackList/selectedIndex) */
30551     readonly selectedIndex: number;
30552     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoTrackList/getTrackById) */
30553     getTrackById(id: string): VideoTrack | null;
30554     addEventListener<K extends keyof VideoTrackListEventMap>(type: K, listener: (this: VideoTrackList, ev: VideoTrackListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
30555     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
30556     removeEventListener<K extends keyof VideoTrackListEventMap>(type: K, listener: (this: VideoTrackList, ev: VideoTrackListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
30557     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
30558     [index: number]: VideoTrack;
30561 declare var VideoTrackList: {
30562     prototype: VideoTrackList;
30563     new(): VideoTrackList;
30564     isInstance(obj): obj is VideoTrackList;
30567 interface VisualViewportEventMap {
30568     "resize": Event;
30569     "scroll": Event;
30572 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport) */
30573 interface VisualViewport extends EventTarget {
30574     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/height) */
30575     readonly height: number;
30576     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/offsetLeft) */
30577     readonly offsetLeft: number;
30578     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/offsetTop) */
30579     readonly offsetTop: number;
30580     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/resize_event) */
30581     onresize: ((this: VisualViewport, ev: Event) => any) | null;
30582     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/scroll_event) */
30583     onscroll: ((this: VisualViewport, ev: Event) => any) | null;
30584     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/pageLeft) */
30585     readonly pageLeft: number;
30586     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/pageTop) */
30587     readonly pageTop: number;
30588     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/scale) */
30589     readonly scale: number;
30590     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/width) */
30591     readonly width: number;
30592     addEventListener<K extends keyof VisualViewportEventMap>(type: K, listener: (this: VisualViewport, ev: VisualViewportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
30593     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
30594     removeEventListener<K extends keyof VisualViewportEventMap>(type: K, listener: (this: VisualViewport, ev: VisualViewportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
30595     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
30598 declare var VisualViewport: {
30599     prototype: VisualViewport;
30600     new(): VisualViewport;
30601     isInstance(obj): obj is VisualViewport;
30604 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_color_buffer_float) */
30605 interface WEBGL_color_buffer_float {
30606     readonly RGBA32F_EXT: 0x8814;
30607     readonly RGB32F_EXT: 0x8815;
30608     readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT: 0x8211;
30609     readonly UNSIGNED_NORMALIZED_EXT: 0x8C17;
30612 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_astc) */
30613 interface WEBGL_compressed_texture_astc {
30614     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_astc/getSupportedProfiles) */
30615     getSupportedProfiles(): string[] | null;
30616     readonly COMPRESSED_RGBA_ASTC_4x4_KHR: 0x93B0;
30617     readonly COMPRESSED_RGBA_ASTC_5x4_KHR: 0x93B1;
30618     readonly COMPRESSED_RGBA_ASTC_5x5_KHR: 0x93B2;
30619     readonly COMPRESSED_RGBA_ASTC_6x5_KHR: 0x93B3;
30620     readonly COMPRESSED_RGBA_ASTC_6x6_KHR: 0x93B4;
30621     readonly COMPRESSED_RGBA_ASTC_8x5_KHR: 0x93B5;
30622     readonly COMPRESSED_RGBA_ASTC_8x6_KHR: 0x93B6;
30623     readonly COMPRESSED_RGBA_ASTC_8x8_KHR: 0x93B7;
30624     readonly COMPRESSED_RGBA_ASTC_10x5_KHR: 0x93B8;
30625     readonly COMPRESSED_RGBA_ASTC_10x6_KHR: 0x93B9;
30626     readonly COMPRESSED_RGBA_ASTC_10x8_KHR: 0x93BA;
30627     readonly COMPRESSED_RGBA_ASTC_10x10_KHR: 0x93BB;
30628     readonly COMPRESSED_RGBA_ASTC_12x10_KHR: 0x93BC;
30629     readonly COMPRESSED_RGBA_ASTC_12x12_KHR: 0x93BD;
30630     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR: 0x93D0;
30631     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR: 0x93D1;
30632     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR: 0x93D2;
30633     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR: 0x93D3;
30634     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR: 0x93D4;
30635     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR: 0x93D5;
30636     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR: 0x93D6;
30637     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR: 0x93D7;
30638     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR: 0x93D8;
30639     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR: 0x93D9;
30640     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR: 0x93DA;
30641     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR: 0x93DB;
30642     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR: 0x93DC;
30643     readonly COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR: 0x93DD;
30646 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_etc) */
30647 interface WEBGL_compressed_texture_etc {
30648     readonly COMPRESSED_R11_EAC: 0x9270;
30649     readonly COMPRESSED_SIGNED_R11_EAC: 0x9271;
30650     readonly COMPRESSED_RG11_EAC: 0x9272;
30651     readonly COMPRESSED_SIGNED_RG11_EAC: 0x9273;
30652     readonly COMPRESSED_RGB8_ETC2: 0x9274;
30653     readonly COMPRESSED_SRGB8_ETC2: 0x9275;
30654     readonly COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9276;
30655     readonly COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9277;
30656     readonly COMPRESSED_RGBA8_ETC2_EAC: 0x9278;
30657     readonly COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 0x9279;
30660 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_etc1) */
30661 interface WEBGL_compressed_texture_etc1 {
30662     readonly COMPRESSED_RGB_ETC1_WEBGL: 0x8D64;
30665 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_pvrtc) */
30666 interface WEBGL_compressed_texture_pvrtc {
30667     readonly COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 0x8C00;
30668     readonly COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 0x8C01;
30669     readonly COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 0x8C02;
30670     readonly COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 0x8C03;
30674  * The WEBGL_compressed_texture_s3tc extension is part of the WebGL API and exposes four S3TC compressed texture formats.
30676  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_s3tc)
30677  */
30678 interface WEBGL_compressed_texture_s3tc {
30679     readonly COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83F0;
30680     readonly COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83F1;
30681     readonly COMPRESSED_RGBA_S3TC_DXT3_EXT: 0x83F2;
30682     readonly COMPRESSED_RGBA_S3TC_DXT5_EXT: 0x83F3;
30685 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_s3tc_srgb) */
30686 interface WEBGL_compressed_texture_s3tc_srgb {
30687     readonly COMPRESSED_SRGB_S3TC_DXT1_EXT: 0x8C4C;
30688     readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 0x8C4D;
30689     readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 0x8C4E;
30690     readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: 0x8C4F;
30694  * The WEBGL_debug_renderer_info extension is part of the WebGL API and exposes two constants with information about the graphics driver for debugging purposes.
30696  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_renderer_info)
30697  */
30698 interface WEBGL_debug_renderer_info {
30699     readonly UNMASKED_VENDOR_WEBGL: 0x9245;
30700     readonly UNMASKED_RENDERER_WEBGL: 0x9246;
30703 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_shaders) */
30704 interface WEBGL_debug_shaders {
30705     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_shaders/getTranslatedShaderSource) */
30706     getTranslatedShaderSource(shader: WebGLShader): string;
30710  * The WEBGL_depth_texture extension is part of the WebGL API and defines 2D depth and depth-stencil textures.
30712  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_depth_texture)
30713  */
30714 interface WEBGL_depth_texture {
30715     readonly UNSIGNED_INT_24_8_WEBGL: 0x84FA;
30718 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers) */
30719 interface WEBGL_draw_buffers {
30720     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers/drawBuffersWEBGL) */
30721     drawBuffersWEBGL(buffers: GLenum[]): void;
30722     readonly COLOR_ATTACHMENT0_WEBGL: 0x8CE0;
30723     readonly COLOR_ATTACHMENT1_WEBGL: 0x8CE1;
30724     readonly COLOR_ATTACHMENT2_WEBGL: 0x8CE2;
30725     readonly COLOR_ATTACHMENT3_WEBGL: 0x8CE3;
30726     readonly COLOR_ATTACHMENT4_WEBGL: 0x8CE4;
30727     readonly COLOR_ATTACHMENT5_WEBGL: 0x8CE5;
30728     readonly COLOR_ATTACHMENT6_WEBGL: 0x8CE6;
30729     readonly COLOR_ATTACHMENT7_WEBGL: 0x8CE7;
30730     readonly COLOR_ATTACHMENT8_WEBGL: 0x8CE8;
30731     readonly COLOR_ATTACHMENT9_WEBGL: 0x8CE9;
30732     readonly COLOR_ATTACHMENT10_WEBGL: 0x8CEA;
30733     readonly COLOR_ATTACHMENT11_WEBGL: 0x8CEB;
30734     readonly COLOR_ATTACHMENT12_WEBGL: 0x8CEC;
30735     readonly COLOR_ATTACHMENT13_WEBGL: 0x8CED;
30736     readonly COLOR_ATTACHMENT14_WEBGL: 0x8CEE;
30737     readonly COLOR_ATTACHMENT15_WEBGL: 0x8CEF;
30738     readonly DRAW_BUFFER0_WEBGL: 0x8825;
30739     readonly DRAW_BUFFER1_WEBGL: 0x8826;
30740     readonly DRAW_BUFFER2_WEBGL: 0x8827;
30741     readonly DRAW_BUFFER3_WEBGL: 0x8828;
30742     readonly DRAW_BUFFER4_WEBGL: 0x8829;
30743     readonly DRAW_BUFFER5_WEBGL: 0x882A;
30744     readonly DRAW_BUFFER6_WEBGL: 0x882B;
30745     readonly DRAW_BUFFER7_WEBGL: 0x882C;
30746     readonly DRAW_BUFFER8_WEBGL: 0x882D;
30747     readonly DRAW_BUFFER9_WEBGL: 0x882E;
30748     readonly DRAW_BUFFER10_WEBGL: 0x882F;
30749     readonly DRAW_BUFFER11_WEBGL: 0x8830;
30750     readonly DRAW_BUFFER12_WEBGL: 0x8831;
30751     readonly DRAW_BUFFER13_WEBGL: 0x8832;
30752     readonly DRAW_BUFFER14_WEBGL: 0x8833;
30753     readonly DRAW_BUFFER15_WEBGL: 0x8834;
30754     readonly MAX_COLOR_ATTACHMENTS_WEBGL: 0x8CDF;
30755     readonly MAX_DRAW_BUFFERS_WEBGL: 0x8824;
30758 interface WEBGL_explicit_present {
30759     present(): void;
30762 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context) */
30763 interface WEBGL_lose_context {
30764     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context/loseContext) */
30765     loseContext(): void;
30766     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context/restoreContext) */
30767     restoreContext(): void;
30770 interface WEBGL_provoking_vertex {
30771     provokingVertexWEBGL(provokeMode: GLenum): void;
30772     readonly FIRST_VERTEX_CONVENTION_WEBGL: 0x8E4D;
30773     readonly LAST_VERTEX_CONVENTION_WEBGL: 0x8E4E;
30774     readonly PROVOKING_VERTEX_WEBGL: 0x8E4F;
30778  * Available only in secure contexts.
30780  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLock)
30781  */
30782 interface WakeLock {
30783     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLock/request) */
30784     request(type?: WakeLockType): Promise<WakeLockSentinel>;
30787 declare var WakeLock: {
30788     prototype: WakeLock;
30789     new(): WakeLock;
30790     isInstance(obj): obj is WakeLock;
30793 interface WakeLockSentinelEventMap {
30794     "release": Event;
30798  * Available only in secure contexts.
30800  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel)
30801  */
30802 interface WakeLockSentinel extends EventTarget {
30803     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/release_event) */
30804     onrelease: ((this: WakeLockSentinel, ev: Event) => any) | null;
30805     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/released) */
30806     readonly released: boolean;
30807     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/type) */
30808     readonly type: WakeLockType;
30809     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/release) */
30810     release(): Promise<void>;
30811     addEventListener<K extends keyof WakeLockSentinelEventMap>(type: K, listener: (this: WakeLockSentinel, ev: WakeLockSentinelEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
30812     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
30813     removeEventListener<K extends keyof WakeLockSentinelEventMap>(type: K, listener: (this: WakeLockSentinel, ev: WakeLockSentinelEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
30814     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
30817 declare var WakeLockSentinel: {
30818     prototype: WakeLockSentinel;
30819     new(): WakeLockSentinel;
30820     isInstance(obj): obj is WakeLockSentinel;
30824  * A WaveShaperNode always has exactly one input and one output.
30826  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WaveShaperNode)
30827  */
30828 interface WaveShaperNode extends AudioNode, AudioNodePassThrough {
30829     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WaveShaperNode/curve) */
30830     curve: Float32Array | null;
30831     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WaveShaperNode/oversample) */
30832     oversample: OverSampleType;
30835 declare var WaveShaperNode: {
30836     prototype: WaveShaperNode;
30837     new(context: BaseAudioContext, options?: WaveShaperOptions): WaveShaperNode;
30838     isInstance(obj): obj is WaveShaperNode;
30841 interface WebBrowserPersistable {
30842     startPersistence(aContext: BrowsingContext | null, aRecv: nsIWebBrowserPersistDocumentReceiver): void;
30845 interface WebExtensionContentScript extends MozDocumentMatcher {
30846     readonly cssPaths: string[];
30847     readonly jsPaths: string[];
30848     readonly runAt: ContentScriptRunAt;
30851 declare var WebExtensionContentScript: {
30852     prototype: WebExtensionContentScript;
30853     new(extension: WebExtensionPolicy, options: WebExtensionContentScriptInit): WebExtensionContentScript;
30854     isInstance(obj): obj is WebExtensionContentScript;
30857 interface WebExtensionPolicy {
30858     active: boolean;
30859     allowedOrigins: MatchPatternSet;
30860     readonly baseCSP: string;
30861     readonly baseURL: string;
30862     readonly browsingContextGroupId: number;
30863     readonly contentScripts: WebExtensionContentScript[];
30864     readonly extensionPageCSP: string;
30865     readonly id: string;
30866     ignoreQuarantine: boolean;
30867     readonly isPrivileged: boolean;
30868     readonly manifestVersion: number;
30869     readonly mozExtensionHostname: string;
30870     readonly name: string;
30871     permissions: string[];
30872     readonly privateBrowsingAllowed: boolean;
30873     readonly readyPromise: any;
30874     readonly temporarilyInstalled: boolean;
30875     readonly type: string;
30876     canAccessURI(uri: URI, explicit?: boolean): boolean;
30877     canAccessWindow(window: WindowProxy): boolean;
30878     getURL(path?: string): string;
30879     hasPermission(permission: string): boolean;
30880     injectContentScripts(): void;
30881     isManifestBackgroundWorker(workerURL: string): boolean;
30882     isWebAccessiblePath(pathname: UTF8String): boolean;
30883     localize(unlocalizedText: string): string;
30884     quarantinedFromURI(uri: URI): boolean;
30885     registerContentScript(script: WebExtensionContentScript): void;
30886     sourceMayAccessPath(sourceURI: URI, pathname: UTF8String): boolean;
30887     unregisterContentScript(script: WebExtensionContentScript): void;
30890 declare var WebExtensionPolicy: {
30891     prototype: WebExtensionPolicy;
30892     new(options: WebExtensionInit): WebExtensionPolicy;
30893     readonly backgroundServiceWorkerEnabled: boolean;
30894     readonly isExtensionProcess: boolean;
30895     readonly quarantinedDomainsEnabled: boolean;
30896     readonly useRemoteWebExtensions: boolean;
30897     getActiveExtensions(): WebExtensionPolicy[];
30898     getByHostname(hostname: string): WebExtensionPolicy | null;
30899     getByID(id: string): WebExtensionPolicy | null;
30900     getByURI(uri: URI): WebExtensionPolicy | null;
30901     isQuarantinedURI(uri: URI): boolean;
30902     isRestrictedURI(uri: URI): boolean;
30903     isInstance(obj): obj is WebExtensionPolicy;
30906 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext) */
30907 interface WebGL2RenderingContext extends WebGL2RenderingContextBase, WebGLRenderingContextBase {
30910 declare var WebGL2RenderingContext: {
30911     prototype: WebGL2RenderingContext;
30912     new(): WebGL2RenderingContext;
30913     readonly READ_BUFFER: 0x0C02;
30914     readonly UNPACK_ROW_LENGTH: 0x0CF2;
30915     readonly UNPACK_SKIP_ROWS: 0x0CF3;
30916     readonly UNPACK_SKIP_PIXELS: 0x0CF4;
30917     readonly PACK_ROW_LENGTH: 0x0D02;
30918     readonly PACK_SKIP_ROWS: 0x0D03;
30919     readonly PACK_SKIP_PIXELS: 0x0D04;
30920     readonly COLOR: 0x1800;
30921     readonly DEPTH: 0x1801;
30922     readonly STENCIL: 0x1802;
30923     readonly RED: 0x1903;
30924     readonly RGB8: 0x8051;
30925     readonly RGBA8: 0x8058;
30926     readonly RGB10_A2: 0x8059;
30927     readonly TEXTURE_BINDING_3D: 0x806A;
30928     readonly UNPACK_SKIP_IMAGES: 0x806D;
30929     readonly UNPACK_IMAGE_HEIGHT: 0x806E;
30930     readonly TEXTURE_3D: 0x806F;
30931     readonly TEXTURE_WRAP_R: 0x8072;
30932     readonly MAX_3D_TEXTURE_SIZE: 0x8073;
30933     readonly UNSIGNED_INT_2_10_10_10_REV: 0x8368;
30934     readonly MAX_ELEMENTS_VERTICES: 0x80E8;
30935     readonly MAX_ELEMENTS_INDICES: 0x80E9;
30936     readonly TEXTURE_MIN_LOD: 0x813A;
30937     readonly TEXTURE_MAX_LOD: 0x813B;
30938     readonly TEXTURE_BASE_LEVEL: 0x813C;
30939     readonly TEXTURE_MAX_LEVEL: 0x813D;
30940     readonly MIN: 0x8007;
30941     readonly MAX: 0x8008;
30942     readonly DEPTH_COMPONENT24: 0x81A6;
30943     readonly MAX_TEXTURE_LOD_BIAS: 0x84FD;
30944     readonly TEXTURE_COMPARE_MODE: 0x884C;
30945     readonly TEXTURE_COMPARE_FUNC: 0x884D;
30946     readonly CURRENT_QUERY: 0x8865;
30947     readonly QUERY_RESULT: 0x8866;
30948     readonly QUERY_RESULT_AVAILABLE: 0x8867;
30949     readonly STREAM_READ: 0x88E1;
30950     readonly STREAM_COPY: 0x88E2;
30951     readonly STATIC_READ: 0x88E5;
30952     readonly STATIC_COPY: 0x88E6;
30953     readonly DYNAMIC_READ: 0x88E9;
30954     readonly DYNAMIC_COPY: 0x88EA;
30955     readonly MAX_DRAW_BUFFERS: 0x8824;
30956     readonly DRAW_BUFFER0: 0x8825;
30957     readonly DRAW_BUFFER1: 0x8826;
30958     readonly DRAW_BUFFER2: 0x8827;
30959     readonly DRAW_BUFFER3: 0x8828;
30960     readonly DRAW_BUFFER4: 0x8829;
30961     readonly DRAW_BUFFER5: 0x882A;
30962     readonly DRAW_BUFFER6: 0x882B;
30963     readonly DRAW_BUFFER7: 0x882C;
30964     readonly DRAW_BUFFER8: 0x882D;
30965     readonly DRAW_BUFFER9: 0x882E;
30966     readonly DRAW_BUFFER10: 0x882F;
30967     readonly DRAW_BUFFER11: 0x8830;
30968     readonly DRAW_BUFFER12: 0x8831;
30969     readonly DRAW_BUFFER13: 0x8832;
30970     readonly DRAW_BUFFER14: 0x8833;
30971     readonly DRAW_BUFFER15: 0x8834;
30972     readonly MAX_FRAGMENT_UNIFORM_COMPONENTS: 0x8B49;
30973     readonly MAX_VERTEX_UNIFORM_COMPONENTS: 0x8B4A;
30974     readonly SAMPLER_3D: 0x8B5F;
30975     readonly SAMPLER_2D_SHADOW: 0x8B62;
30976     readonly FRAGMENT_SHADER_DERIVATIVE_HINT: 0x8B8B;
30977     readonly PIXEL_PACK_BUFFER: 0x88EB;
30978     readonly PIXEL_UNPACK_BUFFER: 0x88EC;
30979     readonly PIXEL_PACK_BUFFER_BINDING: 0x88ED;
30980     readonly PIXEL_UNPACK_BUFFER_BINDING: 0x88EF;
30981     readonly FLOAT_MAT2x3: 0x8B65;
30982     readonly FLOAT_MAT2x4: 0x8B66;
30983     readonly FLOAT_MAT3x2: 0x8B67;
30984     readonly FLOAT_MAT3x4: 0x8B68;
30985     readonly FLOAT_MAT4x2: 0x8B69;
30986     readonly FLOAT_MAT4x3: 0x8B6A;
30987     readonly SRGB: 0x8C40;
30988     readonly SRGB8: 0x8C41;
30989     readonly SRGB8_ALPHA8: 0x8C43;
30990     readonly COMPARE_REF_TO_TEXTURE: 0x884E;
30991     readonly RGBA32F: 0x8814;
30992     readonly RGB32F: 0x8815;
30993     readonly RGBA16F: 0x881A;
30994     readonly RGB16F: 0x881B;
30995     readonly VERTEX_ATTRIB_ARRAY_INTEGER: 0x88FD;
30996     readonly MAX_ARRAY_TEXTURE_LAYERS: 0x88FF;
30997     readonly MIN_PROGRAM_TEXEL_OFFSET: 0x8904;
30998     readonly MAX_PROGRAM_TEXEL_OFFSET: 0x8905;
30999     readonly MAX_VARYING_COMPONENTS: 0x8B4B;
31000     readonly TEXTURE_2D_ARRAY: 0x8C1A;
31001     readonly TEXTURE_BINDING_2D_ARRAY: 0x8C1D;
31002     readonly R11F_G11F_B10F: 0x8C3A;
31003     readonly UNSIGNED_INT_10F_11F_11F_REV: 0x8C3B;
31004     readonly RGB9_E5: 0x8C3D;
31005     readonly UNSIGNED_INT_5_9_9_9_REV: 0x8C3E;
31006     readonly TRANSFORM_FEEDBACK_BUFFER_MODE: 0x8C7F;
31007     readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: 0x8C80;
31008     readonly TRANSFORM_FEEDBACK_VARYINGS: 0x8C83;
31009     readonly TRANSFORM_FEEDBACK_BUFFER_START: 0x8C84;
31010     readonly TRANSFORM_FEEDBACK_BUFFER_SIZE: 0x8C85;
31011     readonly TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: 0x8C88;
31012     readonly RASTERIZER_DISCARD: 0x8C89;
31013     readonly MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: 0x8C8A;
31014     readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: 0x8C8B;
31015     readonly INTERLEAVED_ATTRIBS: 0x8C8C;
31016     readonly SEPARATE_ATTRIBS: 0x8C8D;
31017     readonly TRANSFORM_FEEDBACK_BUFFER: 0x8C8E;
31018     readonly TRANSFORM_FEEDBACK_BUFFER_BINDING: 0x8C8F;
31019     readonly RGBA32UI: 0x8D70;
31020     readonly RGB32UI: 0x8D71;
31021     readonly RGBA16UI: 0x8D76;
31022     readonly RGB16UI: 0x8D77;
31023     readonly RGBA8UI: 0x8D7C;
31024     readonly RGB8UI: 0x8D7D;
31025     readonly RGBA32I: 0x8D82;
31026     readonly RGB32I: 0x8D83;
31027     readonly RGBA16I: 0x8D88;
31028     readonly RGB16I: 0x8D89;
31029     readonly RGBA8I: 0x8D8E;
31030     readonly RGB8I: 0x8D8F;
31031     readonly RED_INTEGER: 0x8D94;
31032     readonly RGB_INTEGER: 0x8D98;
31033     readonly RGBA_INTEGER: 0x8D99;
31034     readonly SAMPLER_2D_ARRAY: 0x8DC1;
31035     readonly SAMPLER_2D_ARRAY_SHADOW: 0x8DC4;
31036     readonly SAMPLER_CUBE_SHADOW: 0x8DC5;
31037     readonly UNSIGNED_INT_VEC2: 0x8DC6;
31038     readonly UNSIGNED_INT_VEC3: 0x8DC7;
31039     readonly UNSIGNED_INT_VEC4: 0x8DC8;
31040     readonly INT_SAMPLER_2D: 0x8DCA;
31041     readonly INT_SAMPLER_3D: 0x8DCB;
31042     readonly INT_SAMPLER_CUBE: 0x8DCC;
31043     readonly INT_SAMPLER_2D_ARRAY: 0x8DCF;
31044     readonly UNSIGNED_INT_SAMPLER_2D: 0x8DD2;
31045     readonly UNSIGNED_INT_SAMPLER_3D: 0x8DD3;
31046     readonly UNSIGNED_INT_SAMPLER_CUBE: 0x8DD4;
31047     readonly UNSIGNED_INT_SAMPLER_2D_ARRAY: 0x8DD7;
31048     readonly DEPTH_COMPONENT32F: 0x8CAC;
31049     readonly DEPTH32F_STENCIL8: 0x8CAD;
31050     readonly FLOAT_32_UNSIGNED_INT_24_8_REV: 0x8DAD;
31051     readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: 0x8210;
31052     readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: 0x8211;
31053     readonly FRAMEBUFFER_ATTACHMENT_RED_SIZE: 0x8212;
31054     readonly FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: 0x8213;
31055     readonly FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: 0x8214;
31056     readonly FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: 0x8215;
31057     readonly FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: 0x8216;
31058     readonly FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: 0x8217;
31059     readonly FRAMEBUFFER_DEFAULT: 0x8218;
31060     readonly UNSIGNED_INT_24_8: 0x84FA;
31061     readonly DEPTH24_STENCIL8: 0x88F0;
31062     readonly UNSIGNED_NORMALIZED: 0x8C17;
31063     readonly DRAW_FRAMEBUFFER_BINDING: 0x8CA6;
31064     readonly READ_FRAMEBUFFER: 0x8CA8;
31065     readonly DRAW_FRAMEBUFFER: 0x8CA9;
31066     readonly READ_FRAMEBUFFER_BINDING: 0x8CAA;
31067     readonly RENDERBUFFER_SAMPLES: 0x8CAB;
31068     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: 0x8CD4;
31069     readonly MAX_COLOR_ATTACHMENTS: 0x8CDF;
31070     readonly COLOR_ATTACHMENT1: 0x8CE1;
31071     readonly COLOR_ATTACHMENT2: 0x8CE2;
31072     readonly COLOR_ATTACHMENT3: 0x8CE3;
31073     readonly COLOR_ATTACHMENT4: 0x8CE4;
31074     readonly COLOR_ATTACHMENT5: 0x8CE5;
31075     readonly COLOR_ATTACHMENT6: 0x8CE6;
31076     readonly COLOR_ATTACHMENT7: 0x8CE7;
31077     readonly COLOR_ATTACHMENT8: 0x8CE8;
31078     readonly COLOR_ATTACHMENT9: 0x8CE9;
31079     readonly COLOR_ATTACHMENT10: 0x8CEA;
31080     readonly COLOR_ATTACHMENT11: 0x8CEB;
31081     readonly COLOR_ATTACHMENT12: 0x8CEC;
31082     readonly COLOR_ATTACHMENT13: 0x8CED;
31083     readonly COLOR_ATTACHMENT14: 0x8CEE;
31084     readonly COLOR_ATTACHMENT15: 0x8CEF;
31085     readonly FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: 0x8D56;
31086     readonly MAX_SAMPLES: 0x8D57;
31087     readonly HALF_FLOAT: 0x140B;
31088     readonly RG: 0x8227;
31089     readonly RG_INTEGER: 0x8228;
31090     readonly R8: 0x8229;
31091     readonly RG8: 0x822B;
31092     readonly R16F: 0x822D;
31093     readonly R32F: 0x822E;
31094     readonly RG16F: 0x822F;
31095     readonly RG32F: 0x8230;
31096     readonly R8I: 0x8231;
31097     readonly R8UI: 0x8232;
31098     readonly R16I: 0x8233;
31099     readonly R16UI: 0x8234;
31100     readonly R32I: 0x8235;
31101     readonly R32UI: 0x8236;
31102     readonly RG8I: 0x8237;
31103     readonly RG8UI: 0x8238;
31104     readonly RG16I: 0x8239;
31105     readonly RG16UI: 0x823A;
31106     readonly RG32I: 0x823B;
31107     readonly RG32UI: 0x823C;
31108     readonly VERTEX_ARRAY_BINDING: 0x85B5;
31109     readonly R8_SNORM: 0x8F94;
31110     readonly RG8_SNORM: 0x8F95;
31111     readonly RGB8_SNORM: 0x8F96;
31112     readonly RGBA8_SNORM: 0x8F97;
31113     readonly SIGNED_NORMALIZED: 0x8F9C;
31114     readonly COPY_READ_BUFFER: 0x8F36;
31115     readonly COPY_WRITE_BUFFER: 0x8F37;
31116     readonly COPY_READ_BUFFER_BINDING: 0x8F36;
31117     readonly COPY_WRITE_BUFFER_BINDING: 0x8F37;
31118     readonly UNIFORM_BUFFER: 0x8A11;
31119     readonly UNIFORM_BUFFER_BINDING: 0x8A28;
31120     readonly UNIFORM_BUFFER_START: 0x8A29;
31121     readonly UNIFORM_BUFFER_SIZE: 0x8A2A;
31122     readonly MAX_VERTEX_UNIFORM_BLOCKS: 0x8A2B;
31123     readonly MAX_FRAGMENT_UNIFORM_BLOCKS: 0x8A2D;
31124     readonly MAX_COMBINED_UNIFORM_BLOCKS: 0x8A2E;
31125     readonly MAX_UNIFORM_BUFFER_BINDINGS: 0x8A2F;
31126     readonly MAX_UNIFORM_BLOCK_SIZE: 0x8A30;
31127     readonly MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: 0x8A31;
31128     readonly MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: 0x8A33;
31129     readonly UNIFORM_BUFFER_OFFSET_ALIGNMENT: 0x8A34;
31130     readonly ACTIVE_UNIFORM_BLOCKS: 0x8A36;
31131     readonly UNIFORM_TYPE: 0x8A37;
31132     readonly UNIFORM_SIZE: 0x8A38;
31133     readonly UNIFORM_BLOCK_INDEX: 0x8A3A;
31134     readonly UNIFORM_OFFSET: 0x8A3B;
31135     readonly UNIFORM_ARRAY_STRIDE: 0x8A3C;
31136     readonly UNIFORM_MATRIX_STRIDE: 0x8A3D;
31137     readonly UNIFORM_IS_ROW_MAJOR: 0x8A3E;
31138     readonly UNIFORM_BLOCK_BINDING: 0x8A3F;
31139     readonly UNIFORM_BLOCK_DATA_SIZE: 0x8A40;
31140     readonly UNIFORM_BLOCK_ACTIVE_UNIFORMS: 0x8A42;
31141     readonly UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: 0x8A43;
31142     readonly UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: 0x8A44;
31143     readonly UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: 0x8A46;
31144     readonly INVALID_INDEX: 0xFFFFFFFF;
31145     readonly MAX_VERTEX_OUTPUT_COMPONENTS: 0x9122;
31146     readonly MAX_FRAGMENT_INPUT_COMPONENTS: 0x9125;
31147     readonly MAX_SERVER_WAIT_TIMEOUT: 0x9111;
31148     readonly OBJECT_TYPE: 0x9112;
31149     readonly SYNC_CONDITION: 0x9113;
31150     readonly SYNC_STATUS: 0x9114;
31151     readonly SYNC_FLAGS: 0x9115;
31152     readonly SYNC_FENCE: 0x9116;
31153     readonly SYNC_GPU_COMMANDS_COMPLETE: 0x9117;
31154     readonly UNSIGNALED: 0x9118;
31155     readonly SIGNALED: 0x9119;
31156     readonly ALREADY_SIGNALED: 0x911A;
31157     readonly TIMEOUT_EXPIRED: 0x911B;
31158     readonly CONDITION_SATISFIED: 0x911C;
31159     readonly WAIT_FAILED: 0x911D;
31160     readonly SYNC_FLUSH_COMMANDS_BIT: 0x00000001;
31161     readonly VERTEX_ATTRIB_ARRAY_DIVISOR: 0x88FE;
31162     readonly ANY_SAMPLES_PASSED: 0x8C2F;
31163     readonly ANY_SAMPLES_PASSED_CONSERVATIVE: 0x8D6A;
31164     readonly SAMPLER_BINDING: 0x8919;
31165     readonly RGB10_A2UI: 0x906F;
31166     readonly INT_2_10_10_10_REV: 0x8D9F;
31167     readonly TRANSFORM_FEEDBACK: 0x8E22;
31168     readonly TRANSFORM_FEEDBACK_PAUSED: 0x8E23;
31169     readonly TRANSFORM_FEEDBACK_ACTIVE: 0x8E24;
31170     readonly TRANSFORM_FEEDBACK_BINDING: 0x8E25;
31171     readonly TEXTURE_IMMUTABLE_FORMAT: 0x912F;
31172     readonly MAX_ELEMENT_INDEX: 0x8D6B;
31173     readonly TEXTURE_IMMUTABLE_LEVELS: 0x82DF;
31174     readonly TIMEOUT_IGNORED: -1;
31175     readonly MAX_CLIENT_WAIT_TIMEOUT_WEBGL: 0x9247;
31176     readonly DEPTH_BUFFER_BIT: 0x00000100;
31177     readonly STENCIL_BUFFER_BIT: 0x00000400;
31178     readonly COLOR_BUFFER_BIT: 0x00004000;
31179     readonly POINTS: 0x0000;
31180     readonly LINES: 0x0001;
31181     readonly LINE_LOOP: 0x0002;
31182     readonly LINE_STRIP: 0x0003;
31183     readonly TRIANGLES: 0x0004;
31184     readonly TRIANGLE_STRIP: 0x0005;
31185     readonly TRIANGLE_FAN: 0x0006;
31186     readonly ZERO: 0;
31187     readonly ONE: 1;
31188     readonly SRC_COLOR: 0x0300;
31189     readonly ONE_MINUS_SRC_COLOR: 0x0301;
31190     readonly SRC_ALPHA: 0x0302;
31191     readonly ONE_MINUS_SRC_ALPHA: 0x0303;
31192     readonly DST_ALPHA: 0x0304;
31193     readonly ONE_MINUS_DST_ALPHA: 0x0305;
31194     readonly DST_COLOR: 0x0306;
31195     readonly ONE_MINUS_DST_COLOR: 0x0307;
31196     readonly SRC_ALPHA_SATURATE: 0x0308;
31197     readonly FUNC_ADD: 0x8006;
31198     readonly BLEND_EQUATION: 0x8009;
31199     readonly BLEND_EQUATION_RGB: 0x8009;
31200     readonly BLEND_EQUATION_ALPHA: 0x883D;
31201     readonly FUNC_SUBTRACT: 0x800A;
31202     readonly FUNC_REVERSE_SUBTRACT: 0x800B;
31203     readonly BLEND_DST_RGB: 0x80C8;
31204     readonly BLEND_SRC_RGB: 0x80C9;
31205     readonly BLEND_DST_ALPHA: 0x80CA;
31206     readonly BLEND_SRC_ALPHA: 0x80CB;
31207     readonly CONSTANT_COLOR: 0x8001;
31208     readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
31209     readonly CONSTANT_ALPHA: 0x8003;
31210     readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
31211     readonly BLEND_COLOR: 0x8005;
31212     readonly ARRAY_BUFFER: 0x8892;
31213     readonly ELEMENT_ARRAY_BUFFER: 0x8893;
31214     readonly ARRAY_BUFFER_BINDING: 0x8894;
31215     readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
31216     readonly STREAM_DRAW: 0x88E0;
31217     readonly STATIC_DRAW: 0x88E4;
31218     readonly DYNAMIC_DRAW: 0x88E8;
31219     readonly BUFFER_SIZE: 0x8764;
31220     readonly BUFFER_USAGE: 0x8765;
31221     readonly CURRENT_VERTEX_ATTRIB: 0x8626;
31222     readonly FRONT: 0x0404;
31223     readonly BACK: 0x0405;
31224     readonly FRONT_AND_BACK: 0x0408;
31225     readonly CULL_FACE: 0x0B44;
31226     readonly BLEND: 0x0BE2;
31227     readonly DITHER: 0x0BD0;
31228     readonly STENCIL_TEST: 0x0B90;
31229     readonly DEPTH_TEST: 0x0B71;
31230     readonly SCISSOR_TEST: 0x0C11;
31231     readonly POLYGON_OFFSET_FILL: 0x8037;
31232     readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
31233     readonly SAMPLE_COVERAGE: 0x80A0;
31234     readonly NO_ERROR: 0;
31235     readonly INVALID_ENUM: 0x0500;
31236     readonly INVALID_VALUE: 0x0501;
31237     readonly INVALID_OPERATION: 0x0502;
31238     readonly OUT_OF_MEMORY: 0x0505;
31239     readonly CW: 0x0900;
31240     readonly CCW: 0x0901;
31241     readonly LINE_WIDTH: 0x0B21;
31242     readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
31243     readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
31244     readonly CULL_FACE_MODE: 0x0B45;
31245     readonly FRONT_FACE: 0x0B46;
31246     readonly DEPTH_RANGE: 0x0B70;
31247     readonly DEPTH_WRITEMASK: 0x0B72;
31248     readonly DEPTH_CLEAR_VALUE: 0x0B73;
31249     readonly DEPTH_FUNC: 0x0B74;
31250     readonly STENCIL_CLEAR_VALUE: 0x0B91;
31251     readonly STENCIL_FUNC: 0x0B92;
31252     readonly STENCIL_FAIL: 0x0B94;
31253     readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
31254     readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
31255     readonly STENCIL_REF: 0x0B97;
31256     readonly STENCIL_VALUE_MASK: 0x0B93;
31257     readonly STENCIL_WRITEMASK: 0x0B98;
31258     readonly STENCIL_BACK_FUNC: 0x8800;
31259     readonly STENCIL_BACK_FAIL: 0x8801;
31260     readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
31261     readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
31262     readonly STENCIL_BACK_REF: 0x8CA3;
31263     readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
31264     readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
31265     readonly VIEWPORT: 0x0BA2;
31266     readonly SCISSOR_BOX: 0x0C10;
31267     readonly COLOR_CLEAR_VALUE: 0x0C22;
31268     readonly COLOR_WRITEMASK: 0x0C23;
31269     readonly UNPACK_ALIGNMENT: 0x0CF5;
31270     readonly PACK_ALIGNMENT: 0x0D05;
31271     readonly MAX_TEXTURE_SIZE: 0x0D33;
31272     readonly MAX_VIEWPORT_DIMS: 0x0D3A;
31273     readonly SUBPIXEL_BITS: 0x0D50;
31274     readonly RED_BITS: 0x0D52;
31275     readonly GREEN_BITS: 0x0D53;
31276     readonly BLUE_BITS: 0x0D54;
31277     readonly ALPHA_BITS: 0x0D55;
31278     readonly DEPTH_BITS: 0x0D56;
31279     readonly STENCIL_BITS: 0x0D57;
31280     readonly POLYGON_OFFSET_UNITS: 0x2A00;
31281     readonly POLYGON_OFFSET_FACTOR: 0x8038;
31282     readonly TEXTURE_BINDING_2D: 0x8069;
31283     readonly SAMPLE_BUFFERS: 0x80A8;
31284     readonly SAMPLES: 0x80A9;
31285     readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
31286     readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
31287     readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
31288     readonly DONT_CARE: 0x1100;
31289     readonly FASTEST: 0x1101;
31290     readonly NICEST: 0x1102;
31291     readonly GENERATE_MIPMAP_HINT: 0x8192;
31292     readonly BYTE: 0x1400;
31293     readonly UNSIGNED_BYTE: 0x1401;
31294     readonly SHORT: 0x1402;
31295     readonly UNSIGNED_SHORT: 0x1403;
31296     readonly INT: 0x1404;
31297     readonly UNSIGNED_INT: 0x1405;
31298     readonly FLOAT: 0x1406;
31299     readonly DEPTH_COMPONENT: 0x1902;
31300     readonly ALPHA: 0x1906;
31301     readonly RGB: 0x1907;
31302     readonly RGBA: 0x1908;
31303     readonly LUMINANCE: 0x1909;
31304     readonly LUMINANCE_ALPHA: 0x190A;
31305     readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
31306     readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
31307     readonly UNSIGNED_SHORT_5_6_5: 0x8363;
31308     readonly FRAGMENT_SHADER: 0x8B30;
31309     readonly VERTEX_SHADER: 0x8B31;
31310     readonly MAX_VERTEX_ATTRIBS: 0x8869;
31311     readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
31312     readonly MAX_VARYING_VECTORS: 0x8DFC;
31313     readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
31314     readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
31315     readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
31316     readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
31317     readonly SHADER_TYPE: 0x8B4F;
31318     readonly DELETE_STATUS: 0x8B80;
31319     readonly LINK_STATUS: 0x8B82;
31320     readonly VALIDATE_STATUS: 0x8B83;
31321     readonly ATTACHED_SHADERS: 0x8B85;
31322     readonly ACTIVE_UNIFORMS: 0x8B86;
31323     readonly ACTIVE_ATTRIBUTES: 0x8B89;
31324     readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
31325     readonly CURRENT_PROGRAM: 0x8B8D;
31326     readonly NEVER: 0x0200;
31327     readonly LESS: 0x0201;
31328     readonly EQUAL: 0x0202;
31329     readonly LEQUAL: 0x0203;
31330     readonly GREATER: 0x0204;
31331     readonly NOTEQUAL: 0x0205;
31332     readonly GEQUAL: 0x0206;
31333     readonly ALWAYS: 0x0207;
31334     readonly KEEP: 0x1E00;
31335     readonly REPLACE: 0x1E01;
31336     readonly INCR: 0x1E02;
31337     readonly DECR: 0x1E03;
31338     readonly INVERT: 0x150A;
31339     readonly INCR_WRAP: 0x8507;
31340     readonly DECR_WRAP: 0x8508;
31341     readonly VENDOR: 0x1F00;
31342     readonly RENDERER: 0x1F01;
31343     readonly VERSION: 0x1F02;
31344     readonly NEAREST: 0x2600;
31345     readonly LINEAR: 0x2601;
31346     readonly NEAREST_MIPMAP_NEAREST: 0x2700;
31347     readonly LINEAR_MIPMAP_NEAREST: 0x2701;
31348     readonly NEAREST_MIPMAP_LINEAR: 0x2702;
31349     readonly LINEAR_MIPMAP_LINEAR: 0x2703;
31350     readonly TEXTURE_MAG_FILTER: 0x2800;
31351     readonly TEXTURE_MIN_FILTER: 0x2801;
31352     readonly TEXTURE_WRAP_S: 0x2802;
31353     readonly TEXTURE_WRAP_T: 0x2803;
31354     readonly TEXTURE_2D: 0x0DE1;
31355     readonly TEXTURE: 0x1702;
31356     readonly TEXTURE_CUBE_MAP: 0x8513;
31357     readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
31358     readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
31359     readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
31360     readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
31361     readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
31362     readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
31363     readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
31364     readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
31365     readonly TEXTURE0: 0x84C0;
31366     readonly TEXTURE1: 0x84C1;
31367     readonly TEXTURE2: 0x84C2;
31368     readonly TEXTURE3: 0x84C3;
31369     readonly TEXTURE4: 0x84C4;
31370     readonly TEXTURE5: 0x84C5;
31371     readonly TEXTURE6: 0x84C6;
31372     readonly TEXTURE7: 0x84C7;
31373     readonly TEXTURE8: 0x84C8;
31374     readonly TEXTURE9: 0x84C9;
31375     readonly TEXTURE10: 0x84CA;
31376     readonly TEXTURE11: 0x84CB;
31377     readonly TEXTURE12: 0x84CC;
31378     readonly TEXTURE13: 0x84CD;
31379     readonly TEXTURE14: 0x84CE;
31380     readonly TEXTURE15: 0x84CF;
31381     readonly TEXTURE16: 0x84D0;
31382     readonly TEXTURE17: 0x84D1;
31383     readonly TEXTURE18: 0x84D2;
31384     readonly TEXTURE19: 0x84D3;
31385     readonly TEXTURE20: 0x84D4;
31386     readonly TEXTURE21: 0x84D5;
31387     readonly TEXTURE22: 0x84D6;
31388     readonly TEXTURE23: 0x84D7;
31389     readonly TEXTURE24: 0x84D8;
31390     readonly TEXTURE25: 0x84D9;
31391     readonly TEXTURE26: 0x84DA;
31392     readonly TEXTURE27: 0x84DB;
31393     readonly TEXTURE28: 0x84DC;
31394     readonly TEXTURE29: 0x84DD;
31395     readonly TEXTURE30: 0x84DE;
31396     readonly TEXTURE31: 0x84DF;
31397     readonly ACTIVE_TEXTURE: 0x84E0;
31398     readonly REPEAT: 0x2901;
31399     readonly CLAMP_TO_EDGE: 0x812F;
31400     readonly MIRRORED_REPEAT: 0x8370;
31401     readonly FLOAT_VEC2: 0x8B50;
31402     readonly FLOAT_VEC3: 0x8B51;
31403     readonly FLOAT_VEC4: 0x8B52;
31404     readonly INT_VEC2: 0x8B53;
31405     readonly INT_VEC3: 0x8B54;
31406     readonly INT_VEC4: 0x8B55;
31407     readonly BOOL: 0x8B56;
31408     readonly BOOL_VEC2: 0x8B57;
31409     readonly BOOL_VEC3: 0x8B58;
31410     readonly BOOL_VEC4: 0x8B59;
31411     readonly FLOAT_MAT2: 0x8B5A;
31412     readonly FLOAT_MAT3: 0x8B5B;
31413     readonly FLOAT_MAT4: 0x8B5C;
31414     readonly SAMPLER_2D: 0x8B5E;
31415     readonly SAMPLER_CUBE: 0x8B60;
31416     readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
31417     readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
31418     readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
31419     readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
31420     readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
31421     readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
31422     readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
31423     readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
31424     readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
31425     readonly COMPILE_STATUS: 0x8B81;
31426     readonly LOW_FLOAT: 0x8DF0;
31427     readonly MEDIUM_FLOAT: 0x8DF1;
31428     readonly HIGH_FLOAT: 0x8DF2;
31429     readonly LOW_INT: 0x8DF3;
31430     readonly MEDIUM_INT: 0x8DF4;
31431     readonly HIGH_INT: 0x8DF5;
31432     readonly FRAMEBUFFER: 0x8D40;
31433     readonly RENDERBUFFER: 0x8D41;
31434     readonly RGBA4: 0x8056;
31435     readonly RGB5_A1: 0x8057;
31436     readonly RGB565: 0x8D62;
31437     readonly DEPTH_COMPONENT16: 0x81A5;
31438     readonly STENCIL_INDEX8: 0x8D48;
31439     readonly DEPTH_STENCIL: 0x84F9;
31440     readonly RENDERBUFFER_WIDTH: 0x8D42;
31441     readonly RENDERBUFFER_HEIGHT: 0x8D43;
31442     readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
31443     readonly RENDERBUFFER_RED_SIZE: 0x8D50;
31444     readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
31445     readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
31446     readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
31447     readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
31448     readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
31449     readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
31450     readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
31451     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
31452     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
31453     readonly COLOR_ATTACHMENT0: 0x8CE0;
31454     readonly DEPTH_ATTACHMENT: 0x8D00;
31455     readonly STENCIL_ATTACHMENT: 0x8D20;
31456     readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
31457     readonly NONE: 0;
31458     readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
31459     readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
31460     readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
31461     readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
31462     readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
31463     readonly FRAMEBUFFER_BINDING: 0x8CA6;
31464     readonly RENDERBUFFER_BINDING: 0x8CA7;
31465     readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
31466     readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
31467     readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
31468     readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
31469     readonly CONTEXT_LOST_WEBGL: 0x9242;
31470     readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
31471     readonly BROWSER_DEFAULT_WEBGL: 0x9244;
31472     isInstance(obj): obj is WebGL2RenderingContext;
31475 interface WebGL2RenderingContextBase {
31476     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/beginQuery) */
31477     beginQuery(target: GLenum, query: WebGLQuery): void;
31478     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/beginTransformFeedback) */
31479     beginTransformFeedback(primitiveMode: GLenum): void;
31480     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindBufferBase) */
31481     bindBufferBase(target: GLenum, index: GLuint, buffer: WebGLBuffer | null): void;
31482     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindBufferRange) */
31483     bindBufferRange(target: GLenum, index: GLuint, buffer: WebGLBuffer | null, offset: GLintptr, size: GLsizeiptr): void;
31484     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindSampler) */
31485     bindSampler(unit: GLuint, sampler: WebGLSampler | null): void;
31486     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindTransformFeedback) */
31487     bindTransformFeedback(target: GLenum, tf: WebGLTransformFeedback | null): void;
31488     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindVertexArray) */
31489     bindVertexArray(array: WebGLVertexArrayObject | null): void;
31490     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/blitFramebuffer) */
31491     blitFramebuffer(srcX0: GLint, srcY0: GLint, srcX1: GLint, srcY1: GLint, dstX0: GLint, dstY0: GLint, dstX1: GLint, dstY1: GLint, mask: GLbitfield, filter: GLenum): void;
31492     bufferData(target: GLenum, size: GLsizeiptr, usage: GLenum): void;
31493     bufferData(target: GLenum, srcData: ArrayBuffer | null, usage: GLenum): void;
31494     bufferData(target: GLenum, srcData: ArrayBufferView, usage: GLenum): void;
31495     bufferData(target: GLenum, srcData: ArrayBufferView, usage: GLenum, srcOffset: GLuint, length?: GLuint): void;
31496     bufferSubData(target: GLenum, offset: GLintptr, srcData: ArrayBuffer): void;
31497     bufferSubData(target: GLenum, offset: GLintptr, srcData: ArrayBufferView): void;
31498     bufferSubData(target: GLenum, dstByteOffset: GLintptr, srcData: ArrayBufferView, srcOffset: GLuint, length?: GLuint): void;
31499     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
31500     clearBufferfi(buffer: GLenum, drawbuffer: GLint, depth: GLfloat, stencil: GLint): void;
31501     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
31502     clearBufferfv(buffer: GLenum, drawbuffer: GLint, values: Float32List, srcOffset?: GLuint): void;
31503     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
31504     clearBufferiv(buffer: GLenum, drawbuffer: GLint, values: Int32List, srcOffset?: GLuint): void;
31505     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
31506     clearBufferuiv(buffer: GLenum, drawbuffer: GLint, values: Uint32List, srcOffset?: GLuint): void;
31507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clientWaitSync) */
31508     clientWaitSync(sync: WebGLSync, flags: GLbitfield, timeout: GLuint64): GLenum;
31509     compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, imageSize: GLsizei, offset: GLintptr): void;
31510     compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, srcData: ArrayBufferView, srcOffset?: GLuint, srcLengthOverride?: GLuint): void;
31511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/compressedTexImage3D) */
31512     compressedTexImage3D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, imageSize: GLsizei, offset: GLintptr): void;
31513     compressedTexImage3D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, srcData: ArrayBufferView, srcOffset?: GLuint, srcLengthOverride?: GLuint): void;
31514     compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, imageSize: GLsizei, offset: GLintptr): void;
31515     compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, srcData: ArrayBufferView, srcOffset?: GLuint, srcLengthOverride?: GLuint): void;
31516     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/compressedTexSubImage3D) */
31517     compressedTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, imageSize: GLsizei, offset: GLintptr): void;
31518     compressedTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, srcData: ArrayBufferView, srcOffset?: GLuint, srcLengthOverride?: GLuint): void;
31519     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/copyBufferSubData) */
31520     copyBufferSubData(readTarget: GLenum, writeTarget: GLenum, readOffset: GLintptr, writeOffset: GLintptr, size: GLsizeiptr): void;
31521     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/copyTexSubImage3D) */
31522     copyTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
31523     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createQuery) */
31524     createQuery(): WebGLQuery | null;
31525     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createSampler) */
31526     createSampler(): WebGLSampler | null;
31527     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createTransformFeedback) */
31528     createTransformFeedback(): WebGLTransformFeedback | null;
31529     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createVertexArray) */
31530     createVertexArray(): WebGLVertexArrayObject | null;
31531     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteQuery) */
31532     deleteQuery(query: WebGLQuery | null): void;
31533     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteSampler) */
31534     deleteSampler(sampler: WebGLSampler | null): void;
31535     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteSync) */
31536     deleteSync(sync: WebGLSync | null): void;
31537     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteTransformFeedback) */
31538     deleteTransformFeedback(tf: WebGLTransformFeedback | null): void;
31539     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteVertexArray) */
31540     deleteVertexArray(vertexArray: WebGLVertexArrayObject | null): void;
31541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawArraysInstanced) */
31542     drawArraysInstanced(mode: GLenum, first: GLint, count: GLsizei, instanceCount: GLsizei): void;
31543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawBuffers) */
31544     drawBuffers(buffers: GLenum[]): void;
31545     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawElementsInstanced) */
31546     drawElementsInstanced(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr, instanceCount: GLsizei): void;
31547     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawRangeElements) */
31548     drawRangeElements(mode: GLenum, start: GLuint, end: GLuint, count: GLsizei, type: GLenum, offset: GLintptr): void;
31549     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/endQuery) */
31550     endQuery(target: GLenum): void;
31551     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/endTransformFeedback) */
31552     endTransformFeedback(): void;
31553     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/fenceSync) */
31554     fenceSync(condition: GLenum, flags: GLbitfield): WebGLSync | null;
31555     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/framebufferTextureLayer) */
31556     framebufferTextureLayer(target: GLenum, attachment: GLenum, texture: WebGLTexture | null, level: GLint, layer: GLint): void;
31557     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniformBlockName) */
31558     getActiveUniformBlockName(program: WebGLProgram, uniformBlockIndex: GLuint): string | null;
31559     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniformBlockParameter) */
31560     getActiveUniformBlockParameter(program: WebGLProgram, uniformBlockIndex: GLuint, pname: GLenum): any;
31561     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniforms) */
31562     getActiveUniforms(program: WebGLProgram, uniformIndices: GLuint[], pname: GLenum): any;
31563     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getBufferSubData) */
31564     getBufferSubData(target: GLenum, srcByteOffset: GLintptr, dstData: ArrayBufferView, dstOffset?: GLuint, length?: GLuint): void;
31565     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getFragDataLocation) */
31566     getFragDataLocation(program: WebGLProgram, name: string): GLint;
31567     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getIndexedParameter) */
31568     getIndexedParameter(target: GLenum, index: GLuint): any;
31569     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getInternalformatParameter) */
31570     getInternalformatParameter(target: GLenum, internalformat: GLenum, pname: GLenum): any;
31571     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getQuery) */
31572     getQuery(target: GLenum, pname: GLenum): any;
31573     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getQueryParameter) */
31574     getQueryParameter(query: WebGLQuery, pname: GLenum): any;
31575     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getSamplerParameter) */
31576     getSamplerParameter(sampler: WebGLSampler, pname: GLenum): any;
31577     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getSyncParameter) */
31578     getSyncParameter(sync: WebGLSync, pname: GLenum): any;
31579     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getTransformFeedbackVarying) */
31580     getTransformFeedbackVarying(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
31581     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformBlockIndex) */
31582     getUniformBlockIndex(program: WebGLProgram, uniformBlockName: string): GLuint;
31583     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformIndices) */
31584     getUniformIndices(program: WebGLProgram, uniformNames: string[]): GLuint[] | null;
31585     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateFramebuffer) */
31586     invalidateFramebuffer(target: GLenum, attachments: GLenum[]): void;
31587     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateSubFramebuffer) */
31588     invalidateSubFramebuffer(target: GLenum, attachments: GLenum[], x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
31589     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isQuery) */
31590     isQuery(query: WebGLQuery | null): GLboolean;
31591     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isSampler) */
31592     isSampler(sampler: WebGLSampler | null): GLboolean;
31593     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isSync) */
31594     isSync(sync: WebGLSync | null): GLboolean;
31595     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isTransformFeedback) */
31596     isTransformFeedback(tf: WebGLTransformFeedback | null): GLboolean;
31597     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isVertexArray) */
31598     isVertexArray(vertexArray: WebGLVertexArrayObject | null): GLboolean;
31599     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/pauseTransformFeedback) */
31600     pauseTransformFeedback(): void;
31601     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/readBuffer) */
31602     readBuffer(src: GLenum): void;
31603     readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, dstData: ArrayBufferView | null): void;
31604     readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, offset: GLintptr): void;
31605     readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, dstData: ArrayBufferView, dstOffset: GLuint): void;
31606     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/renderbufferStorageMultisample) */
31607     renderbufferStorageMultisample(target: GLenum, samples: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
31608     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/resumeTransformFeedback) */
31609     resumeTransformFeedback(): void;
31610     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/samplerParameter) */
31611     samplerParameterf(sampler: WebGLSampler, pname: GLenum, param: GLfloat): void;
31612     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/samplerParameter) */
31613     samplerParameteri(sampler: WebGLSampler, pname: GLenum, param: GLint): void;
31614     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
31615     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: HTMLCanvasElement): void;
31616     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: HTMLImageElement): void;
31617     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: HTMLVideoElement): void;
31618     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: ImageBitmap): void;
31619     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: ImageData): void;
31620     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: OffscreenCanvas): void;
31621     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: VideoFrame): void;
31622     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
31623     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: HTMLCanvasElement): void;
31624     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: HTMLImageElement): void;
31625     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: HTMLVideoElement): void;
31626     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: ImageBitmap): void;
31627     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: ImageData): void;
31628     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: OffscreenCanvas): void;
31629     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: VideoFrame): void;
31630     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: GLuint): void;
31631     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texImage3D) */
31632     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
31633     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: HTMLCanvasElement): void;
31634     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: HTMLImageElement): void;
31635     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: HTMLVideoElement): void;
31636     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: ImageBitmap): void;
31637     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: ImageData): void;
31638     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: OffscreenCanvas): void;
31639     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: VideoFrame): void;
31640     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView | null): void;
31641     texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: GLuint): void;
31642     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texStorage2D) */
31643     texStorage2D(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
31644     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texStorage3D) */
31645     texStorage3D(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei): void;
31646     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
31647     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: HTMLCanvasElement): void;
31648     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: HTMLImageElement): void;
31649     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: HTMLVideoElement): void;
31650     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: ImageBitmap): void;
31651     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: ImageData): void;
31652     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: OffscreenCanvas): void;
31653     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: VideoFrame): void;
31654     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
31655     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: HTMLCanvasElement): void;
31656     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: HTMLImageElement): void;
31657     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: HTMLVideoElement): void;
31658     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: ImageBitmap): void;
31659     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: ImageData): void;
31660     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: OffscreenCanvas): void;
31661     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: VideoFrame): void;
31662     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: GLuint): void;
31663     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texSubImage3D) */
31664     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
31665     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: HTMLCanvasElement): void;
31666     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: HTMLImageElement): void;
31667     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: HTMLVideoElement): void;
31668     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: ImageBitmap): void;
31669     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: ImageData): void;
31670     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: OffscreenCanvas): void;
31671     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: VideoFrame): void;
31672     texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, srcData: ArrayBufferView | null, srcOffset?: GLuint): void;
31673     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/transformFeedbackVaryings) */
31674     transformFeedbackVaryings(program: WebGLProgram, varyings: string[], bufferMode: GLenum): void;
31675     uniform1fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31676     uniform1iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31677     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31678     uniform1ui(location: WebGLUniformLocation | null, v0: GLuint): void;
31679     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31680     uniform1uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31681     uniform2fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31682     uniform2iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31683     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31684     uniform2ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint): void;
31685     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31686     uniform2uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31687     uniform3fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31688     uniform3iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31689     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31690     uniform3ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint, v2: GLuint): void;
31691     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31692     uniform3uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31693     uniform4fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31694     uniform4iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31695     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31696     uniform4ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint): void;
31697     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
31698     uniform4uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31699     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformBlockBinding) */
31700     uniformBlockBinding(program: WebGLProgram, uniformBlockIndex: GLuint, uniformBlockBinding: GLuint): void;
31701     uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31702     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
31703     uniformMatrix2x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31704     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
31705     uniformMatrix2x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31706     uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31707     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
31708     uniformMatrix3x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31709     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
31710     uniformMatrix3x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31711     uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31712     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
31713     uniformMatrix4x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31714     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
31715     uniformMatrix4x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: GLuint, srcLength?: GLuint): void;
31716     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribDivisor) */
31717     vertexAttribDivisor(index: GLuint, divisor: GLuint): void;
31718     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
31719     vertexAttribI4i(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint): void;
31720     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
31721     vertexAttribI4iv(index: GLuint, values: Int32List): void;
31722     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
31723     vertexAttribI4ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint): void;
31724     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
31725     vertexAttribI4uiv(index: GLuint, values: Uint32List): void;
31726     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribIPointer) */
31727     vertexAttribIPointer(index: GLuint, size: GLint, type: GLenum, stride: GLsizei, offset: GLintptr): void;
31728     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/waitSync) */
31729     waitSync(sync: WebGLSync, flags: GLbitfield, timeout: GLint64): void;
31730     readonly READ_BUFFER: 0x0C02;
31731     readonly UNPACK_ROW_LENGTH: 0x0CF2;
31732     readonly UNPACK_SKIP_ROWS: 0x0CF3;
31733     readonly UNPACK_SKIP_PIXELS: 0x0CF4;
31734     readonly PACK_ROW_LENGTH: 0x0D02;
31735     readonly PACK_SKIP_ROWS: 0x0D03;
31736     readonly PACK_SKIP_PIXELS: 0x0D04;
31737     readonly COLOR: 0x1800;
31738     readonly DEPTH: 0x1801;
31739     readonly STENCIL: 0x1802;
31740     readonly RED: 0x1903;
31741     readonly RGB8: 0x8051;
31742     readonly RGBA8: 0x8058;
31743     readonly RGB10_A2: 0x8059;
31744     readonly TEXTURE_BINDING_3D: 0x806A;
31745     readonly UNPACK_SKIP_IMAGES: 0x806D;
31746     readonly UNPACK_IMAGE_HEIGHT: 0x806E;
31747     readonly TEXTURE_3D: 0x806F;
31748     readonly TEXTURE_WRAP_R: 0x8072;
31749     readonly MAX_3D_TEXTURE_SIZE: 0x8073;
31750     readonly UNSIGNED_INT_2_10_10_10_REV: 0x8368;
31751     readonly MAX_ELEMENTS_VERTICES: 0x80E8;
31752     readonly MAX_ELEMENTS_INDICES: 0x80E9;
31753     readonly TEXTURE_MIN_LOD: 0x813A;
31754     readonly TEXTURE_MAX_LOD: 0x813B;
31755     readonly TEXTURE_BASE_LEVEL: 0x813C;
31756     readonly TEXTURE_MAX_LEVEL: 0x813D;
31757     readonly MIN: 0x8007;
31758     readonly MAX: 0x8008;
31759     readonly DEPTH_COMPONENT24: 0x81A6;
31760     readonly MAX_TEXTURE_LOD_BIAS: 0x84FD;
31761     readonly TEXTURE_COMPARE_MODE: 0x884C;
31762     readonly TEXTURE_COMPARE_FUNC: 0x884D;
31763     readonly CURRENT_QUERY: 0x8865;
31764     readonly QUERY_RESULT: 0x8866;
31765     readonly QUERY_RESULT_AVAILABLE: 0x8867;
31766     readonly STREAM_READ: 0x88E1;
31767     readonly STREAM_COPY: 0x88E2;
31768     readonly STATIC_READ: 0x88E5;
31769     readonly STATIC_COPY: 0x88E6;
31770     readonly DYNAMIC_READ: 0x88E9;
31771     readonly DYNAMIC_COPY: 0x88EA;
31772     readonly MAX_DRAW_BUFFERS: 0x8824;
31773     readonly DRAW_BUFFER0: 0x8825;
31774     readonly DRAW_BUFFER1: 0x8826;
31775     readonly DRAW_BUFFER2: 0x8827;
31776     readonly DRAW_BUFFER3: 0x8828;
31777     readonly DRAW_BUFFER4: 0x8829;
31778     readonly DRAW_BUFFER5: 0x882A;
31779     readonly DRAW_BUFFER6: 0x882B;
31780     readonly DRAW_BUFFER7: 0x882C;
31781     readonly DRAW_BUFFER8: 0x882D;
31782     readonly DRAW_BUFFER9: 0x882E;
31783     readonly DRAW_BUFFER10: 0x882F;
31784     readonly DRAW_BUFFER11: 0x8830;
31785     readonly DRAW_BUFFER12: 0x8831;
31786     readonly DRAW_BUFFER13: 0x8832;
31787     readonly DRAW_BUFFER14: 0x8833;
31788     readonly DRAW_BUFFER15: 0x8834;
31789     readonly MAX_FRAGMENT_UNIFORM_COMPONENTS: 0x8B49;
31790     readonly MAX_VERTEX_UNIFORM_COMPONENTS: 0x8B4A;
31791     readonly SAMPLER_3D: 0x8B5F;
31792     readonly SAMPLER_2D_SHADOW: 0x8B62;
31793     readonly FRAGMENT_SHADER_DERIVATIVE_HINT: 0x8B8B;
31794     readonly PIXEL_PACK_BUFFER: 0x88EB;
31795     readonly PIXEL_UNPACK_BUFFER: 0x88EC;
31796     readonly PIXEL_PACK_BUFFER_BINDING: 0x88ED;
31797     readonly PIXEL_UNPACK_BUFFER_BINDING: 0x88EF;
31798     readonly FLOAT_MAT2x3: 0x8B65;
31799     readonly FLOAT_MAT2x4: 0x8B66;
31800     readonly FLOAT_MAT3x2: 0x8B67;
31801     readonly FLOAT_MAT3x4: 0x8B68;
31802     readonly FLOAT_MAT4x2: 0x8B69;
31803     readonly FLOAT_MAT4x3: 0x8B6A;
31804     readonly SRGB: 0x8C40;
31805     readonly SRGB8: 0x8C41;
31806     readonly SRGB8_ALPHA8: 0x8C43;
31807     readonly COMPARE_REF_TO_TEXTURE: 0x884E;
31808     readonly RGBA32F: 0x8814;
31809     readonly RGB32F: 0x8815;
31810     readonly RGBA16F: 0x881A;
31811     readonly RGB16F: 0x881B;
31812     readonly VERTEX_ATTRIB_ARRAY_INTEGER: 0x88FD;
31813     readonly MAX_ARRAY_TEXTURE_LAYERS: 0x88FF;
31814     readonly MIN_PROGRAM_TEXEL_OFFSET: 0x8904;
31815     readonly MAX_PROGRAM_TEXEL_OFFSET: 0x8905;
31816     readonly MAX_VARYING_COMPONENTS: 0x8B4B;
31817     readonly TEXTURE_2D_ARRAY: 0x8C1A;
31818     readonly TEXTURE_BINDING_2D_ARRAY: 0x8C1D;
31819     readonly R11F_G11F_B10F: 0x8C3A;
31820     readonly UNSIGNED_INT_10F_11F_11F_REV: 0x8C3B;
31821     readonly RGB9_E5: 0x8C3D;
31822     readonly UNSIGNED_INT_5_9_9_9_REV: 0x8C3E;
31823     readonly TRANSFORM_FEEDBACK_BUFFER_MODE: 0x8C7F;
31824     readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: 0x8C80;
31825     readonly TRANSFORM_FEEDBACK_VARYINGS: 0x8C83;
31826     readonly TRANSFORM_FEEDBACK_BUFFER_START: 0x8C84;
31827     readonly TRANSFORM_FEEDBACK_BUFFER_SIZE: 0x8C85;
31828     readonly TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: 0x8C88;
31829     readonly RASTERIZER_DISCARD: 0x8C89;
31830     readonly MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: 0x8C8A;
31831     readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: 0x8C8B;
31832     readonly INTERLEAVED_ATTRIBS: 0x8C8C;
31833     readonly SEPARATE_ATTRIBS: 0x8C8D;
31834     readonly TRANSFORM_FEEDBACK_BUFFER: 0x8C8E;
31835     readonly TRANSFORM_FEEDBACK_BUFFER_BINDING: 0x8C8F;
31836     readonly RGBA32UI: 0x8D70;
31837     readonly RGB32UI: 0x8D71;
31838     readonly RGBA16UI: 0x8D76;
31839     readonly RGB16UI: 0x8D77;
31840     readonly RGBA8UI: 0x8D7C;
31841     readonly RGB8UI: 0x8D7D;
31842     readonly RGBA32I: 0x8D82;
31843     readonly RGB32I: 0x8D83;
31844     readonly RGBA16I: 0x8D88;
31845     readonly RGB16I: 0x8D89;
31846     readonly RGBA8I: 0x8D8E;
31847     readonly RGB8I: 0x8D8F;
31848     readonly RED_INTEGER: 0x8D94;
31849     readonly RGB_INTEGER: 0x8D98;
31850     readonly RGBA_INTEGER: 0x8D99;
31851     readonly SAMPLER_2D_ARRAY: 0x8DC1;
31852     readonly SAMPLER_2D_ARRAY_SHADOW: 0x8DC4;
31853     readonly SAMPLER_CUBE_SHADOW: 0x8DC5;
31854     readonly UNSIGNED_INT_VEC2: 0x8DC6;
31855     readonly UNSIGNED_INT_VEC3: 0x8DC7;
31856     readonly UNSIGNED_INT_VEC4: 0x8DC8;
31857     readonly INT_SAMPLER_2D: 0x8DCA;
31858     readonly INT_SAMPLER_3D: 0x8DCB;
31859     readonly INT_SAMPLER_CUBE: 0x8DCC;
31860     readonly INT_SAMPLER_2D_ARRAY: 0x8DCF;
31861     readonly UNSIGNED_INT_SAMPLER_2D: 0x8DD2;
31862     readonly UNSIGNED_INT_SAMPLER_3D: 0x8DD3;
31863     readonly UNSIGNED_INT_SAMPLER_CUBE: 0x8DD4;
31864     readonly UNSIGNED_INT_SAMPLER_2D_ARRAY: 0x8DD7;
31865     readonly DEPTH_COMPONENT32F: 0x8CAC;
31866     readonly DEPTH32F_STENCIL8: 0x8CAD;
31867     readonly FLOAT_32_UNSIGNED_INT_24_8_REV: 0x8DAD;
31868     readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: 0x8210;
31869     readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: 0x8211;
31870     readonly FRAMEBUFFER_ATTACHMENT_RED_SIZE: 0x8212;
31871     readonly FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: 0x8213;
31872     readonly FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: 0x8214;
31873     readonly FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: 0x8215;
31874     readonly FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: 0x8216;
31875     readonly FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: 0x8217;
31876     readonly FRAMEBUFFER_DEFAULT: 0x8218;
31877     readonly UNSIGNED_INT_24_8: 0x84FA;
31878     readonly DEPTH24_STENCIL8: 0x88F0;
31879     readonly UNSIGNED_NORMALIZED: 0x8C17;
31880     readonly DRAW_FRAMEBUFFER_BINDING: 0x8CA6;
31881     readonly READ_FRAMEBUFFER: 0x8CA8;
31882     readonly DRAW_FRAMEBUFFER: 0x8CA9;
31883     readonly READ_FRAMEBUFFER_BINDING: 0x8CAA;
31884     readonly RENDERBUFFER_SAMPLES: 0x8CAB;
31885     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: 0x8CD4;
31886     readonly MAX_COLOR_ATTACHMENTS: 0x8CDF;
31887     readonly COLOR_ATTACHMENT1: 0x8CE1;
31888     readonly COLOR_ATTACHMENT2: 0x8CE2;
31889     readonly COLOR_ATTACHMENT3: 0x8CE3;
31890     readonly COLOR_ATTACHMENT4: 0x8CE4;
31891     readonly COLOR_ATTACHMENT5: 0x8CE5;
31892     readonly COLOR_ATTACHMENT6: 0x8CE6;
31893     readonly COLOR_ATTACHMENT7: 0x8CE7;
31894     readonly COLOR_ATTACHMENT8: 0x8CE8;
31895     readonly COLOR_ATTACHMENT9: 0x8CE9;
31896     readonly COLOR_ATTACHMENT10: 0x8CEA;
31897     readonly COLOR_ATTACHMENT11: 0x8CEB;
31898     readonly COLOR_ATTACHMENT12: 0x8CEC;
31899     readonly COLOR_ATTACHMENT13: 0x8CED;
31900     readonly COLOR_ATTACHMENT14: 0x8CEE;
31901     readonly COLOR_ATTACHMENT15: 0x8CEF;
31902     readonly FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: 0x8D56;
31903     readonly MAX_SAMPLES: 0x8D57;
31904     readonly HALF_FLOAT: 0x140B;
31905     readonly RG: 0x8227;
31906     readonly RG_INTEGER: 0x8228;
31907     readonly R8: 0x8229;
31908     readonly RG8: 0x822B;
31909     readonly R16F: 0x822D;
31910     readonly R32F: 0x822E;
31911     readonly RG16F: 0x822F;
31912     readonly RG32F: 0x8230;
31913     readonly R8I: 0x8231;
31914     readonly R8UI: 0x8232;
31915     readonly R16I: 0x8233;
31916     readonly R16UI: 0x8234;
31917     readonly R32I: 0x8235;
31918     readonly R32UI: 0x8236;
31919     readonly RG8I: 0x8237;
31920     readonly RG8UI: 0x8238;
31921     readonly RG16I: 0x8239;
31922     readonly RG16UI: 0x823A;
31923     readonly RG32I: 0x823B;
31924     readonly RG32UI: 0x823C;
31925     readonly VERTEX_ARRAY_BINDING: 0x85B5;
31926     readonly R8_SNORM: 0x8F94;
31927     readonly RG8_SNORM: 0x8F95;
31928     readonly RGB8_SNORM: 0x8F96;
31929     readonly RGBA8_SNORM: 0x8F97;
31930     readonly SIGNED_NORMALIZED: 0x8F9C;
31931     readonly COPY_READ_BUFFER: 0x8F36;
31932     readonly COPY_WRITE_BUFFER: 0x8F37;
31933     readonly COPY_READ_BUFFER_BINDING: 0x8F36;
31934     readonly COPY_WRITE_BUFFER_BINDING: 0x8F37;
31935     readonly UNIFORM_BUFFER: 0x8A11;
31936     readonly UNIFORM_BUFFER_BINDING: 0x8A28;
31937     readonly UNIFORM_BUFFER_START: 0x8A29;
31938     readonly UNIFORM_BUFFER_SIZE: 0x8A2A;
31939     readonly MAX_VERTEX_UNIFORM_BLOCKS: 0x8A2B;
31940     readonly MAX_FRAGMENT_UNIFORM_BLOCKS: 0x8A2D;
31941     readonly MAX_COMBINED_UNIFORM_BLOCKS: 0x8A2E;
31942     readonly MAX_UNIFORM_BUFFER_BINDINGS: 0x8A2F;
31943     readonly MAX_UNIFORM_BLOCK_SIZE: 0x8A30;
31944     readonly MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: 0x8A31;
31945     readonly MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: 0x8A33;
31946     readonly UNIFORM_BUFFER_OFFSET_ALIGNMENT: 0x8A34;
31947     readonly ACTIVE_UNIFORM_BLOCKS: 0x8A36;
31948     readonly UNIFORM_TYPE: 0x8A37;
31949     readonly UNIFORM_SIZE: 0x8A38;
31950     readonly UNIFORM_BLOCK_INDEX: 0x8A3A;
31951     readonly UNIFORM_OFFSET: 0x8A3B;
31952     readonly UNIFORM_ARRAY_STRIDE: 0x8A3C;
31953     readonly UNIFORM_MATRIX_STRIDE: 0x8A3D;
31954     readonly UNIFORM_IS_ROW_MAJOR: 0x8A3E;
31955     readonly UNIFORM_BLOCK_BINDING: 0x8A3F;
31956     readonly UNIFORM_BLOCK_DATA_SIZE: 0x8A40;
31957     readonly UNIFORM_BLOCK_ACTIVE_UNIFORMS: 0x8A42;
31958     readonly UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: 0x8A43;
31959     readonly UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: 0x8A44;
31960     readonly UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: 0x8A46;
31961     readonly INVALID_INDEX: 0xFFFFFFFF;
31962     readonly MAX_VERTEX_OUTPUT_COMPONENTS: 0x9122;
31963     readonly MAX_FRAGMENT_INPUT_COMPONENTS: 0x9125;
31964     readonly MAX_SERVER_WAIT_TIMEOUT: 0x9111;
31965     readonly OBJECT_TYPE: 0x9112;
31966     readonly SYNC_CONDITION: 0x9113;
31967     readonly SYNC_STATUS: 0x9114;
31968     readonly SYNC_FLAGS: 0x9115;
31969     readonly SYNC_FENCE: 0x9116;
31970     readonly SYNC_GPU_COMMANDS_COMPLETE: 0x9117;
31971     readonly UNSIGNALED: 0x9118;
31972     readonly SIGNALED: 0x9119;
31973     readonly ALREADY_SIGNALED: 0x911A;
31974     readonly TIMEOUT_EXPIRED: 0x911B;
31975     readonly CONDITION_SATISFIED: 0x911C;
31976     readonly WAIT_FAILED: 0x911D;
31977     readonly SYNC_FLUSH_COMMANDS_BIT: 0x00000001;
31978     readonly VERTEX_ATTRIB_ARRAY_DIVISOR: 0x88FE;
31979     readonly ANY_SAMPLES_PASSED: 0x8C2F;
31980     readonly ANY_SAMPLES_PASSED_CONSERVATIVE: 0x8D6A;
31981     readonly SAMPLER_BINDING: 0x8919;
31982     readonly RGB10_A2UI: 0x906F;
31983     readonly INT_2_10_10_10_REV: 0x8D9F;
31984     readonly TRANSFORM_FEEDBACK: 0x8E22;
31985     readonly TRANSFORM_FEEDBACK_PAUSED: 0x8E23;
31986     readonly TRANSFORM_FEEDBACK_ACTIVE: 0x8E24;
31987     readonly TRANSFORM_FEEDBACK_BINDING: 0x8E25;
31988     readonly TEXTURE_IMMUTABLE_FORMAT: 0x912F;
31989     readonly MAX_ELEMENT_INDEX: 0x8D6B;
31990     readonly TEXTURE_IMMUTABLE_LEVELS: 0x82DF;
31991     readonly TIMEOUT_IGNORED: -1;
31992     readonly MAX_CLIENT_WAIT_TIMEOUT_WEBGL: 0x9247;
31996  * Part of the WebGL API and represents the information returned by calling the WebGLRenderingContext.getActiveAttrib() and WebGLRenderingContext.getActiveUniform() methods.
31998  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo)
31999  */
32000 interface WebGLActiveInfo {
32001     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/name) */
32002     readonly name: string;
32003     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/size) */
32004     readonly size: GLint;
32005     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/type) */
32006     readonly type: GLenum;
32009 declare var WebGLActiveInfo: {
32010     prototype: WebGLActiveInfo;
32011     new(): WebGLActiveInfo;
32012     isInstance(obj): obj is WebGLActiveInfo;
32016  * Part of the WebGL API and represents an opaque buffer object storing data such as vertices or colors.
32018  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLBuffer)
32019  */
32020 interface WebGLBuffer {
32023 declare var WebGLBuffer: {
32024     prototype: WebGLBuffer;
32025     new(): WebGLBuffer;
32026     isInstance(obj): obj is WebGLBuffer;
32030  * The WebContextEvent interface is part of the WebGL API and is an interface for an event that is generated in response to a status change to the WebGL rendering context.
32032  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLContextEvent)
32033  */
32034 interface WebGLContextEvent extends Event {
32035     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLContextEvent/statusMessage) */
32036     readonly statusMessage: string;
32039 declare var WebGLContextEvent: {
32040     prototype: WebGLContextEvent;
32041     new(type: string, eventInit?: WebGLContextEventInit): WebGLContextEvent;
32042     isInstance(obj): obj is WebGLContextEvent;
32046  * Part of the WebGL API and represents a collection of buffers that serve as a rendering destination.
32048  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLFramebuffer)
32049  */
32050 interface WebGLFramebuffer {
32053 declare var WebGLFramebuffer: {
32054     prototype: WebGLFramebuffer;
32055     new(): WebGLFramebuffer;
32056     isInstance(obj): obj is WebGLFramebuffer;
32060  * The WebGLProgram is part of the WebGL API and is a combination of two compiled WebGLShaders consisting of a vertex shader and a fragment shader (both written in GLSL).
32062  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLProgram)
32063  */
32064 interface WebGLProgram {
32067 declare var WebGLProgram: {
32068     prototype: WebGLProgram;
32069     new(): WebGLProgram;
32070     isInstance(obj): obj is WebGLProgram;
32073 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLQuery) */
32074 interface WebGLQuery {
32077 declare var WebGLQuery: {
32078     prototype: WebGLQuery;
32079     new(): WebGLQuery;
32080     isInstance(obj): obj is WebGLQuery;
32084  * Part of the WebGL API and represents a buffer that can contain an image, or can be source or target of an rendering operation.
32086  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderbuffer)
32087  */
32088 interface WebGLRenderbuffer {
32091 declare var WebGLRenderbuffer: {
32092     prototype: WebGLRenderbuffer;
32093     new(): WebGLRenderbuffer;
32094     isInstance(obj): obj is WebGLRenderbuffer;
32098  * Provides an interface to the OpenGL ES 2.0 graphics rendering context for the drawing surface of an HTML <canvas> element.
32100  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext)
32101  */
32102 interface WebGLRenderingContext extends WebGLRenderingContextBase {
32103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferData) */
32104     bufferData(target: GLenum, size: GLsizeiptr, usage: GLenum): void;
32105     bufferData(target: GLenum, data: ArrayBuffer | null, usage: GLenum): void;
32106     bufferData(target: GLenum, data: ArrayBufferView, usage: GLenum): void;
32107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferSubData) */
32108     bufferSubData(target: GLenum, offset: GLintptr, data: ArrayBuffer): void;
32109     bufferSubData(target: GLenum, offset: GLintptr, data: ArrayBufferView): void;
32110     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexImage2D) */
32111     compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, data: ArrayBufferView): void;
32112     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexSubImage2D) */
32113     compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, data: ArrayBufferView): void;
32114     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/readPixels) */
32115     readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
32116     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texImage2D) */
32117     texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
32118     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, pixels: ImageBitmap): void;
32119     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, pixels: ImageData): void;
32120     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, image: HTMLImageElement): void;
32121     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, canvas: HTMLCanvasElement): void;
32122     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, video: HTMLVideoElement): void;
32123     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, canvas: OffscreenCanvas): void;
32124     texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, videoFrame: VideoFrame): void;
32125     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texSubImage2D) */
32126     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
32127     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, pixels: ImageBitmap): void;
32128     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, pixels: ImageData): void;
32129     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, image: HTMLImageElement): void;
32130     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, canvas: HTMLCanvasElement): void;
32131     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, video: HTMLVideoElement): void;
32132     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, canvas: OffscreenCanvas): void;
32133     texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, videoFrame: VideoFrame): void;
32134     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32135     uniform1fv(location: WebGLUniformLocation | null, data: Float32List): void;
32136     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32137     uniform1iv(location: WebGLUniformLocation | null, data: Int32List): void;
32138     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32139     uniform2fv(location: WebGLUniformLocation | null, data: Float32List): void;
32140     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32141     uniform2iv(location: WebGLUniformLocation | null, data: Int32List): void;
32142     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32143     uniform3fv(location: WebGLUniformLocation | null, data: Float32List): void;
32144     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32145     uniform3iv(location: WebGLUniformLocation | null, data: Int32List): void;
32146     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32147     uniform4fv(location: WebGLUniformLocation | null, data: Float32List): void;
32148     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32149     uniform4iv(location: WebGLUniformLocation | null, data: Int32List): void;
32150     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
32151     uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List): void;
32152     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
32153     uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List): void;
32154     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
32155     uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List): void;
32158 declare var WebGLRenderingContext: {
32159     prototype: WebGLRenderingContext;
32160     new(): WebGLRenderingContext;
32161     readonly DEPTH_BUFFER_BIT: 0x00000100;
32162     readonly STENCIL_BUFFER_BIT: 0x00000400;
32163     readonly COLOR_BUFFER_BIT: 0x00004000;
32164     readonly POINTS: 0x0000;
32165     readonly LINES: 0x0001;
32166     readonly LINE_LOOP: 0x0002;
32167     readonly LINE_STRIP: 0x0003;
32168     readonly TRIANGLES: 0x0004;
32169     readonly TRIANGLE_STRIP: 0x0005;
32170     readonly TRIANGLE_FAN: 0x0006;
32171     readonly ZERO: 0;
32172     readonly ONE: 1;
32173     readonly SRC_COLOR: 0x0300;
32174     readonly ONE_MINUS_SRC_COLOR: 0x0301;
32175     readonly SRC_ALPHA: 0x0302;
32176     readonly ONE_MINUS_SRC_ALPHA: 0x0303;
32177     readonly DST_ALPHA: 0x0304;
32178     readonly ONE_MINUS_DST_ALPHA: 0x0305;
32179     readonly DST_COLOR: 0x0306;
32180     readonly ONE_MINUS_DST_COLOR: 0x0307;
32181     readonly SRC_ALPHA_SATURATE: 0x0308;
32182     readonly FUNC_ADD: 0x8006;
32183     readonly BLEND_EQUATION: 0x8009;
32184     readonly BLEND_EQUATION_RGB: 0x8009;
32185     readonly BLEND_EQUATION_ALPHA: 0x883D;
32186     readonly FUNC_SUBTRACT: 0x800A;
32187     readonly FUNC_REVERSE_SUBTRACT: 0x800B;
32188     readonly BLEND_DST_RGB: 0x80C8;
32189     readonly BLEND_SRC_RGB: 0x80C9;
32190     readonly BLEND_DST_ALPHA: 0x80CA;
32191     readonly BLEND_SRC_ALPHA: 0x80CB;
32192     readonly CONSTANT_COLOR: 0x8001;
32193     readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
32194     readonly CONSTANT_ALPHA: 0x8003;
32195     readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
32196     readonly BLEND_COLOR: 0x8005;
32197     readonly ARRAY_BUFFER: 0x8892;
32198     readonly ELEMENT_ARRAY_BUFFER: 0x8893;
32199     readonly ARRAY_BUFFER_BINDING: 0x8894;
32200     readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
32201     readonly STREAM_DRAW: 0x88E0;
32202     readonly STATIC_DRAW: 0x88E4;
32203     readonly DYNAMIC_DRAW: 0x88E8;
32204     readonly BUFFER_SIZE: 0x8764;
32205     readonly BUFFER_USAGE: 0x8765;
32206     readonly CURRENT_VERTEX_ATTRIB: 0x8626;
32207     readonly FRONT: 0x0404;
32208     readonly BACK: 0x0405;
32209     readonly FRONT_AND_BACK: 0x0408;
32210     readonly CULL_FACE: 0x0B44;
32211     readonly BLEND: 0x0BE2;
32212     readonly DITHER: 0x0BD0;
32213     readonly STENCIL_TEST: 0x0B90;
32214     readonly DEPTH_TEST: 0x0B71;
32215     readonly SCISSOR_TEST: 0x0C11;
32216     readonly POLYGON_OFFSET_FILL: 0x8037;
32217     readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
32218     readonly SAMPLE_COVERAGE: 0x80A0;
32219     readonly NO_ERROR: 0;
32220     readonly INVALID_ENUM: 0x0500;
32221     readonly INVALID_VALUE: 0x0501;
32222     readonly INVALID_OPERATION: 0x0502;
32223     readonly OUT_OF_MEMORY: 0x0505;
32224     readonly CW: 0x0900;
32225     readonly CCW: 0x0901;
32226     readonly LINE_WIDTH: 0x0B21;
32227     readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
32228     readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
32229     readonly CULL_FACE_MODE: 0x0B45;
32230     readonly FRONT_FACE: 0x0B46;
32231     readonly DEPTH_RANGE: 0x0B70;
32232     readonly DEPTH_WRITEMASK: 0x0B72;
32233     readonly DEPTH_CLEAR_VALUE: 0x0B73;
32234     readonly DEPTH_FUNC: 0x0B74;
32235     readonly STENCIL_CLEAR_VALUE: 0x0B91;
32236     readonly STENCIL_FUNC: 0x0B92;
32237     readonly STENCIL_FAIL: 0x0B94;
32238     readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
32239     readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
32240     readonly STENCIL_REF: 0x0B97;
32241     readonly STENCIL_VALUE_MASK: 0x0B93;
32242     readonly STENCIL_WRITEMASK: 0x0B98;
32243     readonly STENCIL_BACK_FUNC: 0x8800;
32244     readonly STENCIL_BACK_FAIL: 0x8801;
32245     readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
32246     readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
32247     readonly STENCIL_BACK_REF: 0x8CA3;
32248     readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
32249     readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
32250     readonly VIEWPORT: 0x0BA2;
32251     readonly SCISSOR_BOX: 0x0C10;
32252     readonly COLOR_CLEAR_VALUE: 0x0C22;
32253     readonly COLOR_WRITEMASK: 0x0C23;
32254     readonly UNPACK_ALIGNMENT: 0x0CF5;
32255     readonly PACK_ALIGNMENT: 0x0D05;
32256     readonly MAX_TEXTURE_SIZE: 0x0D33;
32257     readonly MAX_VIEWPORT_DIMS: 0x0D3A;
32258     readonly SUBPIXEL_BITS: 0x0D50;
32259     readonly RED_BITS: 0x0D52;
32260     readonly GREEN_BITS: 0x0D53;
32261     readonly BLUE_BITS: 0x0D54;
32262     readonly ALPHA_BITS: 0x0D55;
32263     readonly DEPTH_BITS: 0x0D56;
32264     readonly STENCIL_BITS: 0x0D57;
32265     readonly POLYGON_OFFSET_UNITS: 0x2A00;
32266     readonly POLYGON_OFFSET_FACTOR: 0x8038;
32267     readonly TEXTURE_BINDING_2D: 0x8069;
32268     readonly SAMPLE_BUFFERS: 0x80A8;
32269     readonly SAMPLES: 0x80A9;
32270     readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
32271     readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
32272     readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
32273     readonly DONT_CARE: 0x1100;
32274     readonly FASTEST: 0x1101;
32275     readonly NICEST: 0x1102;
32276     readonly GENERATE_MIPMAP_HINT: 0x8192;
32277     readonly BYTE: 0x1400;
32278     readonly UNSIGNED_BYTE: 0x1401;
32279     readonly SHORT: 0x1402;
32280     readonly UNSIGNED_SHORT: 0x1403;
32281     readonly INT: 0x1404;
32282     readonly UNSIGNED_INT: 0x1405;
32283     readonly FLOAT: 0x1406;
32284     readonly DEPTH_COMPONENT: 0x1902;
32285     readonly ALPHA: 0x1906;
32286     readonly RGB: 0x1907;
32287     readonly RGBA: 0x1908;
32288     readonly LUMINANCE: 0x1909;
32289     readonly LUMINANCE_ALPHA: 0x190A;
32290     readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
32291     readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
32292     readonly UNSIGNED_SHORT_5_6_5: 0x8363;
32293     readonly FRAGMENT_SHADER: 0x8B30;
32294     readonly VERTEX_SHADER: 0x8B31;
32295     readonly MAX_VERTEX_ATTRIBS: 0x8869;
32296     readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
32297     readonly MAX_VARYING_VECTORS: 0x8DFC;
32298     readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
32299     readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
32300     readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
32301     readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
32302     readonly SHADER_TYPE: 0x8B4F;
32303     readonly DELETE_STATUS: 0x8B80;
32304     readonly LINK_STATUS: 0x8B82;
32305     readonly VALIDATE_STATUS: 0x8B83;
32306     readonly ATTACHED_SHADERS: 0x8B85;
32307     readonly ACTIVE_UNIFORMS: 0x8B86;
32308     readonly ACTIVE_ATTRIBUTES: 0x8B89;
32309     readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
32310     readonly CURRENT_PROGRAM: 0x8B8D;
32311     readonly NEVER: 0x0200;
32312     readonly LESS: 0x0201;
32313     readonly EQUAL: 0x0202;
32314     readonly LEQUAL: 0x0203;
32315     readonly GREATER: 0x0204;
32316     readonly NOTEQUAL: 0x0205;
32317     readonly GEQUAL: 0x0206;
32318     readonly ALWAYS: 0x0207;
32319     readonly KEEP: 0x1E00;
32320     readonly REPLACE: 0x1E01;
32321     readonly INCR: 0x1E02;
32322     readonly DECR: 0x1E03;
32323     readonly INVERT: 0x150A;
32324     readonly INCR_WRAP: 0x8507;
32325     readonly DECR_WRAP: 0x8508;
32326     readonly VENDOR: 0x1F00;
32327     readonly RENDERER: 0x1F01;
32328     readonly VERSION: 0x1F02;
32329     readonly NEAREST: 0x2600;
32330     readonly LINEAR: 0x2601;
32331     readonly NEAREST_MIPMAP_NEAREST: 0x2700;
32332     readonly LINEAR_MIPMAP_NEAREST: 0x2701;
32333     readonly NEAREST_MIPMAP_LINEAR: 0x2702;
32334     readonly LINEAR_MIPMAP_LINEAR: 0x2703;
32335     readonly TEXTURE_MAG_FILTER: 0x2800;
32336     readonly TEXTURE_MIN_FILTER: 0x2801;
32337     readonly TEXTURE_WRAP_S: 0x2802;
32338     readonly TEXTURE_WRAP_T: 0x2803;
32339     readonly TEXTURE_2D: 0x0DE1;
32340     readonly TEXTURE: 0x1702;
32341     readonly TEXTURE_CUBE_MAP: 0x8513;
32342     readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
32343     readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
32344     readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
32345     readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
32346     readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
32347     readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
32348     readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
32349     readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
32350     readonly TEXTURE0: 0x84C0;
32351     readonly TEXTURE1: 0x84C1;
32352     readonly TEXTURE2: 0x84C2;
32353     readonly TEXTURE3: 0x84C3;
32354     readonly TEXTURE4: 0x84C4;
32355     readonly TEXTURE5: 0x84C5;
32356     readonly TEXTURE6: 0x84C6;
32357     readonly TEXTURE7: 0x84C7;
32358     readonly TEXTURE8: 0x84C8;
32359     readonly TEXTURE9: 0x84C9;
32360     readonly TEXTURE10: 0x84CA;
32361     readonly TEXTURE11: 0x84CB;
32362     readonly TEXTURE12: 0x84CC;
32363     readonly TEXTURE13: 0x84CD;
32364     readonly TEXTURE14: 0x84CE;
32365     readonly TEXTURE15: 0x84CF;
32366     readonly TEXTURE16: 0x84D0;
32367     readonly TEXTURE17: 0x84D1;
32368     readonly TEXTURE18: 0x84D2;
32369     readonly TEXTURE19: 0x84D3;
32370     readonly TEXTURE20: 0x84D4;
32371     readonly TEXTURE21: 0x84D5;
32372     readonly TEXTURE22: 0x84D6;
32373     readonly TEXTURE23: 0x84D7;
32374     readonly TEXTURE24: 0x84D8;
32375     readonly TEXTURE25: 0x84D9;
32376     readonly TEXTURE26: 0x84DA;
32377     readonly TEXTURE27: 0x84DB;
32378     readonly TEXTURE28: 0x84DC;
32379     readonly TEXTURE29: 0x84DD;
32380     readonly TEXTURE30: 0x84DE;
32381     readonly TEXTURE31: 0x84DF;
32382     readonly ACTIVE_TEXTURE: 0x84E0;
32383     readonly REPEAT: 0x2901;
32384     readonly CLAMP_TO_EDGE: 0x812F;
32385     readonly MIRRORED_REPEAT: 0x8370;
32386     readonly FLOAT_VEC2: 0x8B50;
32387     readonly FLOAT_VEC3: 0x8B51;
32388     readonly FLOAT_VEC4: 0x8B52;
32389     readonly INT_VEC2: 0x8B53;
32390     readonly INT_VEC3: 0x8B54;
32391     readonly INT_VEC4: 0x8B55;
32392     readonly BOOL: 0x8B56;
32393     readonly BOOL_VEC2: 0x8B57;
32394     readonly BOOL_VEC3: 0x8B58;
32395     readonly BOOL_VEC4: 0x8B59;
32396     readonly FLOAT_MAT2: 0x8B5A;
32397     readonly FLOAT_MAT3: 0x8B5B;
32398     readonly FLOAT_MAT4: 0x8B5C;
32399     readonly SAMPLER_2D: 0x8B5E;
32400     readonly SAMPLER_CUBE: 0x8B60;
32401     readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
32402     readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
32403     readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
32404     readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
32405     readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
32406     readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
32407     readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
32408     readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
32409     readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
32410     readonly COMPILE_STATUS: 0x8B81;
32411     readonly LOW_FLOAT: 0x8DF0;
32412     readonly MEDIUM_FLOAT: 0x8DF1;
32413     readonly HIGH_FLOAT: 0x8DF2;
32414     readonly LOW_INT: 0x8DF3;
32415     readonly MEDIUM_INT: 0x8DF4;
32416     readonly HIGH_INT: 0x8DF5;
32417     readonly FRAMEBUFFER: 0x8D40;
32418     readonly RENDERBUFFER: 0x8D41;
32419     readonly RGBA4: 0x8056;
32420     readonly RGB5_A1: 0x8057;
32421     readonly RGB565: 0x8D62;
32422     readonly DEPTH_COMPONENT16: 0x81A5;
32423     readonly STENCIL_INDEX8: 0x8D48;
32424     readonly DEPTH_STENCIL: 0x84F9;
32425     readonly RENDERBUFFER_WIDTH: 0x8D42;
32426     readonly RENDERBUFFER_HEIGHT: 0x8D43;
32427     readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
32428     readonly RENDERBUFFER_RED_SIZE: 0x8D50;
32429     readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
32430     readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
32431     readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
32432     readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
32433     readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
32434     readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
32435     readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
32436     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
32437     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
32438     readonly COLOR_ATTACHMENT0: 0x8CE0;
32439     readonly DEPTH_ATTACHMENT: 0x8D00;
32440     readonly STENCIL_ATTACHMENT: 0x8D20;
32441     readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
32442     readonly NONE: 0;
32443     readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
32444     readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
32445     readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
32446     readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
32447     readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
32448     readonly FRAMEBUFFER_BINDING: 0x8CA6;
32449     readonly RENDERBUFFER_BINDING: 0x8CA7;
32450     readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
32451     readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
32452     readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
32453     readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
32454     readonly CONTEXT_LOST_WEBGL: 0x9242;
32455     readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
32456     readonly BROWSER_DEFAULT_WEBGL: 0x9244;
32457     isInstance(obj): obj is WebGLRenderingContext;
32460 interface WebGLRenderingContextBase {
32461     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/canvas) */
32462     readonly canvas: CanvasSource | null;
32463     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawingBufferHeight) */
32464     readonly drawingBufferHeight: GLsizei;
32465     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawingBufferWidth) */
32466     readonly drawingBufferWidth: GLsizei;
32467     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/activeTexture) */
32468     activeTexture(texture: GLenum): void;
32469     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/attachShader) */
32470     attachShader(program: WebGLProgram, shader: WebGLShader): void;
32471     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindAttribLocation) */
32472     bindAttribLocation(program: WebGLProgram, index: GLuint, name: string): void;
32473     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindBuffer) */
32474     bindBuffer(target: GLenum, buffer: WebGLBuffer | null): void;
32475     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindFramebuffer) */
32476     bindFramebuffer(target: GLenum, framebuffer: WebGLFramebuffer | null): void;
32477     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindRenderbuffer) */
32478     bindRenderbuffer(target: GLenum, renderbuffer: WebGLRenderbuffer | null): void;
32479     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindTexture) */
32480     bindTexture(target: GLenum, texture: WebGLTexture | null): void;
32481     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendColor) */
32482     blendColor(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat): void;
32483     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendEquation) */
32484     blendEquation(mode: GLenum): void;
32485     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendEquationSeparate) */
32486     blendEquationSeparate(modeRGB: GLenum, modeAlpha: GLenum): void;
32487     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendFunc) */
32488     blendFunc(sfactor: GLenum, dfactor: GLenum): void;
32489     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendFuncSeparate) */
32490     blendFuncSeparate(srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
32491     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/checkFramebufferStatus) */
32492     checkFramebufferStatus(target: GLenum): GLenum;
32493     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clear) */
32494     clear(mask: GLbitfield): void;
32495     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearColor) */
32496     clearColor(red: GLfloat, green: GLfloat, blue: GLfloat, alpha: GLfloat): void;
32497     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearDepth) */
32498     clearDepth(depth: GLclampf): void;
32499     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearStencil) */
32500     clearStencil(s: GLint): void;
32501     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/colorMask) */
32502     colorMask(red: GLboolean, green: GLboolean, blue: GLboolean, alpha: GLboolean): void;
32503     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compileShader) */
32504     compileShader(shader: WebGLShader): void;
32505     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/copyTexImage2D) */
32506     copyTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, x: GLint, y: GLint, width: GLsizei, height: GLsizei, border: GLint): void;
32507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/copyTexSubImage2D) */
32508     copyTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
32509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createBuffer) */
32510     createBuffer(): WebGLBuffer | null;
32511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createFramebuffer) */
32512     createFramebuffer(): WebGLFramebuffer | null;
32513     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createProgram) */
32514     createProgram(): WebGLProgram | null;
32515     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createRenderbuffer) */
32516     createRenderbuffer(): WebGLRenderbuffer | null;
32517     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createShader) */
32518     createShader(type: GLenum): WebGLShader | null;
32519     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createTexture) */
32520     createTexture(): WebGLTexture | null;
32521     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/cullFace) */
32522     cullFace(mode: GLenum): void;
32523     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteBuffer) */
32524     deleteBuffer(buffer: WebGLBuffer | null): void;
32525     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteFramebuffer) */
32526     deleteFramebuffer(framebuffer: WebGLFramebuffer | null): void;
32527     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteProgram) */
32528     deleteProgram(program: WebGLProgram | null): void;
32529     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteRenderbuffer) */
32530     deleteRenderbuffer(renderbuffer: WebGLRenderbuffer | null): void;
32531     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteShader) */
32532     deleteShader(shader: WebGLShader | null): void;
32533     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteTexture) */
32534     deleteTexture(texture: WebGLTexture | null): void;
32535     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthFunc) */
32536     depthFunc(func: GLenum): void;
32537     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthMask) */
32538     depthMask(flag: GLboolean): void;
32539     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthRange) */
32540     depthRange(zNear: GLclampf, zFar: GLclampf): void;
32541     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/detachShader) */
32542     detachShader(program: WebGLProgram, shader: WebGLShader): void;
32543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/disable) */
32544     disable(cap: GLenum): void;
32545     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/disableVertexAttribArray) */
32546     disableVertexAttribArray(index: GLuint): void;
32547     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawArrays) */
32548     drawArrays(mode: GLenum, first: GLint, count: GLsizei): void;
32549     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawElements) */
32550     drawElements(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr): void;
32551     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/enable) */
32552     enable(cap: GLenum): void;
32553     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/enableVertexAttribArray) */
32554     enableVertexAttribArray(index: GLuint): void;
32555     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/finish) */
32556     finish(): void;
32557     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/flush) */
32558     flush(): void;
32559     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/framebufferRenderbuffer) */
32560     framebufferRenderbuffer(target: GLenum, attachment: GLenum, renderbuffertarget: GLenum, renderbuffer: WebGLRenderbuffer | null): void;
32561     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/framebufferTexture2D) */
32562     framebufferTexture2D(target: GLenum, attachment: GLenum, textarget: GLenum, texture: WebGLTexture | null, level: GLint): void;
32563     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/frontFace) */
32564     frontFace(mode: GLenum): void;
32565     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/generateMipmap) */
32566     generateMipmap(target: GLenum): void;
32567     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getActiveAttrib) */
32568     getActiveAttrib(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
32569     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getActiveUniform) */
32570     getActiveUniform(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
32571     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getAttachedShaders) */
32572     getAttachedShaders(program: WebGLProgram): WebGLShader[] | null;
32573     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getAttribLocation) */
32574     getAttribLocation(program: WebGLProgram, name: string): GLint;
32575     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getBufferParameter) */
32576     getBufferParameter(target: GLenum, pname: GLenum): any;
32577     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getContextAttributes) */
32578     getContextAttributes(): WebGLContextAttributes | null;
32579     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getError) */
32580     getError(): GLenum;
32581     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getExtension) */
32582     getExtension(name: string): any;
32583     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getFramebufferAttachmentParameter) */
32584     getFramebufferAttachmentParameter(target: GLenum, attachment: GLenum, pname: GLenum): any;
32585     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getParameter) */
32586     getParameter(pname: GLenum): any;
32587     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getProgramInfoLog) */
32588     getProgramInfoLog(program: WebGLProgram): string | null;
32589     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getProgramParameter) */
32590     getProgramParameter(program: WebGLProgram, pname: GLenum): any;
32591     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getRenderbufferParameter) */
32592     getRenderbufferParameter(target: GLenum, pname: GLenum): any;
32593     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderInfoLog) */
32594     getShaderInfoLog(shader: WebGLShader): string | null;
32595     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderParameter) */
32596     getShaderParameter(shader: WebGLShader, pname: GLenum): any;
32597     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderPrecisionFormat) */
32598     getShaderPrecisionFormat(shadertype: GLenum, precisiontype: GLenum): WebGLShaderPrecisionFormat | null;
32599     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderSource) */
32600     getShaderSource(shader: WebGLShader): string | null;
32601     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getSupportedExtensions) */
32602     getSupportedExtensions(): string[] | null;
32603     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getTexParameter) */
32604     getTexParameter(target: GLenum, pname: GLenum): any;
32605     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getUniform) */
32606     getUniform(program: WebGLProgram, location: WebGLUniformLocation): any;
32607     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getUniformLocation) */
32608     getUniformLocation(program: WebGLProgram, name: string): WebGLUniformLocation | null;
32609     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getVertexAttrib) */
32610     getVertexAttrib(index: GLuint, pname: GLenum): any;
32611     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getVertexAttribOffset) */
32612     getVertexAttribOffset(index: GLuint, pname: GLenum): GLintptr;
32613     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/hint) */
32614     hint(target: GLenum, mode: GLenum): void;
32615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isBuffer) */
32616     isBuffer(buffer: WebGLBuffer | null): GLboolean;
32617     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isContextLost) */
32618     isContextLost(): boolean;
32619     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isEnabled) */
32620     isEnabled(cap: GLenum): GLboolean;
32621     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isFramebuffer) */
32622     isFramebuffer(framebuffer: WebGLFramebuffer | null): GLboolean;
32623     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isProgram) */
32624     isProgram(program: WebGLProgram | null): GLboolean;
32625     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isRenderbuffer) */
32626     isRenderbuffer(renderbuffer: WebGLRenderbuffer | null): GLboolean;
32627     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isShader) */
32628     isShader(shader: WebGLShader | null): GLboolean;
32629     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isTexture) */
32630     isTexture(texture: WebGLTexture | null): GLboolean;
32631     lineWidth(width: GLfloat): void;
32632     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/linkProgram) */
32633     linkProgram(program: WebGLProgram): void;
32634     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/makeXRCompatible) */
32635     makeXRCompatible(): Promise<void>;
32636     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/pixelStorei) */
32637     pixelStorei(pname: GLenum, param: GLint): void;
32638     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/polygonOffset) */
32639     polygonOffset(factor: GLfloat, units: GLfloat): void;
32640     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/renderbufferStorage) */
32641     renderbufferStorage(target: GLenum, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
32642     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/sampleCoverage) */
32643     sampleCoverage(value: GLclampf, invert: GLboolean): void;
32644     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/scissor) */
32645     scissor(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
32646     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/shaderSource) */
32647     shaderSource(shader: WebGLShader, source: string): void;
32648     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilFunc) */
32649     stencilFunc(func: GLenum, ref: GLint, mask: GLuint): void;
32650     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilFuncSeparate) */
32651     stencilFuncSeparate(face: GLenum, func: GLenum, ref: GLint, mask: GLuint): void;
32652     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilMask) */
32653     stencilMask(mask: GLuint): void;
32654     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilMaskSeparate) */
32655     stencilMaskSeparate(face: GLenum, mask: GLuint): void;
32656     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilOp) */
32657     stencilOp(fail: GLenum, zfail: GLenum, zpass: GLenum): void;
32658     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilOpSeparate) */
32659     stencilOpSeparate(face: GLenum, fail: GLenum, zfail: GLenum, zpass: GLenum): void;
32660     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texParameter) */
32661     texParameterf(target: GLenum, pname: GLenum, param: GLfloat): void;
32662     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texParameter) */
32663     texParameteri(target: GLenum, pname: GLenum, param: GLint): void;
32664     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32665     uniform1f(location: WebGLUniformLocation | null, x: GLfloat): void;
32666     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32667     uniform1i(location: WebGLUniformLocation | null, x: GLint): void;
32668     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32669     uniform2f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat): void;
32670     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32671     uniform2i(location: WebGLUniformLocation | null, x: GLint, y: GLint): void;
32672     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32673     uniform3f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat, z: GLfloat): void;
32674     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32675     uniform3i(location: WebGLUniformLocation | null, x: GLint, y: GLint, z: GLint): void;
32676     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32677     uniform4f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void;
32678     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
32679     uniform4i(location: WebGLUniformLocation | null, x: GLint, y: GLint, z: GLint, w: GLint): void;
32680     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/useProgram) */
32681     useProgram(program: WebGLProgram | null): void;
32682     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/validateProgram) */
32683     validateProgram(program: WebGLProgram): void;
32684     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32685     vertexAttrib1f(indx: GLuint, x: GLfloat): void;
32686     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32687     vertexAttrib1fv(indx: GLuint, values: Float32List): void;
32688     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32689     vertexAttrib2f(indx: GLuint, x: GLfloat, y: GLfloat): void;
32690     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32691     vertexAttrib2fv(indx: GLuint, values: Float32List): void;
32692     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32693     vertexAttrib3f(indx: GLuint, x: GLfloat, y: GLfloat, z: GLfloat): void;
32694     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32695     vertexAttrib3fv(indx: GLuint, values: Float32List): void;
32696     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32697     vertexAttrib4f(indx: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void;
32698     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
32699     vertexAttrib4fv(indx: GLuint, values: Float32List): void;
32700     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttribPointer) */
32701     vertexAttribPointer(indx: GLuint, size: GLint, type: GLenum, normalized: GLboolean, stride: GLsizei, offset: GLintptr): void;
32702     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/viewport) */
32703     viewport(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
32704     readonly DEPTH_BUFFER_BIT: 0x00000100;
32705     readonly STENCIL_BUFFER_BIT: 0x00000400;
32706     readonly COLOR_BUFFER_BIT: 0x00004000;
32707     readonly POINTS: 0x0000;
32708     readonly LINES: 0x0001;
32709     readonly LINE_LOOP: 0x0002;
32710     readonly LINE_STRIP: 0x0003;
32711     readonly TRIANGLES: 0x0004;
32712     readonly TRIANGLE_STRIP: 0x0005;
32713     readonly TRIANGLE_FAN: 0x0006;
32714     readonly ZERO: 0;
32715     readonly ONE: 1;
32716     readonly SRC_COLOR: 0x0300;
32717     readonly ONE_MINUS_SRC_COLOR: 0x0301;
32718     readonly SRC_ALPHA: 0x0302;
32719     readonly ONE_MINUS_SRC_ALPHA: 0x0303;
32720     readonly DST_ALPHA: 0x0304;
32721     readonly ONE_MINUS_DST_ALPHA: 0x0305;
32722     readonly DST_COLOR: 0x0306;
32723     readonly ONE_MINUS_DST_COLOR: 0x0307;
32724     readonly SRC_ALPHA_SATURATE: 0x0308;
32725     readonly FUNC_ADD: 0x8006;
32726     readonly BLEND_EQUATION: 0x8009;
32727     readonly BLEND_EQUATION_RGB: 0x8009;
32728     readonly BLEND_EQUATION_ALPHA: 0x883D;
32729     readonly FUNC_SUBTRACT: 0x800A;
32730     readonly FUNC_REVERSE_SUBTRACT: 0x800B;
32731     readonly BLEND_DST_RGB: 0x80C8;
32732     readonly BLEND_SRC_RGB: 0x80C9;
32733     readonly BLEND_DST_ALPHA: 0x80CA;
32734     readonly BLEND_SRC_ALPHA: 0x80CB;
32735     readonly CONSTANT_COLOR: 0x8001;
32736     readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
32737     readonly CONSTANT_ALPHA: 0x8003;
32738     readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
32739     readonly BLEND_COLOR: 0x8005;
32740     readonly ARRAY_BUFFER: 0x8892;
32741     readonly ELEMENT_ARRAY_BUFFER: 0x8893;
32742     readonly ARRAY_BUFFER_BINDING: 0x8894;
32743     readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
32744     readonly STREAM_DRAW: 0x88E0;
32745     readonly STATIC_DRAW: 0x88E4;
32746     readonly DYNAMIC_DRAW: 0x88E8;
32747     readonly BUFFER_SIZE: 0x8764;
32748     readonly BUFFER_USAGE: 0x8765;
32749     readonly CURRENT_VERTEX_ATTRIB: 0x8626;
32750     readonly FRONT: 0x0404;
32751     readonly BACK: 0x0405;
32752     readonly FRONT_AND_BACK: 0x0408;
32753     readonly CULL_FACE: 0x0B44;
32754     readonly BLEND: 0x0BE2;
32755     readonly DITHER: 0x0BD0;
32756     readonly STENCIL_TEST: 0x0B90;
32757     readonly DEPTH_TEST: 0x0B71;
32758     readonly SCISSOR_TEST: 0x0C11;
32759     readonly POLYGON_OFFSET_FILL: 0x8037;
32760     readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
32761     readonly SAMPLE_COVERAGE: 0x80A0;
32762     readonly NO_ERROR: 0;
32763     readonly INVALID_ENUM: 0x0500;
32764     readonly INVALID_VALUE: 0x0501;
32765     readonly INVALID_OPERATION: 0x0502;
32766     readonly OUT_OF_MEMORY: 0x0505;
32767     readonly CW: 0x0900;
32768     readonly CCW: 0x0901;
32769     readonly LINE_WIDTH: 0x0B21;
32770     readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
32771     readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
32772     readonly CULL_FACE_MODE: 0x0B45;
32773     readonly FRONT_FACE: 0x0B46;
32774     readonly DEPTH_RANGE: 0x0B70;
32775     readonly DEPTH_WRITEMASK: 0x0B72;
32776     readonly DEPTH_CLEAR_VALUE: 0x0B73;
32777     readonly DEPTH_FUNC: 0x0B74;
32778     readonly STENCIL_CLEAR_VALUE: 0x0B91;
32779     readonly STENCIL_FUNC: 0x0B92;
32780     readonly STENCIL_FAIL: 0x0B94;
32781     readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
32782     readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
32783     readonly STENCIL_REF: 0x0B97;
32784     readonly STENCIL_VALUE_MASK: 0x0B93;
32785     readonly STENCIL_WRITEMASK: 0x0B98;
32786     readonly STENCIL_BACK_FUNC: 0x8800;
32787     readonly STENCIL_BACK_FAIL: 0x8801;
32788     readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
32789     readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
32790     readonly STENCIL_BACK_REF: 0x8CA3;
32791     readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
32792     readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
32793     readonly VIEWPORT: 0x0BA2;
32794     readonly SCISSOR_BOX: 0x0C10;
32795     readonly COLOR_CLEAR_VALUE: 0x0C22;
32796     readonly COLOR_WRITEMASK: 0x0C23;
32797     readonly UNPACK_ALIGNMENT: 0x0CF5;
32798     readonly PACK_ALIGNMENT: 0x0D05;
32799     readonly MAX_TEXTURE_SIZE: 0x0D33;
32800     readonly MAX_VIEWPORT_DIMS: 0x0D3A;
32801     readonly SUBPIXEL_BITS: 0x0D50;
32802     readonly RED_BITS: 0x0D52;
32803     readonly GREEN_BITS: 0x0D53;
32804     readonly BLUE_BITS: 0x0D54;
32805     readonly ALPHA_BITS: 0x0D55;
32806     readonly DEPTH_BITS: 0x0D56;
32807     readonly STENCIL_BITS: 0x0D57;
32808     readonly POLYGON_OFFSET_UNITS: 0x2A00;
32809     readonly POLYGON_OFFSET_FACTOR: 0x8038;
32810     readonly TEXTURE_BINDING_2D: 0x8069;
32811     readonly SAMPLE_BUFFERS: 0x80A8;
32812     readonly SAMPLES: 0x80A9;
32813     readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
32814     readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
32815     readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
32816     readonly DONT_CARE: 0x1100;
32817     readonly FASTEST: 0x1101;
32818     readonly NICEST: 0x1102;
32819     readonly GENERATE_MIPMAP_HINT: 0x8192;
32820     readonly BYTE: 0x1400;
32821     readonly UNSIGNED_BYTE: 0x1401;
32822     readonly SHORT: 0x1402;
32823     readonly UNSIGNED_SHORT: 0x1403;
32824     readonly INT: 0x1404;
32825     readonly UNSIGNED_INT: 0x1405;
32826     readonly FLOAT: 0x1406;
32827     readonly DEPTH_COMPONENT: 0x1902;
32828     readonly ALPHA: 0x1906;
32829     readonly RGB: 0x1907;
32830     readonly RGBA: 0x1908;
32831     readonly LUMINANCE: 0x1909;
32832     readonly LUMINANCE_ALPHA: 0x190A;
32833     readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
32834     readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
32835     readonly UNSIGNED_SHORT_5_6_5: 0x8363;
32836     readonly FRAGMENT_SHADER: 0x8B30;
32837     readonly VERTEX_SHADER: 0x8B31;
32838     readonly MAX_VERTEX_ATTRIBS: 0x8869;
32839     readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
32840     readonly MAX_VARYING_VECTORS: 0x8DFC;
32841     readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
32842     readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
32843     readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
32844     readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
32845     readonly SHADER_TYPE: 0x8B4F;
32846     readonly DELETE_STATUS: 0x8B80;
32847     readonly LINK_STATUS: 0x8B82;
32848     readonly VALIDATE_STATUS: 0x8B83;
32849     readonly ATTACHED_SHADERS: 0x8B85;
32850     readonly ACTIVE_UNIFORMS: 0x8B86;
32851     readonly ACTIVE_ATTRIBUTES: 0x8B89;
32852     readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
32853     readonly CURRENT_PROGRAM: 0x8B8D;
32854     readonly NEVER: 0x0200;
32855     readonly LESS: 0x0201;
32856     readonly EQUAL: 0x0202;
32857     readonly LEQUAL: 0x0203;
32858     readonly GREATER: 0x0204;
32859     readonly NOTEQUAL: 0x0205;
32860     readonly GEQUAL: 0x0206;
32861     readonly ALWAYS: 0x0207;
32862     readonly KEEP: 0x1E00;
32863     readonly REPLACE: 0x1E01;
32864     readonly INCR: 0x1E02;
32865     readonly DECR: 0x1E03;
32866     readonly INVERT: 0x150A;
32867     readonly INCR_WRAP: 0x8507;
32868     readonly DECR_WRAP: 0x8508;
32869     readonly VENDOR: 0x1F00;
32870     readonly RENDERER: 0x1F01;
32871     readonly VERSION: 0x1F02;
32872     readonly NEAREST: 0x2600;
32873     readonly LINEAR: 0x2601;
32874     readonly NEAREST_MIPMAP_NEAREST: 0x2700;
32875     readonly LINEAR_MIPMAP_NEAREST: 0x2701;
32876     readonly NEAREST_MIPMAP_LINEAR: 0x2702;
32877     readonly LINEAR_MIPMAP_LINEAR: 0x2703;
32878     readonly TEXTURE_MAG_FILTER: 0x2800;
32879     readonly TEXTURE_MIN_FILTER: 0x2801;
32880     readonly TEXTURE_WRAP_S: 0x2802;
32881     readonly TEXTURE_WRAP_T: 0x2803;
32882     readonly TEXTURE_2D: 0x0DE1;
32883     readonly TEXTURE: 0x1702;
32884     readonly TEXTURE_CUBE_MAP: 0x8513;
32885     readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
32886     readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
32887     readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
32888     readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
32889     readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
32890     readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
32891     readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
32892     readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
32893     readonly TEXTURE0: 0x84C0;
32894     readonly TEXTURE1: 0x84C1;
32895     readonly TEXTURE2: 0x84C2;
32896     readonly TEXTURE3: 0x84C3;
32897     readonly TEXTURE4: 0x84C4;
32898     readonly TEXTURE5: 0x84C5;
32899     readonly TEXTURE6: 0x84C6;
32900     readonly TEXTURE7: 0x84C7;
32901     readonly TEXTURE8: 0x84C8;
32902     readonly TEXTURE9: 0x84C9;
32903     readonly TEXTURE10: 0x84CA;
32904     readonly TEXTURE11: 0x84CB;
32905     readonly TEXTURE12: 0x84CC;
32906     readonly TEXTURE13: 0x84CD;
32907     readonly TEXTURE14: 0x84CE;
32908     readonly TEXTURE15: 0x84CF;
32909     readonly TEXTURE16: 0x84D0;
32910     readonly TEXTURE17: 0x84D1;
32911     readonly TEXTURE18: 0x84D2;
32912     readonly TEXTURE19: 0x84D3;
32913     readonly TEXTURE20: 0x84D4;
32914     readonly TEXTURE21: 0x84D5;
32915     readonly TEXTURE22: 0x84D6;
32916     readonly TEXTURE23: 0x84D7;
32917     readonly TEXTURE24: 0x84D8;
32918     readonly TEXTURE25: 0x84D9;
32919     readonly TEXTURE26: 0x84DA;
32920     readonly TEXTURE27: 0x84DB;
32921     readonly TEXTURE28: 0x84DC;
32922     readonly TEXTURE29: 0x84DD;
32923     readonly TEXTURE30: 0x84DE;
32924     readonly TEXTURE31: 0x84DF;
32925     readonly ACTIVE_TEXTURE: 0x84E0;
32926     readonly REPEAT: 0x2901;
32927     readonly CLAMP_TO_EDGE: 0x812F;
32928     readonly MIRRORED_REPEAT: 0x8370;
32929     readonly FLOAT_VEC2: 0x8B50;
32930     readonly FLOAT_VEC3: 0x8B51;
32931     readonly FLOAT_VEC4: 0x8B52;
32932     readonly INT_VEC2: 0x8B53;
32933     readonly INT_VEC3: 0x8B54;
32934     readonly INT_VEC4: 0x8B55;
32935     readonly BOOL: 0x8B56;
32936     readonly BOOL_VEC2: 0x8B57;
32937     readonly BOOL_VEC3: 0x8B58;
32938     readonly BOOL_VEC4: 0x8B59;
32939     readonly FLOAT_MAT2: 0x8B5A;
32940     readonly FLOAT_MAT3: 0x8B5B;
32941     readonly FLOAT_MAT4: 0x8B5C;
32942     readonly SAMPLER_2D: 0x8B5E;
32943     readonly SAMPLER_CUBE: 0x8B60;
32944     readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
32945     readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
32946     readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
32947     readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
32948     readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
32949     readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
32950     readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
32951     readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
32952     readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
32953     readonly COMPILE_STATUS: 0x8B81;
32954     readonly LOW_FLOAT: 0x8DF0;
32955     readonly MEDIUM_FLOAT: 0x8DF1;
32956     readonly HIGH_FLOAT: 0x8DF2;
32957     readonly LOW_INT: 0x8DF3;
32958     readonly MEDIUM_INT: 0x8DF4;
32959     readonly HIGH_INT: 0x8DF5;
32960     readonly FRAMEBUFFER: 0x8D40;
32961     readonly RENDERBUFFER: 0x8D41;
32962     readonly RGBA4: 0x8056;
32963     readonly RGB5_A1: 0x8057;
32964     readonly RGB565: 0x8D62;
32965     readonly DEPTH_COMPONENT16: 0x81A5;
32966     readonly STENCIL_INDEX8: 0x8D48;
32967     readonly DEPTH_STENCIL: 0x84F9;
32968     readonly RENDERBUFFER_WIDTH: 0x8D42;
32969     readonly RENDERBUFFER_HEIGHT: 0x8D43;
32970     readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
32971     readonly RENDERBUFFER_RED_SIZE: 0x8D50;
32972     readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
32973     readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
32974     readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
32975     readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
32976     readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
32977     readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
32978     readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
32979     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
32980     readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
32981     readonly COLOR_ATTACHMENT0: 0x8CE0;
32982     readonly DEPTH_ATTACHMENT: 0x8D00;
32983     readonly STENCIL_ATTACHMENT: 0x8D20;
32984     readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
32985     readonly NONE: 0;
32986     readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
32987     readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
32988     readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
32989     readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
32990     readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
32991     readonly FRAMEBUFFER_BINDING: 0x8CA6;
32992     readonly RENDERBUFFER_BINDING: 0x8CA7;
32993     readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
32994     readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
32995     readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
32996     readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
32997     readonly CONTEXT_LOST_WEBGL: 0x9242;
32998     readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
32999     readonly BROWSER_DEFAULT_WEBGL: 0x9244;
33002 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLSampler) */
33003 interface WebGLSampler {
33006 declare var WebGLSampler: {
33007     prototype: WebGLSampler;
33008     new(): WebGLSampler;
33009     isInstance(obj): obj is WebGLSampler;
33013  * The WebGLShader is part of the WebGL API and can either be a vertex or a fragment shader. A WebGLProgram requires both types of shaders.
33015  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShader)
33016  */
33017 interface WebGLShader {
33020 declare var WebGLShader: {
33021     prototype: WebGLShader;
33022     new(): WebGLShader;
33023     isInstance(obj): obj is WebGLShader;
33027  * Part of the WebGL API and represents the information returned by calling the WebGLRenderingContext.getShaderPrecisionFormat() method.
33029  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat)
33030  */
33031 interface WebGLShaderPrecisionFormat {
33032     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/precision) */
33033     readonly precision: GLint;
33034     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/rangeMax) */
33035     readonly rangeMax: GLint;
33036     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/rangeMin) */
33037     readonly rangeMin: GLint;
33040 declare var WebGLShaderPrecisionFormat: {
33041     prototype: WebGLShaderPrecisionFormat;
33042     new(): WebGLShaderPrecisionFormat;
33043     isInstance(obj): obj is WebGLShaderPrecisionFormat;
33046 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLSync) */
33047 interface WebGLSync {
33050 declare var WebGLSync: {
33051     prototype: WebGLSync;
33052     new(): WebGLSync;
33053     isInstance(obj): obj is WebGLSync;
33057  * Part of the WebGL API and represents an opaque texture object providing storage and state for texturing operations.
33059  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLTexture)
33060  */
33061 interface WebGLTexture {
33064 declare var WebGLTexture: {
33065     prototype: WebGLTexture;
33066     new(): WebGLTexture;
33067     isInstance(obj): obj is WebGLTexture;
33070 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLTransformFeedback) */
33071 interface WebGLTransformFeedback {
33074 declare var WebGLTransformFeedback: {
33075     prototype: WebGLTransformFeedback;
33076     new(): WebGLTransformFeedback;
33077     isInstance(obj): obj is WebGLTransformFeedback;
33081  * Part of the WebGL API and represents the location of a uniform variable in a shader program.
33083  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLUniformLocation)
33084  */
33085 interface WebGLUniformLocation {
33088 declare var WebGLUniformLocation: {
33089     prototype: WebGLUniformLocation;
33090     new(): WebGLUniformLocation;
33091     isInstance(obj): obj is WebGLUniformLocation;
33094 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLVertexArrayObject) */
33095 interface WebGLVertexArrayObject {
33098 declare var WebGLVertexArrayObject: {
33099     prototype: WebGLVertexArrayObject;
33100     new(): WebGLVertexArrayObject;
33101     isInstance(obj): obj is WebGLVertexArrayObject;
33104 interface WebSocketEventMap {
33105     "close": Event;
33106     "error": ErrorEvent;
33107     "message": Event;
33108     "open": Event;
33112  * Provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection.
33114  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket)
33115  */
33116 interface WebSocket extends EventTarget {
33117     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/binaryType) */
33118     binaryType: BinaryType;
33119     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/bufferedAmount) */
33120     readonly bufferedAmount: number;
33121     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/extensions) */
33122     readonly extensions: string;
33123     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/close_event) */
33124     onclose: ((this: WebSocket, ev: Event) => any) | null;
33125     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/error_event) */
33126     onerror: OnErrorEventHandler;
33127     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/message_event) */
33128     onmessage: ((this: WebSocket, ev: Event) => any) | null;
33129     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/open_event) */
33130     onopen: ((this: WebSocket, ev: Event) => any) | null;
33131     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/protocol) */
33132     readonly protocol: string;
33133     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) */
33134     readonly readyState: number;
33135     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/url) */
33136     readonly url: string;
33137     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/close) */
33138     close(code?: number, reason?: string): void;
33139     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/send) */
33140     send(data: string): void;
33141     send(data: Blob): void;
33142     send(data: ArrayBuffer): void;
33143     send(data: ArrayBufferView): void;
33144     readonly CONNECTING: 0;
33145     readonly OPEN: 1;
33146     readonly CLOSING: 2;
33147     readonly CLOSED: 3;
33148     addEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
33149     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
33150     removeEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
33151     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
33154 declare var WebSocket: {
33155     prototype: WebSocket;
33156     new(url: string, protocols?: string | string[]): WebSocket;
33157     readonly CONNECTING: 0;
33158     readonly OPEN: 1;
33159     readonly CLOSING: 2;
33160     readonly CLOSED: 3;
33161     createServerWebSocket(url: string, protocols: string[], transportProvider: nsITransportProvider, negotiatedExtensions: string): WebSocket;
33162     isInstance(obj): obj is WebSocket;
33166  * Available only in secure contexts.
33168  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport)
33169  */
33170 interface WebTransport {
33171     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/closed) */
33172     readonly closed: Promise<WebTransportCloseInfo>;
33173     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/congestionControl) */
33174     readonly congestionControl: WebTransportCongestionControl;
33175     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/datagrams) */
33176     readonly datagrams: WebTransportDatagramDuplexStream;
33177     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingBidirectionalStreams) */
33178     readonly incomingBidirectionalStreams: ReadableStream;
33179     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingUnidirectionalStreams) */
33180     readonly incomingUnidirectionalStreams: ReadableStream;
33181     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/ready) */
33182     readonly ready: Promise<undefined>;
33183     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/reliability) */
33184     readonly reliability: WebTransportReliabilityMode;
33185     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/close) */
33186     close(closeInfo?: WebTransportCloseInfo): void;
33187     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createBidirectionalStream) */
33188     createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WebTransportBidirectionalStream>;
33189     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createUnidirectionalStream) */
33190     createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WritableStream>;
33191     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/getStats) */
33192     getStats(): Promise<WebTransportStats>;
33195 declare var WebTransport: {
33196     prototype: WebTransport;
33197     new(url: string | URL, options?: WebTransportOptions): WebTransport;
33198     isInstance(obj): obj is WebTransport;
33202  * Available only in secure contexts.
33204  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream)
33205  */
33206 interface WebTransportBidirectionalStream {
33207     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/readable) */
33208     readonly readable: WebTransportReceiveStream;
33209     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/writable) */
33210     readonly writable: WebTransportSendStream;
33213 declare var WebTransportBidirectionalStream: {
33214     prototype: WebTransportBidirectionalStream;
33215     new(): WebTransportBidirectionalStream;
33216     isInstance(obj): obj is WebTransportBidirectionalStream;
33220  * Available only in secure contexts.
33222  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream)
33223  */
33224 interface WebTransportDatagramDuplexStream {
33225     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingHighWaterMark) */
33226     incomingHighWaterMark: number;
33227     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingMaxAge) */
33228     incomingMaxAge: number;
33229     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/maxDatagramSize) */
33230     readonly maxDatagramSize: number;
33231     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingHighWaterMark) */
33232     outgoingHighWaterMark: number;
33233     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingMaxAge) */
33234     outgoingMaxAge: number;
33235     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/readable) */
33236     readonly readable: ReadableStream;
33237     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/writable) */
33238     readonly writable: WritableStream;
33241 declare var WebTransportDatagramDuplexStream: {
33242     prototype: WebTransportDatagramDuplexStream;
33243     new(): WebTransportDatagramDuplexStream;
33244     isInstance(obj): obj is WebTransportDatagramDuplexStream;
33248  * Available only in secure contexts.
33250  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError)
33251  */
33252 interface WebTransportError extends DOMException {
33253     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/source) */
33254     readonly source: WebTransportErrorSource;
33255     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/streamErrorCode) */
33256     readonly streamErrorCode: number | null;
33259 declare var WebTransportError: {
33260     prototype: WebTransportError;
33261     new(init?: WebTransportErrorInit): WebTransportError;
33262     isInstance(obj): obj is WebTransportError;
33266  * Available only in secure contexts.
33268  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportReceiveStream)
33269  */
33270 interface WebTransportReceiveStream extends ReadableStream {
33271     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportReceiveStream/getStats) */
33272     getStats(): Promise<WebTransportReceiveStreamStats>;
33275 declare var WebTransportReceiveStream: {
33276     prototype: WebTransportReceiveStream;
33277     new(): WebTransportReceiveStream;
33278     isInstance(obj): obj is WebTransportReceiveStream;
33281 /** Available only in secure contexts. */
33282 interface WebTransportSendStream extends WritableStream {
33283     sendOrder: number | null;
33284     getStats(): Promise<WebTransportSendStreamStats>;
33287 declare var WebTransportSendStream: {
33288     prototype: WebTransportSendStream;
33289     new(): WebTransportSendStream;
33290     isInstance(obj): obj is WebTransportSendStream;
33294  * Events that occur due to the user moving a mouse wheel or similar input device.
33296  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent)
33297  */
33298 interface WheelEvent extends MouseEvent {
33299     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaMode) */
33300     readonly deltaMode: number;
33301     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaX) */
33302     readonly deltaX: number;
33303     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaY) */
33304     readonly deltaY: number;
33305     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaZ) */
33306     readonly deltaZ: number;
33307     /** @deprecated */
33308     readonly wheelDelta: number;
33309     /** @deprecated */
33310     readonly wheelDeltaX: number;
33311     /** @deprecated */
33312     readonly wheelDeltaY: number;
33313     readonly DOM_DELTA_PIXEL: 0x00;
33314     readonly DOM_DELTA_LINE: 0x01;
33315     readonly DOM_DELTA_PAGE: 0x02;
33318 declare var WheelEvent: {
33319     prototype: WheelEvent;
33320     new(type: string, eventInitDict?: WheelEventInit): WheelEvent;
33321     readonly DOM_DELTA_PIXEL: 0x00;
33322     readonly DOM_DELTA_LINE: 0x01;
33323     readonly DOM_DELTA_PAGE: 0x02;
33324     isInstance(obj): obj is WheelEvent;
33327 interface WindowEventMap extends GlobalEventHandlersEventMap, OnErrorEventHandlerForWindowEventMap, TouchEventHandlersEventMap, WindowEventHandlersEventMap {
33328     "devicelight": Event;
33329     "devicemotion": Event;
33330     "deviceorientation": Event;
33331     "deviceorientationabsolute": Event;
33332     "orientationchange": Event;
33333     "userproximity": Event;
33334     "vrdisplayactivate": Event;
33335     "vrdisplayconnect": Event;
33336     "vrdisplaydeactivate": Event;
33337     "vrdisplaydisconnect": Event;
33338     "vrdisplaypresentchange": Event;
33342  * A window containing a DOM document; the document property points to the DOM document loaded in that window.
33344  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window)
33345  */
33346 interface Window extends EventTarget, AnimationFrameProvider, GlobalCrypto, GlobalEventHandlers, OnErrorEventHandlerForWindow, SpeechSynthesisGetter, TouchEventHandlers, WindowEventHandlers, WindowLocalStorage, WindowOrWorkerGlobalScope, WindowSessionStorage {
33347     readonly Glean: GleanImpl;
33348     readonly GleanPings: GleanPingsImpl;
33349     readonly InstallTrigger: InstallTriggerImpl | null;
33350     browserDOMWindow: nsIBrowserDOMWindow | null;
33351     readonly browsingContext: BrowsingContext;
33352     /**
33353      * @deprecated This is a legacy alias of `navigator`.
33354      *
33355      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/navigator)
33356      */
33357     readonly clientInformation: Navigator;
33358     readonly clientPrincipal: Principal | null;
33359     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/closed) */
33360     readonly closed: boolean;
33361     readonly content: any;
33362     readonly controllers: XULControllers;
33363     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/customElements) */
33364     readonly customElements: CustomElementRegistry;
33365     readonly desktopToDeviceScale: number;
33366     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/devicePixelRatio) */
33367     readonly devicePixelRatio: number;
33368     readonly docShell: nsIDocShell | null;
33369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/document) */
33370     readonly document: Document | null;
33371     /**
33372      * @deprecated
33373      *
33374      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/event)
33375      */
33376     readonly event: Event | undefined;
33377     /**
33378      * @deprecated
33379      *
33380      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/external)
33381      */
33382     readonly external: External;
33383     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/frameElement) */
33384     readonly frameElement: Element | null;
33385     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/frames) */
33386     readonly frames: WindowProxy;
33387     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/fullScreen) */
33388     fullScreen: boolean;
33389     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/history) */
33390     readonly history: History;
33391     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/innerHeight) */
33392     readonly innerHeight: number;
33393     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/innerWidth) */
33394     readonly innerWidth: number;
33395     readonly intlUtils: IntlUtils;
33396     readonly isChromeWindow: boolean;
33397     readonly isFullyOccluded: boolean;
33398     readonly isInFullScreenTransition: boolean;
33399     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/length) */
33400     readonly length: number;
33401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/location) */
33402     readonly location: Location;
33403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/locationbar) */
33404     readonly locationbar: BarProp;
33405     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/menubar) */
33406     readonly menubar: BarProp;
33407     readonly messageManager: ChromeMessageBroadcaster;
33408     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/mozInnerScreenX) */
33409     readonly mozInnerScreenX: number;
33410     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/mozInnerScreenY) */
33411     readonly mozInnerScreenY: number;
33412     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/name) */
33413     name: string;
33414     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/navigator) */
33415     readonly navigator: Navigator;
33416     ondevicelight: ((this: Window, ev: Event) => any) | null;
33417     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/devicemotion_event) */
33418     ondevicemotion: ((this: Window, ev: Event) => any) | null;
33419     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/deviceorientation_event) */
33420     ondeviceorientation: ((this: Window, ev: Event) => any) | null;
33421     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/deviceorientationabsolute_event) */
33422     ondeviceorientationabsolute: ((this: Window, ev: Event) => any) | null;
33423     /**
33424      * @deprecated
33425      *
33426      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/orientationchange_event)
33427      */
33428     onorientationchange: ((this: Window, ev: Event) => any) | null;
33429     onuserproximity: ((this: Window, ev: Event) => any) | null;
33430     /**
33431      * @deprecated
33432      *
33433      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/vrdisplayactivate_event)
33434      */
33435     onvrdisplayactivate: ((this: Window, ev: Event) => any) | null;
33436     /**
33437      * @deprecated
33438      *
33439      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/vrdisplayconnect_event)
33440      */
33441     onvrdisplayconnect: ((this: Window, ev: Event) => any) | null;
33442     /**
33443      * @deprecated
33444      *
33445      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/vrdisplaydeactivate_event)
33446      */
33447     onvrdisplaydeactivate: ((this: Window, ev: Event) => any) | null;
33448     /**
33449      * @deprecated
33450      *
33451      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/vrdisplaydisconnect_event)
33452      */
33453     onvrdisplaydisconnect: ((this: Window, ev: Event) => any) | null;
33454     /**
33455      * @deprecated
33456      *
33457      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/vrdisplaypresentchange_event)
33458      */
33459     onvrdisplaypresentchange: ((this: Window, ev: Event) => any) | null;
33460     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/opener) */
33461     opener: any;
33462     /**
33463      * @deprecated
33464      *
33465      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/orientation)
33466      */
33467     readonly orientation: number;
33468     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/outerHeight) */
33469     readonly outerHeight: number;
33470     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/outerWidth) */
33471     readonly outerWidth: number;
33472     /**
33473      * @deprecated This is a legacy alias of `scrollX`.
33474      *
33475      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollX)
33476      */
33477     readonly pageXOffset: number;
33478     /**
33479      * @deprecated This is a legacy alias of `scrollY`.
33480      *
33481      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollY)
33482      */
33483     readonly pageYOffset: number;
33484     readonly paintWorklet: Worklet;
33485     /**
33486      * Refers to either the parent WindowProxy, or itself.
33487      *
33488      * It can rarely be null e.g. for contentWindow of an iframe that is already removed from the parent.
33489      *
33490      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/parent)
33491      */
33492     readonly parent: WindowProxy | null;
33493     readonly performance: Performance | null;
33494     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/personalbar) */
33495     readonly personalbar: BarProp;
33496     readonly realFrameElement: Element | null;
33497     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screen) */
33498     readonly screen: Screen;
33499     readonly screenEdgeSlopX: number;
33500     readonly screenEdgeSlopY: number;
33501     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenLeft) */
33502     readonly screenLeft: number;
33503     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenTop) */
33504     readonly screenTop: number;
33505     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenX) */
33506     readonly screenX: number;
33507     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenY) */
33508     readonly screenY: number;
33509     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollMaxX) */
33510     readonly scrollMaxX: number;
33511     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollMaxY) */
33512     readonly scrollMaxY: number;
33513     readonly scrollMinX: number;
33514     readonly scrollMinY: number;
33515     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollX) */
33516     readonly scrollX: number;
33517     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollY) */
33518     readonly scrollY: number;
33519     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollbars) */
33520     readonly scrollbars: BarProp;
33521     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/self) */
33522     readonly self: WindowProxy;
33523     /**
33524      * @deprecated
33525      *
33526      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/status)
33527      */
33528     status: string;
33529     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/statusbar) */
33530     readonly statusbar: BarProp;
33531     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/toolbar) */
33532     readonly toolbar: BarProp;
33533     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/top) */
33534     readonly top: WindowProxy | null;
33535     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/visualViewport) */
33536     readonly visualViewport: VisualViewport;
33537     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/window) */
33538     readonly window: WindowProxy;
33539     readonly windowGlobalChild: WindowGlobalChild | null;
33540     readonly windowRoot: WindowRoot | null;
33541     readonly windowState: number;
33542     readonly windowUtils: nsIDOMWindowUtils;
33543     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/alert) */
33544     alert(): void;
33545     alert(message: string): void;
33546     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/blur) */
33547     blur(): void;
33548     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/cancelIdleCallback) */
33549     cancelIdleCallback(handle: number): void;
33550     /**
33551      * @deprecated
33552      *
33553      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/captureEvents)
33554      */
33555     captureEvents(): void;
33556     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/close) */
33557     close(): void;
33558     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/confirm) */
33559     confirm(message?: string): boolean;
33560     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/dump) */
33561     dump(str: string): void;
33562     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/find) */
33563     find(str?: string, caseSensitive?: boolean, backwards?: boolean, wrapAround?: boolean, wholeWord?: boolean, searchInFrames?: boolean, showDialog?: boolean): boolean;
33564     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/focus) */
33565     focus(): void;
33566     getAttention(): void;
33567     getAttentionWithCycleCount(aCycleCount: number): void;
33568     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/getComputedStyle) */
33569     getComputedStyle(elt: Element, pseudoElt?: string | null): CSSStyleDeclaration | null;
33570     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/getDefaultComputedStyle) */
33571     getDefaultComputedStyle(elt: Element, pseudoElt?: string): CSSStyleDeclaration | null;
33572     getGroupMessageManager(aGroup: string): ChromeMessageBroadcaster;
33573     getInterface(iid: any): any;
33574     getRegionalPrefsLocales(): string[];
33575     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/getSelection) */
33576     getSelection(): Selection | null;
33577     getWebExposedLocales(): string[];
33578     getWorkspaceID(): string;
33579     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/matchMedia) */
33580     matchMedia(query: UTF8String): MediaQueryList | null;
33581     maximize(): void;
33582     minimize(): void;
33583     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/moveBy) */
33584     moveBy(x: number, y: number): void;
33585     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/moveTo) */
33586     moveTo(x: number, y: number): void;
33587     moveToWorkspace(workspaceID: string): void;
33588     mozScrollSnap(): void;
33589     notifyDefaultButtonLoaded(defaultButton: Element): void;
33590     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/open) */
33591     open(url?: string | URL, target?: string, features?: string): WindowProxy | null;
33592     openDialog(url?: string, name?: string, options?: string, ...extraArguments: any[]): WindowProxy | null;
33593     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/postMessage) */
33594     postMessage(message: any, targetOrigin: string, transfer?: any[]): void;
33595     postMessage(message: any, options?: WindowPostMessageOptions): void;
33596     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/print) */
33597     print(): void;
33598     printPreview(settings?: nsIPrintSettings | null, listener?: nsIWebProgressListener | null, docShellToPreviewInto?: nsIDocShell | null): WindowProxy | null;
33599     promiseDocumentFlushed(callback: PromiseDocumentFlushedCallback): Promise<any>;
33600     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/prompt) */
33601     prompt(message?: string, _default?: string): string | null;
33602     /**
33603      * @deprecated
33604      *
33605      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/releaseEvents)
33606      */
33607     releaseEvents(): void;
33608     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/requestIdleCallback) */
33609     requestIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): number;
33610     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/resizeBy) */
33611     resizeBy(x: number, y: number): void;
33612     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/resizeTo) */
33613     resizeTo(x: number, y: number): void;
33614     restore(): void;
33615     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scroll) */
33616     scroll(x: number, y: number): void;
33617     scroll(options?: ScrollToOptions): void;
33618     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollBy) */
33619     scrollBy(x: number, y: number): void;
33620     scrollBy(options?: ScrollToOptions): void;
33621     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollByLines) */
33622     scrollByLines(numLines: number, options?: ScrollOptions): void;
33623     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollByPages) */
33624     scrollByPages(numPages: number, options?: ScrollOptions): void;
33625     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollTo) */
33626     scrollTo(x: number, y: number): void;
33627     scrollTo(options?: ScrollToOptions): void;
33628     setCursor(cursor: UTF8String): void;
33629     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/setResizable) */
33630     setResizable(resizable: boolean): void;
33631     setScrollMarks(marks: number[], onHorizontalScrollbar?: boolean): void;
33632     shouldReportForServiceWorkerScope(aScope: string): boolean;
33633     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/sizeToContent) */
33634     sizeToContent(): void;
33635     sizeToContentConstrained(constraints?: SizeToContentConstraints): void;
33636     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/stop) */
33637     stop(): void;
33638     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/updateCommands) */
33639     updateCommands(action: string): void;
33640     readonly STATE_MAXIMIZED: 1;
33641     readonly STATE_MINIMIZED: 2;
33642     readonly STATE_NORMAL: 3;
33643     readonly STATE_FULLSCREEN: 4;
33644     addEventListener<K extends keyof WindowEventMap>(type: K, listener: (this: Window, ev: WindowEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
33645     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
33646     removeEventListener<K extends keyof WindowEventMap>(type: K, listener: (this: Window, ev: WindowEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
33647     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
33648     [name: string]: any;
33651 declare var Window: {
33652     prototype: Window;
33653     new(): Window;
33654     readonly STATE_MAXIMIZED: 1;
33655     readonly STATE_MINIMIZED: 2;
33656     readonly STATE_NORMAL: 3;
33657     readonly STATE_FULLSCREEN: 4;
33658     isInstance(obj): obj is Window;
33662  * This ServiceWorker API interface represents the scope of a service worker client that is a document in a browser context, controlled by an active worker. The service worker client independently selects and uses a service worker for its own loading and sub-resources.
33664  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient)
33665  */
33666 interface WindowClient extends Client {
33667     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/focused) */
33668     readonly focused: boolean;
33669     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/visibilityState) */
33670     readonly visibilityState: VisibilityState;
33671     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/focus) */
33672     focus(): Promise<WindowClient>;
33673     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/navigate) */
33674     navigate(url: string | URL): Promise<WindowClient>;
33677 declare var WindowClient: {
33678     prototype: WindowClient;
33679     new(): WindowClient;
33680     isInstance(obj): obj is WindowClient;
33683 interface WindowContext {
33684     allowJavascript: boolean;
33685     readonly browsingContext: BrowsingContext | null;
33686     readonly hasBeforeUnload: boolean;
33687     readonly innerWindowId: number;
33688     readonly isInBFCache: boolean;
33689     readonly isInProcess: boolean;
33690     readonly isLocalIP: boolean;
33691     readonly overriddenFingerprintingSettings: number | null;
33692     readonly parentWindowContext: WindowContext | null;
33693     readonly shouldResistFingerprinting: boolean;
33694     readonly topWindowContext: WindowContext;
33695     readonly windowGlobalChild: WindowGlobalChild | null;
33698 declare var WindowContext: {
33699     prototype: WindowContext;
33700     new(): WindowContext;
33701     isInstance(obj): obj is WindowContext;
33704 interface WindowEventHandlersEventMap {
33705     "afterprint": Event;
33706     "beforeprint": Event;
33707     "beforeunload": Event;
33708     "gamepadconnected": Event;
33709     "gamepaddisconnected": Event;
33710     "hashchange": Event;
33711     "languagechange": Event;
33712     "message": Event;
33713     "messageerror": Event;
33714     "offline": Event;
33715     "online": Event;
33716     "pagehide": Event;
33717     "pageshow": Event;
33718     "popstate": Event;
33719     "rejectionhandled": Event;
33720     "storage": Event;
33721     "unhandledrejection": Event;
33722     "unload": Event;
33725 interface WindowEventHandlers {
33726     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/afterprint_event) */
33727     onafterprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
33728     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/beforeprint_event) */
33729     onbeforeprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
33730     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/beforeunload_event) */
33731     onbeforeunload: ((this: WindowEventHandlers, ev: Event) => any) | null;
33732     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/gamepadconnected_event) */
33733     ongamepadconnected: ((this: WindowEventHandlers, ev: Event) => any) | null;
33734     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/gamepaddisconnected_event) */
33735     ongamepaddisconnected: ((this: WindowEventHandlers, ev: Event) => any) | null;
33736     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/hashchange_event) */
33737     onhashchange: ((this: WindowEventHandlers, ev: Event) => any) | null;
33738     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/languagechange_event) */
33739     onlanguagechange: ((this: WindowEventHandlers, ev: Event) => any) | null;
33740     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/message_event) */
33741     onmessage: ((this: WindowEventHandlers, ev: Event) => any) | null;
33742     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/messageerror_event) */
33743     onmessageerror: ((this: WindowEventHandlers, ev: Event) => any) | null;
33744     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/offline_event) */
33745     onoffline: ((this: WindowEventHandlers, ev: Event) => any) | null;
33746     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/online_event) */
33747     ononline: ((this: WindowEventHandlers, ev: Event) => any) | null;
33748     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/pagehide_event) */
33749     onpagehide: ((this: WindowEventHandlers, ev: Event) => any) | null;
33750     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/pageshow_event) */
33751     onpageshow: ((this: WindowEventHandlers, ev: Event) => any) | null;
33752     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/popstate_event) */
33753     onpopstate: ((this: WindowEventHandlers, ev: Event) => any) | null;
33754     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/rejectionhandled_event) */
33755     onrejectionhandled: ((this: WindowEventHandlers, ev: Event) => any) | null;
33756     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/storage_event) */
33757     onstorage: ((this: WindowEventHandlers, ev: Event) => any) | null;
33758     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/unhandledrejection_event) */
33759     onunhandledrejection: ((this: WindowEventHandlers, ev: Event) => any) | null;
33760     /**
33761      * @deprecated
33762      *
33763      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/unload_event)
33764      */
33765     onunload: ((this: WindowEventHandlers, ev: Event) => any) | null;
33766     addEventListener<K extends keyof WindowEventHandlersEventMap>(type: K, listener: (this: WindowEventHandlers, ev: WindowEventHandlersEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
33767     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
33768     removeEventListener<K extends keyof WindowEventHandlersEventMap>(type: K, listener: (this: WindowEventHandlers, ev: WindowEventHandlersEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
33769     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
33772 interface WindowGlobalChild {
33773     readonly browsingContext: BrowsingContext;
33774     readonly contentParentId: number;
33775     readonly innerWindowId: number;
33776     readonly isClosed: boolean;
33777     readonly isCurrentGlobal: boolean;
33778     readonly isInProcess: boolean;
33779     readonly isProcessRoot: boolean;
33780     readonly outerWindowId: number;
33781     readonly parentActor: WindowGlobalParent | null;
33782     readonly sameOriginWithTop: boolean;
33783     readonly windowContext: WindowContext;
33784     findBrowsingContextWithName(name: string): BrowsingContext | null;
33785     getActor(name: UTF8String): JSWindowActorChild;
33786     getExistingActor(name: UTF8String): JSWindowActorChild | null;
33789 declare var WindowGlobalChild: {
33790     prototype: WindowGlobalChild;
33791     new(): WindowGlobalChild;
33792     getByInnerWindowId(innerWIndowId: number): WindowGlobalChild | null;
33793     isInstance(obj): obj is WindowGlobalChild;
33796 interface WindowGlobalParent extends WindowContext {
33797     readonly childActor: WindowGlobalChild | null;
33798     readonly contentBlockingAllowListPrincipal: Principal | null;
33799     readonly contentBlockingEvents: number;
33800     readonly contentBlockingLog: string;
33801     readonly contentParentId: number;
33802     readonly cookieJarSettings: nsICookieJarSettings | null;
33803     readonly documentPrincipal: Principal;
33804     readonly documentStoragePrincipal: Principal;
33805     readonly documentTitle: string;
33806     readonly documentURI: URI | null;
33807     readonly domProcess: nsIDOMProcessParent | null;
33808     fullscreen: boolean;
33809     readonly isClosed: boolean;
33810     readonly isCurrentGlobal: boolean;
33811     readonly isInitialDocument: boolean;
33812     readonly isProcessRoot: boolean;
33813     readonly osPid: number;
33814     readonly outerWindowId: number;
33815     readonly rootFrameLoader: FrameLoader | null;
33816     drawSnapshot(rect: DOMRect | null, scale: number, backgroundColor: UTF8String, resetScrollPosition?: boolean): Promise<ImageBitmap>;
33817     getActor(name: UTF8String): JSWindowActorParent;
33818     getExistingActor(name: UTF8String): JSWindowActorParent | null;
33819     hasActivePeerConnections(): boolean;
33820     permitUnload(action?: PermitUnloadAction, timeout?: number): Promise<boolean>;
33823 declare var WindowGlobalParent: {
33824     prototype: WindowGlobalParent;
33825     new(): WindowGlobalParent;
33826     getByInnerWindowId(innerWindowId: number): WindowGlobalParent | null;
33827     isInstance(obj): obj is WindowGlobalParent;
33830 interface WindowLocalStorage {
33831     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/localStorage) */
33832     readonly localStorage: Storage | null;
33835 interface WindowOrWorkerGlobalScope {
33836     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/caches) */
33837     readonly caches: CacheStorage;
33838     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crossOriginIsolated) */
33839     readonly crossOriginIsolated: boolean;
33840     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/indexedDB) */
33841     readonly indexedDB: IDBFactory | null;
33842     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/isSecureContext) */
33843     readonly isSecureContext: boolean;
33844     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/origin) */
33845     readonly origin: string;
33846     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scheduler) */
33847     readonly scheduler: Scheduler;
33848     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/atob) */
33849     atob(atob: string): string;
33850     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/btoa) */
33851     btoa(btoa: string): string;
33852     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearInterval) */
33853     clearInterval(handle?: number): void;
33854     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearTimeout) */
33855     clearTimeout(handle?: number): void;
33856     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/createImageBitmap) */
33857     createImageBitmap(aImage: ImageBitmapSource, aOptions?: ImageBitmapOptions): Promise<ImageBitmap>;
33858     createImageBitmap(aImage: ImageBitmapSource, aSx: number, aSy: number, aSw: number, aSh: number, aOptions?: ImageBitmapOptions): Promise<ImageBitmap>;
33859     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/fetch) */
33860     fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
33861     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/queueMicrotask) */
33862     queueMicrotask(callback: VoidFunction): void;
33863     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/reportError) */
33864     reportError(e: any): void;
33865     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setInterval) */
33866     setInterval(handler: Function, timeout?: number, ...arguments: any[]): number;
33867     setInterval(handler: string, timeout?: number, ...unused: any[]): number;
33868     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setTimeout) */
33869     setTimeout(handler: Function, timeout?: number, ...arguments: any[]): number;
33870     setTimeout(handler: string, timeout?: number, ...unused: any[]): number;
33871     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/structuredClone) */
33872     structuredClone(value: any, options?: StructuredSerializeOptions): any;
33875 interface WindowRoot extends EventTarget {
33878 declare var WindowRoot: {
33879     prototype: WindowRoot;
33880     new(): WindowRoot;
33881     isInstance(obj): obj is WindowRoot;
33884 interface WindowSessionStorage {
33885     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/sessionStorage) */
33886     readonly sessionStorage: Storage | null;
33889 interface WorkerEventMap extends AbstractWorkerEventMap {
33890     "message": Event;
33891     "messageerror": Event;
33895  * This Web Workers API interface represents a background task that can be easily created and can send messages back to its creator. Creating a worker is as simple as calling the Worker() constructor and specifying a script to be run in the worker thread.
33897  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker)
33898  */
33899 interface Worker extends EventTarget, AbstractWorker {
33900     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/message_event) */
33901     onmessage: ((this: Worker, ev: Event) => any) | null;
33902     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/messageerror_event) */
33903     onmessageerror: ((this: Worker, ev: Event) => any) | null;
33904     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/postMessage) */
33905     postMessage(message: any, transfer: any[]): void;
33906     postMessage(message: any, aOptions?: StructuredSerializeOptions): void;
33907     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/terminate) */
33908     terminate(): void;
33909     addEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: Worker, ev: WorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
33910     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
33911     removeEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: Worker, ev: WorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
33912     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
33915 declare var Worker: {
33916     prototype: Worker;
33917     new(scriptURL: string | URL, options?: WorkerOptions): Worker;
33918     isInstance(obj): obj is Worker;
33921 interface WorkerDebuggerGlobalScopeEventMap {
33922     "message": Event;
33923     "messageerror": Event;
33926 interface WorkerDebuggerGlobalScope extends EventTarget {
33927     readonly global: any;
33928     onmessage: ((this: WorkerDebuggerGlobalScope, ev: Event) => any) | null;
33929     onmessageerror: ((this: WorkerDebuggerGlobalScope, ev: Event) => any) | null;
33930     atob(atob: string): string;
33931     btoa(btoa: string): string;
33932     clearConsoleEvents(): void;
33933     createSandbox(name: string, prototype: any): any;
33934     dump(string?: string): void;
33935     enterEventLoop(): void;
33936     leaveEventLoop(): void;
33937     loadSubScript(url: string, sandbox?: any): void;
33938     postMessage(message: string): void;
33939     reportError(message: string): void;
33940     retrieveConsoleEvents(): any[];
33941     setConsoleEventHandler(handler: AnyCallback | null): void;
33942     setImmediate(handler: Function): void;
33943     addEventListener<K extends keyof WorkerDebuggerGlobalScopeEventMap>(type: K, listener: (this: WorkerDebuggerGlobalScope, ev: WorkerDebuggerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
33944     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
33945     removeEventListener<K extends keyof WorkerDebuggerGlobalScopeEventMap>(type: K, listener: (this: WorkerDebuggerGlobalScope, ev: WorkerDebuggerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
33946     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
33949 declare var WorkerDebuggerGlobalScope: {
33950     prototype: WorkerDebuggerGlobalScope;
33951     new(): WorkerDebuggerGlobalScope;
33952     isInstance(obj): obj is WorkerDebuggerGlobalScope;
33955 interface WorkerGlobalScopeEventMap {
33956     "error": ErrorEvent;
33957     "languagechange": Event;
33958     "offline": Event;
33959     "online": Event;
33960     "rejectionhandled": Event;
33961     "unhandledrejection": Event;
33965  * This Web Workers API interface is an interface representing the scope of any worker. Workers have no browsing context; this scope contains the information usually conveyed by Window objects â€” in this case event handlers, the console or the associated WorkerNavigator object. Each WorkerGlobalScope has its own event loop.
33967  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope)
33968  */
33969 interface WorkerGlobalScope extends EventTarget, FontFaceSource, GlobalCrypto, WindowOrWorkerGlobalScope {
33970     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/location) */
33971     readonly location: WorkerLocation;
33972     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/navigator) */
33973     readonly navigator: WorkerNavigator;
33974     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/error_event) */
33975     onerror: OnErrorEventHandler;
33976     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/languagechange_event) */
33977     onlanguagechange: ((this: WorkerGlobalScope, ev: Event) => any) | null;
33978     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/offline_event) */
33979     onoffline: ((this: WorkerGlobalScope, ev: Event) => any) | null;
33980     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/online_event) */
33981     ononline: ((this: WorkerGlobalScope, ev: Event) => any) | null;
33982     onrejectionhandled: ((this: WorkerGlobalScope, ev: Event) => any) | null;
33983     onunhandledrejection: ((this: WorkerGlobalScope, ev: Event) => any) | null;
33984     readonly performance: Performance;
33985     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/self) */
33986     readonly self: WorkerGlobalScope;
33987     /**
33988      * @deprecated
33989      *
33990      * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/dump)
33991      */
33992     dump(str?: string): void;
33993     getJSTestingFunctions(): any;
33994     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/importScripts) */
33995     importScripts(...urls: string[]): void;
33996     addEventListener<K extends keyof WorkerGlobalScopeEventMap>(type: K, listener: (this: WorkerGlobalScope, ev: WorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
33997     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
33998     removeEventListener<K extends keyof WorkerGlobalScopeEventMap>(type: K, listener: (this: WorkerGlobalScope, ev: WorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
33999     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34002 declare var WorkerGlobalScope: {
34003     prototype: WorkerGlobalScope;
34004     new(): WorkerGlobalScope;
34005     isInstance(obj): obj is WorkerGlobalScope;
34009  * The absolute location of the script executed by the Worker. Such an object is initialized for each worker and is available via the WorkerGlobalScope.location property obtained by calling self.location.
34011  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation)
34012  */
34013 interface WorkerLocation {
34014     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/hash) */
34015     readonly hash: string;
34016     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/host) */
34017     readonly host: string;
34018     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/hostname) */
34019     readonly hostname: string;
34020     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/href) */
34021     readonly href: string;
34022     toString(): string;
34023     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/origin) */
34024     readonly origin: string;
34025     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/pathname) */
34026     readonly pathname: string;
34027     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/port) */
34028     readonly port: string;
34029     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/protocol) */
34030     readonly protocol: string;
34031     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/search) */
34032     readonly search: string;
34035 declare var WorkerLocation: {
34036     prototype: WorkerLocation;
34037     new(): WorkerLocation;
34038     isInstance(obj): obj is WorkerLocation;
34042  * A subset of the Navigator interface allowed to be accessed from a Worker. Such an object is initialized for each worker and is available via the WorkerGlobalScope.navigator property obtained by calling window.self.navigator.
34044  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerNavigator)
34045  */
34046 interface WorkerNavigator extends GlobalPrivacyControl, NavigatorConcurrentHardware, NavigatorGPU, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorOnLine, NavigatorStorage {
34047     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerNavigator/connection) */
34048     readonly connection: NetworkInformation;
34049     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerNavigator/mediaCapabilities) */
34050     readonly mediaCapabilities: MediaCapabilities;
34053 declare var WorkerNavigator: {
34054     prototype: WorkerNavigator;
34055     new(): WorkerNavigator;
34056     isInstance(obj): obj is WorkerNavigator;
34060  * Available only in secure contexts.
34062  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worklet)
34063  */
34064 interface Worklet {
34065     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worklet/addModule) */
34066     addModule(moduleURL: string | URL, options?: WorkletOptions): Promise<void>;
34069 declare var Worklet: {
34070     prototype: Worklet;
34071     new(): Worklet;
34072     isInstance(obj): obj is Worklet;
34075 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkletGlobalScope) */
34076 interface WorkletGlobalScope {
34077     dump(str?: string): void;
34080 declare var WorkletGlobalScope: {
34081     prototype: WorkletGlobalScope;
34082     new(): WorkletGlobalScope;
34083     isInstance(obj): obj is WorkletGlobalScope;
34086 interface WrapperCachedNonISupportsTestInterface {
34089 declare var WrapperCachedNonISupportsTestInterface: {
34090     prototype: WrapperCachedNonISupportsTestInterface;
34091     new(): WrapperCachedNonISupportsTestInterface;
34092     isInstance(obj): obj is WrapperCachedNonISupportsTestInterface;
34096  * This Streams API interface provides a standard abstraction for writing streaming data to a destination, known as a sink. This object comes with built-in backpressure and queuing.
34098  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream)
34099  */
34100 interface WritableStream {
34101     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/locked) */
34102     readonly locked: boolean;
34103     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/abort) */
34104     abort(reason?: any): Promise<void>;
34105     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/close) */
34106     close(): Promise<void>;
34107     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/getWriter) */
34108     getWriter(): WritableStreamDefaultWriter;
34111 declare var WritableStream: {
34112     prototype: WritableStream;
34113     new(underlyingSink?: any, strategy?: QueuingStrategy): WritableStream;
34114     isInstance(obj): obj is WritableStream;
34118  * This Streams API interface represents a controller allowing control of a WritableStream's state. When constructing a WritableStream, the underlying sink is given a corresponding WritableStreamDefaultController instance to manipulate.
34120  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController)
34121  */
34122 interface WritableStreamDefaultController {
34123     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/signal) */
34124     readonly signal: AbortSignal;
34125     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/error) */
34126     error(e?: any): void;
34129 declare var WritableStreamDefaultController: {
34130     prototype: WritableStreamDefaultController;
34131     new(): WritableStreamDefaultController;
34132     isInstance(obj): obj is WritableStreamDefaultController;
34136  * This Streams API interface is the object returned by WritableStream.getWriter() and once created locks the < writer to the WritableStream ensuring that no other streams can write to the underlying sink.
34138  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter)
34139  */
34140 interface WritableStreamDefaultWriter {
34141     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/closed) */
34142     readonly closed: Promise<undefined>;
34143     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/desiredSize) */
34144     readonly desiredSize: number | null;
34145     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/ready) */
34146     readonly ready: Promise<undefined>;
34147     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/abort) */
34148     abort(reason?: any): Promise<void>;
34149     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/close) */
34150     close(): Promise<void>;
34151     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/releaseLock) */
34152     releaseLock(): void;
34153     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/write) */
34154     write(chunk?: any): Promise<void>;
34157 declare var WritableStreamDefaultWriter: {
34158     prototype: WritableStreamDefaultWriter;
34159     new(stream: WritableStream): WritableStreamDefaultWriter;
34160     isInstance(obj): obj is WritableStreamDefaultWriter;
34164  * An XML document. It inherits from the generic Document and does not add any specific methods or properties to it: nevertheless, several algorithms behave differently with the two types of documents.
34166  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLDocument)
34167  */
34168 interface XMLDocument extends Document {
34169     addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: XMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34170     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34171     removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: XMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34172     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34175 declare var XMLDocument: {
34176     prototype: XMLDocument;
34177     new(): XMLDocument;
34178     isInstance(obj): obj is XMLDocument;
34181 interface XMLHttpRequestEventMap extends XMLHttpRequestEventTargetEventMap {
34182     "readystatechange": Event;
34186  * Use XMLHttpRequest (XHR) objects to interact with servers. You can retrieve data from a URL without having to do a full page refresh. This enables a Web page to update just part of a page without disrupting what the user is doing.
34188  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest)
34189  */
34190 interface XMLHttpRequest extends XMLHttpRequestEventTarget {
34191     readonly channel: MozChannel | null;
34192     readonly errorCode: number;
34193     readonly mozAnon: boolean;
34194     mozBackgroundRequest: boolean;
34195     readonly mozSystem: boolean;
34196     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/readystatechange_event) */
34197     onreadystatechange: ((this: XMLHttpRequest, ev: Event) => any) | null;
34198     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/readyState) */
34199     readonly readyState: number;
34200     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/response) */
34201     readonly response: any;
34202     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseText) */
34203     readonly responseText: string | null;
34204     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseType) */
34205     responseType: XMLHttpRequestResponseType;
34206     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseURL) */
34207     readonly responseURL: string;
34208     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseXML) */
34209     readonly responseXML: Document | null;
34210     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/status) */
34211     readonly status: number;
34212     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/statusText) */
34213     readonly statusText: string;
34214     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/timeout) */
34215     timeout: number;
34216     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/upload) */
34217     readonly upload: XMLHttpRequestUpload;
34218     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/withCredentials) */
34219     withCredentials: boolean;
34220     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/abort) */
34221     abort(): void;
34222     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/getAllResponseHeaders) */
34223     getAllResponseHeaders(): string;
34224     getInterface(iid: any): any;
34225     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/getResponseHeader) */
34226     getResponseHeader(header: string): string | null;
34227     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/open) */
34228     open(method: string, url: string | URL): void;
34229     open(method: string, url: string | URL, async: boolean, user?: string | null, password?: string | null): void;
34230     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/overrideMimeType) */
34231     overrideMimeType(mime: string): void;
34232     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/send) */
34233     send(body?: Document | XMLHttpRequestBodyInit | null): void;
34234     sendInputStream(body: InputStream): void;
34235     setOriginAttributes(originAttributes?: OriginAttributesDictionary): void;
34236     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/setRequestHeader) */
34237     setRequestHeader(header: string, value: string): void;
34238     readonly UNSENT: 0;
34239     readonly OPENED: 1;
34240     readonly HEADERS_RECEIVED: 2;
34241     readonly LOADING: 3;
34242     readonly DONE: 4;
34243     addEventListener<K extends keyof XMLHttpRequestEventMap>(type: K, listener: (this: XMLHttpRequest, ev: XMLHttpRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34244     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34245     removeEventListener<K extends keyof XMLHttpRequestEventMap>(type: K, listener: (this: XMLHttpRequest, ev: XMLHttpRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34246     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34249 declare var XMLHttpRequest: {
34250     prototype: XMLHttpRequest;
34251     new(params?: MozXMLHttpRequestParameters): XMLHttpRequest;
34252     new(ignored: string): XMLHttpRequest;
34253     readonly UNSENT: 0;
34254     readonly OPENED: 1;
34255     readonly HEADERS_RECEIVED: 2;
34256     readonly LOADING: 3;
34257     readonly DONE: 4;
34258     isInstance(obj): obj is XMLHttpRequest;
34261 interface XMLHttpRequestEventTargetEventMap {
34262     "abort": Event;
34263     "error": ErrorEvent;
34264     "load": Event;
34265     "loadend": Event;
34266     "loadstart": Event;
34267     "progress": Event;
34268     "timeout": Event;
34271 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequestEventTarget) */
34272 interface XMLHttpRequestEventTarget extends EventTarget {
34273     onabort: ((this: XMLHttpRequestEventTarget, ev: Event) => any) | null;
34274     onerror: OnErrorEventHandler;
34275     onload: ((this: XMLHttpRequestEventTarget, ev: Event) => any) | null;
34276     onloadend: ((this: XMLHttpRequestEventTarget, ev: Event) => any) | null;
34277     onloadstart: ((this: XMLHttpRequestEventTarget, ev: Event) => any) | null;
34278     onprogress: ((this: XMLHttpRequestEventTarget, ev: Event) => any) | null;
34279     ontimeout: ((this: XMLHttpRequestEventTarget, ev: Event) => any) | null;
34280     addEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34281     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34282     removeEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34283     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34286 declare var XMLHttpRequestEventTarget: {
34287     prototype: XMLHttpRequestEventTarget;
34288     new(): XMLHttpRequestEventTarget;
34289     isInstance(obj): obj is XMLHttpRequestEventTarget;
34292 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequestUpload) */
34293 interface XMLHttpRequestUpload extends XMLHttpRequestEventTarget {
34294     addEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestUpload, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34295     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34296     removeEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestUpload, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34297     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34300 declare var XMLHttpRequestUpload: {
34301     prototype: XMLHttpRequestUpload;
34302     new(): XMLHttpRequestUpload;
34303     isInstance(obj): obj is XMLHttpRequestUpload;
34307  * Provides the serializeToString() method to construct an XML string representing a DOM tree.
34309  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLSerializer)
34310  */
34311 interface XMLSerializer {
34312     serializeToStream(root: Node, stream: OutputStream, charset: string | null): void;
34313     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLSerializer/serializeToString) */
34314     serializeToString(root: Node): string;
34317 declare var XMLSerializer: {
34318     prototype: XMLSerializer;
34319     new(): XMLSerializer;
34320     isInstance(obj): obj is XMLSerializer;
34324  * The XPathEvaluator interface allows to compile and evaluate XPath expressions.
34326  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathEvaluator)
34327  */
34328 interface XPathEvaluator extends XPathEvaluatorMixin {
34331 declare var XPathEvaluator: {
34332     prototype: XPathEvaluator;
34333     new(): XPathEvaluator;
34334     isInstance(obj): obj is XPathEvaluator;
34337 interface XPathEvaluatorMixin {
34338     createExpression(expression: string, resolver?: XPathNSResolver | null): XPathExpression;
34339     createNSResolver(nodeResolver: Node): Node;
34340     evaluate(expression: string, contextNode: Node, resolver?: XPathNSResolver | null, type?: number, result?: any): XPathResult;
34344  * This interface is a compiled XPath expression that can be evaluated on a document or specific node to return information its DOM tree.
34346  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathExpression)
34347  */
34348 interface XPathExpression {
34349     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathExpression/evaluate) */
34350     evaluate(contextNode: Node, type?: number, result?: any): XPathResult;
34351     evaluateWithContext(contextNode: Node, contextPosition: number, contextSize: number, type?: number, result?: any): XPathResult;
34354 declare var XPathExpression: {
34355     prototype: XPathExpression;
34356     new(): XPathExpression;
34357     isInstance(obj): obj is XPathExpression;
34361  * The results generated by evaluating an XPath expression within the context of a given node.
34363  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult)
34364  */
34365 interface XPathResult {
34366     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/booleanValue) */
34367     readonly booleanValue: boolean;
34368     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/invalidIteratorState) */
34369     readonly invalidIteratorState: boolean;
34370     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/numberValue) */
34371     readonly numberValue: number;
34372     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/resultType) */
34373     readonly resultType: number;
34374     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/singleNodeValue) */
34375     readonly singleNodeValue: Node | null;
34376     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/snapshotLength) */
34377     readonly snapshotLength: number;
34378     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/stringValue) */
34379     readonly stringValue: string;
34380     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/iterateNext) */
34381     iterateNext(): Node | null;
34382     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/snapshotItem) */
34383     snapshotItem(index: number): Node | null;
34384     readonly ANY_TYPE: 0;
34385     readonly NUMBER_TYPE: 1;
34386     readonly STRING_TYPE: 2;
34387     readonly BOOLEAN_TYPE: 3;
34388     readonly UNORDERED_NODE_ITERATOR_TYPE: 4;
34389     readonly ORDERED_NODE_ITERATOR_TYPE: 5;
34390     readonly UNORDERED_NODE_SNAPSHOT_TYPE: 6;
34391     readonly ORDERED_NODE_SNAPSHOT_TYPE: 7;
34392     readonly ANY_UNORDERED_NODE_TYPE: 8;
34393     readonly FIRST_ORDERED_NODE_TYPE: 9;
34396 declare var XPathResult: {
34397     prototype: XPathResult;
34398     new(): XPathResult;
34399     readonly ANY_TYPE: 0;
34400     readonly NUMBER_TYPE: 1;
34401     readonly STRING_TYPE: 2;
34402     readonly BOOLEAN_TYPE: 3;
34403     readonly UNORDERED_NODE_ITERATOR_TYPE: 4;
34404     readonly ORDERED_NODE_ITERATOR_TYPE: 5;
34405     readonly UNORDERED_NODE_SNAPSHOT_TYPE: 6;
34406     readonly ORDERED_NODE_SNAPSHOT_TYPE: 7;
34407     readonly ANY_UNORDERED_NODE_TYPE: 8;
34408     readonly FIRST_ORDERED_NODE_TYPE: 9;
34409     isInstance(obj): obj is XPathResult;
34413  * Available only in secure contexts.
34415  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRBoundedReferenceSpace)
34416  */
34417 interface XRBoundedReferenceSpace extends XRReferenceSpace {
34418     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRBoundedReferenceSpace/boundsGeometry) */
34419     readonly boundsGeometry: DOMPointReadOnly[];
34420     addEventListener<K extends keyof XRReferenceSpaceEventMap>(type: K, listener: (this: XRBoundedReferenceSpace, ev: XRReferenceSpaceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34421     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34422     removeEventListener<K extends keyof XRReferenceSpaceEventMap>(type: K, listener: (this: XRBoundedReferenceSpace, ev: XRReferenceSpaceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34423     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34426 declare var XRBoundedReferenceSpace: {
34427     prototype: XRBoundedReferenceSpace;
34428     new(): XRBoundedReferenceSpace;
34429     isInstance(obj): obj is XRBoundedReferenceSpace;
34433  * Available only in secure contexts.
34435  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRFrame)
34436  */
34437 interface XRFrame {
34438     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRFrame/session) */
34439     readonly session: XRSession;
34440     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRFrame/getPose) */
34441     getPose(space: XRSpace, baseSpace: XRSpace): XRPose | null;
34442     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRFrame/getViewerPose) */
34443     getViewerPose(referenceSpace: XRReferenceSpace): XRViewerPose | null;
34446 declare var XRFrame: {
34447     prototype: XRFrame;
34448     new(): XRFrame;
34449     isInstance(obj): obj is XRFrame;
34453  * Available only in secure contexts.
34455  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSource)
34456  */
34457 interface XRInputSource {
34458     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSource/gamepad) */
34459     readonly gamepad: Gamepad | null;
34460     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSource/gripSpace) */
34461     readonly gripSpace: XRSpace | null;
34462     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSource/handedness) */
34463     readonly handedness: XRHandedness;
34464     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSource/profiles) */
34465     readonly profiles: string[];
34466     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSource/targetRayMode) */
34467     readonly targetRayMode: XRTargetRayMode;
34468     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSource/targetRaySpace) */
34469     readonly targetRaySpace: XRSpace;
34472 declare var XRInputSource: {
34473     prototype: XRInputSource;
34474     new(): XRInputSource;
34475     isInstance(obj): obj is XRInputSource;
34479  * Available only in secure contexts.
34481  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourceArray)
34482  */
34483 interface XRInputSourceArray {
34484     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourceArray/length) */
34485     readonly length: number;
34486     forEach(callbackfn: (value: XRInputSource, key: number, parent: XRInputSourceArray) => void, thisArg?: any): void;
34487     [index: number]: XRInputSource;
34490 declare var XRInputSourceArray: {
34491     prototype: XRInputSourceArray;
34492     new(): XRInputSourceArray;
34493     isInstance(obj): obj is XRInputSourceArray;
34497  * Available only in secure contexts.
34499  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourceEvent)
34500  */
34501 interface XRInputSourceEvent extends Event {
34502     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourceEvent/frame) */
34503     readonly frame: XRFrame;
34504     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourceEvent/inputSource) */
34505     readonly inputSource: XRInputSource;
34508 declare var XRInputSourceEvent: {
34509     prototype: XRInputSourceEvent;
34510     new(type: string, eventInitDict: XRInputSourceEventInit): XRInputSourceEvent;
34511     isInstance(obj): obj is XRInputSourceEvent;
34515  * Available only in secure contexts.
34517  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourcesChangeEvent)
34518  */
34519 interface XRInputSourcesChangeEvent extends Event {
34520     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourcesChangeEvent/added) */
34521     readonly added: XRInputSource[];
34522     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourcesChangeEvent/removed) */
34523     readonly removed: XRInputSource[];
34524     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRInputSourcesChangeEvent/session) */
34525     readonly session: XRSession;
34528 declare var XRInputSourcesChangeEvent: {
34529     prototype: XRInputSourcesChangeEvent;
34530     new(type: string, eventInitDict: XRInputSourcesChangeEventInit): XRInputSourcesChangeEvent;
34531     isInstance(obj): obj is XRInputSourcesChangeEvent;
34535  * Available only in secure contexts.
34537  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRPose)
34538  */
34539 interface XRPose {
34540     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRPose/emulatedPosition) */
34541     readonly emulatedPosition: boolean;
34542     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRPose/transform) */
34543     readonly transform: XRRigidTransform;
34546 declare var XRPose: {
34547     prototype: XRPose;
34548     new(): XRPose;
34549     isInstance(obj): obj is XRPose;
34552 interface XRReferenceSpaceEventMap {
34553     "reset": Event;
34557  * Available only in secure contexts.
34559  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRReferenceSpace)
34560  */
34561 interface XRReferenceSpace extends XRSpace {
34562     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRReferenceSpace/reset_event) */
34563     onreset: ((this: XRReferenceSpace, ev: Event) => any) | null;
34564     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRReferenceSpace/getOffsetReferenceSpace) */
34565     getOffsetReferenceSpace(originOffset: XRRigidTransform): XRReferenceSpace;
34566     addEventListener<K extends keyof XRReferenceSpaceEventMap>(type: K, listener: (this: XRReferenceSpace, ev: XRReferenceSpaceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34567     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34568     removeEventListener<K extends keyof XRReferenceSpaceEventMap>(type: K, listener: (this: XRReferenceSpace, ev: XRReferenceSpaceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34569     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34572 declare var XRReferenceSpace: {
34573     prototype: XRReferenceSpace;
34574     new(): XRReferenceSpace;
34575     isInstance(obj): obj is XRReferenceSpace;
34579  * Available only in secure contexts.
34581  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRReferenceSpaceEvent)
34582  */
34583 interface XRReferenceSpaceEvent extends Event {
34584     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRReferenceSpaceEvent/referenceSpace) */
34585     readonly referenceSpace: XRReferenceSpace;
34586     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRReferenceSpaceEvent/transform) */
34587     readonly transform: XRRigidTransform | null;
34590 declare var XRReferenceSpaceEvent: {
34591     prototype: XRReferenceSpaceEvent;
34592     new(type: string, eventInitDict: XRReferenceSpaceEventInit): XRReferenceSpaceEvent;
34593     isInstance(obj): obj is XRReferenceSpaceEvent;
34597  * Available only in secure contexts.
34599  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRenderState)
34600  */
34601 interface XRRenderState {
34602     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRenderState/baseLayer) */
34603     readonly baseLayer: XRWebGLLayer | null;
34604     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRenderState/depthFar) */
34605     readonly depthFar: number;
34606     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRenderState/depthNear) */
34607     readonly depthNear: number;
34608     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRenderState/inlineVerticalFieldOfView) */
34609     readonly inlineVerticalFieldOfView: number | null;
34612 declare var XRRenderState: {
34613     prototype: XRRenderState;
34614     new(): XRRenderState;
34615     isInstance(obj): obj is XRRenderState;
34619  * Available only in secure contexts.
34621  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRigidTransform)
34622  */
34623 interface XRRigidTransform {
34624     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRigidTransform/inverse) */
34625     readonly inverse: XRRigidTransform;
34626     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRigidTransform/matrix) */
34627     readonly matrix: Float32Array;
34628     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRigidTransform/orientation) */
34629     readonly orientation: DOMPointReadOnly;
34630     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRRigidTransform/position) */
34631     readonly position: DOMPointReadOnly;
34634 declare var XRRigidTransform: {
34635     prototype: XRRigidTransform;
34636     new(position?: DOMPointInit, orientation?: DOMPointInit): XRRigidTransform;
34637     isInstance(obj): obj is XRRigidTransform;
34640 interface XRSessionEventMap {
34641     "end": Event;
34642     "inputsourceschange": Event;
34643     "select": Event;
34644     "selectend": Event;
34645     "selectstart": Event;
34646     "squeeze": Event;
34647     "squeezeend": Event;
34648     "squeezestart": Event;
34649     "visibilitychange": Event;
34653  * Available only in secure contexts.
34655  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession)
34656  */
34657 interface XRSession extends EventTarget {
34658     readonly frameRate: number | null;
34659     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/inputSources) */
34660     readonly inputSources: XRInputSourceArray;
34661     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/end_event) */
34662     onend: ((this: XRSession, ev: Event) => any) | null;
34663     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/inputsourceschange_event) */
34664     oninputsourceschange: ((this: XRSession, ev: Event) => any) | null;
34665     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/select_event) */
34666     onselect: ((this: XRSession, ev: Event) => any) | null;
34667     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/selectend_event) */
34668     onselectend: ((this: XRSession, ev: Event) => any) | null;
34669     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/selectstart_event) */
34670     onselectstart: ((this: XRSession, ev: Event) => any) | null;
34671     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/squeeze_event) */
34672     onsqueeze: ((this: XRSession, ev: Event) => any) | null;
34673     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/squeezeend_event) */
34674     onsqueezeend: ((this: XRSession, ev: Event) => any) | null;
34675     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/squeezestart_event) */
34676     onsqueezestart: ((this: XRSession, ev: Event) => any) | null;
34677     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/visibilitychange_event) */
34678     onvisibilitychange: ((this: XRSession, ev: Event) => any) | null;
34679     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/renderState) */
34680     readonly renderState: XRRenderState;
34681     readonly supportedFrameRates: Float32Array | null;
34682     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/visibilityState) */
34683     readonly visibilityState: XRVisibilityState;
34684     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/cancelAnimationFrame) */
34685     cancelAnimationFrame(handle: number): void;
34686     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/end) */
34687     end(): Promise<void>;
34688     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/requestAnimationFrame) */
34689     requestAnimationFrame(callback: XRFrameRequestCallback): number;
34690     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/requestReferenceSpace) */
34691     requestReferenceSpace(type: XRReferenceSpaceType): Promise<XRReferenceSpace>;
34692     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSession/updateRenderState) */
34693     updateRenderState(state?: XRRenderStateInit): void;
34694     updateTargetFrameRate(rate: number): Promise<void>;
34695     addEventListener<K extends keyof XRSessionEventMap>(type: K, listener: (this: XRSession, ev: XRSessionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34696     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34697     removeEventListener<K extends keyof XRSessionEventMap>(type: K, listener: (this: XRSession, ev: XRSessionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34698     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34701 declare var XRSession: {
34702     prototype: XRSession;
34703     new(): XRSession;
34704     isInstance(obj): obj is XRSession;
34708  * Available only in secure contexts.
34710  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSessionEvent)
34711  */
34712 interface XRSessionEvent extends Event {
34713     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSessionEvent/session) */
34714     readonly session: XRSession;
34717 declare var XRSessionEvent: {
34718     prototype: XRSessionEvent;
34719     new(type: string, eventInitDict: XRSessionEventInit): XRSessionEvent;
34720     isInstance(obj): obj is XRSessionEvent;
34724  * Available only in secure contexts.
34726  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSpace)
34727  */
34728 interface XRSpace extends EventTarget {
34731 declare var XRSpace: {
34732     prototype: XRSpace;
34733     new(): XRSpace;
34734     isInstance(obj): obj is XRSpace;
34737 interface XRSystemEventMap {
34738     "devicechange": Event;
34742  * Available only in secure contexts.
34744  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSystem)
34745  */
34746 interface XRSystem extends EventTarget {
34747     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSystem/devicechange_event) */
34748     ondevicechange: ((this: XRSystem, ev: Event) => any) | null;
34749     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSystem/isSessionSupported) */
34750     isSessionSupported(mode: XRSessionMode): Promise<boolean>;
34751     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRSystem/requestSession) */
34752     requestSession(mode: XRSessionMode, options?: XRSessionInit): Promise<XRSession>;
34753     addEventListener<K extends keyof XRSystemEventMap>(type: K, listener: (this: XRSystem, ev: XRSystemEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34754     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34755     removeEventListener<K extends keyof XRSystemEventMap>(type: K, listener: (this: XRSystem, ev: XRSystemEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34756     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34759 declare var XRSystem: {
34760     prototype: XRSystem;
34761     new(): XRSystem;
34762     isInstance(obj): obj is XRSystem;
34766  * Available only in secure contexts.
34768  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRView)
34769  */
34770 interface XRView {
34771     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRView/eye) */
34772     readonly eye: XREye;
34773     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRView/projectionMatrix) */
34774     readonly projectionMatrix: Float32Array;
34775     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRView/transform) */
34776     readonly transform: XRRigidTransform;
34779 declare var XRView: {
34780     prototype: XRView;
34781     new(): XRView;
34782     isInstance(obj): obj is XRView;
34786  * Available only in secure contexts.
34788  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRViewerPose)
34789  */
34790 interface XRViewerPose extends XRPose {
34791     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRViewerPose/views) */
34792     readonly views: XRView[];
34795 declare var XRViewerPose: {
34796     prototype: XRViewerPose;
34797     new(): XRViewerPose;
34798     isInstance(obj): obj is XRViewerPose;
34802  * Available only in secure contexts.
34804  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRViewport)
34805  */
34806 interface XRViewport {
34807     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRViewport/height) */
34808     readonly height: number;
34809     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRViewport/width) */
34810     readonly width: number;
34811     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRViewport/x) */
34812     readonly x: number;
34813     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRViewport/y) */
34814     readonly y: number;
34817 declare var XRViewport: {
34818     prototype: XRViewport;
34819     new(): XRViewport;
34820     isInstance(obj): obj is XRViewport;
34824  * Available only in secure contexts.
34826  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer)
34827  */
34828 interface XRWebGLLayer {
34829     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer/antialias) */
34830     readonly antialias: boolean;
34831     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer/framebuffer) */
34832     readonly framebuffer: WebGLFramebuffer | null;
34833     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer/framebufferHeight) */
34834     readonly framebufferHeight: number;
34835     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer/framebufferWidth) */
34836     readonly framebufferWidth: number;
34837     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer/ignoreDepthValues) */
34838     readonly ignoreDepthValues: boolean;
34839     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer/getViewport) */
34840     getViewport(view: XRView): XRViewport | null;
34843 declare var XRWebGLLayer: {
34844     prototype: XRWebGLLayer;
34845     new(session: XRSession, context: XRWebGLRenderingContext, layerInit?: XRWebGLLayerInit): XRWebGLLayer;
34846     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XRWebGLLayer/getNativeFramebufferScaleFactor_static) */
34847     getNativeFramebufferScaleFactor(session: XRSession): number;
34848     isInstance(obj): obj is XRWebGLLayer;
34852  * An XSLTProcessor applies an XSLT stylesheet transformation to an XML document to produce a new XML document as output. It has methods to load the XSLT stylesheet, to manipulate <xsl:param> parameter values, and to apply the transformation to documents.
34854  * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor)
34855  */
34856 interface XSLTProcessor {
34857     flags: number;
34858     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/clearParameters) */
34859     clearParameters(): void;
34860     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/getParameter) */
34861     getParameter(namespaceURI: string | null, localName: string): XSLTParameterValue | null;
34862     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/importStylesheet) */
34863     importStylesheet(style: Node): void;
34864     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/removeParameter) */
34865     removeParameter(namespaceURI: string | null, localName: string): void;
34866     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/reset) */
34867     reset(): void;
34868     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/setParameter) */
34869     setParameter(namespaceURI: string | null, localName: string, value: XSLTParameterValue): void;
34870     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/transformToDocument) */
34871     transformToDocument(source: Node): Document;
34872     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/transformToFragment) */
34873     transformToFragment(source: Node, output: Document): DocumentFragment;
34874     readonly DISABLE_ALL_LOADS: 1;
34877 declare var XSLTProcessor: {
34878     prototype: XSLTProcessor;
34879     new(): XSLTProcessor;
34880     readonly DISABLE_ALL_LOADS: 1;
34881     isInstance(obj): obj is XSLTProcessor;
34884 interface XULCommandDispatcher {
34887 declare var XULCommandDispatcher: {
34888     prototype: XULCommandDispatcher;
34889     new(): XULCommandDispatcher;
34890     isInstance(obj): obj is XULCommandDispatcher;
34893 interface XULCommandEvent extends UIEvent {
34894     readonly altKey: boolean;
34895     readonly button: number;
34896     readonly ctrlKey: boolean;
34897     readonly inputSource: number;
34898     readonly metaKey: boolean;
34899     readonly shiftKey: boolean;
34900     readonly sourceEvent: Event | null;
34901     initCommandEvent(type: string, canBubble?: boolean, cancelable?: boolean, view?: Window | null, detail?: number, ctrlKey?: boolean, altKey?: boolean, shiftKey?: boolean, metaKey?: boolean, buttonArg?: number, sourceEvent?: Event | null, inputSource?: number): void;
34904 declare var XULCommandEvent: {
34905     prototype: XULCommandEvent;
34906     new(): XULCommandEvent;
34907     isInstance(obj): obj is XULCommandEvent;
34910 interface XULElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap, OnErrorEventHandlerForNodesEventMap, TouchEventHandlersEventMap {
34913 interface XULElement extends Element, ElementCSSInlineStyle, GlobalEventHandlers, HTMLOrForeignElement, OnErrorEventHandlerForNodes, TouchEventHandlers {
34914     collapsed: boolean;
34915     contextMenu: string;
34916     readonly controllers: XULControllers;
34917     hidden: boolean;
34918     menu: string;
34919     observes: string;
34920     src: string;
34921     tooltip: string;
34922     tooltipText: string;
34923     click(): void;
34924     doCommand(): void;
34925     hasMenu(): boolean;
34926     openMenu(open: boolean): void;
34927     addEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULElement, ev: XULElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34928     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34929     removeEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULElement, ev: XULElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34930     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34933 declare var XULElement: {
34934     prototype: XULElement;
34935     new(): XULElement;
34936     isInstance(obj): obj is XULElement;
34939 interface XULFrameElement extends XULElement, MozFrameLoaderOwner {
34940     readonly browserId: number;
34941     readonly contentDocument: Document | null;
34942     readonly contentWindow: WindowProxy | null;
34943     readonly docShell: nsIDocShell | null;
34944     openWindowInfo: nsIOpenWindowInfo | null;
34945     readonly webNavigation: nsIWebNavigation | null;
34946     addEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULFrameElement, ev: XULElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34947     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34948     removeEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULFrameElement, ev: XULElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34949     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34952 declare var XULFrameElement: {
34953     prototype: XULFrameElement;
34954     new(): XULFrameElement;
34955     isInstance(obj): obj is XULFrameElement;
34958 interface XULMenuElement extends XULElement {
34959     activeChild: Element | null;
34960     readonly openedWithKey: boolean;
34961     handleKeyPress(keyEvent: KeyboardEvent): boolean;
34962     addEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULMenuElement, ev: XULElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34963     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34964     removeEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULMenuElement, ev: XULElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34965     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34968 declare var XULMenuElement: {
34969     prototype: XULMenuElement;
34970     new(): XULMenuElement;
34971     isInstance(obj): obj is XULMenuElement;
34974 interface XULPopupElement extends XULElement {
34975     readonly anchorNode: Element | null;
34976     readonly isWaylandDragSource: boolean;
34977     readonly isWaylandPopup: boolean;
34978     label: string;
34979     position: string;
34980     readonly state: string;
34981     readonly triggerNode: Node | null;
34982     activateItem(itemElement: Element, options?: ActivateMenuItemOptions): void;
34983     getOuterScreenRect(): DOMRect;
34984     hidePopup(cancel?: boolean): void;
34985     moveTo(left: number, top: number): void;
34986     moveToAnchor(anchorElement?: Element | null, position?: string, x?: number, y?: number, attributesOverride?: boolean): void;
34987     openPopup(anchorElement?: Element | null, options?: StringOrOpenPopupOptions, x?: number, y?: number, isContextMenu?: boolean, attributesOverride?: boolean, triggerEvent?: Event | null): void;
34988     openPopupAtScreen(x?: number, y?: number, isContextMenu?: boolean, triggerEvent?: Event | null): void;
34989     openPopupAtScreenRect(position?: string, x?: number, y?: number, width?: number, height?: number, isContextMenu?: boolean, attributesOverride?: boolean, triggerEvent?: Event | null): void;
34990     setConstraintRect(rect: DOMRectReadOnly): void;
34991     sizeTo(width: number, height: number): void;
34992     addEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULPopupElement, ev: XULElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
34993     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
34994     removeEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULPopupElement, ev: XULElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
34995     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
34998 declare var XULPopupElement: {
34999     prototype: XULPopupElement;
35000     new(): XULPopupElement;
35001     isInstance(obj): obj is XULPopupElement;
35004 interface XULResizerElement extends XULElement {
35005     addEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULResizerElement, ev: XULElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
35006     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
35007     removeEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULResizerElement, ev: XULElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
35008     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
35011 declare var XULResizerElement: {
35012     prototype: XULResizerElement;
35013     new(): XULResizerElement;
35014     isInstance(obj): obj is XULResizerElement;
35017 interface XULTextElement extends XULElement {
35018     accessKey: string;
35019     disabled: boolean;
35020     value: string;
35021     addEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULTextElement, ev: XULElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
35022     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
35023     removeEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULTextElement, ev: XULElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
35024     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
35027 declare var XULTextElement: {
35028     prototype: XULTextElement;
35029     new(): XULTextElement;
35030     isInstance(obj): obj is XULTextElement;
35033 interface XULTreeElement extends XULElement {
35034     readonly columns: TreeColumns | null;
35035     focused: boolean;
35036     readonly horizontalPosition: number;
35037     readonly rowHeight: number;
35038     readonly rowWidth: number;
35039     readonly treeBody: Element | null;
35040     view: MozTreeView | null;
35041     beginUpdateBatch(): void;
35042     clearStyleAndImageCaches(): void;
35043     endUpdateBatch(): void;
35044     ensureCellIsVisible(row: number, col: TreeColumn | null): void;
35045     ensureRowIsVisible(index: number): void;
35046     getCellAt(x: number, y: number): TreeCellInfo;
35047     getCoordsForCellItem(row: number, col: TreeColumn, element: string): DOMRect | null;
35048     getFirstVisibleRow(): number;
35049     getLastVisibleRow(): number;
35050     getPageLength(): number;
35051     getRowAt(x: number, y: number): number;
35052     invalidate(): void;
35053     invalidateCell(row: number, col: TreeColumn | null): void;
35054     invalidateColumn(col: TreeColumn | null): void;
35055     invalidateRange(startIndex: number, endIndex: number): void;
35056     invalidateRow(index: number): void;
35057     isCellCropped(row: number, col: TreeColumn | null): boolean;
35058     removeImageCacheEntry(row: number, col: TreeColumn): void;
35059     rowCountChanged(index: number, count: number): void;
35060     scrollByLines(numLines: number): void;
35061     scrollByPages(numPages: number): void;
35062     scrollToRow(index: number): void;
35063     addEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULTreeElement, ev: XULElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
35064     addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
35065     removeEventListener<K extends keyof XULElementEventMap>(type: K, listener: (this: XULTreeElement, ev: XULElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
35066     removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
35069 declare var XULTreeElement: {
35070     prototype: XULTreeElement;
35071     new(): XULTreeElement;
35072     isInstance(obj): obj is XULTreeElement;
35075 interface imgINotificationObserver {
35078 declare var imgINotificationObserver: {
35079     prototype: imgINotificationObserver;
35080     new(): imgINotificationObserver;
35081     isInstance(obj): obj is imgINotificationObserver;
35084 interface imgIRequest {
35087 declare var imgIRequest: {
35088     prototype: imgIRequest;
35089     new(): imgIRequest;
35090     isInstance(obj): obj is imgIRequest;
35093 interface nsIBrowserDOMWindow {
35096 declare var nsIBrowserDOMWindow: {
35097     prototype: nsIBrowserDOMWindow;
35098     new(): nsIBrowserDOMWindow;
35099     isInstance(obj): obj is nsIBrowserDOMWindow;
35102 interface nsICookieJarSettings {
35105 declare var nsICookieJarSettings: {
35106     prototype: nsICookieJarSettings;
35107     new(): nsICookieJarSettings;
35108     isInstance(obj): obj is nsICookieJarSettings;
35111 interface nsIDOMProcessChild {
35114 declare var nsIDOMProcessChild: {
35115     prototype: nsIDOMProcessChild;
35116     new(): nsIDOMProcessChild;
35117     isInstance(obj): obj is nsIDOMProcessChild;
35120 interface nsIDOMProcessParent {
35123 declare var nsIDOMProcessParent: {
35124     prototype: nsIDOMProcessParent;
35125     new(): nsIDOMProcessParent;
35126     isInstance(obj): obj is nsIDOMProcessParent;
35129 interface nsIDOMWindowUtils {
35132 declare var nsIDOMWindowUtils: {
35133     prototype: nsIDOMWindowUtils;
35134     new(): nsIDOMWindowUtils;
35135     isInstance(obj): obj is nsIDOMWindowUtils;
35138 interface nsIDocShell {
35141 interface nsIEditor {
35144 declare var nsIEditor: {
35145     prototype: nsIEditor;
35146     new(): nsIEditor;
35147     isInstance(obj): obj is nsIEditor;
35150 interface nsIEventTarget {
35153 declare var nsIEventTarget: {
35154     prototype: nsIEventTarget;
35155     new(): nsIEventTarget;
35156     isInstance(obj): obj is nsIEventTarget;
35159 interface nsIFile {
35162 declare var nsIFile: {
35163     prototype: nsIFile;
35164     new(): nsIFile;
35165     isInstance(obj): obj is nsIFile;
35168 interface nsIGleanPing {
35171 declare var nsIGleanPing: {
35172     prototype: nsIGleanPing;
35173     new(): nsIGleanPing;
35174     isInstance(obj): obj is nsIGleanPing;
35177 interface nsILoadGroup {
35180 declare var nsILoadGroup: {
35181     prototype: nsILoadGroup;
35182     new(): nsILoadGroup;
35183     isInstance(obj): obj is nsILoadGroup;
35186 interface nsIMediaDevice {
35189 declare var nsIMediaDevice: {
35190     prototype: nsIMediaDevice;
35191     new(): nsIMediaDevice;
35192     isInstance(obj): obj is nsIMediaDevice;
35195 interface nsIOpenWindowInfo {
35198 declare var nsIOpenWindowInfo: {
35199     prototype: nsIOpenWindowInfo;
35200     new(): nsIOpenWindowInfo;
35201     isInstance(obj): obj is nsIOpenWindowInfo;
35204 interface nsIPermissionDelegateHandler {
35207 declare var nsIPermissionDelegateHandler: {
35208     prototype: nsIPermissionDelegateHandler;
35209     new(): nsIPermissionDelegateHandler;
35210     isInstance(obj): obj is nsIPermissionDelegateHandler;
35213 interface nsISHEntry {
35216 declare var nsISHEntry: {
35217     prototype: nsISHEntry;
35218     new(): nsISHEntry;
35219     isInstance(obj): obj is nsISHEntry;
35222 interface nsISHistory {
35225 declare var nsISHistory: {
35226     prototype: nsISHistory;
35227     new(): nsISHistory;
35228     isInstance(obj): obj is nsISHistory;
35231 interface nsIScreen {
35234 declare var nsIScreen: {
35235     prototype: nsIScreen;
35236     new(): nsIScreen;
35237     isInstance(obj): obj is nsIScreen;
35240 interface nsISecureBrowserUI {
35243 declare var nsISecureBrowserUI: {
35244     prototype: nsISecureBrowserUI;
35245     new(): nsISecureBrowserUI;
35246     isInstance(obj): obj is nsISecureBrowserUI;
35249 interface nsISelectionListener {
35252 declare var nsISelectionListener: {
35253     prototype: nsISelectionListener;
35254     new(): nsISelectionListener;
35255     isInstance(obj): obj is nsISelectionListener;
35258 interface nsISessionStoreRestoreData {
35261 declare var nsISessionStoreRestoreData: {
35262     prototype: nsISessionStoreRestoreData;
35263     new(): nsISessionStoreRestoreData;
35264     isInstance(obj): obj is nsISessionStoreRestoreData;
35267 interface nsISocketTransport {
35270 declare var nsISocketTransport: {
35271     prototype: nsISocketTransport;
35272     new(): nsISocketTransport;
35273     isInstance(obj): obj is nsISocketTransport;
35276 interface nsIStreamListener {
35279 declare var nsIStreamListener: {
35280     prototype: nsIStreamListener;
35281     new(): nsIStreamListener;
35282     isInstance(obj): obj is nsIStreamListener;
35285 interface nsITransportProvider {
35288 declare var nsITransportProvider: {
35289     prototype: nsITransportProvider;
35290     new(): nsITransportProvider;
35291     isInstance(obj): obj is nsITransportProvider;
35294 interface nsITreeSelection {
35297 declare var nsITreeSelection: {
35298     prototype: nsITreeSelection;
35299     new(): nsITreeSelection;
35300     isInstance(obj): obj is nsITreeSelection;
35303 interface nsIWebBrowserPersistDocumentReceiver {
35306 declare var nsIWebBrowserPersistDocumentReceiver: {
35307     prototype: nsIWebBrowserPersistDocumentReceiver;
35308     new(): nsIWebBrowserPersistDocumentReceiver;
35309     isInstance(obj): obj is nsIWebBrowserPersistDocumentReceiver;
35312 interface nsIWebNavigation {
35315 declare var nsIWebNavigation: {
35316     prototype: nsIWebNavigation;
35317     new(): nsIWebNavigation;
35318     isInstance(obj): obj is nsIWebNavigation;
35321 interface nsIWebProgress {
35324 declare var nsIWebProgress: {
35325     prototype: nsIWebProgress;
35326     new(): nsIWebProgress;
35327     isInstance(obj): obj is nsIWebProgress;
35330 interface nsIWebProgressListener {
35333 declare var nsIWebProgressListener: {
35334     prototype: nsIWebProgressListener;
35335     new(): nsIWebProgressListener;
35336     isInstance(obj): obj is nsIWebProgressListener;
35339 declare namespace AddonManagerPermissions {
35340     function isHostPermitted(host: string): boolean;
35343 declare namespace APZHitResultFlags {
35346 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console) */
35347 interface Console {
35348     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/assert_static) */
35349     assert(condition?: boolean, ...data: any[]): void;
35350     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/clear_static) */
35351     clear(): void;
35352     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/count_static) */
35353     count(label?: string): void;
35354     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/countReset_static) */
35355     countReset(label?: string): void;
35356     createInstance(options?: ConsoleInstanceOptions): ConsoleInstance;
35357     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/debug_static) */
35358     debug(...data: any[]): void;
35359     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dir_static) */
35360     dir(...data: any[]): void;
35361     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dirxml_static) */
35362     dirxml(...data: any[]): void;
35363     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/error_static) */
35364     error(...data: any[]): void;
35365     /** @deprecated */
35366     exception(...data: any[]): void;
35367     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/group_static) */
35368     group(...data: any[]): void;
35369     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupCollapsed_static) */
35370     groupCollapsed(...data: any[]): void;
35371     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupEnd_static) */
35372     groupEnd(): void;
35373     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/info_static) */
35374     info(...data: any[]): void;
35375     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/log_static) */
35376     log(...data: any[]): void;
35377     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/profile_static) */
35378     profile(...data: any[]): void;
35379     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/profileEnd_static) */
35380     profileEnd(...data: any[]): void;
35381     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/table_static) */
35382     table(...data: any[]): void;
35383     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/time_static) */
35384     time(label?: string): void;
35385     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeEnd_static) */
35386     timeEnd(label?: string): void;
35387     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeLog_static) */
35388     timeLog(label?: string, ...data: any[]): void;
35389     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeStamp_static) */
35390     timeStamp(data?: any): void;
35391     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/trace_static) */
35392     trace(...data: any[]): void;
35393     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/warn_static) */
35394     warn(...data: any[]): void;
35397 declare var console: Console;
35399 /** Holds useful CSS-related methods. No object with this interface are implemented: it contains only static methods and therefore is a utilitarian interface. */
35400 declare namespace CSS {
35401     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/highlights_static) */
35402     var highlights: HighlightRegistry;
35403     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/escape_static) */
35404     function escape(ident: string): string;
35405     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/registerProperty_static) */
35406     function registerProperty(definition: PropertyDefinition): void;
35407     /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/supports_static) */
35408     function supports(property: UTF8String, value: UTF8String): boolean;
35409     function supports(conditionText: UTF8String): boolean;
35412 declare namespace FuzzingFunctions {
35413     function crash(reason?: string): void;
35414     function cycleCollect(): void;
35415     function enableAccessibility(): void;
35416     function garbageCollect(): void;
35417     function garbageCollectCompacting(): void;
35418     function memoryPressure(): void;
35419     function signalIPCReady(): void;
35420     function synthesizeKeyboardEvents(aKeyValue: string, aDictionary?: KeyboardEventInit): void;
35423 declare namespace TestUtils {
35424     function gc(): Promise<void>;
35427 declare namespace WebrtcGlobalInformation {
35428     var aecDebug: boolean;
35429     var aecDebugLogDir: string;
35430     function clearAllStats(): void;
35431     function clearLogging(): void;
35432     function getAllStats(callback: WebrtcGlobalStatisticsCallback, pcIdFilter?: string): void;
35433     function getLogging(pattern: string, callback: WebrtcGlobalLoggingCallback): void;
35434     function getMediaContext(): WebrtcGlobalMediaContext;
35435     function getStatsHistoryPcIds(callback: WebrtcGlobalStatisticsHistoryPcIdsCallback): void;
35436     function getStatsHistorySince(callback: WebrtcGlobalStatisticsHistoryCallback, pcIdFilter: string, after?: DOMHighResTimeStamp, sdpAfter?: DOMHighResTimeStamp): void;
35439 declare namespace WorkerTestUtils {
35440     function currentTimerNestingLevel(): number;
35443 // @ts-ignore
35444 declare namespace ChromeUtils {
35445     var aliveUtilityProcesses: number;
35446     var domProcessChild: nsIDOMProcessChild | null;
35447     var recentJSDevError: any;
35448     function CreateOriginAttributesFromOriginSuffix(suffix: string): OriginAttributesDictionary;
35449     function addProfilerMarker(name: UTF8String, options?: ProfilerMarkerOptions | DOMHighResTimeStamp, text?: UTF8String): void;
35450     function base64URLDecode(string: string, options: Base64URLDecodeOptions): ArrayBuffer;
35451     function base64URLEncode(source: BufferSource, options: Base64URLEncodeOptions): string;
35452     function clearRecentJSDevError(): void;
35453     function clearStyleSheetCache(): void;
35454     function clearStyleSheetCacheByBaseDomain(baseDomain: UTF8String): void;
35455     function clearStyleSheetCacheByPrincipal(principal: Principal): void;
35456     function collectPerfStats(): Promise<string>;
35457     function collectScrollingData(): Promise<InteractionData>;
35458     function compileScript(url: string, options?: CompileScriptOptionsDictionary): Promise<PrecompiledScript>;
35459     function consumeInteractionData(): Record<string, InteractionData>;
35460     function createError(message: string, stack?: any): any;
35461     function createOriginAttributesFromOrigin(origin: string): OriginAttributesDictionary;
35462     function dateNow(): number;
35463     function defineESModuleGetters(target: any, modules: any): void;
35464     function defineLazyGetter(aTarget: any, aName: any, aLambda: any): void;
35465     function defineModuleGetter(target: any, id: string, resourceURI: string): void;
35466     function endWheelTransaction(): void;
35467     function ensureJSOracleStarted(): void;
35468     function fillNonDefaultOriginAttributes(originAttrs?: OriginAttributesDictionary): OriginAttributesDictionary;
35469     function generateQI(interfaces: any[]): MozQueryInterface;
35470     function getAllDOMProcesses(): nsIDOMProcessParent[];
35471     function getAllPossibleUtilityActorNames(): UTF8String[];
35472     function getBaseDomainFromPartitionKey(partitionKey: string): string;
35473     function getCallerLocation(principal: Principal): any;
35474     function getClassName(obj: any, unwrap?: boolean): string;
35475     function getFormAutofillConfidences(elements: Element[]): FormAutofillConfidences[];
35476     function getGMPContentDecryptionModuleInformation(): Promise<CDMInformation[]>;
35477     function getLibcConstants(): LibcConstants;
35478     function getObjectNodeId(obj: any): NodeId;
35479     function getPartitionKeyFromURL(url: string): string;
35480     function getPopupControlState(): PopupBlockerState;
35481     function getWMFContentDecryptionModuleInformation(): Promise<CDMInformation[]>;
35482     function getXPCOMErrorName(aErrorCode: number): UTF8String;
35483     function hasReportingHeaderForOrigin(aOrigin: string): boolean;
35484     function idleDispatch(callback: IdleRequestCallback, options?: IdleRequestOptions): void;
35485     function _import_(aResourceURI: UTF8String, aTargetObj?: any): any;
35486     function importESModule(aResourceURI: string, options?: ImportESModuleOptionsDictionary): any;
35487     function isClassifierBlockingErrorCode(aError: number): boolean;
35488     function isDOMObject(obj: any, unwrap?: boolean): boolean;
35489     function isDarkBackground(element: Element): boolean;
35490     function isDevToolsOpened(): boolean;
35491     function isISOStyleDate(str: UTF8String): boolean;
35492     function isOriginAttributesEqual(aA?: OriginAttributesDictionary, aB?: OriginAttributesDictionary): boolean;
35493     function lastExternalProtocolIframeAllowed(): number;
35494     function nondeterministicGetWeakMapKeys(map: any): any;
35495     function nondeterministicGetWeakSetKeys(aSet: any): any;
35496     function notifyDevToolsClosed(): void;
35497     function notifyDevToolsOpened(): void;
35498     function originAttributesMatchPattern(originAttrs?: OriginAttributesDictionary, pattern?: OriginAttributesPatternDictionary): boolean;
35499     function originAttributesToSuffix(originAttrs?: OriginAttributesDictionary): string;
35500     function privateNoteIntentionalCrash(): void;
35501     function readHeapSnapshot(filePath: string): HeapSnapshot;
35502     function registerProcessActor(aName: UTF8String, aOptions?: ProcessActorOptions): void;
35503     function registerWindowActor(aName: UTF8String, aOptions?: WindowActorOptions): void;
35504     function releaseAssert(condition: boolean, message?: string): void;
35505     function requestIOActivity(): Promise<IOActivityDataDictionary[]>;
35506     function requestProcInfo(): Promise<ParentProcInfoDictionary>;
35507     function resetLastExternalProtocolIframeAllowed(): void;
35508     function saveHeapSnapshot(boundaries?: HeapSnapshotBoundaries): string;
35509     function saveHeapSnapshotGetId(boundaries?: HeapSnapshotBoundaries): string;
35510     function setPerfStatsCollectionMask(aCollectionMask: number): void;
35511     function shallowClone(obj: any, target?: any): any;
35512     function shouldResistFingerprinting(target: JSRFPTarget, overriddenFingerprintingSettings: number | null): boolean;
35513     function unregisterProcessActor(aName: UTF8String): void;
35514     function unregisterWindowActor(aName: UTF8String): void;
35515     function unwaiveXrays(val: any): any;
35516     function vsyncEnabled(): boolean;
35517     function waiveXrays(val: any): any;
35520 // @ts-ignore
35521 declare namespace InspectorUtils {
35522     function addPseudoClassLock(element: Element, pseudoClass: string, enabled?: boolean): void;
35523     function clearPseudoClassLocks(element: Element): void;
35524     function colorToRGBA(colorString: UTF8String, doc?: Document | null): InspectorRGBATuple | null;
35525     function containingBlockOf(element: Element): Element | null;
35526     function cssPropertyIsShorthand(property: UTF8String): boolean;
35527     function cssPropertySupportsType(property: UTF8String, type: InspectorPropertyType): boolean;
35528     function getAllStyleSheetCSSStyleRules(sheet: CSSStyleSheet): CSSRule[];
35529     function getAllStyleSheets(document: Document, documentOnly?: boolean): StyleSheet[];
35530     function getBlockLineCounts(element: Element): number[] | null;
35531     function getCSSPropertyNames(options?: PropertyNamesOptions): string[];
35532     function getCSSPropertyPrefs(): PropertyPref[];
35533     function getCSSPseudoElementNames(): string[];
35534     function getCSSRegisteredProperties(document: Document): InspectorCSSPropertyDefinition[];
35535     function getCSSStyleRules(element: Element, pseudo?: string, relevantLinkVisited?: boolean): CSSStyleRule[];
35536     function getCSSValuesForProperty(property: UTF8String): string[];
35537     function getChildrenForNode(node: Node, showingAnonymousContent: boolean, includeAssignedNodes: boolean): Node[];
35538     function getContentState(element: Element): number;
35539     function getOverflowingChildrenOfElement(element: Element): NodeList;
35540     function getParentForNode(node: Node, showingAnonymousContent: boolean): Node | null;
35541     function getRegisteredCssHighlights(document: Document, activeOnly?: boolean): string[];
35542     function getRelativeRuleLine(rule: CSSRule): number;
35543     function getRuleColumn(rule: CSSRule): number;
35544     function getRuleLine(rule: CSSRule): number;
35545     function getSubpropertiesForCSSProperty(property: UTF8String): string[];
35546     function getUsedFontFaces(range: Range, maxRanges?: number, skipCollapsedWhitespace?: boolean): InspectorFontFace[];
35547     function hasPseudoClassLock(element: Element, pseudoClass: string): boolean;
35548     function hasRulesModifiedByCSSOM(sheet: CSSStyleSheet): boolean;
35549     function isCustomElementName(name: string | null, namespaceURI: string | null): boolean;
35550     function isElementThemed(element: Element): boolean;
35551     function isIgnorableWhitespace(dataNode: CharacterData): boolean;
35552     function isInheritedProperty(document: Document, property: UTF8String): boolean;
35553     function isValidCSSColor(colorString: UTF8String): boolean;
35554     function parseStyleSheet(sheet: CSSStyleSheet, input: UTF8String): void;
35555     function removeContentState(element: Element, state: number, clearActiveDocument?: boolean): boolean;
35556     function removePseudoClassLock(element: Element, pseudoClass: string): void;
35557     function rgbToColorName(r: number, g: number, b: number): UTF8String;
35558     function setContentState(element: Element, state: number): boolean;
35559     function supports(conditionText: UTF8String, options?: SupportsOptions): boolean;
35562 // @ts-ignore
35563 declare namespace IOUtils {
35564     var profileBeforeChange: any;
35565     var sendTelemetry: any;
35566     function computeHexDigest(path: string, method: HashAlgorithm): Promise<UTF8String>;
35567     function copy(sourcePath: string, destPath: string, options?: CopyOptions): Promise<void>;
35568     function createUniqueDirectory(parent: string, prefix: string, permissions?: number): Promise<string>;
35569     function createUniqueFile(parent: string, prefix: string, permissions?: number): Promise<string>;
35570     function delMacXAttr(path: string, attr: UTF8String): Promise<void>;
35571     function exists(path: string): Promise<boolean>;
35572     function getChildren(path: string, options?: GetChildrenOptions): Promise<string[]>;
35573     function getDirectory(...components: string[]): Promise<nsIFile>;
35574     function getFile(...components: string[]): Promise<nsIFile>;
35575     function getMacXAttr(path: string, attr: UTF8String): Promise<Uint8Array>;
35576     function getWindowsAttributes(path: string): Promise<WindowsFileAttributes>;
35577     function hasMacXAttr(path: string, attr: UTF8String): Promise<boolean>;
35578     function launchProcess(argv: UnixString[], options: LaunchOptions): number;
35579     function makeDirectory(path: string, options?: MakeDirectoryOptions): Promise<void>;
35580     function move(sourcePath: string, destPath: string, options?: MoveOptions): Promise<void>;
35581     function openFileForSyncReading(path: string): SyncReadFile;
35582     function read(path: string, opts?: ReadOptions): Promise<Uint8Array>;
35583     function readJSON(path: string, opts?: ReadUTF8Options): Promise<any>;
35584     function readUTF8(path: string, opts?: ReadUTF8Options): Promise<UTF8String>;
35585     function remove(path: string, options?: RemoveOptions): Promise<void>;
35586     function setAccessTime(path: string, access?: number): Promise<number>;
35587     function setMacXAttr(path: string, attr: UTF8String, value: Uint8Array): Promise<void>;
35588     function setModificationTime(path: string, modification?: number): Promise<number>;
35589     function setPermissions(path: string, permissions: number, honorUmask?: boolean): Promise<void>;
35590     function setWindowsAttributes(path: string, attrs?: WindowsFileAttributes): Promise<void>;
35591     function stat(path: string): Promise<FileInfo>;
35592     function write(path: string, data: Uint8Array, options?: WriteOptions): Promise<number>;
35593     function writeJSON(path: string, value: any, options?: WriteOptions): Promise<number>;
35594     function writeUTF8(path: string, string: UTF8String, options?: WriteOptions): Promise<number>;
35597 declare namespace L10nOverlays {
35598     function translateElement(element: Element, translation?: L10nMessage): L10nOverlaysError[] | null;
35601 declare namespace MediaControlService {
35602     function generateMediaControlKey(aKey: MediaControlKey): void;
35603     function getCurrentActiveMediaMetadata(): MediaMetadataInit;
35604     function getCurrentMediaSessionPlaybackState(): MediaSessionPlaybackState;
35607 // @ts-ignore
35608 declare namespace PathUtils {
35609     var localProfileDir: string;
35610     var profileDir: string;
35611     var tempDir: string;
35612     var xulLibraryPath: string;
35613     function filename(path: string): string;
35614     function getLocalProfileDir(): Promise<string>;
35615     function getProfileDir(): Promise<string>;
35616     function getTempDir(): Promise<string>;
35617     function getXulLibraryPath(): Promise<string>;
35618     function isAbsolute(path: string): boolean;
35619     function join(...components: string[]): string;
35620     function joinRelative(base: string, relativePath: string): string;
35621     function normalize(path: string): string;
35622     function parent(path: string, depth?: number): string | null;
35623     function split(path: string): string[];
35624     function splitRelative(path: string, options?: SplitRelativeOptions): string[];
35625     function toExtendedWindowsPath(path: string): string;
35626     function toFileURI(path: string): UTF8String;
35629 declare namespace PlacesObservers {
35630     function addListener(eventTypes: PlacesEventType[], listener: PlacesEventCallback): void;
35631     function addListener(eventTypes: PlacesEventType[], listener: PlacesWeakCallbackWrapper): void;
35632     function notifyListeners(events: PlacesEvent[]): void;
35633     function removeListener(eventTypes: PlacesEventType[], listener: PlacesEventCallback): void;
35634     function removeListener(eventTypes: PlacesEventType[], listener: PlacesWeakCallbackWrapper): void;
35637 declare namespace PromiseDebugging {
35638     function addUncaughtRejectionObserver(o: UncaughtRejectionObserver): void;
35639     function getAllocationStack(p: any): any;
35640     function getFullfillmentStack(p: any): any;
35641     function getPromiseID(p: any): string;
35642     function getRejectionStack(p: any): any;
35643     function getState(p: any): PromiseDebuggingStateHolder;
35644     function removeUncaughtRejectionObserver(o: UncaughtRejectionObserver): boolean;
35647 declare namespace SessionStoreUtils {
35648     function addDynamicFrameFilteredListener(target: EventTarget, type: string, listener: any, useCapture: boolean, mozSystemGroup?: boolean): nsISupports | null;
35649     function collectDocShellCapabilities(docShell: nsIDocShell): string;
35650     function collectFormData(window: WindowProxy): CollectedData | null;
35651     function collectScrollPosition(window: WindowProxy): CollectedData | null;
35652     function constructSessionStoreRestoreData(): nsISessionStoreRestoreData;
35653     function forEachNonDynamicChildFrame(window: WindowProxy, callback: SessionStoreUtilsFrameCallback): void;
35654     function initializeRestore(browsingContext: CanonicalBrowsingContext, data: nsISessionStoreRestoreData | null): Promise<void>;
35655     function removeDynamicFrameFilteredListener(target: EventTarget, type: string, listener: nsISupports, useCapture: boolean, mozSystemGroup?: boolean): void;
35656     function restoreDocShellCapabilities(docShell: nsIDocShell, disallowCapabilities: string): void;
35657     function restoreDocShellState(browsingContext: CanonicalBrowsingContext, url: UTF8String | null, docShellCaps: string | null): Promise<void>;
35658     function restoreFormData(document: Document, data?: CollectedData): boolean;
35659     function restoreScrollPosition(frame: Window, data?: CollectedData): void;
35660     function restoreSessionStorageFromParent(browsingContext: CanonicalBrowsingContext, sessionStorage: Record<UTF8String, Record<string, string>>): void;
35663 // @ts-ignore
35664 declare namespace TelemetryStopwatch {
35665     function cancel(histogram: HistogramID, obj?: any): boolean;
35666     function cancelKeyed(histogram: HistogramID, key: HistogramKey, obj?: any): boolean;
35667     function finish(histogram: HistogramID, obj?: any, canceledOkay?: boolean): boolean;
35668     function finishKeyed(histogram: HistogramID, key: HistogramKey, obj?: any, canceledOkay?: boolean): boolean;
35669     function running(histogram: HistogramID, obj?: any): boolean;
35670     function runningKeyed(histogram: HistogramID, key: HistogramKey, obj?: any): boolean;
35671     function setTestModeEnabled(testing?: boolean): void;
35672     function start(histogram: HistogramID, obj?: any, options?: TelemetryStopwatchOptions): boolean;
35673     function startKeyed(histogram: HistogramID, key: HistogramKey, obj?: any, options?: TelemetryStopwatchOptions): boolean;
35674     function timeElapsed(histogram: HistogramID, obj?: any, canceledOkay?: boolean): number;
35675     function timeElapsedKeyed(histogram: HistogramID, key: HistogramKey, obj?: any, canceledOkay?: boolean): number;
35678 declare namespace UniFFIScaffolding {
35679     function callAsync(id: UniFFIFunctionId, ...args: UniFFIScaffoldingType[]): Promise<UniFFIScaffoldingCallResult>;
35680     function callSync(id: UniFFIFunctionId, ...args: UniFFIScaffoldingType[]): UniFFIScaffoldingCallResult;
35681     function deregisterCallbackHandler(interfaceId: UniFFICallbackInterfaceId): void;
35682     function readPointer(id: UniFFIPointerId, buff: ArrayBuffer, position: number): UniFFIPointer;
35683     function registerCallbackHandler(interfaceId: UniFFICallbackInterfaceId, handler: UniFFICallbackHandler): void;
35684     function writePointer(id: UniFFIPointerId, ptr: UniFFIPointer, buff: ArrayBuffer, position: number): void;
35687 declare namespace UserInteraction {
35688     function cancel(id: string, obj?: any): boolean;
35689     function finish(id: string, obj?: any, additionalText?: UTF8String): boolean;
35690     function running(id: string, obj?: any): boolean;
35691     function start(id: string, value: UTF8String, obj?: any): boolean;
35692     function update(id: string, value: UTF8String, obj?: any): boolean;
35695 interface AnyCallback {
35696     (value: any): any;
35699 interface AudioWorkletProcessorConstructor {
35700     (options: any): AudioWorkletProcessor;
35703 interface BlobCallback {
35704     (blob: Blob | null): void;
35707 interface ChainedOperation {
35708     (): any;
35711 interface ConsoleInstanceDumpCallback {
35712     (message: string): void;
35715 interface CustomElementConstructor {
35716     (): any;
35719 interface CustomElementCreationCallback {
35720     (name: string): void;
35723 interface DebuggerNotificationCallback {
35724     (n: DebuggerNotification): void;
35727 interface DecodeErrorCallback {
35728     (error: DOMException): void;
35731 interface DecodeSuccessCallback {
35732     (decodedData: AudioBuffer): void;
35735 interface EncodedVideoChunkOutputCallback {
35736     (chunk: EncodedVideoChunk, metadata?: EncodedVideoChunkMetadata): void;
35739 interface ErrorCallback {
35740     (err: DOMException): void;
35743 interface FileCallback {
35744     (file: File): void;
35747 interface FileSystemEntriesCallback {
35748     (entries: FileSystemEntry[]): void;
35751 interface FileSystemEntryCallback {
35752     (entry: FileSystemEntry): void;
35755 interface FontFaceSetForEachCallback {
35756     (value: FontFace, key: FontFace, set: FontFaceSet): void;
35759 interface FrameRequestCallback {
35760     (time: DOMHighResTimeStamp): void;
35763 interface FunctionStringCallback {
35764     (data: string): void;
35767 interface GenerateAssertionCallback {
35768     (contents: string, origin: string, options: RTCIdentityProviderOptions): RTCIdentityAssertionResult | PromiseLike<RTCIdentityAssertionResult>;
35771 interface IdleRequestCallback {
35772     (deadline: IdleDeadline): void;
35775 interface InstallTriggerCallback {
35776     (url: string, status: number): void;
35779 interface IntersectionCallback {
35780     (entries: IntersectionObserverEntry[], observer: IntersectionObserver): void;
35783 interface LockGrantedCallback {
35784     (lock: Lock | null): any;
35787 interface MediaSessionActionHandler {
35788     (details: MediaSessionActionDetails): void;
35791 interface MutationCallback {
35792     (mutations: MutationRecord[], observer: MutationObserver): void;
35795 interface NavigatorUserMediaErrorCallback {
35796     (error: MediaStreamError): void;
35799 interface NavigatorUserMediaSuccessCallback {
35800     (stream: MediaStream): void;
35803 interface NotificationPermissionCallback {
35804     (permission: NotificationPermission): void;
35807 interface OnBeforeUnloadEventHandlerNonNull {
35808     (event: Event): string | null;
35811 interface OnErrorEventHandlerNonNull {
35812     (event: Event | string, source?: string, lineno?: number, column?: number, error?: any): any;
35815 interface PeerConnectionLifecycleCallback {
35816     (pc: RTCPeerConnection, windowId: number, eventType: RTCLifecycleEvent): void;
35819 interface PerformanceObserverCallback {
35820     (entries: PerformanceObserverEntryList, observer: PerformanceObserver): void;
35823 interface PlacesEventCallback {
35824     (events: PlacesEvent[]): void;
35827 interface PositionCallback {
35828     (position: GeolocationPosition): void;
35831 interface PositionErrorCallback {
35832     (positionError: GeolocationPositionError): void;
35835 interface PrintCallback {
35836     (ctx: MozCanvasPrintState): void;
35839 interface PromiseDocumentFlushedCallback {
35840     (): any;
35843 interface PromiseReturner {
35844     (): any;
35847 interface QueuingStrategySize {
35848     (chunk?: any): number;
35851 interface RTCPeerConnectionErrorCallback {
35852     (error: DOMException): void;
35855 interface RTCSessionDescriptionCallback {
35856     (description: RTCSessionDescriptionInit): void;
35859 interface ReportingObserverCallback {
35860     (reports: Report[], observer: ReportingObserver): void;
35863 interface ResizeObserverCallback {
35864     (entries: ResizeObserverEntry[], observer: ResizeObserver): void;
35867 interface SchedulerPostTaskCallback {
35868     (): any;
35871 interface SessionStoreUtilsFrameCallback {
35872     (frame: WindowProxy, index: number): void;
35875 interface SetDeleteBooleanCallback {
35876     (value: boolean, index: number): void;
35879 interface SetDeleteInterfaceCallback {
35880     (value: TestInterfaceObservableArray, index: number): void;
35883 interface SetDeleteObjectCallback {
35884     (value: any, index: number): void;
35887 interface TestThrowingCallback {
35888     (): void;
35891 interface UniFFICallbackHandler {
35892     (objectId: UniFFICallbackObjectHandle, methodId: UniFFICallbackMethodId, aArgs: ArrayBuffer): void;
35895 interface ValidateAssertionCallback {
35896     (assertion: string, origin: string): RTCIdentityValidationResult | PromiseLike<RTCIdentityValidationResult>;
35899 interface VideoFrameOutputCallback {
35900     (output: VideoFrame): void;
35903 interface VoidFunction {
35904     (): void;
35907 interface WebCodecsErrorCallback {
35908     (error: DOMException): void;
35911 interface WebExtensionLocalizeCallback {
35912     (unlocalizedText: string): string;
35915 interface WebrtcGlobalLoggingCallback {
35916     (logMessages: string[]): void;
35919 interface WebrtcGlobalStatisticsCallback {
35920     (reports: WebrtcGlobalStatisticsReport): void;
35923 interface WebrtcGlobalStatisticsHistoryCallback {
35924     (reports: WebrtcGlobalStatisticsReport): void;
35927 interface WebrtcGlobalStatisticsHistoryPcIdsCallback {
35928     (pcIds: string[]): void;
35931 interface XRFrameRequestCallback {
35932     (time: DOMHighResTimeStamp, frame: XRFrame): void;
35935 interface mozPacketCallback {
35936     (level: number, type: mozPacketDumpType, sending: boolean, packet: ArrayBuffer): void;
35939 interface HTMLElementTagNameMap {
35940     "a": HTMLAnchorElement;
35941     "abbr": HTMLElement;
35942     "address": HTMLElement;
35943     "area": HTMLAreaElement;
35944     "article": HTMLElement;
35945     "aside": HTMLElement;
35946     "audio": HTMLAudioElement;
35947     "b": HTMLElement;
35948     "base": HTMLBaseElement;
35949     "bdi": HTMLElement;
35950     "bdo": HTMLElement;
35951     "blockquote": HTMLQuoteElement;
35952     "body": HTMLBodyElement;
35953     "br": HTMLBRElement;
35954     "button": HTMLButtonElement;
35955     "canvas": HTMLCanvasElement;
35956     "caption": HTMLTableCaptionElement;
35957     "cite": HTMLElement;
35958     "code": HTMLElement;
35959     "col": HTMLTableColElement;
35960     "colgroup": HTMLTableColElement;
35961     "data": HTMLDataElement;
35962     "datalist": HTMLDataListElement;
35963     "dd": HTMLElement;
35964     "del": HTMLModElement;
35965     "details": HTMLDetailsElement;
35966     "dfn": HTMLElement;
35967     "dialog": HTMLDialogElement;
35968     "div": HTMLDivElement;
35969     "dl": HTMLDListElement;
35970     "dt": HTMLElement;
35971     "em": HTMLElement;
35972     "embed": HTMLEmbedElement;
35973     "fencedframe": HTMLFencedFrameElement;
35974     "fieldset": HTMLFieldSetElement;
35975     "figcaption": HTMLElement;
35976     "figure": HTMLElement;
35977     "footer": HTMLElement;
35978     "form": HTMLFormElement;
35979     "h1": HTMLHeadingElement;
35980     "h2": HTMLHeadingElement;
35981     "h3": HTMLHeadingElement;
35982     "h4": HTMLHeadingElement;
35983     "h5": HTMLHeadingElement;
35984     "h6": HTMLHeadingElement;
35985     "head": HTMLHeadElement;
35986     "header": HTMLElement;
35987     "hgroup": HTMLElement;
35988     "hr": HTMLHRElement;
35989     "html": HTMLHtmlElement;
35990     "i": HTMLElement;
35991     "iframe": HTMLIFrameElement;
35992     "img": HTMLImageElement;
35993     "input": HTMLInputElement;
35994     "ins": HTMLModElement;
35995     "kbd": HTMLElement;
35996     "label": HTMLLabelElement;
35997     "legend": HTMLLegendElement;
35998     "li": HTMLLIElement;
35999     "link": HTMLLinkElement;
36000     "main": HTMLElement;
36001     "map": HTMLMapElement;
36002     "mark": HTMLElement;
36003     "menu": HTMLMenuElement;
36004     "meta": HTMLMetaElement;
36005     "meter": HTMLMeterElement;
36006     "model": HTMLModelElement;
36007     "nav": HTMLElement;
36008     "noscript": HTMLElement;
36009     "object": HTMLObjectElement;
36010     "ol": HTMLOListElement;
36011     "optgroup": HTMLOptGroupElement;
36012     "option": HTMLOptionElement;
36013     "output": HTMLOutputElement;
36014     "p": HTMLParagraphElement;
36015     "picture": HTMLPictureElement;
36016     "portal": HTMLPortalElement;
36017     "pre": HTMLPreElement;
36018     "progress": HTMLProgressElement;
36019     "q": HTMLQuoteElement;
36020     "rp": HTMLElement;
36021     "rt": HTMLElement;
36022     "ruby": HTMLElement;
36023     "s": HTMLElement;
36024     "samp": HTMLElement;
36025     "script": HTMLScriptElement;
36026     "search": HTMLElement;
36027     "section": HTMLElement;
36028     "select": HTMLSelectElement;
36029     "slot": HTMLSlotElement;
36030     "small": HTMLElement;
36031     "source": HTMLSourceElement;
36032     "span": HTMLSpanElement;
36033     "strong": HTMLElement;
36034     "style": HTMLStyleElement;
36035     "sub": HTMLElement;
36036     "summary": HTMLElement;
36037     "sup": HTMLElement;
36038     "table": HTMLTableElement;
36039     "tbody": HTMLTableSectionElement;
36040     "td": HTMLTableCellElement;
36041     "template": HTMLTemplateElement;
36042     "textarea": HTMLTextAreaElement;
36043     "tfoot": HTMLTableSectionElement;
36044     "th": HTMLTableCellElement;
36045     "thead": HTMLTableSectionElement;
36046     "time": HTMLTimeElement;
36047     "title": HTMLTitleElement;
36048     "tr": HTMLTableRowElement;
36049     "track": HTMLTrackElement;
36050     "u": HTMLElement;
36051     "ul": HTMLUListElement;
36052     "var": HTMLElement;
36053     "video": HTMLVideoElement;
36054     "wbr": HTMLElement;
36057 interface HTMLElementDeprecatedTagNameMap {
36058     "acronym": HTMLElement;
36059     "applet": HTMLUnknownElement;
36060     "basefont": HTMLElement;
36061     "bgsound": HTMLUnknownElement;
36062     "big": HTMLElement;
36063     "blink": HTMLUnknownElement;
36064     "center": HTMLElement;
36065     "dir": HTMLDirectoryElement;
36066     "font": HTMLFontElement;
36067     "frame": HTMLFrameElement;
36068     "frameset": HTMLFrameSetElement;
36069     "isindex": HTMLUnknownElement;
36070     "keygen": HTMLUnknownElement;
36071     "listing": HTMLPreElement;
36072     "marquee": HTMLMarqueeElement;
36073     "menuitem": HTMLElement;
36074     "multicol": HTMLUnknownElement;
36075     "nextid": HTMLUnknownElement;
36076     "nobr": HTMLElement;
36077     "noembed": HTMLElement;
36078     "noframes": HTMLElement;
36079     "param": HTMLParamElement;
36080     "plaintext": HTMLElement;
36081     "rb": HTMLElement;
36082     "rtc": HTMLElement;
36083     "spacer": HTMLUnknownElement;
36084     "strike": HTMLElement;
36085     "tt": HTMLElement;
36086     "xmp": HTMLPreElement;
36089 interface SVGElementTagNameMap {
36090     "a": SVGAElement;
36091     "animate": SVGAnimateElement;
36092     "animateMotion": SVGAnimateMotionElement;
36093     "animateTransform": SVGAnimateTransformElement;
36094     "circle": SVGCircleElement;
36095     "clipPath": SVGClipPathElement;
36096     "defs": SVGDefsElement;
36097     "desc": SVGDescElement;
36098     "ellipse": SVGEllipseElement;
36099     "feBlend": SVGFEBlendElement;
36100     "feColorMatrix": SVGFEColorMatrixElement;
36101     "feComponentTransfer": SVGFEComponentTransferElement;
36102     "feComposite": SVGFECompositeElement;
36103     "feConvolveMatrix": SVGFEConvolveMatrixElement;
36104     "feDiffuseLighting": SVGFEDiffuseLightingElement;
36105     "feDisplacementMap": SVGFEDisplacementMapElement;
36106     "feDistantLight": SVGFEDistantLightElement;
36107     "feDropShadow": SVGFEDropShadowElement;
36108     "feFlood": SVGFEFloodElement;
36109     "feFuncA": SVGFEFuncAElement;
36110     "feFuncB": SVGFEFuncBElement;
36111     "feFuncG": SVGFEFuncGElement;
36112     "feFuncR": SVGFEFuncRElement;
36113     "feGaussianBlur": SVGFEGaussianBlurElement;
36114     "feImage": SVGFEImageElement;
36115     "feMerge": SVGFEMergeElement;
36116     "feMergeNode": SVGFEMergeNodeElement;
36117     "feMorphology": SVGFEMorphologyElement;
36118     "feOffset": SVGFEOffsetElement;
36119     "fePointLight": SVGFEPointLightElement;
36120     "feSpecularLighting": SVGFESpecularLightingElement;
36121     "feSpotLight": SVGFESpotLightElement;
36122     "feTile": SVGFETileElement;
36123     "feTurbulence": SVGFETurbulenceElement;
36124     "filter": SVGFilterElement;
36125     "foreignObject": SVGForeignObjectElement;
36126     "g": SVGGElement;
36127     "image": SVGImageElement;
36128     "line": SVGLineElement;
36129     "linearGradient": SVGLinearGradientElement;
36130     "marker": SVGMarkerElement;
36131     "mask": SVGMaskElement;
36132     "metadata": SVGMetadataElement;
36133     "mpath": SVGMPathElement;
36134     "path": SVGPathElement;
36135     "pattern": SVGPatternElement;
36136     "polygon": SVGPolygonElement;
36137     "polyline": SVGPolylineElement;
36138     "radialGradient": SVGRadialGradientElement;
36139     "rect": SVGRectElement;
36140     "script": SVGScriptElement;
36141     "set": SVGSetElement;
36142     "stop": SVGStopElement;
36143     "style": SVGStyleElement;
36144     "svg": SVGSVGElement;
36145     "switch": SVGSwitchElement;
36146     "symbol": SVGSymbolElement;
36147     "text": SVGTextElement;
36148     "textPath": SVGTextPathElement;
36149     "title": SVGTitleElement;
36150     "tspan": SVGTSpanElement;
36151     "use": SVGUseElement;
36152     "view": SVGViewElement;
36155 interface MathMLElementTagNameMap {
36156     "annotation": MathMLElement;
36157     "annotation-xml": MathMLElement;
36158     "maction": MathMLElement;
36159     "math": MathMLElement;
36160     "merror": MathMLElement;
36161     "mfrac": MathMLElement;
36162     "mi": MathMLElement;
36163     "mmultiscripts": MathMLElement;
36164     "mn": MathMLElement;
36165     "mo": MathMLElement;
36166     "mover": MathMLElement;
36167     "mpadded": MathMLElement;
36168     "mphantom": MathMLElement;
36169     "mprescripts": MathMLElement;
36170     "mroot": MathMLElement;
36171     "mrow": MathMLElement;
36172     "ms": MathMLElement;
36173     "mspace": MathMLElement;
36174     "msqrt": MathMLElement;
36175     "mstyle": MathMLElement;
36176     "msub": MathMLElement;
36177     "msubsup": MathMLElement;
36178     "msup": MathMLElement;
36179     "mtable": MathMLElement;
36180     "mtd": MathMLElement;
36181     "mtext": MathMLElement;
36182     "mtr": MathMLElement;
36183     "munder": MathMLElement;
36184     "munderover": MathMLElement;
36185     "semantics": MathMLElement;
36188 /** @deprecated Directly use HTMLElementTagNameMap or SVGElementTagNameMap as appropriate, instead. */
36189 type ElementTagNameMap = HTMLElementTagNameMap & Pick<SVGElementTagNameMap, Exclude<keyof SVGElementTagNameMap, keyof HTMLElementTagNameMap>>;
36191 declare var Audio: {
36192     new(src?: string): HTMLAudioElement;
36194 declare var Image: {
36195     new(width?: number, height?: number): HTMLImageElement;
36197 declare var Option: {
36198     new(text?: string, value?: string, defaultSelected?: boolean, selected?: boolean): HTMLOptionElement;
36200 declare var webkitSpeechGrammar: {
36201     new(): SpeechGrammar;
36203 declare var webkitSpeechGrammarList: {
36204     new(): SpeechGrammarList;
36206 declare var webkitSpeechRecognition: {
36207     new(): SpeechRecognition;
36209 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/currentFrame) */
36210 declare var currentFrame: number;
36211 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/currentTime) */
36212 declare var currentTime: number;
36213 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/sampleRate) */
36214 declare var sampleRate: number;
36215 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletGlobalScope/registerProcessor) */
36216 declare function registerProcessor(name: string, processorCtor: AudioWorkletProcessorConstructor): void;
36217 // @ts-ignore
36218 declare function dump(str?: string): void;
36219 type AlgorithmIdentifier = any;
36220 type Base64URLString = string;
36221 type BinaryData = ArrayBuffer | ArrayBufferView;
36222 type BlobPart = BufferSource | Blob | UTF8String;
36223 type BodyInit = XMLHttpRequestBodyInit;
36224 type COSEAlgorithmIdentifier = number;
36225 type CanvasImageSource = HTMLOrSVGImageElement | HTMLCanvasElement | HTMLVideoElement | OffscreenCanvas | ImageBitmap | VideoFrame;
36226 type CanvasSource = HTMLCanvasElement | OffscreenCanvas;
36227 type ClipboardItemData = Promise<ClipboardItemDataType>;
36228 type ClipboardItemDataType = string | Blob;
36229 type ClipboardItems = ClipboardItem[];
36230 type CollectedFormDataValue = any;
36231 type ConstrainBoolean = boolean | ConstrainBooleanParameters;
36232 type ConstrainDOMString = string | string[] | ConstrainDOMStringParameters;
36233 type ConstrainDouble = number | ConstrainDoubleRange;
36234 type ConstrainLong = number | ConstrainLongRange;
36235 type DOMHighResTimeStamp = number;
36236 type DOMTimeStamp = number;
36237 type EpochTimeStamp = number;
36238 type FileSystemWriteChunkType = BufferSource | Blob | UTF8String | WriteParams;
36239 type Float32List = Float32Array | GLfloat[];
36240 type FormDataEntryValue = Blob | Directory | string;
36241 type FormDataValue = any;
36242 type GLbitfield = number;
36243 type GLboolean = boolean;
36244 type GLclampf = number;
36245 type GLenum = number;
36246 type GLfloat = number;
36247 type GLint = number;
36248 type GLint64 = number;
36249 type GLintptr = number;
36250 type GLsizei = number;
36251 type GLsizeiptr = number;
36252 type GLuint = number;
36253 type GLuint64 = number;
36254 type GPUBindingResource = GPUSampler | GPUTextureView | GPUBufferBinding;
36255 type GPUBufferDynamicOffset = number;
36256 type GPUBufferUsageFlags = number;
36257 type GPUColor = number[] | GPUColorDict;
36258 type GPUColorWriteFlags = number;
36259 type GPUDepthBias = number;
36260 type GPUExtent3D = GPUIntegerCoordinate[] | GPUExtent3DDict;
36261 type GPUFlagsConstant = number;
36262 type GPUIndex32 = number;
36263 type GPUIntegerCoordinate = number;
36264 type GPUIntegerCoordinateOut = number;
36265 type GPUMapModeFlags = number;
36266 type GPUOrigin2D = GPUIntegerCoordinate[] | GPUOrigin2DDict;
36267 type GPUOrigin3D = GPUIntegerCoordinate[] | GPUOrigin3DDict;
36268 type GPUSampleMask = number;
36269 type GPUShaderStageFlags = number;
36270 type GPUSignedOffset32 = number;
36271 type GPUSize32 = number;
36272 type GPUSize32Out = number;
36273 type GPUSize64 = number;
36274 type GPUSize64Out = number;
36275 type GPUStencilValue = number;
36276 type GPUTextureUsageFlags = number;
36277 type GeometryNode = Text | Element | Document;
36278 type HTMLOrSVGImageElement = HTMLImageElement | SVGImageElement;
36279 type HeadersInit = string[][] | Record<string, string>;
36280 type HistogramID = string;
36281 type HistogramKey = string;
36282 type ImageBitmapSource = CanvasImageSource | Blob | CanvasRenderingContext2D | ImageData;
36283 type Int32List = Int32Array | GLint[];
36284 type KeyFormat = string;
36285 type KeyType = string;
36286 type KeyUsage = string;
36287 type L10nArgs = Record<UTF8String, UTF8String | number | null>;
36288 type L10nKey = UTF8String | L10nIdArgs;
36289 type L10nResourceId = UTF8String | ResourceId;
36290 type MatchGlobOrString = MatchGlob | UTF8String;
36291 type MatchPatternSetOrStringSequence = MatchPatternSet | string[];
36292 type MessageEventSource = WindowProxy | MessagePort | ServiceWorker;
36293 type NodeId = number;
36294 type NodeSize = number;
36295 type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext | GPUCanvasContext;
36296 type OnBeforeUnloadEventHandler = OnBeforeUnloadEventHandlerNonNull | null;
36297 type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
36298 type PerformanceEntryList = PerformanceEntry[];
36299 type PushMessageDataInit = BufferSource | string;
36300 type RTCRtpTransform = RTCRtpScriptTransform;
36301 type ReadableStreamReader = ReadableStreamDefaultReader | ReadableStreamBYOBReader;
36302 type ReportList = Report[];
36303 type RequestInfo = Request | string;
36304 type SanitizerAttribute = string | SanitizerAttributeNamespace;
36305 type SanitizerElement = string | SanitizerElementNamespace;
36306 type SanitizerElementWithAttributes = string | SanitizerElementNamespaceWithAttributes;
36307 type SanitizerInput = DocumentFragment | Document;
36308 type StringOrOpenPopupOptions = string | OpenPopupOptions;
36309 type StructuredClonable = any;
36310 type Uint32List = Uint32Array | GLuint[];
36311 type UniFFICallbackInterfaceId = number;
36312 type UniFFICallbackMethodId = number;
36313 type UniFFICallbackObjectHandle = number;
36314 type UniFFIFunctionId = number;
36315 type UniFFIPointerId = number;
36316 type UniFFIScaffoldingType = number | ArrayBuffer | UniFFIPointer;
36317 type UnixString = UTF8String | Uint8Array;
36318 type UnrestrictedDoubleOrKeyframeAnimationOptions = number | KeyframeAnimationOptions;
36319 type VibratePattern = number | number[];
36320 type XMLHttpRequestBodyInit = Blob | BufferSource | FormData | URLSearchParams | string;
36321 type XRWebGLRenderingContext = WebGLRenderingContext | WebGL2RenderingContext;
36322 type XSLTParameterValue = number | boolean | string | Node | Node[] | XPathResult;
36323 type nsContentPolicyType = number;
36324 type AlignSetting = "center" | "end" | "left" | "right" | "start";
36325 type AlphaOption = "discard" | "keep";
36326 type AnimationPlayState = "finished" | "idle" | "paused" | "running";
36327 type AnimationReplaceState = "active" | "persisted" | "removed";
36328 type AudioContextState = "closed" | "running" | "suspended";
36329 type AutoKeyword = "auto";
36330 type AutoplayPolicy = "allowed" | "allowed-muted" | "disallowed";
36331 type AutoplayPolicyMediaType = "audiocontext" | "mediaelement";
36332 type AvcBitstreamFormat = "annexb" | "avc";
36333 type Base64URLDecodePadding = "ignore" | "reject" | "require";
36334 type BinaryType = "arraybuffer" | "blob";
36335 type BiquadFilterType = "allpass" | "bandpass" | "highpass" | "highshelf" | "lowpass" | "lowshelf" | "notch" | "peaking";
36336 type CSSBoxType = "border" | "content" | "margin" | "padding";
36337 type CSSStyleSheetParsingMode = "agent" | "author" | "user";
36338 type CacheStorageNamespace = "chrome" | "content";
36339 type CallbackDebuggerNotificationPhase = "post" | "pre";
36340 type CanvasDirection = "inherit" | "ltr" | "rtl";
36341 type CanvasFontKerning = "auto" | "none" | "normal";
36342 type CanvasFontStretch = "condensed" | "expanded" | "extra-condensed" | "extra-expanded" | "normal" | "semi-condensed" | "semi-expanded" | "ultra-condensed" | "ultra-expanded";
36343 type CanvasFontVariantCaps = "all-petite-caps" | "all-small-caps" | "normal" | "petite-caps" | "small-caps" | "titling-caps" | "unicase";
36344 type CanvasLineCap = "butt" | "round" | "square";
36345 type CanvasLineJoin = "bevel" | "miter" | "round";
36346 type CanvasTextAlign = "center" | "end" | "left" | "right" | "start";
36347 type CanvasTextBaseline = "alphabetic" | "bottom" | "hanging" | "ideographic" | "middle" | "top";
36348 type CanvasTextRendering = "auto" | "geometricPrecision" | "optimizeLegibility" | "optimizeSpeed";
36349 type CanvasWindingRule = "evenodd" | "nonzero";
36350 type CaretChangedReason = "dragcaret" | "longpressonemptycontent" | "presscaret" | "releasecaret" | "scroll" | "taponcaret" | "updateposition" | "visibilitychange";
36351 type ChannelCountMode = "clamped-max" | "explicit" | "max";
36352 type ChannelInterpretation = "discrete" | "speakers";
36353 type CheckerboardReason = "recent" | "severe";
36354 type ClientType = "all" | "serviceworker" | "sharedworker" | "window" | "worker";
36355 type CodecState = "closed" | "configured" | "unconfigured";
36356 type ColorGamut = "p3" | "rec2020" | "srgb";
36357 type ColorSpaceConversion = "default" | "none";
36358 type CompositeOperation = "accumulate" | "add" | "replace";
36359 type CompressionFormat = "deflate" | "deflate-raw" | "gzip";
36360 type ConnectionType = "bluetooth" | "cellular" | "ethernet" | "none" | "other" | "unknown" | "wifi";
36361 type ConsoleLevel = "error" | "log" | "warning";
36362 type ConsoleLogLevel = "All" | "Clear" | "Debug" | "Dir" | "Dirxml" | "Error" | "Group" | "GroupEnd" | "Info" | "Log" | "Off" | "Profile" | "ProfileEnd" | "Time" | "TimeEnd" | "TimeLog" | "Trace" | "Warn";
36363 type ContentScriptRunAt = "document_end" | "document_idle" | "document_start";
36364 type CredentialMediationRequirement = "conditional" | "optional" | "required" | "silent";
36365 type DOMRequestReadyState = "done" | "pending";
36366 type DebuggerNotificationType = "cancelAnimationFrame" | "clearInterval" | "clearTimeout" | "domEvent" | "requestAnimationFrame" | "requestAnimationFrameCallback" | "setInterval" | "setIntervalCallback" | "setTimeout" | "setTimeoutCallback";
36367 type DecoderDoctorReportType = "mediacannotinitializepulseaudio" | "mediacannotplaynodecoders" | "mediadecodeerror" | "mediadecodewarning" | "medianodecoders" | "mediaplatformdecodernotfound" | "mediaunsupportedlibavcodec" | "mediawidevinenowmf" | "mediawmfneeded";
36368 type DirectionSetting = "" | "lr" | "rl";
36369 type DisplayMode = "browser" | "fullscreen" | "minimal-ui" | "standalone";
36370 type DistanceModelType = "exponential" | "inverse" | "linear";
36371 type EncodedVideoChunkType = "delta" | "key";
36372 type EndingType = "native" | "transparent";
36373 type EventCallbackDebuggerNotificationType = "global" | "node" | "websocket" | "worker" | "xhr";
36374 type FetchState = "aborted" | "complete" | "errored" | "requesting" | "responding";
36375 type FileSystemHandleKind = "directory" | "file";
36376 type FileType = "directory" | "other" | "regular";
36377 type FillMode = "auto" | "backwards" | "both" | "forwards" | "none";
36378 type FlexItemClampState = "clamped_to_max" | "clamped_to_min" | "unclamped";
36379 type FlexLineGrowthState = "growing" | "shrinking";
36380 type FlexPhysicalDirection = "horizontal-lr" | "horizontal-rl" | "vertical-bt" | "vertical-tb";
36381 type FontFaceLoadStatus = "error" | "loaded" | "loading" | "unloaded";
36382 type FontFaceSetLoadStatus = "loaded" | "loading";
36383 type FrameType = "auxiliary" | "nested" | "none" | "top-level";
36384 type GPUAddressMode = "clamp-to-edge" | "mirror-repeat" | "repeat";
36385 type GPUAutoLayoutMode = "auto";
36386 type GPUBlendFactor = "constant" | "dst" | "dst-alpha" | "one" | "one-minus-constant" | "one-minus-dst" | "one-minus-dst-alpha" | "one-minus-src" | "one-minus-src-alpha" | "src" | "src-alpha" | "src-alpha-saturated" | "zero";
36387 type GPUBlendOperation = "add" | "max" | "min" | "reverse-subtract" | "subtract";
36388 type GPUBufferBindingType = "read-only-storage" | "storage" | "uniform";
36389 type GPUBufferMapState = "mapped" | "pending" | "unmapped";
36390 type GPUCanvasAlphaMode = "opaque" | "premultiplied";
36391 type GPUCompareFunction = "always" | "equal" | "greater" | "greater-equal" | "less" | "less-equal" | "never" | "not-equal";
36392 type GPUCompilationMessageType = "error" | "info" | "warning";
36393 type GPUCullMode = "back" | "front" | "none";
36394 type GPUErrorFilter = "internal" | "out-of-memory" | "validation";
36395 type GPUFeatureName = "bgra8unorm-storage" | "depth-clip-control" | "depth32float-stencil8" | "float32-filterable" | "indirect-first-instance" | "rg11b10ufloat-renderable" | "shader-f16" | "texture-compression-astc" | "texture-compression-bc" | "texture-compression-etc2" | "timestamp-query";
36396 type GPUFilterMode = "linear" | "nearest";
36397 type GPUFrontFace = "ccw" | "cw";
36398 type GPUIndexFormat = "uint16" | "uint32";
36399 type GPULoadOp = "clear" | "load";
36400 type GPUMipmapFilterMode = "linear" | "nearest";
36401 type GPUPowerPreference = "high-performance" | "low-power";
36402 type GPUPrimitiveTopology = "line-list" | "line-strip" | "point-list" | "triangle-list" | "triangle-strip";
36403 type GPUSamplerBindingType = "comparison" | "filtering" | "non-filtering";
36404 type GPUStencilOperation = "decrement-clamp" | "decrement-wrap" | "increment-clamp" | "increment-wrap" | "invert" | "keep" | "replace" | "zero";
36405 type GPUStorageTextureAccess = "write-only";
36406 type GPUStoreOp = "discard" | "store";
36407 type GPUTextureAspect = "all" | "depth-only" | "stencil-only";
36408 type GPUTextureDimension = "1d" | "2d" | "3d";
36409 type GPUTextureFormat = "bc1-rgba-unorm" | "bc1-rgba-unorm-srgb" | "bc2-rgba-unorm" | "bc2-rgba-unorm-srgb" | "bc3-rgba-unorm" | "bc3-rgba-unorm-srgb" | "bc4-r-snorm" | "bc4-r-unorm" | "bc5-rg-snorm" | "bc5-rg-unorm" | "bc6h-rgb-float" | "bc6h-rgb-ufloat" | "bc7-rgba-unorm" | "bc7-rgba-unorm-srgb" | "bgra8unorm" | "bgra8unorm-srgb" | "depth16unorm" | "depth24plus" | "depth24plus-stencil8" | "depth32float" | "depth32float-stencil8" | "r16float" | "r16sint" | "r16uint" | "r32float" | "r32sint" | "r32uint" | "r8sint" | "r8snorm" | "r8uint" | "r8unorm" | "rg11b10ufloat" | "rg16float" | "rg16sint" | "rg16uint" | "rg32float" | "rg32sint" | "rg32uint" | "rg8sint" | "rg8snorm" | "rg8uint" | "rg8unorm" | "rgb10a2unorm" | "rgb9e5ufloat" | "rgba16float" | "rgba16sint" | "rgba16uint" | "rgba32float" | "rgba32sint" | "rgba32uint" | "rgba8sint" | "rgba8snorm" | "rgba8uint" | "rgba8unorm" | "rgba8unorm-srgb" | "stencil8";
36410 type GPUTextureSampleType = "depth" | "float" | "sint" | "uint" | "unfilterable-float";
36411 type GPUTextureViewDimension = "1d" | "2d" | "2d-array" | "3d" | "cube" | "cube-array";
36412 type GPUVertexFormat = "float16x2" | "float16x4" | "float32" | "float32x2" | "float32x3" | "float32x4" | "sint16x2" | "sint16x4" | "sint32" | "sint32x2" | "sint32x3" | "sint32x4" | "sint8x2" | "sint8x4" | "snorm16x2" | "snorm16x4" | "snorm8x2" | "snorm8x4" | "uint16x2" | "uint16x4" | "uint32" | "uint32x2" | "uint32x3" | "uint32x4" | "uint8x2" | "uint8x4" | "unorm16x2" | "unorm16x4" | "unorm8x2" | "unorm8x4";
36413 type GPUVertexStepMode = "instance" | "vertex";
36414 type GamepadHand = "" | "left" | "right";
36415 type GamepadHapticActuatorType = "vibration";
36416 type GamepadLightIndicatorType = "on-off" | "rgb";
36417 type GamepadMappingType = "" | "standard" | "xr-standard";
36418 type GetUserMediaRequestType = "getusermedia" | "recording-device-stopped" | "selectaudiooutput";
36419 type GridDeclaration = "explicit" | "implicit";
36420 type GridTrackState = "removed" | "repeat" | "static";
36421 type HardwareAcceleration = "no-preference" | "prefer-hardware" | "prefer-software";
36422 type HashAlgorithm = "sha1" | "sha256" | "sha384" | "sha512";
36423 type HdrMetadataType = "smpteSt2086" | "smpteSt2094-10" | "smpteSt2094-40";
36424 type HeadersGuardEnum = "immutable" | "none" | "request" | "request-no-cors" | "response";
36425 type HighlightType = "grammar-error" | "highlight" | "spelling-error";
36426 type IDBCursorDirection = "next" | "nextunique" | "prev" | "prevunique";
36427 type IDBRequestReadyState = "done" | "pending";
36428 type IDBTransactionMode = "cleanup" | "readonly" | "readwrite" | "readwriteflush" | "versionchange";
36429 type ImageOrientation = "flipY" | "from-image" | "none";
36430 type InspectorPropertyType = "color" | "gradient" | "timing-function";
36431 type IterationCompositeOperation = "accumulate" | "replace";
36432 type JSRFPTarget = "RoundWindowSize" | "SiteSpecificZoom";
36433 type L10nFileSourceHasFileStatus = "missing" | "present" | "unknown";
36434 type LatencyMode = "quality" | "realtime";
36435 type LineAlignSetting = "center" | "end" | "start";
36436 type LockMode = "exclusive" | "shared";
36437 type MIDIPortConnectionState = "closed" | "open" | "pending";
36438 type MIDIPortDeviceState = "connected" | "disconnected";
36439 type MIDIPortType = "input" | "output";
36440 type MediaControlKey = "focus" | "nexttrack" | "pause" | "play" | "playpause" | "previoustrack" | "seekbackward" | "seekforward" | "seekto" | "skipad" | "stop";
36441 type MediaDecodingType = "file" | "media-source";
36442 type MediaDeviceKind = "audioinput" | "audiooutput" | "videoinput";
36443 type MediaEncodingType = "record" | "transmission";
36444 type MediaKeyMessageType = "individualization-request" | "license-release" | "license-renewal" | "license-request";
36445 type MediaKeySessionType = "persistent-license" | "temporary";
36446 type MediaKeyStatus = "expired" | "internal-error" | "output-downscaled" | "output-restricted" | "released" | "status-pending" | "usable";
36447 type MediaKeysRequirement = "not-allowed" | "optional" | "required";
36448 type MediaSessionAction = "nexttrack" | "pause" | "play" | "previoustrack" | "seekbackward" | "seekforward" | "seekto" | "skipad" | "stop";
36449 type MediaSessionPlaybackState = "none" | "paused" | "playing";
36450 type MediaSourceEndOfStreamError = "decode" | "network";
36451 type MediaSourceReadyState = "closed" | "ended" | "open";
36452 type MediaStreamTrackState = "ended" | "live";
36453 type MozContentPolicyType = "beacon" | "csp_report" | "fetch" | "font" | "image" | "imageset" | "main_frame" | "media" | "object" | "object_subrequest" | "other" | "ping" | "script" | "speculative" | "stylesheet" | "sub_frame" | "web_manifest" | "websocket" | "xml_dtd" | "xmlhttprequest" | "xslt";
36454 type MozUrlClassificationFlags = "any_basic_tracking" | "any_social_tracking" | "any_strict_tracking" | "cryptomining" | "cryptomining_content" | "emailtracking" | "emailtracking_content" | "fingerprinting" | "fingerprinting_content" | "socialtracking" | "socialtracking_facebook" | "socialtracking_linkedin" | "socialtracking_twitter" | "tracking" | "tracking_ad" | "tracking_analytics" | "tracking_content" | "tracking_social";
36455 type NavigationType = "back_forward" | "navigate" | "prerender" | "reload";
36456 type NotificationDirection = "auto" | "ltr" | "rtl";
36457 type NotificationPermission = "default" | "denied" | "granted";
36458 type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2" | "webgpu";
36459 type OrientationLockType = "any" | "landscape" | "landscape-primary" | "landscape-secondary" | "natural" | "portrait" | "portrait-primary" | "portrait-secondary";
36460 type OrientationType = "landscape-primary" | "landscape-secondary" | "portrait-primary" | "portrait-secondary";
36461 type OscillatorType = "custom" | "sawtooth" | "sine" | "square" | "triangle";
36462 type OverSampleType = "2x" | "4x" | "none";
36463 type OverridableErrorCategory = "domain-mismatch" | "expired-or-not-yet-valid" | "trust-error" | "unset";
36464 type PCError = "InvalidAccessError" | "InvalidCharacterError" | "InvalidModificationError" | "InvalidStateError" | "NotReadableError" | "NotSupportedError" | "OperationError" | "RangeError" | "SyntaxError" | "TypeError" | "UnknownError";
36465 type PCObserverStateType = "ConnectionState" | "IceConnectionState" | "IceGatheringState" | "None" | "SignalingState";
36466 type PanningModelType = "HRTF" | "equalpower";
36467 type PaymentComplete = "fail" | "success" | "unknown";
36468 type PaymentShippingType = "delivery" | "pickup" | "shipping";
36469 type PermissionName = "geolocation" | "midi" | "notifications" | "persistent-storage" | "push" | "screen-wake-lock" | "storage-access";
36470 type PermissionState = "denied" | "granted" | "prompt";
36471 type PermitUnloadAction = "dontUnload" | "prompt" | "unload";
36472 type PlacesEventType = "bookmark-added" | "bookmark-guid-changed" | "bookmark-keyword-changed" | "bookmark-moved" | "bookmark-removed" | "bookmark-tags-changed" | "bookmark-time-changed" | "bookmark-title-changed" | "bookmark-url-changed" | "favicon-changed" | "history-cleared" | "none" | "page-removed" | "page-title-changed" | "page-visited" | "pages-rank-changed" | "purge-caches";
36473 type PlaybackDirection = "alternate" | "alternate-reverse" | "normal" | "reverse";
36474 type PopupBlockerState = "openAbused" | "openAllowed" | "openBlocked" | "openControlled" | "openOverridden";
36475 type PositionAlignSetting = "auto" | "center" | "line-left" | "line-right";
36476 type PredefinedColorSpace = "display-p3" | "srgb";
36477 type PrefersColorSchemeOverride = "dark" | "light" | "none";
36478 type PremultiplyAlpha = "default" | "none" | "premultiply";
36479 type PresentationStyle = "attachment" | "inline" | "unspecified";
36480 type PromiseDebuggingState = "fulfilled" | "pending" | "rejected";
36481 type PushEncryptionKeyName = "auth" | "p256dh";
36482 type RTCBundlePolicy = "balanced" | "max-bundle" | "max-compat";
36483 type RTCCodecType = "decode" | "encode";
36484 type RTCDataChannelState = "closed" | "closing" | "connecting" | "open";
36485 type RTCDataChannelType = "arraybuffer" | "blob";
36486 type RTCDtlsTransportState = "closed" | "connected" | "connecting" | "failed" | "new";
36487 type RTCEncodedVideoFrameType = "delta" | "empty" | "key";
36488 type RTCIceCandidateType = "host" | "prflx" | "relay" | "srflx";
36489 type RTCIceConnectionState = "checking" | "closed" | "completed" | "connected" | "disconnected" | "failed" | "new";
36490 type RTCIceCredentialType = "password";
36491 type RTCIceGatheringState = "complete" | "gathering" | "new";
36492 type RTCIceTransportPolicy = "all" | "relay";
36493 type RTCLifecycleEvent = "connectionstatechange" | "iceconnectionstatechange" | "icegatheringstatechange" | "initialized";
36494 type RTCPeerConnectionState = "closed" | "connected" | "connecting" | "disconnected" | "failed" | "new";
36495 type RTCPriorityType = "high" | "low" | "medium" | "very-low";
36496 type RTCRtpTransceiverDirection = "inactive" | "recvonly" | "sendonly" | "sendrecv" | "stopped";
36497 type RTCSctpTransportState = "closed" | "connected" | "connecting";
36498 type RTCSdpType = "answer" | "offer" | "pranswer" | "rollback";
36499 type RTCSignalingState = "closed" | "have-local-offer" | "have-local-pranswer" | "have-remote-offer" | "have-remote-pranswer" | "stable";
36500 type RTCStatsIceCandidatePairState = "cancelled" | "failed" | "frozen" | "inprogress" | "succeeded" | "waiting";
36501 type RTCStatsType = "candidate-pair" | "codec" | "csrc" | "data-channel" | "inbound-rtp" | "local-candidate" | "media-source" | "outbound-rtp" | "peer-connection" | "remote-candidate" | "remote-inbound-rtp" | "remote-outbound-rtp" | "session" | "track" | "transport";
36502 type ReadableStreamReaderMode = "byob";
36503 type RecordingState = "inactive" | "paused" | "recording";
36504 type ReferrerPolicy = "" | "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url";
36505 type RequestCache = "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload";
36506 type RequestCredentials = "include" | "omit" | "same-origin";
36507 type RequestDestination = "" | "audio" | "audioworklet" | "document" | "embed" | "font" | "frame" | "iframe" | "image" | "manifest" | "object" | "paintworklet" | "report" | "script" | "sharedworker" | "style" | "track" | "video" | "worker" | "xslt";
36508 type RequestMode = "cors" | "navigate" | "no-cors" | "same-origin";
36509 type RequestRedirect = "error" | "follow" | "manual";
36510 type ResizeObserverBoxOptions = "border-box" | "content-box" | "device-pixel-content-box";
36511 type ResponseType = "basic" | "cors" | "default" | "error" | "opaque" | "opaqueredirect";
36512 type ScreenColorGamut = "p3" | "rec2020" | "srgb";
36513 type ScrollBehavior = "auto" | "instant" | "smooth";
36514 type ScrollLogicalPosition = "center" | "end" | "nearest" | "start";
36515 type ScrollRestoration = "auto" | "manual";
36516 type ScrollSetting = "" | "up";
36517 type ScrollState = "started" | "stopped";
36518 type SecurityPolicyViolationEventDisposition = "enforce" | "report";
36519 type SelectionMode = "end" | "preserve" | "select" | "start";
36520 type SelectorWarningKind = "UnconstrainedHas";
36521 type ServiceWorkerState = "activated" | "activating" | "installed" | "installing" | "parsed" | "redundant";
36522 type ServiceWorkerUpdateViaCache = "all" | "imports" | "none";
36523 type ShadowRootMode = "closed" | "open";
36524 type SlotAssignmentMode = "manual" | "named";
36525 type SocketReadyState = "closed" | "closing" | "halfclosed" | "open" | "opening";
36526 type SourceBufferAppendMode = "segments" | "sequence";
36527 type SpeechRecognitionErrorCode = "aborted" | "audio-capture" | "bad-grammar" | "language-not-supported" | "network" | "no-speech" | "not-allowed" | "service-not-allowed";
36528 type SpeechSynthesisErrorCode = "audio-busy" | "audio-hardware" | "canceled" | "interrupted" | "invalid-argument" | "language-unavailable" | "network" | "synthesis-failed" | "synthesis-unavailable" | "text-too-long" | "voice-unavailable";
36529 type StreamFilterStatus = "closed" | "disconnected" | "failed" | "finishedtransferringdata" | "suspended" | "transferringdata" | "uninitialized";
36530 type StringType = "inline" | "literal" | "other" | "stringbuffer";
36531 type SupportedType = "application/xhtml+xml" | "application/xml" | "image/svg+xml" | "text/html" | "text/xml";
36532 type TCPReadyState = "closed" | "closing" | "connecting" | "open";
36533 type TCPSocketBinaryType = "arraybuffer" | "string";
36534 type TaskPriority = "background" | "user-blocking" | "user-visible";
36535 type TextTrackKind = "captions" | "chapters" | "descriptions" | "metadata" | "subtitles";
36536 type TextTrackMode = "disabled" | "hidden" | "showing";
36537 type TouchEventsOverride = "disabled" | "enabled" | "none";
36538 type TransferFunction = "hlg" | "pq" | "srgb";
36539 type UniFFIScaffoldingCallCode = "error" | "internal-error" | "success";
36540 type VRDisplayEventReason = "mounted" | "navigation" | "requested" | "unmounted";
36541 type VREye = "left" | "right";
36542 type VideoColorPrimaries = "bt2020" | "bt470bg" | "bt709" | "smpte170m" | "smpte432";
36543 type VideoEncoderBitrateMode = "constant" | "quantizer" | "variable";
36544 type VideoMatrixCoefficients = "bt2020-ncl" | "bt470bg" | "bt709" | "rgb" | "smpte170m";
36545 type VideoPixelFormat = "BGRA" | "BGRX" | "I420" | "I420A" | "I422" | "I444" | "NV12" | "RGBA" | "RGBX";
36546 type VideoTransferCharacteristics = "bt709" | "hlg" | "iec61966-2-1" | "linear" | "pq" | "smpte170m";
36547 type VisibilityState = "hidden" | "visible";
36548 type WakeLockType = "screen";
36549 type WebGLPowerPreference = "default" | "high-performance" | "low-power";
36550 type WebIDLProcType = "browser" | "extension" | "file" | "forkServer" | "gmpPlugin" | "gpu" | "ipdlUnitTest" | "preallocated" | "privilegedabout" | "privilegedmozilla" | "rdd" | "remoteSandboxBroker" | "socket" | "unknown" | "utility" | "vr" | "web" | "webIsolated" | "webServiceWorker" | "withCoopCoep";
36551 type WebIDLUtilityActorName = "audioDecoder_AppleMedia" | "audioDecoder_Generic" | "audioDecoder_WMF" | "jSOracle" | "mfMediaEngineCDM" | "unknown" | "windowsFileDialog" | "windowsUtils";
36552 type WebTransportCongestionControl = "default" | "low-latency" | "throughput";
36553 type WebTransportErrorSource = "session" | "stream";
36554 type WebTransportReliabilityMode = "pending" | "reliable-only" | "supports-unreliable";
36555 type WireframeRectType = "background" | "image" | "text" | "unknown";
36556 type WorkerType = "classic" | "module";
36557 type WriteCommandType = "seek" | "truncate" | "write";
36558 type WriteMode = "append" | "appendOrCreate" | "create" | "overwrite";
36559 type XMLHttpRequestResponseType = "" | "arraybuffer" | "blob" | "document" | "json" | "text";
36560 type XREye = "left" | "none" | "right";
36561 type XRHandedness = "left" | "none" | "right";
36562 type XRReferenceSpaceType = "bounded-floor" | "local" | "local-floor" | "unbounded" | "viewer";
36563 type XRSessionMode = "immersive-ar" | "immersive-vr" | "inline";
36564 type XRTargetRayMode = "gaze" | "screen" | "tracked-pointer";
36565 type XRVisibilityState = "hidden" | "visible" | "visible-blurred";
36566 type mozPacketDumpType = "rtcp" | "rtp" | "srtcp" | "srtp";
36569  * Note: Without this, TS autoconfig in VSCode picks up types from node_modules.
36570  * https://github.com/DefinitelyTyped/DefinitelyTyped/blob/2e4a01d2be/types/node/globals.d.ts#L3-L6
36571  */
36572 declare var onmessage: EventHandler;
36574 declare var crypto: GlobalCrypto["crypto"];
36575 // @ts-ignore
36576 declare var atob: WindowOrWorkerGlobalScope["atob"];
36577 // @ts-ignore
36578 declare var btoa: WindowOrWorkerGlobalScope["btoa"];
36579 // @ts-ignore
36580 declare var fetch: WindowOrWorkerGlobalScope["fetch"];
36582 type ContentSecurityPolicy = nsIContentSecurityPolicy;
36583 type Cookie = nsICookie;
36584 type InputStream = nsIInputStream;
36585 type LoadContext = nsILoadContext;
36586 type LoadInfo = nsILoadInfo;
36587 type MozChannel = nsIChannel;
36588 type MozTreeView = nsITreeView;
36589 type OutputStream = nsIOutputStream;
36590 type Principal = nsIPrincipal;
36591 type RemoteTab = nsIRemoteTab;
36592 type StackFrame = nsIStackFrame;
36593 type URI = nsIURI;
36594 type XULControllers = nsIControllers;
36596 type EventHandler = Function;
36597 type EventListenerOrEventListenerObject = EventListener;
36598 type HTMLCollectionOf<T> = HTMLCollection;
36599 type JSString = string;
36601 // Unresolved types!
36602 type BufferSource = any;
36603 type DOMApplication = any;
36604 type UTF8String = string;
36605 type WindowProxy = Window;