From 1272e92acdc67698b52361b96e2eb9b3a19f32a8 Mon Sep 17 00:00:00 2001 From: Alex Dima Date: Fri, 28 Aug 2020 10:03:13 +0200 Subject: [PATCH] Do not ship mixed line endings for .d.ts files --- scripts/importTypescript.js | 2 +- src/lib/lib.ts | 100 ++++++++++++++++++------------------ 2 files changed, 51 insertions(+), 51 deletions(-) diff --git a/scripts/importTypescript.js b/scripts/importTypescript.js index 2063e4ac..e28ecdb2 100644 --- a/scripts/importTypescript.js +++ b/scripts/importTypescript.js @@ -131,7 +131,7 @@ export const libFileSet: Record = {} var dtsFiles = fs.readdirSync(TYPESCRIPT_LIB_SOURCE).filter(f => f.includes("lib.")); while (dtsFiles.length > 0) { var name = dtsFiles.shift(); - var output = readLibFile(name); + var output = readLibFile(name).replace(/\r\n/g, '\n'); strLibResult += `libFileMap['${name}'] = "${escapeText(output)}";\n`; strIndexResult += `libFileSet['${name}'] = true;\n`; } diff --git a/src/lib/lib.ts b/src/lib/lib.ts index d2031a41..d86a8c16 100644 --- a/src/lib/lib.ts +++ b/src/lib/lib.ts @@ -9,57 +9,57 @@ /** Contains all the lib files */ export const libFileMap: Record = {} -libFileMap['lib.d.ts'] = "/*! *****************************************************************************\nCopyright (c) Microsoft Corporation. All rights reserved. \nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\nthis file except in compliance with the License. You may obtain a copy of the\nLicense at http://www.apache.org/licenses/LICENSE-2.0 \n \nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, \nMERCHANTABLITY OR NON-INFRINGEMENT. \n \nSee the Apache Version 2.0 License for specific language governing permissions\nand limitations under the License.\n***************************************************************************** */\n\n\n\n/// \r\n\n\n/// \r\n/// \r\n/// \r\n/// \r\n"; -libFileMap['lib.dom.d.ts'] = "/*! *****************************************************************************\nCopyright (c) Microsoft Corporation. All rights reserved. \nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\nthis file except in compliance with the License. You may obtain a copy of the\nLicense at http://www.apache.org/licenses/LICENSE-2.0 \n \nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, \nMERCHANTABLITY OR NON-INFRINGEMENT. \n \nSee the Apache Version 2.0 License for specific language governing permissions\nand limitations under the License.\n***************************************************************************** */\n\n\n\n/// \r\n\n\n/////////////////////////////\n/// DOM APIs\n/////////////////////////////\n\ninterface Account {\n displayName: string;\n id: string;\n imageURL?: string;\n name?: string;\n rpDisplayName: string;\n}\n\ninterface AddEventListenerOptions extends EventListenerOptions {\n once?: boolean;\n passive?: boolean;\n}\n\ninterface AesCbcParams extends Algorithm {\n iv: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n}\n\ninterface AesCtrParams extends Algorithm {\n counter: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n length: number;\n}\n\ninterface AesDerivedKeyParams extends Algorithm {\n length: number;\n}\n\ninterface AesGcmParams extends Algorithm {\n additionalData?: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n iv: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n tagLength?: number;\n}\n\ninterface AesKeyAlgorithm extends KeyAlgorithm {\n length: number;\n}\n\ninterface AesKeyGenParams extends Algorithm {\n length: number;\n}\n\ninterface Algorithm {\n name: string;\n}\n\ninterface AnalyserOptions extends AudioNodeOptions {\n fftSize?: number;\n maxDecibels?: number;\n minDecibels?: number;\n smoothingTimeConstant?: number;\n}\n\ninterface AnimationEventInit extends EventInit {\n animationName?: string;\n elapsedTime?: number;\n pseudoElement?: string;\n}\n\ninterface AnimationPlaybackEventInit extends EventInit {\n currentTime?: number | null;\n timelineTime?: number | null;\n}\n\ninterface AssertionOptions {\n allowList?: ScopedCredentialDescriptor[];\n extensions?: WebAuthnExtensions;\n rpId?: string;\n timeoutSeconds?: number;\n}\n\ninterface AssignedNodesOptions {\n flatten?: boolean;\n}\n\ninterface AudioBufferOptions {\n length: number;\n numberOfChannels?: number;\n sampleRate: number;\n}\n\ninterface AudioBufferSourceOptions {\n buffer?: AudioBuffer | null;\n detune?: number;\n loop?: boolean;\n loopEnd?: number;\n loopStart?: number;\n playbackRate?: number;\n}\n\ninterface AudioContextInfo {\n currentTime?: number;\n sampleRate?: number;\n}\n\ninterface AudioContextOptions {\n latencyHint?: AudioContextLatencyCategory | number;\n sampleRate?: number;\n}\n\ninterface AudioNodeOptions {\n channelCount?: number;\n channelCountMode?: ChannelCountMode;\n channelInterpretation?: ChannelInterpretation;\n}\n\ninterface AudioParamDescriptor {\n automationRate?: AutomationRate;\n defaultValue?: number;\n maxValue?: number;\n minValue?: number;\n name: string;\n}\n\ninterface AudioProcessingEventInit extends EventInit {\n inputBuffer: AudioBuffer;\n outputBuffer: AudioBuffer;\n playbackTime: number;\n}\n\ninterface AudioTimestamp {\n contextTime?: number;\n performanceTime?: number;\n}\n\ninterface AudioWorkletNodeOptions extends AudioNodeOptions {\n numberOfInputs?: number;\n numberOfOutputs?: number;\n outputChannelCount?: number[];\n parameterData?: Record;\n processorOptions?: any;\n}\n\ninterface AuthenticationExtensionsClientInputs {\n appid?: string;\n authnSel?: AuthenticatorSelectionList;\n exts?: boolean;\n loc?: boolean;\n txAuthGeneric?: txAuthGenericArg;\n txAuthSimple?: string;\n uvi?: boolean;\n uvm?: boolean;\n}\n\ninterface AuthenticationExtensionsClientOutputs {\n appid?: boolean;\n authnSel?: boolean;\n exts?: AuthenticationExtensionsSupported;\n loc?: Coordinates;\n txAuthGeneric?: ArrayBuffer;\n txAuthSimple?: string;\n uvi?: ArrayBuffer;\n uvm?: UvmEntries;\n}\n\ninterface AuthenticatorSelectionCriteria {\n authenticatorAttachment?: AuthenticatorAttachment;\n requireResidentKey?: boolean;\n userVerification?: UserVerificationRequirement;\n}\n\ninterface BiquadFilterOptions extends AudioNodeOptions {\n Q?: number;\n detune?: number;\n frequency?: number;\n gain?: number;\n type?: BiquadFilterType;\n}\n\ninterface BlobPropertyBag {\n endings?: EndingType;\n type?: string;\n}\n\ninterface ByteLengthChunk {\n byteLength?: number;\n}\n\ninterface CacheQueryOptions {\n ignoreMethod?: boolean;\n ignoreSearch?: boolean;\n ignoreVary?: boolean;\n}\n\ninterface CanvasRenderingContext2DSettings {\n alpha?: boolean;\n desynchronized?: boolean;\n}\n\ninterface ChannelMergerOptions extends AudioNodeOptions {\n numberOfInputs?: number;\n}\n\ninterface ChannelSplitterOptions extends AudioNodeOptions {\n numberOfOutputs?: number;\n}\n\ninterface ClientData {\n challenge: string;\n extensions?: WebAuthnExtensions;\n hashAlg: string | Algorithm;\n origin: string;\n rpId: string;\n tokenBinding?: string;\n}\n\ninterface ClientQueryOptions {\n includeUncontrolled?: boolean;\n type?: ClientTypes;\n}\n\ninterface ClipboardEventInit extends EventInit {\n clipboardData?: DataTransfer | null;\n}\n\ninterface CloseEventInit extends EventInit {\n code?: number;\n reason?: string;\n wasClean?: boolean;\n}\n\ninterface CompositionEventInit extends UIEventInit {\n data?: string;\n}\n\ninterface ComputedEffectTiming extends EffectTiming {\n activeDuration?: number;\n currentIteration?: number | null;\n endTime?: number;\n localTime?: number | null;\n progress?: number | null;\n}\n\ninterface ComputedKeyframe {\n composite: CompositeOperationOrAuto;\n computedOffset: number;\n easing: string;\n offset: number | null;\n [property: string]: string | number | null | undefined;\n}\n\ninterface ConfirmSiteSpecificExceptionsInformation extends ExceptionInformation {\n arrayOfDomainStrings?: string[];\n}\n\ninterface ConstantSourceOptions {\n offset?: number;\n}\n\ninterface ConstrainBooleanParameters {\n exact?: boolean;\n ideal?: boolean;\n}\n\ninterface ConstrainDOMStringParameters {\n exact?: string | string[];\n ideal?: string | string[];\n}\n\ninterface ConstrainDoubleRange extends DoubleRange {\n exact?: number;\n ideal?: number;\n}\n\ninterface ConstrainULongRange extends ULongRange {\n exact?: number;\n ideal?: number;\n}\n\ninterface ConstrainVideoFacingModeParameters {\n exact?: VideoFacingModeEnum | VideoFacingModeEnum[];\n ideal?: VideoFacingModeEnum | VideoFacingModeEnum[];\n}\n\ninterface ConvolverOptions extends AudioNodeOptions {\n buffer?: AudioBuffer | null;\n disableNormalization?: boolean;\n}\n\ninterface CredentialCreationOptions {\n publicKey?: PublicKeyCredentialCreationOptions;\n signal?: AbortSignal;\n}\n\ninterface CredentialRequestOptions {\n mediation?: CredentialMediationRequirement;\n publicKey?: PublicKeyCredentialRequestOptions;\n signal?: AbortSignal;\n}\n\ninterface CustomEventInit extends EventInit {\n detail?: T;\n}\n\ninterface DOMMatrix2DInit {\n a?: number;\n b?: number;\n c?: number;\n d?: number;\n e?: number;\n f?: number;\n m11?: number;\n m12?: number;\n m21?: number;\n m22?: number;\n m41?: number;\n m42?: number;\n}\n\ninterface DOMMatrixInit extends DOMMatrix2DInit {\n is2D?: boolean;\n m13?: number;\n m14?: number;\n m23?: number;\n m24?: number;\n m31?: number;\n m32?: number;\n m33?: number;\n m34?: number;\n m43?: number;\n m44?: number;\n}\n\ninterface DOMPointInit {\n w?: number;\n x?: number;\n y?: number;\n z?: number;\n}\n\ninterface DOMQuadInit {\n p1?: DOMPointInit;\n p2?: DOMPointInit;\n p3?: DOMPointInit;\n p4?: DOMPointInit;\n}\n\ninterface DOMRectInit {\n height?: number;\n width?: number;\n x?: number;\n y?: number;\n}\n\ninterface DelayOptions extends AudioNodeOptions {\n delayTime?: number;\n maxDelayTime?: number;\n}\n\ninterface DeviceLightEventInit extends EventInit {\n value?: number;\n}\n\ninterface DeviceMotionEventAccelerationInit {\n x?: number | null;\n y?: number | null;\n z?: number | null;\n}\n\ninterface DeviceMotionEventInit extends EventInit {\n acceleration?: DeviceMotionEventAccelerationInit;\n accelerationIncludingGravity?: DeviceMotionEventAccelerationInit;\n interval?: number;\n rotationRate?: DeviceMotionEventRotationRateInit;\n}\n\ninterface DeviceMotionEventRotationRateInit {\n alpha?: number | null;\n beta?: number | null;\n gamma?: number | null;\n}\n\ninterface DeviceOrientationEventInit extends EventInit {\n absolute?: boolean;\n alpha?: number | null;\n beta?: number | null;\n gamma?: number | null;\n}\n\ninterface DevicePermissionDescriptor extends PermissionDescriptor {\n deviceId?: string;\n name: \"camera\" | \"microphone\" | \"speaker\";\n}\n\ninterface DocumentTimelineOptions {\n originTime?: number;\n}\n\ninterface DoubleRange {\n max?: number;\n min?: number;\n}\n\ninterface DragEventInit extends MouseEventInit {\n dataTransfer?: DataTransfer | null;\n}\n\ninterface DynamicsCompressorOptions extends AudioNodeOptions {\n attack?: number;\n knee?: number;\n ratio?: number;\n release?: number;\n threshold?: number;\n}\n\ninterface EcKeyAlgorithm extends KeyAlgorithm {\n namedCurve: NamedCurve;\n}\n\ninterface EcKeyGenParams extends Algorithm {\n namedCurve: NamedCurve;\n}\n\ninterface EcKeyImportParams extends Algorithm {\n namedCurve: NamedCurve;\n}\n\ninterface EcdhKeyDeriveParams extends Algorithm {\n public: CryptoKey;\n}\n\ninterface EcdsaParams extends Algorithm {\n hash: HashAlgorithmIdentifier;\n}\n\ninterface EffectTiming {\n delay?: number;\n direction?: PlaybackDirection;\n duration?: number | string;\n easing?: string;\n endDelay?: number;\n fill?: FillMode;\n iterationStart?: number;\n iterations?: number;\n}\n\ninterface ElementCreationOptions {\n is?: string;\n}\n\ninterface ElementDefinitionOptions {\n extends?: string;\n}\n\ninterface ErrorEventInit extends EventInit {\n colno?: number;\n error?: any;\n filename?: string;\n lineno?: number;\n message?: string;\n}\n\ninterface EventInit {\n bubbles?: boolean;\n cancelable?: boolean;\n composed?: boolean;\n}\n\ninterface EventListenerOptions {\n capture?: boolean;\n}\n\ninterface EventModifierInit extends UIEventInit {\n altKey?: boolean;\n ctrlKey?: boolean;\n metaKey?: boolean;\n modifierAltGraph?: boolean;\n modifierCapsLock?: boolean;\n modifierFn?: boolean;\n modifierFnLock?: boolean;\n modifierHyper?: boolean;\n modifierNumLock?: boolean;\n modifierScrollLock?: boolean;\n modifierSuper?: boolean;\n modifierSymbol?: boolean;\n modifierSymbolLock?: boolean;\n shiftKey?: boolean;\n}\n\ninterface EventSourceInit {\n withCredentials?: boolean;\n}\n\ninterface ExceptionInformation {\n domain?: string | null;\n}\n\ninterface FilePropertyBag extends BlobPropertyBag {\n lastModified?: number;\n}\n\ninterface FocusEventInit extends UIEventInit {\n relatedTarget?: EventTarget | null;\n}\n\ninterface FocusNavigationEventInit extends EventInit {\n navigationReason?: string | null;\n originHeight?: number;\n originLeft?: number;\n originTop?: number;\n originWidth?: number;\n}\n\ninterface FocusNavigationOrigin {\n originHeight?: number;\n originLeft?: number;\n originTop?: number;\n originWidth?: number;\n}\n\ninterface FocusOptions {\n preventScroll?: boolean;\n}\n\ninterface FullscreenOptions {\n navigationUI?: FullscreenNavigationUI;\n}\n\ninterface GainOptions extends AudioNodeOptions {\n gain?: number;\n}\n\ninterface GamepadEventInit extends EventInit {\n gamepad: Gamepad;\n}\n\ninterface GetNotificationOptions {\n tag?: string;\n}\n\ninterface GetRootNodeOptions {\n composed?: boolean;\n}\n\ninterface HashChangeEventInit extends EventInit {\n newURL?: string;\n oldURL?: string;\n}\n\ninterface HkdfParams extends Algorithm {\n hash: HashAlgorithmIdentifier;\n info: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n salt: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n}\n\ninterface HmacImportParams extends Algorithm {\n hash: HashAlgorithmIdentifier;\n length?: number;\n}\n\ninterface HmacKeyAlgorithm extends KeyAlgorithm {\n hash: KeyAlgorithm;\n length: number;\n}\n\ninterface HmacKeyGenParams extends Algorithm {\n hash: HashAlgorithmIdentifier;\n length?: number;\n}\n\ninterface IDBIndexParameters {\n multiEntry?: boolean;\n unique?: boolean;\n}\n\ninterface IDBObjectStoreParameters {\n autoIncrement?: boolean;\n keyPath?: string | string[] | null;\n}\n\ninterface IDBVersionChangeEventInit extends EventInit {\n newVersion?: number | null;\n oldVersion?: number;\n}\n\ninterface IIRFilterOptions extends AudioNodeOptions {\n feedback: number[];\n feedforward: number[];\n}\n\ninterface ImageBitmapRenderingContextSettings {\n alpha?: boolean;\n}\n\ninterface ImageEncodeOptions {\n quality?: number;\n type?: string;\n}\n\ninterface InputEventInit extends UIEventInit {\n data?: string | null;\n inputType?: string;\n isComposing?: boolean;\n}\n\ninterface IntersectionObserverEntryInit {\n boundingClientRect: DOMRectInit;\n intersectionRatio: number;\n intersectionRect: DOMRectInit;\n isIntersecting: boolean;\n rootBounds: DOMRectInit | null;\n target: Element;\n time: number;\n}\n\ninterface IntersectionObserverInit {\n root?: Element | null;\n rootMargin?: string;\n threshold?: number | number[];\n}\n\ninterface JsonWebKey {\n alg?: string;\n crv?: string;\n d?: string;\n dp?: string;\n dq?: string;\n e?: string;\n ext?: boolean;\n k?: string;\n key_ops?: string[];\n kty?: string;\n n?: string;\n oth?: RsaOtherPrimesInfo[];\n p?: string;\n q?: string;\n qi?: string;\n use?: string;\n x?: string;\n y?: string;\n}\n\ninterface KeyAlgorithm {\n name: string;\n}\n\ninterface KeyboardEventInit extends EventModifierInit {\n code?: string;\n isComposing?: boolean;\n key?: string;\n location?: number;\n repeat?: boolean;\n}\n\ninterface Keyframe {\n composite?: CompositeOperationOrAuto;\n easing?: string;\n offset?: number | null;\n [property: string]: string | number | null | undefined;\n}\n\ninterface KeyframeAnimationOptions extends KeyframeEffectOptions {\n id?: string;\n}\n\ninterface KeyframeEffectOptions extends EffectTiming {\n composite?: CompositeOperation;\n iterationComposite?: IterationCompositeOperation;\n}\n\ninterface MediaElementAudioSourceOptions {\n mediaElement: HTMLMediaElement;\n}\n\ninterface MediaEncryptedEventInit extends EventInit {\n initData?: ArrayBuffer | null;\n initDataType?: string;\n}\n\ninterface MediaKeyMessageEventInit extends EventInit {\n message: ArrayBuffer;\n messageType: MediaKeyMessageType;\n}\n\ninterface MediaKeySystemConfiguration {\n audioCapabilities?: MediaKeySystemMediaCapability[];\n distinctiveIdentifier?: MediaKeysRequirement;\n initDataTypes?: string[];\n label?: string;\n persistentState?: MediaKeysRequirement;\n sessionTypes?: string[];\n videoCapabilities?: MediaKeySystemMediaCapability[];\n}\n\ninterface MediaKeySystemMediaCapability {\n contentType?: string;\n robustness?: string;\n}\n\ninterface MediaQueryListEventInit extends EventInit {\n matches?: boolean;\n media?: string;\n}\n\ninterface MediaStreamAudioSourceOptions {\n mediaStream: MediaStream;\n}\n\ninterface MediaStreamConstraints {\n audio?: boolean | MediaTrackConstraints;\n peerIdentity?: string;\n video?: boolean | MediaTrackConstraints;\n}\n\ninterface MediaStreamErrorEventInit extends EventInit {\n error?: MediaStreamError | null;\n}\n\ninterface MediaStreamEventInit extends EventInit {\n stream?: MediaStream;\n}\n\ninterface MediaStreamTrackAudioSourceOptions {\n mediaStreamTrack: MediaStreamTrack;\n}\n\ninterface MediaStreamTrackEventInit extends EventInit {\n track: MediaStreamTrack;\n}\n\ninterface MediaTrackCapabilities {\n aspectRatio?: DoubleRange;\n autoGainControl?: boolean[];\n channelCount?: ULongRange;\n deviceId?: string;\n echoCancellation?: boolean[];\n facingMode?: string[];\n frameRate?: DoubleRange;\n groupId?: string;\n height?: ULongRange;\n latency?: DoubleRange;\n noiseSuppression?: boolean[];\n resizeMode?: string[];\n sampleRate?: ULongRange;\n sampleSize?: ULongRange;\n width?: ULongRange;\n}\n\ninterface MediaTrackConstraintSet {\n aspectRatio?: ConstrainDouble;\n autoGainControl?: ConstrainBoolean;\n channelCount?: ConstrainULong;\n deviceId?: ConstrainDOMString;\n echoCancellation?: ConstrainBoolean;\n facingMode?: ConstrainDOMString;\n frameRate?: ConstrainDouble;\n groupId?: ConstrainDOMString;\n height?: ConstrainULong;\n latency?: ConstrainDouble;\n noiseSuppression?: ConstrainBoolean;\n resizeMode?: ConstrainDOMString;\n sampleRate?: ConstrainULong;\n sampleSize?: ConstrainULong;\n width?: ConstrainULong;\n}\n\ninterface MediaTrackConstraints extends MediaTrackConstraintSet {\n advanced?: MediaTrackConstraintSet[];\n}\n\ninterface MediaTrackSettings {\n aspectRatio?: number;\n autoGainControl?: boolean;\n channelCount?: number;\n deviceId?: string;\n echoCancellation?: boolean;\n facingMode?: string;\n frameRate?: number;\n groupId?: string;\n height?: number;\n latency?: number;\n noiseSuppression?: boolean;\n resizeMode?: string;\n sampleRate?: number;\n sampleSize?: number;\n width?: number;\n}\n\ninterface MediaTrackSupportedConstraints {\n aspectRatio?: boolean;\n autoGainControl?: boolean;\n channelCount?: boolean;\n deviceId?: boolean;\n echoCancellation?: boolean;\n facingMode?: boolean;\n frameRate?: boolean;\n groupId?: boolean;\n height?: boolean;\n latency?: boolean;\n noiseSuppression?: boolean;\n resizeMode?: boolean;\n sampleRate?: boolean;\n sampleSize?: boolean;\n width?: boolean;\n}\n\ninterface MessageEventInit extends EventInit {\n data?: any;\n lastEventId?: string;\n origin?: string;\n ports?: MessagePort[];\n source?: MessageEventSource | null;\n}\n\ninterface MidiPermissionDescriptor extends PermissionDescriptor {\n name: \"midi\";\n sysex?: boolean;\n}\n\ninterface MouseEventInit extends EventModifierInit {\n button?: number;\n buttons?: number;\n clientX?: number;\n clientY?: number;\n movementX?: number;\n movementY?: number;\n relatedTarget?: EventTarget | null;\n screenX?: number;\n screenY?: number;\n}\n\ninterface MultiCacheQueryOptions extends CacheQueryOptions {\n cacheName?: string;\n}\n\ninterface MutationObserverInit {\n /**\n * Set to a list of attribute local names (without namespace) if not all attribute mutations need to be observed and attributes is true or omitted.\n */\n attributeFilter?: string[];\n /**\n * Set to true if attributes is true or omitted and target's attribute value before the mutation needs to be recorded.\n */\n attributeOldValue?: boolean;\n /**\n * Set to true if mutations to target's attributes are to be observed. Can be omitted if attributeOldValue or attributeFilter is specified.\n */\n attributes?: boolean;\n /**\n * Set to true if mutations to target's data are to be observed. Can be omitted if characterDataOldValue is specified.\n */\n characterData?: boolean;\n /**\n * Set to true if characterData is set to true or omitted and target's data before the mutation needs to be recorded.\n */\n characterDataOldValue?: boolean;\n /**\n * Set to true if mutations to target's children are to be observed.\n */\n childList?: boolean;\n /**\n * Set to true if mutations to not just target, but also target's descendants are to be observed.\n */\n subtree?: boolean;\n}\n\ninterface NavigationPreloadState {\n enabled?: boolean;\n headerValue?: string;\n}\n\ninterface NotificationAction {\n action: string;\n icon?: string;\n title: string;\n}\n\ninterface NotificationOptions {\n actions?: NotificationAction[];\n badge?: string;\n body?: string;\n data?: any;\n dir?: NotificationDirection;\n icon?: string;\n image?: string;\n lang?: string;\n renotify?: boolean;\n requireInteraction?: boolean;\n silent?: boolean;\n tag?: string;\n timestamp?: number;\n vibrate?: VibratePattern;\n}\n\ninterface OfflineAudioCompletionEventInit extends EventInit {\n renderedBuffer: AudioBuffer;\n}\n\ninterface OfflineAudioContextOptions {\n length: number;\n numberOfChannels?: number;\n sampleRate: number;\n}\n\ninterface OptionalEffectTiming {\n delay?: number;\n direction?: PlaybackDirection;\n duration?: number | string;\n easing?: string;\n endDelay?: number;\n fill?: FillMode;\n iterationStart?: number;\n iterations?: number;\n}\n\ninterface OscillatorOptions extends AudioNodeOptions {\n detune?: number;\n frequency?: number;\n periodicWave?: PeriodicWave;\n type?: OscillatorType;\n}\n\ninterface PageTransitionEventInit extends EventInit {\n persisted?: boolean;\n}\n\ninterface PannerOptions extends AudioNodeOptions {\n coneInnerAngle?: number;\n coneOuterAngle?: number;\n coneOuterGain?: number;\n distanceModel?: DistanceModelType;\n maxDistance?: number;\n orientationX?: number;\n orientationY?: number;\n orientationZ?: number;\n panningModel?: PanningModelType;\n positionX?: number;\n positionY?: number;\n positionZ?: number;\n refDistance?: number;\n rolloffFactor?: number;\n}\n\ninterface PaymentCurrencyAmount {\n currency: string;\n currencySystem?: string;\n value: string;\n}\n\ninterface PaymentDetailsBase {\n displayItems?: PaymentItem[];\n modifiers?: PaymentDetailsModifier[];\n shippingOptions?: PaymentShippingOption[];\n}\n\ninterface PaymentDetailsInit extends PaymentDetailsBase {\n id?: string;\n total: PaymentItem;\n}\n\ninterface PaymentDetailsModifier {\n additionalDisplayItems?: PaymentItem[];\n data?: any;\n supportedMethods: string | string[];\n total?: PaymentItem;\n}\n\ninterface PaymentDetailsUpdate extends PaymentDetailsBase {\n error?: string;\n total?: PaymentItem;\n}\n\ninterface PaymentItem {\n amount: PaymentCurrencyAmount;\n label: string;\n pending?: boolean;\n}\n\ninterface PaymentMethodData {\n data?: any;\n supportedMethods: string | string[];\n}\n\ninterface PaymentOptions {\n requestPayerEmail?: boolean;\n requestPayerName?: boolean;\n requestPayerPhone?: boolean;\n requestShipping?: boolean;\n shippingType?: string;\n}\n\ninterface PaymentRequestUpdateEventInit extends EventInit {\n}\n\ninterface PaymentShippingOption {\n amount: PaymentCurrencyAmount;\n id: string;\n label: string;\n selected?: boolean;\n}\n\ninterface Pbkdf2Params extends Algorithm {\n hash: HashAlgorithmIdentifier;\n iterations: number;\n salt: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n}\n\ninterface PerformanceObserverInit {\n buffered?: boolean;\n entryTypes?: string[];\n type?: string;\n}\n\ninterface PeriodicWaveConstraints {\n disableNormalization?: boolean;\n}\n\ninterface PeriodicWaveOptions extends PeriodicWaveConstraints {\n imag?: number[] | Float32Array;\n real?: number[] | Float32Array;\n}\n\ninterface PermissionDescriptor {\n name: PermissionName;\n}\n\ninterface PipeOptions {\n preventAbort?: boolean;\n preventCancel?: boolean;\n preventClose?: boolean;\n signal?: AbortSignal;\n}\n\ninterface PointerEventInit extends MouseEventInit {\n height?: number;\n isPrimary?: boolean;\n pointerId?: number;\n pointerType?: string;\n pressure?: number;\n tangentialPressure?: number;\n tiltX?: number;\n tiltY?: number;\n twist?: number;\n width?: number;\n}\n\ninterface PopStateEventInit extends EventInit {\n state?: any;\n}\n\ninterface PositionOptions {\n enableHighAccuracy?: boolean;\n maximumAge?: number;\n timeout?: number;\n}\n\ninterface PostMessageOptions {\n transfer?: any[];\n}\n\ninterface ProgressEventInit extends EventInit {\n lengthComputable?: boolean;\n loaded?: number;\n total?: number;\n}\n\ninterface PromiseRejectionEventInit extends EventInit {\n promise: Promise;\n reason?: any;\n}\n\ninterface PropertyIndexedKeyframes {\n composite?: CompositeOperationOrAuto | CompositeOperationOrAuto[];\n easing?: string | string[];\n offset?: number | (number | null)[];\n [property: string]: string | string[] | number | null | (number | null)[] | undefined;\n}\n\ninterface PublicKeyCredentialCreationOptions {\n attestation?: AttestationConveyancePreference;\n authenticatorSelection?: AuthenticatorSelectionCriteria;\n challenge: BufferSource;\n excludeCredentials?: PublicKeyCredentialDescriptor[];\n extensions?: AuthenticationExtensionsClientInputs;\n pubKeyCredParams: PublicKeyCredentialParameters[];\n rp: PublicKeyCredentialRpEntity;\n timeout?: number;\n user: PublicKeyCredentialUserEntity;\n}\n\ninterface PublicKeyCredentialDescriptor {\n id: BufferSource;\n transports?: AuthenticatorTransport[];\n type: PublicKeyCredentialType;\n}\n\ninterface PublicKeyCredentialEntity {\n icon?: string;\n name: string;\n}\n\ninterface PublicKeyCredentialParameters {\n alg: COSEAlgorithmIdentifier;\n type: PublicKeyCredentialType;\n}\n\ninterface PublicKeyCredentialRequestOptions {\n allowCredentials?: PublicKeyCredentialDescriptor[];\n challenge: BufferSource;\n extensions?: AuthenticationExtensionsClientInputs;\n rpId?: string;\n timeout?: number;\n userVerification?: UserVerificationRequirement;\n}\n\ninterface PublicKeyCredentialRpEntity extends PublicKeyCredentialEntity {\n id?: string;\n}\n\ninterface PublicKeyCredentialUserEntity extends PublicKeyCredentialEntity {\n displayName: string;\n id: BufferSource;\n}\n\ninterface PushPermissionDescriptor extends PermissionDescriptor {\n name: \"push\";\n userVisibleOnly?: boolean;\n}\n\ninterface PushSubscriptionJSON {\n endpoint?: string;\n expirationTime?: number | null;\n keys?: Record;\n}\n\ninterface PushSubscriptionOptionsInit {\n applicationServerKey?: BufferSource | string | null;\n userVisibleOnly?: boolean;\n}\n\ninterface QueuingStrategy {\n highWaterMark?: number;\n size?: QueuingStrategySizeCallback;\n}\n\ninterface RTCAnswerOptions extends RTCOfferAnswerOptions {\n}\n\ninterface RTCCertificateExpiration {\n expires?: number;\n}\n\ninterface RTCConfiguration {\n bundlePolicy?: RTCBundlePolicy;\n certificates?: RTCCertificate[];\n iceCandidatePoolSize?: number;\n iceServers?: RTCIceServer[];\n iceTransportPolicy?: RTCIceTransportPolicy;\n peerIdentity?: string;\n rtcpMuxPolicy?: RTCRtcpMuxPolicy;\n}\n\ninterface RTCDTMFToneChangeEventInit extends EventInit {\n tone: string;\n}\n\ninterface RTCDataChannelEventInit extends EventInit {\n channel: RTCDataChannel;\n}\n\ninterface RTCDataChannelInit {\n id?: number;\n maxPacketLifeTime?: number;\n maxRetransmits?: number;\n negotiated?: boolean;\n ordered?: boolean;\n priority?: RTCPriorityType;\n protocol?: string;\n}\n\ninterface RTCDtlsFingerprint {\n algorithm?: string;\n value?: string;\n}\n\ninterface RTCDtlsParameters {\n fingerprints?: RTCDtlsFingerprint[];\n role?: RTCDtlsRole;\n}\n\ninterface RTCErrorEventInit extends EventInit {\n error: RTCError;\n}\n\ninterface RTCErrorInit {\n errorDetail: RTCErrorDetailType;\n httpRequestStatusCode?: number;\n receivedAlert?: number;\n sctpCauseCode?: number;\n sdpLineNumber?: number;\n sentAlert?: number;\n}\n\ninterface RTCIceCandidateAttributes extends RTCStats {\n addressSourceUrl?: string;\n candidateType?: RTCStatsIceCandidateType;\n ipAddress?: string;\n portNumber?: number;\n priority?: number;\n transport?: string;\n}\n\ninterface RTCIceCandidateComplete {\n}\n\ninterface RTCIceCandidateDictionary {\n foundation?: string;\n ip?: string;\n msMTurnSessionId?: string;\n port?: number;\n priority?: number;\n protocol?: RTCIceProtocol;\n relatedAddress?: string;\n relatedPort?: number;\n tcpType?: RTCIceTcpCandidateType;\n type?: RTCIceCandidateType;\n}\n\ninterface RTCIceCandidateInit {\n candidate?: string;\n sdpMLineIndex?: number | null;\n sdpMid?: string | null;\n usernameFragment?: string | null;\n}\n\ninterface RTCIceCandidatePair {\n local?: RTCIceCandidate;\n remote?: RTCIceCandidate;\n}\n\ninterface RTCIceCandidatePairStats extends RTCStats {\n availableIncomingBitrate?: number;\n availableOutgoingBitrate?: number;\n bytesReceived?: number;\n bytesSent?: number;\n localCandidateId?: string;\n nominated?: boolean;\n priority?: number;\n readable?: boolean;\n remoteCandidateId?: string;\n roundTripTime?: number;\n state?: RTCStatsIceCandidatePairState;\n transportId?: string;\n writable?: boolean;\n}\n\ninterface RTCIceGatherOptions {\n gatherPolicy?: RTCIceGatherPolicy;\n iceservers?: RTCIceServer[];\n}\n\ninterface RTCIceParameters {\n password?: string;\n usernameFragment?: string;\n}\n\ninterface RTCIceServer {\n credential?: string | RTCOAuthCredential;\n credentialType?: RTCIceCredentialType;\n urls: string | string[];\n username?: string;\n}\n\ninterface RTCIdentityProviderOptions {\n peerIdentity?: string;\n protocol?: string;\n usernameHint?: string;\n}\n\ninterface RTCInboundRTPStreamStats extends RTCRTPStreamStats {\n bytesReceived?: number;\n fractionLost?: number;\n jitter?: number;\n packetsLost?: number;\n packetsReceived?: number;\n}\n\ninterface RTCMediaStreamTrackStats extends RTCStats {\n audioLevel?: number;\n echoReturnLoss?: number;\n echoReturnLossEnhancement?: number;\n frameHeight?: number;\n frameWidth?: number;\n framesCorrupted?: number;\n framesDecoded?: number;\n framesDropped?: number;\n framesPerSecond?: number;\n framesReceived?: number;\n framesSent?: number;\n remoteSource?: boolean;\n ssrcIds?: string[];\n trackIdentifier?: string;\n}\n\ninterface RTCOAuthCredential {\n accessToken: string;\n macKey: string;\n}\n\ninterface RTCOfferAnswerOptions {\n voiceActivityDetection?: boolean;\n}\n\ninterface RTCOfferOptions extends RTCOfferAnswerOptions {\n iceRestart?: boolean;\n offerToReceiveAudio?: boolean;\n offerToReceiveVideo?: boolean;\n}\n\ninterface RTCOutboundRTPStreamStats extends RTCRTPStreamStats {\n bytesSent?: number;\n packetsSent?: number;\n roundTripTime?: number;\n targetBitrate?: number;\n}\n\ninterface RTCPeerConnectionIceErrorEventInit extends EventInit {\n errorCode: number;\n hostCandidate?: string;\n statusText?: string;\n url?: string;\n}\n\ninterface RTCPeerConnectionIceEventInit extends EventInit {\n candidate?: RTCIceCandidate | null;\n url?: string | null;\n}\n\ninterface RTCRTPStreamStats extends RTCStats {\n associateStatsId?: string;\n codecId?: string;\n firCount?: number;\n isRemote?: boolean;\n mediaTrackId?: string;\n mediaType?: string;\n nackCount?: number;\n pliCount?: number;\n sliCount?: number;\n ssrc?: string;\n transportId?: string;\n}\n\ninterface RTCRtcpFeedback {\n parameter?: string;\n type?: string;\n}\n\ninterface RTCRtcpParameters {\n cname?: string;\n reducedSize?: boolean;\n}\n\ninterface RTCRtpCapabilities {\n codecs: RTCRtpCodecCapability[];\n headerExtensions: RTCRtpHeaderExtensionCapability[];\n}\n\ninterface RTCRtpCodecCapability {\n channels?: number;\n clockRate: number;\n mimeType: string;\n sdpFmtpLine?: string;\n}\n\ninterface RTCRtpCodecParameters {\n channels?: number;\n clockRate: number;\n mimeType: string;\n payloadType: number;\n sdpFmtpLine?: string;\n}\n\ninterface RTCRtpCodingParameters {\n rid?: string;\n}\n\ninterface RTCRtpContributingSource {\n audioLevel?: number;\n rtpTimestamp: number;\n source: number;\n timestamp: number;\n}\n\ninterface RTCRtpDecodingParameters extends RTCRtpCodingParameters {\n}\n\ninterface RTCRtpEncodingParameters extends RTCRtpCodingParameters {\n active?: boolean;\n codecPayloadType?: number;\n dtx?: RTCDtxStatus;\n maxBitrate?: number;\n maxFramerate?: number;\n ptime?: number;\n scaleResolutionDownBy?: number;\n}\n\ninterface RTCRtpFecParameters {\n mechanism?: string;\n ssrc?: number;\n}\n\ninterface RTCRtpHeaderExtension {\n kind?: string;\n preferredEncrypt?: boolean;\n preferredId?: number;\n uri?: string;\n}\n\ninterface RTCRtpHeaderExtensionCapability {\n uri?: string;\n}\n\ninterface RTCRtpHeaderExtensionParameters {\n encrypted?: boolean;\n id: number;\n uri: string;\n}\n\ninterface RTCRtpParameters {\n codecs: RTCRtpCodecParameters[];\n headerExtensions: RTCRtpHeaderExtensionParameters[];\n rtcp: RTCRtcpParameters;\n}\n\ninterface RTCRtpReceiveParameters extends RTCRtpParameters {\n encodings: RTCRtpDecodingParameters[];\n}\n\ninterface RTCRtpRtxParameters {\n ssrc?: number;\n}\n\ninterface RTCRtpSendParameters extends RTCRtpParameters {\n degradationPreference?: RTCDegradationPreference;\n encodings: RTCRtpEncodingParameters[];\n priority?: RTCPriorityType;\n transactionId: string;\n}\n\ninterface RTCRtpSynchronizationSource extends RTCRtpContributingSource {\n voiceActivityFlag?: boolean;\n}\n\ninterface RTCRtpTransceiverInit {\n direction?: RTCRtpTransceiverDirection;\n sendEncodings?: RTCRtpEncodingParameters[];\n streams?: MediaStream[];\n}\n\ninterface RTCRtpUnhandled {\n muxId?: string;\n payloadType?: number;\n ssrc?: number;\n}\n\ninterface RTCSessionDescriptionInit {\n sdp?: string;\n type?: RTCSdpType;\n}\n\ninterface RTCSrtpKeyParam {\n keyMethod?: string;\n keySalt?: string;\n lifetime?: string;\n mkiLength?: number;\n mkiValue?: number;\n}\n\ninterface RTCSrtpSdesParameters {\n cryptoSuite?: string;\n keyParams?: RTCSrtpKeyParam[];\n sessionParams?: string[];\n tag?: number;\n}\n\ninterface RTCSsrcRange {\n max?: number;\n min?: number;\n}\n\ninterface RTCStats {\n id: string;\n timestamp: number;\n type: RTCStatsType;\n}\n\ninterface RTCStatsEventInit extends EventInit {\n report: RTCStatsReport;\n}\n\ninterface RTCStatsReport {\n}\n\ninterface RTCTrackEventInit extends EventInit {\n receiver: RTCRtpReceiver;\n streams?: MediaStream[];\n track: MediaStreamTrack;\n transceiver: RTCRtpTransceiver;\n}\n\ninterface RTCTransportStats extends RTCStats {\n activeConnection?: boolean;\n bytesReceived?: number;\n bytesSent?: number;\n localCertificateId?: string;\n remoteCertificateId?: string;\n rtcpTransportStatsId?: string;\n selectedCandidatePairId?: string;\n}\n\ninterface ReadableStreamReadDoneResult {\n done: true;\n value?: T;\n}\n\ninterface ReadableStreamReadValueResult {\n done: false;\n value: T;\n}\n\ninterface RegistrationOptions {\n scope?: string;\n type?: WorkerType;\n updateViaCache?: ServiceWorkerUpdateViaCache;\n}\n\ninterface RequestInit {\n /**\n * A BodyInit object or null to set request's body.\n */\n body?: BodyInit | null;\n /**\n * A string indicating how the request will interact with the browser's cache to set request's cache.\n */\n cache?: RequestCache;\n /**\n * A string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. Sets request's credentials.\n */\n credentials?: RequestCredentials;\n /**\n * A Headers object, an object literal, or an array of two-item arrays to set request's headers.\n */\n headers?: HeadersInit;\n /**\n * A cryptographic hash of the resource to be fetched by request. Sets request's integrity.\n */\n integrity?: string;\n /**\n * A boolean to set request's keepalive.\n */\n keepalive?: boolean;\n /**\n * A string to set request's method.\n */\n method?: string;\n /**\n * A string to indicate whether the request will use CORS, or will be restricted to same-origin URLs. Sets request's mode.\n */\n mode?: RequestMode;\n /**\n * A string indicating whether request follows redirects, results in an error upon encountering a redirect, or returns the redirect (in an opaque fashion). Sets request's redirect.\n */\n redirect?: RequestRedirect;\n /**\n * A string whose value is a same-origin URL, \"about:client\", or the empty string, to set request's referrer.\n */\n referrer?: string;\n /**\n * A referrer policy to set request's referrerPolicy.\n */\n referrerPolicy?: ReferrerPolicy;\n /**\n * An AbortSignal to set request's signal.\n */\n signal?: AbortSignal | null;\n /**\n * Can only be null. Used to disassociate request from any Window.\n */\n window?: any;\n}\n\ninterface ResponseInit {\n headers?: HeadersInit;\n status?: number;\n statusText?: string;\n}\n\ninterface RsaHashedImportParams extends Algorithm {\n hash: HashAlgorithmIdentifier;\n}\n\ninterface RsaHashedKeyAlgorithm extends RsaKeyAlgorithm {\n hash: KeyAlgorithm;\n}\n\ninterface RsaHashedKeyGenParams extends RsaKeyGenParams {\n hash: HashAlgorithmIdentifier;\n}\n\ninterface RsaKeyAlgorithm extends KeyAlgorithm {\n modulusLength: number;\n publicExponent: BigInteger;\n}\n\ninterface RsaKeyGenParams extends Algorithm {\n modulusLength: number;\n publicExponent: BigInteger;\n}\n\ninterface RsaOaepParams extends Algorithm {\n label?: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n}\n\ninterface RsaOtherPrimesInfo {\n d?: string;\n r?: string;\n t?: string;\n}\n\ninterface RsaPssParams extends Algorithm {\n saltLength: number;\n}\n\ninterface SVGBoundingBoxOptions {\n clipped?: boolean;\n fill?: boolean;\n markers?: boolean;\n stroke?: boolean;\n}\n\ninterface ScopedCredentialDescriptor {\n id: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer | null;\n transports?: Transport[];\n type: ScopedCredentialType;\n}\n\ninterface ScopedCredentialOptions {\n excludeList?: ScopedCredentialDescriptor[];\n extensions?: WebAuthnExtensions;\n rpId?: string;\n timeoutSeconds?: number;\n}\n\ninterface ScopedCredentialParameters {\n algorithm: string | Algorithm;\n type: ScopedCredentialType;\n}\n\ninterface ScrollIntoViewOptions extends ScrollOptions {\n block?: ScrollLogicalPosition;\n inline?: ScrollLogicalPosition;\n}\n\ninterface ScrollOptions {\n behavior?: ScrollBehavior;\n}\n\ninterface ScrollToOptions extends ScrollOptions {\n left?: number;\n top?: number;\n}\n\ninterface SecurityPolicyViolationEventInit extends EventInit {\n blockedURI?: string;\n columnNumber?: number;\n documentURI?: string;\n effectiveDirective?: string;\n lineNumber?: number;\n originalPolicy?: string;\n referrer?: string;\n sourceFile?: string;\n statusCode?: number;\n violatedDirective?: string;\n}\n\ninterface ServiceWorkerMessageEventInit extends EventInit {\n data?: any;\n lastEventId?: string;\n origin?: string;\n ports?: MessagePort[] | null;\n source?: ServiceWorker | MessagePort | null;\n}\n\ninterface ShadowRootInit {\n delegatesFocus?: boolean;\n mode: ShadowRootMode;\n}\n\ninterface SpeechSynthesisErrorEventInit extends SpeechSynthesisEventInit {\n error: SpeechSynthesisErrorCode;\n}\n\ninterface SpeechSynthesisEventInit extends EventInit {\n charIndex?: number;\n charLength?: number;\n elapsedTime?: number;\n name?: string;\n utterance: SpeechSynthesisUtterance;\n}\n\ninterface StaticRangeInit {\n endContainer: Node;\n endOffset: number;\n startContainer: Node;\n startOffset: number;\n}\n\ninterface StereoPannerOptions extends AudioNodeOptions {\n pan?: number;\n}\n\ninterface StorageEstimate {\n quota?: number;\n usage?: number;\n}\n\ninterface StorageEventInit extends EventInit {\n key?: string | null;\n newValue?: string | null;\n oldValue?: string | null;\n storageArea?: Storage | null;\n url?: string;\n}\n\ninterface StoreExceptionsInformation extends ExceptionInformation {\n detailURI?: string | null;\n explanationString?: string | null;\n siteName?: string | null;\n}\n\ninterface StoreSiteSpecificExceptionsInformation extends StoreExceptionsInformation {\n arrayOfDomainStrings?: string[];\n}\n\ninterface TextDecodeOptions {\n stream?: boolean;\n}\n\ninterface TextDecoderOptions {\n fatal?: boolean;\n ignoreBOM?: boolean;\n}\n\ninterface TextEncoderEncodeIntoResult {\n read?: number;\n written?: number;\n}\n\ninterface TouchEventInit extends EventModifierInit {\n changedTouches?: Touch[];\n targetTouches?: Touch[];\n touches?: Touch[];\n}\n\ninterface TouchInit {\n altitudeAngle?: number;\n azimuthAngle?: number;\n clientX?: number;\n clientY?: number;\n force?: number;\n identifier: number;\n pageX?: number;\n pageY?: number;\n radiusX?: number;\n radiusY?: number;\n rotationAngle?: number;\n screenX?: number;\n screenY?: number;\n target: EventTarget;\n touchType?: TouchType;\n}\n\ninterface TrackEventInit extends EventInit {\n track?: VideoTrack | AudioTrack | TextTrack | null;\n}\n\ninterface Transformer {\n flush?: TransformStreamDefaultControllerCallback;\n readableType?: undefined;\n start?: TransformStreamDefaultControllerCallback;\n transform?: TransformStreamDefaultControllerTransformCallback;\n writableType?: undefined;\n}\n\ninterface TransitionEventInit extends EventInit {\n elapsedTime?: number;\n propertyName?: string;\n pseudoElement?: string;\n}\n\ninterface UIEventInit extends EventInit {\n detail?: number;\n view?: Window | null;\n}\n\ninterface ULongRange {\n max?: number;\n min?: number;\n}\n\ninterface UnderlyingByteSource {\n autoAllocateChunkSize?: number;\n cancel?: ReadableStreamErrorCallback;\n pull?: ReadableByteStreamControllerCallback;\n start?: ReadableByteStreamControllerCallback;\n type: \"bytes\";\n}\n\ninterface UnderlyingSink {\n abort?: WritableStreamErrorCallback;\n close?: WritableStreamDefaultControllerCloseCallback;\n start?: WritableStreamDefaultControllerStartCallback;\n type?: undefined;\n write?: WritableStreamDefaultControllerWriteCallback;\n}\n\ninterface UnderlyingSource {\n cancel?: ReadableStreamErrorCallback;\n pull?: ReadableStreamDefaultControllerCallback;\n start?: ReadableStreamDefaultControllerCallback;\n type?: undefined;\n}\n\ninterface VRDisplayEventInit extends EventInit {\n display: VRDisplay;\n reason?: VRDisplayEventReason;\n}\n\ninterface VRLayer {\n leftBounds?: number[] | Float32Array | null;\n rightBounds?: number[] | Float32Array | null;\n source?: HTMLCanvasElement | null;\n}\n\ninterface VRStageParameters {\n sittingToStandingTransform?: Float32Array;\n sizeX?: number;\n sizeY?: number;\n}\n\ninterface WaveShaperOptions extends AudioNodeOptions {\n curve?: number[] | Float32Array;\n oversample?: OverSampleType;\n}\n\ninterface WebAuthnExtensions {\n}\n\ninterface WebGLContextAttributes {\n alpha?: boolean;\n antialias?: boolean;\n depth?: boolean;\n desynchronized?: boolean;\n failIfMajorPerformanceCaveat?: boolean;\n powerPreference?: WebGLPowerPreference;\n premultipliedAlpha?: boolean;\n preserveDrawingBuffer?: boolean;\n stencil?: boolean;\n}\n\ninterface WebGLContextEventInit extends EventInit {\n statusMessage?: string;\n}\n\ninterface WheelEventInit extends MouseEventInit {\n deltaMode?: number;\n deltaX?: number;\n deltaY?: number;\n deltaZ?: number;\n}\n\ninterface WorkerOptions {\n credentials?: RequestCredentials;\n name?: string;\n type?: WorkerType;\n}\n\ninterface WorkletOptions {\n credentials?: RequestCredentials;\n}\n\ninterface txAuthGenericArg {\n content: ArrayBuffer;\n contentType: string;\n}\n\ninterface EventListener {\n (evt: Event): void;\n}\n\ntype XPathNSResolver = ((prefix: string | null) => string | null) | { lookupNamespaceURI(prefix: string | null): string | null; };\n\n/** 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. */\ninterface ANGLE_instanced_arrays {\n drawArraysInstancedANGLE(mode: GLenum, first: GLint, count: GLsizei, primcount: GLsizei): void;\n drawElementsInstancedANGLE(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr, primcount: GLsizei): void;\n vertexAttribDivisorANGLE(index: GLuint, divisor: GLuint): void;\n readonly VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: GLenum;\n}\n\n/** A controller object that allows you to abort one or more DOM requests as and when desired. */\ninterface AbortController {\n /**\n * Returns the AbortSignal object associated with this object.\n */\n readonly signal: AbortSignal;\n /**\n * Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted.\n */\n abort(): void;\n}\n\ndeclare var AbortController: {\n prototype: AbortController;\n new(): AbortController;\n};\n\ninterface AbortSignalEventMap {\n \"abort\": Event;\n}\n\n/** 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. */\ninterface AbortSignal extends EventTarget {\n /**\n * Returns true if this AbortSignal's AbortController has signaled to abort, and false otherwise.\n */\n readonly aborted: boolean;\n onabort: ((this: AbortSignal, ev: Event) => any) | null;\n addEventListener(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var AbortSignal: {\n prototype: AbortSignal;\n new(): AbortSignal;\n};\n\ninterface AbstractRange {\n /**\n * Returns true if range is collapsed, and false otherwise.\n */\n readonly collapsed: boolean;\n /**\n * Returns range's end node.\n */\n readonly endContainer: Node;\n /**\n * Returns range's end offset.\n */\n readonly endOffset: number;\n /**\n * Returns range's start node.\n */\n readonly startContainer: Node;\n /**\n * Returns range's start offset.\n */\n readonly startOffset: number;\n}\n\ndeclare var AbstractRange: {\n prototype: AbstractRange;\n new(): AbstractRange;\n};\n\ninterface AbstractWorkerEventMap {\n \"error\": ErrorEvent;\n}\n\ninterface AbstractWorker {\n onerror: ((this: AbstractWorker, ev: ErrorEvent) => any) | null;\n addEventListener(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ninterface AesCfbParams extends Algorithm {\n iv: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;\n}\n\ninterface AesCmacParams extends Algorithm {\n length: number;\n}\n\n/** 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. */\ninterface AnalyserNode extends AudioNode {\n fftSize: number;\n readonly frequencyBinCount: number;\n maxDecibels: number;\n minDecibels: number;\n smoothingTimeConstant: number;\n getByteFrequencyData(array: Uint8Array): void;\n getByteTimeDomainData(array: Uint8Array): void;\n getFloatFrequencyData(array: Float32Array): void;\n getFloatTimeDomainData(array: Float32Array): void;\n}\n\ndeclare var AnalyserNode: {\n prototype: AnalyserNode;\n new(context: BaseAudioContext, options?: AnalyserOptions): AnalyserNode;\n};\n\ninterface Animatable {\n animate(keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeAnimationOptions): Animation;\n getAnimations(): Animation[];\n}\n\ninterface AnimationEventMap {\n \"cancel\": AnimationPlaybackEvent;\n \"finish\": AnimationPlaybackEvent;\n}\n\ninterface Animation extends EventTarget {\n currentTime: number | null;\n effect: AnimationEffect | null;\n readonly finished: Promise;\n id: string;\n oncancel: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;\n onfinish: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;\n readonly pending: boolean;\n readonly playState: AnimationPlayState;\n playbackRate: number;\n readonly ready: Promise;\n startTime: number | null;\n timeline: AnimationTimeline | null;\n cancel(): void;\n finish(): void;\n pause(): void;\n play(): void;\n reverse(): void;\n updatePlaybackRate(playbackRate: number): void;\n addEventListener(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var Animation: {\n prototype: Animation;\n new(effect?: AnimationEffect | null, timeline?: AnimationTimeline | null): Animation;\n};\n\ninterface AnimationEffect {\n getComputedTiming(): ComputedEffectTiming;\n getTiming(): EffectTiming;\n updateTiming(timing?: OptionalEffectTiming): void;\n}\n\ndeclare var AnimationEffect: {\n prototype: AnimationEffect;\n new(): AnimationEffect;\n};\n\n/** Events providing information related to animations. */\ninterface AnimationEvent extends Event {\n readonly animationName: string;\n readonly elapsedTime: number;\n readonly pseudoElement: string;\n}\n\ndeclare var AnimationEvent: {\n prototype: AnimationEvent;\n new(type: string, animationEventInitDict?: AnimationEventInit): AnimationEvent;\n};\n\ninterface AnimationFrameProvider {\n cancelAnimationFrame(handle: number): void;\n requestAnimationFrame(callback: FrameRequestCallback): number;\n}\n\ninterface AnimationPlaybackEvent extends Event {\n readonly currentTime: number | null;\n readonly timelineTime: number | null;\n}\n\ndeclare var AnimationPlaybackEvent: {\n prototype: AnimationPlaybackEvent;\n new(type: string, eventInitDict?: AnimationPlaybackEventInit): AnimationPlaybackEvent;\n};\n\ninterface AnimationTimeline {\n readonly currentTime: number | null;\n}\n\ndeclare var AnimationTimeline: {\n prototype: AnimationTimeline;\n new(): AnimationTimeline;\n};\n\ninterface ApplicationCacheEventMap {\n \"cached\": Event;\n \"checking\": Event;\n \"downloading\": Event;\n \"error\": Event;\n \"noupdate\": Event;\n \"obsolete\": Event;\n \"progress\": ProgressEvent;\n \"updateready\": Event;\n}\n\ninterface ApplicationCache extends EventTarget {\n /** @deprecated */\n oncached: ((this: ApplicationCache, ev: Event) => any) | null;\n /** @deprecated */\n onchecking: ((this: ApplicationCache, ev: Event) => any) | null;\n /** @deprecated */\n ondownloading: ((this: ApplicationCache, ev: Event) => any) | null;\n /** @deprecated */\n onerror: ((this: ApplicationCache, ev: Event) => any) | null;\n /** @deprecated */\n onnoupdate: ((this: ApplicationCache, ev: Event) => any) | null;\n /** @deprecated */\n onobsolete: ((this: ApplicationCache, ev: Event) => any) | null;\n /** @deprecated */\n onprogress: ((this: ApplicationCache, ev: ProgressEvent) => any) | null;\n /** @deprecated */\n onupdateready: ((this: ApplicationCache, ev: Event) => any) | null;\n /** @deprecated */\n readonly status: number;\n /** @deprecated */\n abort(): void;\n /** @deprecated */\n swapCache(): void;\n /** @deprecated */\n update(): void;\n readonly CHECKING: number;\n readonly DOWNLOADING: number;\n readonly IDLE: number;\n readonly OBSOLETE: number;\n readonly UNCACHED: number;\n readonly UPDATEREADY: number;\n addEventListener(type: K, listener: (this: ApplicationCache, ev: ApplicationCacheEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener(type: K, listener: (this: ApplicationCache, ev: ApplicationCacheEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var ApplicationCache: {\n prototype: ApplicationCache;\n new(): ApplicationCache;\n readonly CHECKING: number;\n readonly DOWNLOADING: number;\n readonly IDLE: number;\n readonly OBSOLETE: number;\n readonly UNCACHED: number;\n readonly UPDATEREADY: number;\n};\n\n/** 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. */\ninterface Attr extends Node {\n readonly localName: string;\n readonly name: string;\n readonly namespaceURI: string | null;\n readonly ownerElement: Element | null;\n readonly prefix: string | null;\n readonly specified: boolean;\n value: string;\n}\n\ndeclare var Attr: {\n prototype: Attr;\n new(): Attr;\n};\n\n/** 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. */\ninterface AudioBuffer {\n readonly duration: number;\n readonly length: number;\n readonly numberOfChannels: number;\n readonly sampleRate: number;\n copyFromChannel(destination: Float32Array, channelNumber: number, bufferOffset?: number): void;\n copyToChannel(source: Float32Array, channelNumber: number, bufferOffset?: number): void;\n getChannelData(channel: number): Float32Array;\n}\n\ndeclare var AudioBuffer: {\n prototype: AudioBuffer;\n new(options: AudioBufferOptions): AudioBuffer;\n};\n\n/** 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. */\ninterface AudioBufferSourceNode extends AudioScheduledSourceNode {\n buffer: AudioBuffer | null;\n readonly detune: AudioParam;\n loop: boolean;\n loopEnd: number;\n loopStart: number;\n readonly playbackRate: AudioParam;\n start(when?: number, offset?: number, duration?: number): void;\n addEventListener(type: K, listener: (this: AudioBufferSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener(type: K, listener: (this: AudioBufferSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var AudioBufferSourceNode: {\n prototype: AudioBufferSourceNode;\n new(context: BaseAudioContext, options?: AudioBufferSourceOptions): AudioBufferSourceNode;\n};\n\n/** An audio-processing graph built from audio modules linked together, each represented by an AudioNode. */\ninterface AudioContext extends BaseAudioContext {\n readonly baseLatency: number;\n readonly outputLatency: number;\n close(): Promise;\n createMediaElementSource(mediaElement: HTMLMediaElement): MediaElementAudioSourceNode;\n createMediaStreamDestination(): MediaStreamAudioDestinationNode;\n createMediaStreamSource(mediaStream: MediaStream): MediaStreamAudioSourceNode;\n createMediaStreamTrackSource(mediaStreamTrack: MediaStreamTrack): MediaStreamTrackAudioSourceNode;\n getOutputTimestamp(): AudioTimestamp;\n resume(): Promise;\n suspend(): Promise;\n addEventListener(type: K, listener: (this: AudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener(type: K, listener: (this: AudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var AudioContext: {\n prototype: AudioContext;\n new(contextOptions?: AudioContextOptions): AudioContext;\n};\n\n/** 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. */\ninterface AudioDestinationNode extends AudioNode {\n readonly maxChannelCount: number;\n}\n\ndeclare var AudioDestinationNode: {\n prototype: AudioDestinationNode;\n new(): AudioDestinationNode;\n};\n\n/** 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. */\ninterface AudioListener {\n readonly forwardX: AudioParam;\n readonly forwardY: AudioParam;\n readonly forwardZ: AudioParam;\n readonly positionX: AudioParam;\n readonly positionY: AudioParam;\n readonly positionZ: AudioParam;\n readonly upX: AudioParam;\n readonly upY: AudioParam;\n readonly upZ: AudioParam;\n /** @deprecated */\n setOrientation(x: number, y: number, z: number, xUp: number, yUp: number, zUp: number): void;\n /** @deprecated */\n setPosition(x: number, y: number, z: number): void;\n}\n\ndeclare var AudioListener: {\n prototype: AudioListener;\n new(): AudioListener;\n};\n\n/** A generic interface for representing an audio processing module. Examples include: */\ninterface AudioNode extends EventTarget {\n channelCount: number;\n channelCountMode: ChannelCountMode;\n channelInterpretation: ChannelInterpretation;\n readonly context: BaseAudioContext;\n readonly numberOfInputs: number;\n readonly numberOfOutputs: number;\n connect(destinationNode: AudioNode, output?: number, input?: number): AudioNode;\n connect(destinationParam: AudioParam, output?: number): void;\n disconnect(): void;\n disconnect(output: number): void;\n disconnect(destinationNode: AudioNode): void;\n disconnect(destinationNode: AudioNode, output: number): void;\n disconnect(destinationNode: AudioNode, output: number, input: number): void;\n disconnect(destinationParam: AudioParam): void;\n disconnect(destinationParam: AudioParam, output: number): void;\n}\n\ndeclare var AudioNode: {\n prototype: AudioNode;\n new(): AudioNode;\n};\n\n/** The Web Audio API's AudioParam interface represents an audio-related parameter, usually a parameter of an AudioNode (such as GainNode.gain). */\ninterface AudioParam {\n automationRate: AutomationRate;\n readonly defaultValue: number;\n readonly maxValue: number;\n readonly minValue: number;\n value: number;\n cancelAndHoldAtTime(cancelTime: number): AudioParam;\n cancelScheduledValues(cancelTime: number): AudioParam;\n exponentialRampToValueAtTime(value: number, endTime: number): AudioParam;\n linearRampToValueAtTime(value: number, endTime: number): AudioParam;\n setTargetAtTime(target: number, startTime: number, timeConstant: number): AudioParam;\n setValueAtTime(value: number, startTime: number): AudioParam;\n setValueCurveAtTime(values: number[] | Float32Array, startTime: number, duration: number): AudioParam;\n}\n\ndeclare var AudioParam: {\n prototype: AudioParam;\n new(): AudioParam;\n};\n\ninterface AudioParamMap {\n forEach(callbackfn: (value: AudioParam, key: string, parent: AudioParamMap) => void, thisArg?: any): void;\n}\n\ndeclare var AudioParamMap: {\n prototype: AudioParamMap;\n new(): AudioParamMap;\n};\n\n/** The Web Audio API events that occur when a ScriptProcessorNode input buffer is ready to be processed. */\ninterface AudioProcessingEvent extends Event {\n readonly inputBuffer: AudioBuffer;\n readonly outputBuffer: AudioBuffer;\n readonly playbackTime: number;\n}\n\ndeclare var AudioProcessingEvent: {\n prototype: AudioProcessingEvent;\n new(type: string, eventInitDict: AudioProcessingEventInit): AudioProcessingEvent;\n};\n\ninterface AudioScheduledSourceNodeEventMap {\n \"ended\": Event;\n}\n\ninterface AudioScheduledSourceNode extends AudioNode {\n onended: ((this: AudioScheduledSourceNode, ev: Event) => any) | null;\n start(when?: number): void;\n stop(when?: number): void;\n addEventListener(type: K, listener: (this: AudioScheduledSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;\n addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;\n removeEventListener(type: K, listener: (this: AudioScheduledSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;\n removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;\n}\n\ndeclare var AudioScheduledSourceNode: {\n prototype: AudioScheduledSourceNode;\n new(): AudioScheduledSourceNode;\n};\n\n/** A single audio track from one of the HTML media elements,