UNPKG

chen-typescript

Version:

TypeScript is a language for application scale JavaScript development

1,733 lines (1,543 loc) 647 kB
/*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABLITY OR NON-INFRINGEMENT. See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** */ /// <reference no-default-lib="true"/> ///////////////////////////// /// IE DOM APIs ///////////////////////////// interface Algorithm { name: string; } interface AriaRequestEventInit extends EventInit { attributeName?: string; attributeValue?: string; } interface CommandEventInit extends EventInit { commandName?: string; detail?: string; } interface CompositionEventInit extends UIEventInit { data?: string; } interface ConfirmSiteSpecificExceptionsInformation extends ExceptionInformation { arrayOfDomainStrings?: string[]; } interface ConstrainBooleanParameters { exact?: boolean; ideal?: boolean; } interface ConstrainDOMStringParameters { exact?: string | string[]; ideal?: string | string[]; } interface ConstrainDoubleRange extends DoubleRange { exact?: number; ideal?: number; } interface ConstrainLongRange extends LongRange { exact?: number; ideal?: number; } interface ConstrainVideoFacingModeParameters { exact?: string | string[]; ideal?: string | string[]; } interface CustomEventInit extends EventInit { detail?: any; } interface DeviceAccelerationDict { x?: number; y?: number; z?: number; } interface DeviceLightEventInit extends EventInit { value?: number; } interface DeviceRotationRateDict { alpha?: number; beta?: number; gamma?: number; } interface DoubleRange { max?: number; min?: number; } interface EventInit { bubbles?: boolean; cancelable?: boolean; } interface EventModifierInit extends UIEventInit { ctrlKey?: boolean; shiftKey?: boolean; altKey?: boolean; metaKey?: boolean; modifierAltGraph?: boolean; modifierCapsLock?: boolean; modifierFn?: boolean; modifierFnLock?: boolean; modifierHyper?: boolean; modifierNumLock?: boolean; modifierOS?: boolean; modifierScrollLock?: boolean; modifierSuper?: boolean; modifierSymbol?: boolean; modifierSymbolLock?: boolean; } interface ExceptionInformation { domain?: string; } interface FocusEventInit extends UIEventInit { relatedTarget?: EventTarget; } interface HashChangeEventInit extends EventInit { newURL?: string; oldURL?: string; } interface IDBIndexParameters { multiEntry?: boolean; unique?: boolean; } interface IDBObjectStoreParameters { autoIncrement?: boolean; keyPath?: IDBKeyPath; } interface KeyAlgorithm { name?: string; } interface KeyboardEventInit extends EventModifierInit { code?: string; key?: string; location?: number; repeat?: boolean; } interface LongRange { max?: number; min?: number; } interface MSAccountInfo { rpDisplayName?: string; userDisplayName?: string; accountName?: string; userId?: string; accountImageUri?: string; } interface MSAudioLocalClientEvent extends MSLocalClientEventBase { networkSendQualityEventRatio?: number; networkDelayEventRatio?: number; cpuInsufficientEventRatio?: number; deviceHalfDuplexAECEventRatio?: number; deviceRenderNotFunctioningEventRatio?: number; deviceCaptureNotFunctioningEventRatio?: number; deviceGlitchesEventRatio?: number; deviceLowSNREventRatio?: number; deviceLowSpeechLevelEventRatio?: number; deviceClippingEventRatio?: number; deviceEchoEventRatio?: number; deviceNearEndToEchoRatioEventRatio?: number; deviceRenderZeroVolumeEventRatio?: number; deviceRenderMuteEventRatio?: number; deviceMultipleEndpointsEventCount?: number; deviceHowlingEventCount?: number; } interface MSAudioRecvPayload extends MSPayloadBase { samplingRate?: number; signal?: MSAudioRecvSignal; packetReorderRatio?: number; packetReorderDepthAvg?: number; packetReorderDepthMax?: number; burstLossLength1?: number; burstLossLength2?: number; burstLossLength3?: number; burstLossLength4?: number; burstLossLength5?: number; burstLossLength6?: number; burstLossLength7?: number; burstLossLength8OrHigher?: number; fecRecvDistance1?: number; fecRecvDistance2?: number; fecRecvDistance3?: number; ratioConcealedSamplesAvg?: number; ratioStretchedSamplesAvg?: number; ratioCompressedSamplesAvg?: number; } interface MSAudioRecvSignal { initialSignalLevelRMS?: number; recvSignalLevelCh1?: number; recvNoiseLevelCh1?: number; renderSignalLevel?: number; renderNoiseLevel?: number; renderLoopbackSignalLevel?: number; } interface MSAudioSendPayload extends MSPayloadBase { samplingRate?: number; signal?: MSAudioSendSignal; audioFECUsed?: boolean; sendMutePercent?: number; } interface MSAudioSendSignal { noiseLevel?: number; sendSignalLevelCh1?: number; sendNoiseLevelCh1?: number; } interface MSConnectivity { iceType?: string; iceWarningFlags?: MSIceWarningFlags; relayAddress?: MSRelayAddress; } interface MSCredentialFilter { accept?: MSCredentialSpec[]; } interface MSCredentialParameters { type?: string; } interface MSCredentialSpec { type?: string; id?: string; } interface MSDelay { roundTrip?: number; roundTripMax?: number; } interface MSDescription extends RTCStats { connectivity?: MSConnectivity; transport?: string; networkconnectivity?: MSNetworkConnectivityInfo; localAddr?: MSIPAddressInfo; remoteAddr?: MSIPAddressInfo; deviceDevName?: string; reflexiveLocalIPAddr?: MSIPAddressInfo; } interface MSFIDOCredentialParameters extends MSCredentialParameters { algorithm?: string | Algorithm; authenticators?: AAGUID[]; } interface MSIPAddressInfo { ipAddr?: string; port?: number; manufacturerMacAddrMask?: string; } interface MSIceWarningFlags { turnTcpTimedOut?: boolean; turnUdpAllocateFailed?: boolean; turnUdpSendFailed?: boolean; turnTcpAllocateFailed?: boolean; turnTcpSendFailed?: boolean; udpLocalConnectivityFailed?: boolean; udpNatConnectivityFailed?: boolean; udpRelayConnectivityFailed?: boolean; tcpNatConnectivityFailed?: boolean; tcpRelayConnectivityFailed?: boolean; connCheckMessageIntegrityFailed?: boolean; allocationMessageIntegrityFailed?: boolean; connCheckOtherError?: boolean; turnAuthUnknownUsernameError?: boolean; noRelayServersConfigured?: boolean; multipleRelayServersAttempted?: boolean; portRangeExhausted?: boolean; alternateServerReceived?: boolean; pseudoTLSFailure?: boolean; turnTurnTcpConnectivityFailed?: boolean; useCandidateChecksFailed?: boolean; fipsAllocationFailure?: boolean; } interface MSJitter { interArrival?: number; interArrivalMax?: number; interArrivalSD?: number; } interface MSLocalClientEventBase extends RTCStats { networkReceiveQualityEventRatio?: number; networkBandwidthLowEventRatio?: number; } interface MSNetwork extends RTCStats { jitter?: MSJitter; delay?: MSDelay; packetLoss?: MSPacketLoss; utilization?: MSUtilization; } interface MSNetworkConnectivityInfo { vpn?: boolean; linkspeed?: number; networkConnectionDetails?: string; } interface MSNetworkInterfaceType { interfaceTypeEthernet?: boolean; interfaceTypeWireless?: boolean; interfaceTypePPP?: boolean; interfaceTypeTunnel?: boolean; interfaceTypeWWAN?: boolean; } interface MSOutboundNetwork extends MSNetwork { appliedBandwidthLimit?: number; } interface MSPacketLoss { lossRate?: number; lossRateMax?: number; } interface MSPayloadBase extends RTCStats { payloadDescription?: string; } interface MSRelayAddress { relayAddress?: string; port?: number; } interface MSSignatureParameters { userPrompt?: string; } interface MSTransportDiagnosticsStats extends RTCStats { baseAddress?: string; localAddress?: string; localSite?: string; networkName?: string; remoteAddress?: string; remoteSite?: string; localMR?: string; remoteMR?: string; iceWarningFlags?: MSIceWarningFlags; portRangeMin?: number; portRangeMax?: number; localMRTCPPort?: number; remoteMRTCPPort?: number; stunVer?: number; numConsentReqSent?: number; numConsentReqReceived?: number; numConsentRespSent?: number; numConsentRespReceived?: number; interfaces?: MSNetworkInterfaceType; baseInterface?: MSNetworkInterfaceType; protocol?: string; localInterface?: MSNetworkInterfaceType; localAddrType?: string; remoteAddrType?: string; iceRole?: string; rtpRtcpMux?: boolean; allocationTimeInMs?: number; msRtcEngineVersion?: string; } interface MSUtilization { packets?: number; bandwidthEstimation?: number; bandwidthEstimationMin?: number; bandwidthEstimationMax?: number; bandwidthEstimationStdDev?: number; bandwidthEstimationAvg?: number; } interface MSVideoPayload extends MSPayloadBase { resoluton?: string; videoBitRateAvg?: number; videoBitRateMax?: number; videoFrameRateAvg?: number; videoPacketLossRate?: number; durationSeconds?: number; } interface MSVideoRecvPayload extends MSVideoPayload { videoFrameLossRate?: number; recvCodecType?: string; recvResolutionWidth?: number; recvResolutionHeight?: number; videoResolutions?: MSVideoResolutionDistribution; recvFrameRateAverage?: number; recvBitRateMaximum?: number; recvBitRateAverage?: number; recvVideoStreamsMax?: number; recvVideoStreamsMin?: number; recvVideoStreamsMode?: number; videoPostFECPLR?: number; lowBitRateCallPercent?: number; lowFrameRateCallPercent?: number; reorderBufferTotalPackets?: number; recvReorderBufferReorderedPackets?: number; recvReorderBufferPacketsDroppedDueToBufferExhaustion?: number; recvReorderBufferMaxSuccessfullyOrderedExtent?: number; recvReorderBufferMaxSuccessfullyOrderedLateTime?: number; recvReorderBufferPacketsDroppedDueToTimeout?: number; recvFpsHarmonicAverage?: number; recvNumResSwitches?: number; } interface MSVideoResolutionDistribution { cifQuality?: number; vgaQuality?: number; h720Quality?: number; h1080Quality?: number; h1440Quality?: number; h2160Quality?: number; } interface MSVideoSendPayload extends MSVideoPayload { sendFrameRateAverage?: number; sendBitRateMaximum?: number; sendBitRateAverage?: number; sendVideoStreamsMax?: number; sendResolutionWidth?: number; sendResolutionHeight?: number; } interface MediaEncryptedEventInit extends EventInit { initDataType?: string; initData?: ArrayBuffer; } interface MediaKeyMessageEventInit extends EventInit { messageType?: string; message?: ArrayBuffer; } interface MediaKeySystemConfiguration { initDataTypes?: string[]; audioCapabilities?: MediaKeySystemMediaCapability[]; videoCapabilities?: MediaKeySystemMediaCapability[]; distinctiveIdentifier?: string; persistentState?: string; } interface MediaKeySystemMediaCapability { contentType?: string; robustness?: string; } interface MediaStreamConstraints { video?: boolean | MediaTrackConstraints; audio?: boolean | MediaTrackConstraints; } interface MediaStreamErrorEventInit extends EventInit { error?: MediaStreamError; } interface MediaStreamTrackEventInit extends EventInit { track?: MediaStreamTrack; } interface MediaTrackCapabilities { width?: number | LongRange; height?: number | LongRange; aspectRatio?: number | DoubleRange; frameRate?: number | DoubleRange; facingMode?: string; volume?: number | DoubleRange; sampleRate?: number | LongRange; sampleSize?: number | LongRange; echoCancellation?: boolean[]; deviceId?: string; groupId?: string; } interface MediaTrackConstraintSet { width?: number | ConstrainLongRange; height?: number | ConstrainLongRange; aspectRatio?: number | ConstrainDoubleRange; frameRate?: number | ConstrainDoubleRange; facingMode?: string | string[] | ConstrainDOMStringParameters; volume?: number | ConstrainDoubleRange; sampleRate?: number | ConstrainLongRange; sampleSize?: number | ConstrainLongRange; echoCancelation?: boolean | ConstrainBooleanParameters; deviceId?: string | string[] | ConstrainDOMStringParameters; groupId?: string | string[] | ConstrainDOMStringParameters; } interface MediaTrackConstraints extends MediaTrackConstraintSet { advanced?: MediaTrackConstraintSet[]; } interface MediaTrackSettings { width?: number; height?: number; aspectRatio?: number; frameRate?: number; facingMode?: string; volume?: number; sampleRate?: number; sampleSize?: number; echoCancellation?: boolean; deviceId?: string; groupId?: string; } interface MediaTrackSupportedConstraints { width?: boolean; height?: boolean; aspectRatio?: boolean; frameRate?: boolean; facingMode?: boolean; volume?: boolean; sampleRate?: boolean; sampleSize?: boolean; echoCancellation?: boolean; deviceId?: boolean; groupId?: boolean; } interface MouseEventInit extends EventModifierInit { screenX?: number; screenY?: number; clientX?: number; clientY?: number; button?: number; buttons?: number; relatedTarget?: EventTarget; } interface MsZoomToOptions { contentX?: number; contentY?: number; viewportX?: string; viewportY?: string; scaleFactor?: number; animate?: string; } interface MutationObserverInit { childList?: boolean; attributes?: boolean; characterData?: boolean; subtree?: boolean; attributeOldValue?: boolean; characterDataOldValue?: boolean; attributeFilter?: string[]; } interface ObjectURLOptions { oneTimeOnly?: boolean; } interface PeriodicWaveConstraints { disableNormalization?: boolean; } interface PointerEventInit extends MouseEventInit { pointerId?: number; width?: number; height?: number; pressure?: number; tiltX?: number; tiltY?: number; pointerType?: string; isPrimary?: boolean; } interface PositionOptions { enableHighAccuracy?: boolean; timeout?: number; maximumAge?: number; } interface RTCDTMFToneChangeEventInit extends EventInit { tone?: string; } interface RTCDtlsFingerprint { algorithm?: string; value?: string; } interface RTCDtlsParameters { role?: string; fingerprints?: RTCDtlsFingerprint[]; } interface RTCIceCandidate { foundation?: string; priority?: number; ip?: string; protocol?: string; port?: number; type?: string; tcpType?: string; relatedAddress?: string; relatedPort?: number; } interface RTCIceCandidateAttributes extends RTCStats { ipAddress?: string; portNumber?: number; transport?: string; candidateType?: string; priority?: number; addressSourceUrl?: string; } interface RTCIceCandidateComplete { } interface RTCIceCandidatePair { local?: RTCIceCandidate; remote?: RTCIceCandidate; } interface RTCIceCandidatePairStats extends RTCStats { transportId?: string; localCandidateId?: string; remoteCandidateId?: string; state?: string; priority?: number; nominated?: boolean; writable?: boolean; readable?: boolean; bytesSent?: number; bytesReceived?: number; roundTripTime?: number; availableOutgoingBitrate?: number; availableIncomingBitrate?: number; } interface RTCIceGatherOptions { gatherPolicy?: string; iceservers?: RTCIceServer[]; } interface RTCIceParameters { usernameFragment?: string; password?: string; } interface RTCIceServer { urls?: any; username?: string; credential?: string; } interface RTCInboundRTPStreamStats extends RTCRTPStreamStats { packetsReceived?: number; bytesReceived?: number; packetsLost?: number; jitter?: number; fractionLost?: number; } interface RTCMediaStreamTrackStats extends RTCStats { trackIdentifier?: string; remoteSource?: boolean; ssrcIds?: string[]; frameWidth?: number; frameHeight?: number; framesPerSecond?: number; framesSent?: number; framesReceived?: number; framesDecoded?: number; framesDropped?: number; framesCorrupted?: number; audioLevel?: number; echoReturnLoss?: number; echoReturnLossEnhancement?: number; } interface RTCOutboundRTPStreamStats extends RTCRTPStreamStats { packetsSent?: number; bytesSent?: number; targetBitrate?: number; roundTripTime?: number; } interface RTCRTPStreamStats extends RTCStats { ssrc?: string; associateStatsId?: string; isRemote?: boolean; mediaTrackId?: string; transportId?: string; codecId?: string; firCount?: number; pliCount?: number; nackCount?: number; sliCount?: number; } interface RTCRtcpFeedback { type?: string; parameter?: string; } interface RTCRtcpParameters { ssrc?: number; cname?: string; reducedSize?: boolean; mux?: boolean; } interface RTCRtpCapabilities { codecs?: RTCRtpCodecCapability[]; headerExtensions?: RTCRtpHeaderExtension[]; fecMechanisms?: string[]; } interface RTCRtpCodecCapability { name?: string; kind?: string; clockRate?: number; preferredPayloadType?: number; maxptime?: number; numChannels?: number; rtcpFeedback?: RTCRtcpFeedback[]; parameters?: any; options?: any; maxTemporalLayers?: number; maxSpatialLayers?: number; svcMultiStreamSupport?: boolean; } interface RTCRtpCodecParameters { name?: string; payloadType?: any; clockRate?: number; maxptime?: number; numChannels?: number; rtcpFeedback?: RTCRtcpFeedback[]; parameters?: any; } interface RTCRtpContributingSource { timestamp?: number; csrc?: number; audioLevel?: number; } interface RTCRtpEncodingParameters { ssrc?: number; codecPayloadType?: number; fec?: RTCRtpFecParameters; rtx?: RTCRtpRtxParameters; priority?: number; maxBitrate?: number; minQuality?: number; framerateBias?: number; resolutionScale?: number; framerateScale?: number; active?: boolean; encodingId?: string; dependencyEncodingIds?: string[]; ssrcRange?: RTCSsrcRange; } interface RTCRtpFecParameters { ssrc?: number; mechanism?: string; } interface RTCRtpHeaderExtension { kind?: string; uri?: string; preferredId?: number; preferredEncrypt?: boolean; } interface RTCRtpHeaderExtensionParameters { uri?: string; id?: number; encrypt?: boolean; } interface RTCRtpParameters { muxId?: string; codecs?: RTCRtpCodecParameters[]; headerExtensions?: RTCRtpHeaderExtensionParameters[]; encodings?: RTCRtpEncodingParameters[]; rtcp?: RTCRtcpParameters; } interface RTCRtpRtxParameters { ssrc?: number; } interface RTCRtpUnhandled { ssrc?: number; payloadType?: number; muxId?: string; } interface RTCSrtpKeyParam { keyMethod?: string; keySalt?: string; lifetime?: string; mkiValue?: number; mkiLength?: number; } interface RTCSrtpSdesParameters { tag?: number; cryptoSuite?: string; keyParams?: RTCSrtpKeyParam[]; sessionParams?: string[]; } interface RTCSsrcRange { min?: number; max?: number; } interface RTCStats { timestamp?: number; type?: string; id?: string; msType?: string; } interface RTCStatsReport { } interface RTCTransportStats extends RTCStats { bytesSent?: number; bytesReceived?: number; rtcpTransportStatsId?: string; activeConnection?: boolean; selectedCandidatePairId?: string; localCertificateId?: string; remoteCertificateId?: string; } interface StoreExceptionsInformation extends ExceptionInformation { siteName?: string; explanationString?: string; detailURI?: string; } interface StoreSiteSpecificExceptionsInformation extends StoreExceptionsInformation { arrayOfDomainStrings?: string[]; } interface UIEventInit extends EventInit { view?: Window; detail?: number; } interface WebGLContextAttributes { failIfMajorPerformanceCaveat?: boolean; alpha?: boolean; depth?: boolean; stencil?: boolean; antialias?: boolean; premultipliedAlpha?: boolean; preserveDrawingBuffer?: boolean; } interface WebGLContextEventInit extends EventInit { statusMessage?: string; } interface WheelEventInit extends MouseEventInit { deltaX?: number; deltaY?: number; deltaZ?: number; deltaMode?: number; } interface EventListener { (evt: Event): void; } interface ANGLE_instanced_arrays { drawArraysInstancedANGLE(mode: number, first: number, count: number, primcount: number): void; drawElementsInstancedANGLE(mode: number, count: number, type: number, offset: number, primcount: number): void; vertexAttribDivisorANGLE(index: number, divisor: number): void; readonly VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: number; } declare var ANGLE_instanced_arrays: { prototype: ANGLE_instanced_arrays; new(): ANGLE_instanced_arrays; readonly VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: number; } interface AnalyserNode extends AudioNode { fftSize: number; readonly frequencyBinCount: number; maxDecibels: number; minDecibels: number; smoothingTimeConstant: number; getByteFrequencyData(array: Uint8Array): void; getByteTimeDomainData(array: Uint8Array): void; getFloatFrequencyData(array: Float32Array): void; getFloatTimeDomainData(array: Float32Array): void; } declare var AnalyserNode: { prototype: AnalyserNode; new(): AnalyserNode; } interface AnimationEvent extends Event { readonly animationName: string; readonly elapsedTime: number; initAnimationEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, animationNameArg: string, elapsedTimeArg: number): void; } declare var AnimationEvent: { prototype: AnimationEvent; new(): AnimationEvent; } interface ApplicationCache extends EventTarget { oncached: (this: this, ev: Event) => any; onchecking: (this: this, ev: Event) => any; ondownloading: (this: this, ev: Event) => any; onerror: (this: this, ev: ErrorEvent) => any; onnoupdate: (this: this, ev: Event) => any; onobsolete: (this: this, ev: Event) => any; onprogress: (this: this, ev: ProgressEvent) => any; onupdateready: (this: this, ev: Event) => any; readonly status: number; abort(): void; swapCache(): void; update(): void; readonly CHECKING: number; readonly DOWNLOADING: number; readonly IDLE: number; readonly OBSOLETE: number; readonly UNCACHED: number; readonly UPDATEREADY: number; addEventListener(type: "cached", listener: (this: this, ev: Event) => any, useCapture?: boolean): void; addEventListener(type: "checking", listener: (this: this, ev: Event) => any, useCapture?: boolean): void; addEventListener(type: "downloading", listener: (this: this, ev: Event) => any, useCapture?: boolean): void; addEventListener(type: "error", listener: (this: this, ev: ErrorEvent) => any, useCapture?: boolean): void; addEventListener(type: "noupdate", listener: (this: this, ev: Event) => any, useCapture?: boolean): void; addEventListener(type: "obsolete", listener: (this: this, ev: Event) => any, useCapture?: boolean): void; addEventListener(type: "progress", listener: (this: this, ev: ProgressEvent) => any, useCapture?: boolean): void; addEventListener(type: "updateready", listener: (this: this, ev: Event) => any, useCapture?: boolean): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void; } declare var ApplicationCache: { prototype: ApplicationCache; new(): ApplicationCache; readonly CHECKING: number; readonly DOWNLOADING: number; readonly IDLE: number; readonly OBSOLETE: number; readonly UNCACHED: number; readonly UPDATEREADY: number; } interface AriaRequestEvent extends Event { readonly attributeName: string; attributeValue: string | null; } declare var AriaRequestEvent: { prototype: AriaRequestEvent; new(type: string, eventInitDict?: AriaRequestEventInit): AriaRequestEvent; } interface Attr extends Node { readonly name: string; readonly ownerElement: Element; readonly prefix: string | null; readonly specified: boolean; value: string; } declare var Attr: { prototype: Attr; new(): Attr; } interface AudioBuffer { readonly duration: number; readonly length: number; readonly numberOfChannels: number; readonly sampleRate: number; copyFromChannel(destination: Float32Array, channelNumber: number, startInChannel?: number): void; copyToChannel(source: Float32Array, channelNumber: number, startInChannel?: number): void; getChannelData(channel: number): Float32Array; } declare var AudioBuffer: { prototype: AudioBuffer; new(): AudioBuffer; } interface AudioBufferSourceNode extends AudioNode { buffer: AudioBuffer | null; readonly detune: AudioParam; loop: boolean; loopEnd: number; loopStart: number; onended: (this: this, ev: MediaStreamErrorEvent) => any; readonly playbackRate: AudioParam; start(when?: number, offset?: number, duration?: number): void; stop(when?: number): void; addEventListener(type: "ended", listener: (this: this, ev: MediaStreamErrorEvent) => any, useCapture?: boolean): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void; } declare var AudioBufferSourceNode: { prototype: AudioBufferSourceNode; new(): AudioBufferSourceNode; } interface AudioContext extends EventTarget { readonly currentTime: number; readonly destination: AudioDestinationNode; readonly listener: AudioListener; readonly sampleRate: number; state: string; createAnalyser(): AnalyserNode; createBiquadFilter(): BiquadFilterNode; createBuffer(numberOfChannels: number, length: number, sampleRate: number): AudioBuffer; createBufferSource(): AudioBufferSourceNode; createChannelMerger(numberOfInputs?: number): ChannelMergerNode; createChannelSplitter(numberOfOutputs?: number): ChannelSplitterNode; createConvolver(): ConvolverNode; createDelay(maxDelayTime?: number): DelayNode; createDynamicsCompressor(): DynamicsCompressorNode; createGain(): GainNode; createMediaElementSource(mediaElement: HTMLMediaElement): MediaElementAudioSourceNode; createMediaStreamSource(mediaStream: MediaStream): MediaStreamAudioSourceNode; createOscillator(): OscillatorNode; createPanner(): PannerNode; createPeriodicWave(real: Float32Array, imag: Float32Array, constraints?: PeriodicWaveConstraints): PeriodicWave; createScriptProcessor(bufferSize?: number, numberOfInputChannels?: number, numberOfOutputChannels?: number): ScriptProcessorNode; createStereoPanner(): StereoPannerNode; createWaveShaper(): WaveShaperNode; decodeAudioData(audioData: ArrayBuffer, successCallback?: DecodeSuccessCallback, errorCallback?: DecodeErrorCallback): PromiseLike<AudioBuffer>; } declare var AudioContext: { prototype: AudioContext; new(): AudioContext; } interface AudioDestinationNode extends AudioNode { readonly maxChannelCount: number; } declare var AudioDestinationNode: { prototype: AudioDestinationNode; new(): AudioDestinationNode; } interface AudioListener { dopplerFactor: number; speedOfSound: number; setOrientation(x: number, y: number, z: number, xUp: number, yUp: number, zUp: number): void; setPosition(x: number, y: number, z: number): void; setVelocity(x: number, y: number, z: number): void; } declare var AudioListener: { prototype: AudioListener; new(): AudioListener; } interface AudioNode extends EventTarget { channelCount: number; channelCountMode: string; channelInterpretation: string; readonly context: AudioContext; readonly numberOfInputs: number; readonly numberOfOutputs: number; connect(destination: AudioNode, output?: number, input?: number): void; disconnect(output?: number): void; disconnect(destination: AudioNode, output?: number, input?: number): void; disconnect(destination: AudioParam, output?: number): void; } declare var AudioNode: { prototype: AudioNode; new(): AudioNode; } interface AudioParam { readonly defaultValue: number; value: number; cancelScheduledValues(startTime: number): void; exponentialRampToValueAtTime(value: number, endTime: number): void; linearRampToValueAtTime(value: number, endTime: number): void; setTargetAtTime(target: number, startTime: number, timeConstant: number): void; setValueAtTime(value: number, startTime: number): void; setValueCurveAtTime(values: Float32Array, startTime: number, duration: number): void; } declare var AudioParam: { prototype: AudioParam; new(): AudioParam; } interface AudioProcessingEvent extends Event { readonly inputBuffer: AudioBuffer; readonly outputBuffer: AudioBuffer; readonly playbackTime: number; } declare var AudioProcessingEvent: { prototype: AudioProcessingEvent; new(): AudioProcessingEvent; } interface AudioTrack { enabled: boolean; readonly id: string; kind: string; readonly label: string; language: string; readonly sourceBuffer: SourceBuffer; } declare var AudioTrack: { prototype: AudioTrack; new(): AudioTrack; } interface AudioTrackList extends EventTarget { readonly length: number; onaddtrack: (this: this, ev: TrackEvent) => any; onchange: (this: this, ev: Event) => any; onremovetrack: (this: this, ev: TrackEvent) => any; getTrackById(id: string): AudioTrack | null; item(index: number): AudioTrack; addEventListener(type: "addtrack", listener: (this: this, ev: TrackEvent) => any, useCapture?: boolean): void; addEventListener(type: "change", listener: (this: this, ev: Event) => any, useCapture?: boolean): void; addEventListener(type: "removetrack", listener: (this: this, ev: TrackEvent) => any, useCapture?: boolean): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, useCapture?: boolean): void; [index: number]: AudioTrack; } declare var AudioTrackList: { prototype: AudioTrackList; new(): AudioTrackList; } interface BarProp { readonly visible: boolean; } declare var BarProp: { prototype: BarProp; new(): BarProp; } interface BeforeUnloadEvent extends Event { returnValue: any; } declare var BeforeUnloadEvent: { prototype: BeforeUnloadEvent; new(): BeforeUnloadEvent; } interface BiquadFilterNode extends AudioNode { readonly Q: AudioParam; readonly detune: AudioParam; readonly frequency: AudioParam; readonly gain: AudioParam; type: string; getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array): void; } declare var BiquadFilterNode: { prototype: BiquadFilterNode; new(): BiquadFilterNode; } interface Blob { readonly size: number; readonly type: string; msClose(): void; msDetachStream(): any; slice(start?: number, end?: number, contentType?: string): Blob; } declare var Blob: { prototype: Blob; new (blobParts?: any[], options?: BlobPropertyBag): Blob; } interface CDATASection extends Text { } declare var CDATASection: { prototype: CDATASection; new(): CDATASection; } interface CSS { supports(property: string, value?: string): boolean; } declare var CSS: CSS; interface CSSConditionRule extends CSSGroupingRule { conditionText: string; } declare var CSSConditionRule: { prototype: CSSConditionRule; new(): CSSConditionRule; } interface CSSFontFaceRule extends CSSRule { readonly style: CSSStyleDeclaration; } declare var CSSFontFaceRule: { prototype: CSSFontFaceRule; new(): CSSFontFaceRule; } interface CSSGroupingRule extends CSSRule { readonly cssRules: CSSRuleList; deleteRule(index: number): void; insertRule(rule: string, index: number): number; } declare var CSSGroupingRule: { prototype: CSSGroupingRule; new(): CSSGroupingRule; } interface CSSImportRule extends CSSRule { readonly href: string; readonly media: MediaList; readonly styleSheet: CSSStyleSheet; } declare var CSSImportRule: { prototype: CSSImportRule; new(): CSSImportRule; } interface CSSKeyframeRule extends CSSRule { keyText: string; readonly style: CSSStyleDeclaration; } declare var CSSKeyframeRule: { prototype: CSSKeyframeRule; new(): CSSKeyframeRule; } interface CSSKeyframesRule extends CSSRule { readonly cssRules: CSSRuleList; name: string; appendRule(rule: string): void; deleteRule(rule: string): void; findRule(rule: string): CSSKeyframeRule; } declare var CSSKeyframesRule: { prototype: CSSKeyframesRule; new(): CSSKeyframesRule; } interface CSSMediaRule extends CSSConditionRule { readonly media: MediaList; } declare var CSSMediaRule: { prototype: CSSMediaRule; new(): CSSMediaRule; } interface CSSNamespaceRule extends CSSRule { readonly namespaceURI: string; readonly prefix: string; } declare var CSSNamespaceRule: { prototype: CSSNamespaceRule; new(): CSSNamespaceRule; } interface CSSPageRule extends CSSRule { readonly pseudoClass: string; readonly selector: string; selectorText: string; readonly style: CSSStyleDeclaration; } declare var CSSPageRule: { prototype: CSSPageRule; new(): CSSPageRule; } interface CSSRule { cssText: string; readonly parentRule: CSSRule; readonly parentStyleSheet: CSSStyleSheet; readonly type: number; readonly CHARSET_RULE: number; readonly FONT_FACE_RULE: number; readonly IMPORT_RULE: number; readonly KEYFRAMES_RULE: number; readonly KEYFRAME_RULE: number; readonly MEDIA_RULE: number; readonly NAMESPACE_RULE: number; readonly PAGE_RULE: number; readonly STYLE_RULE: number; readonly SUPPORTS_RULE: number; readonly UNKNOWN_RULE: number; readonly VIEWPORT_RULE: number; } declare var CSSRule: { prototype: CSSRule; new(): CSSRule; readonly CHARSET_RULE: number; readonly FONT_FACE_RULE: number; readonly IMPORT_RULE: number; readonly KEYFRAMES_RULE: number; readonly KEYFRAME_RULE: number; readonly MEDIA_RULE: number; readonly NAMESPACE_RULE: number; readonly PAGE_RULE: number; readonly STYLE_RULE: number; readonly SUPPORTS_RULE: number; readonly UNKNOWN_RULE: number; readonly VIEWPORT_RULE: number; } interface CSSRuleList { readonly length: number; item(index: number): CSSRule; [index: number]: CSSRule; } declare var CSSRuleList: { prototype: CSSRuleList; new(): CSSRuleList; } interface CSSStyleDeclaration { alignContent: string | null; alignItems: string | null; alignSelf: string | null; alignmentBaseline: string | null; animation: string | null; animationDelay: string | null; animationDirection: string | null; animationDuration: string | null; animationFillMode: string | null; animationIterationCount: string | null; animationName: string | null; animationPlayState: string | null; animationTimingFunction: string | null; backfaceVisibility: string | null; background: string | null; backgroundAttachment: string | null; backgroundClip: string | null; backgroundColor: string | null; backgroundImage: string | null; backgroundOrigin: string | null; backgroundPosition: string | null; backgroundPositionX: string | null; backgroundPositionY: string | null; backgroundRepeat: string | null; backgroundSize: string | null; baselineShift: string | null; border: string | null; borderBottom: string | null; borderBottomColor: string | null; borderBottomLeftRadius: string | null; borderBottomRightRadius: string | null; borderBottomStyle: string | null; borderBottomWidth: string | null; borderCollapse: string | null; borderColor: string | null; borderImage: string | null; borderImageOutset: string | null; borderImageRepeat: string | null; borderImageSlice: string | null; borderImageSource: string | null; borderImageWidth: string | null; borderLeft: string | null; borderLeftColor: string | null; borderLeftStyle: string | null; borderLeftWidth: string | null; borderRadius: string | null; borderRight: string | null; borderRightColor: string | null; borderRightStyle: string | null; borderRightWidth: string | null; borderSpacing: string | null; borderStyle: string | null; borderTop: string | null; borderTopColor: string | null; borderTopLeftRadius: string | null; borderTopRightRadius: string | null; borderTopStyle: string | null; borderTopWidth: string | null; borderWidth: string | null; bottom: string | null; boxShadow: string | null; boxSizing: string | null; breakAfter: string | null; breakBefore: string | null; breakInside: string | null; captionSide: string | null; clear: string | null; clip: string | null; clipPath: string | null; clipRule: string | null; color: string | null; colorInterpolationFilters: string | null; columnCount: any; columnFill: string | null; columnGap: any; columnRule: string | null; columnRuleColor: any; columnRuleStyle: string | null; columnRuleWidth: any; columnSpan: string | null; columnWidth: any; columns: string | null; content: string | null; counterIncrement: string | null; counterReset: string | null; cssFloat: string | null; cssText: string; cursor: string | null; direction: string | null; display: string | null; dominantBaseline: string | null; emptyCells: string | null; enableBackground: string | null; fill: string | null; fillOpacity: string | null; fillRule: string | null; filter: string | null; flex: string | null; flexBasis: string | null; flexDirection: string | null; flexFlow: string | null; flexGrow: string | null; flexShrink: string | null; flexWrap: string | null; floodColor: string | null; floodOpacity: string | null; font: string | null; fontFamily: string | null; fontFeatureSettings: string | null; fontSize: string | null; fontSizeAdjust: string | null; fontStretch: string | null; fontStyle: string | null; fontVariant: string | null; fontWeight: string | null; glyphOrientationHorizontal: string | null; glyphOrientationVertical: string | null; height: string | null; imeMode: string | null; justifyContent: string | null; kerning: string | null; left: string | null; readonly length: number; letterSpacing: string | null; lightingColor: string | null; lineHeight: string | null; listStyle: string | null; listStyleImage: string | null; listStylePosition: string | null; listStyleType: string | null; margin: string | null; marginBottom: string | null; marginLeft: string | null; marginRight: string | null; marginTop: string | null; marker: string | null; markerEnd: string | null; markerMid: string | null; markerStart: string | null; mask: string | null; maxHeight: string | null; maxWidth: string | null; minHeight: string | null; minWidth: string | null; msContentZoomChaining: string | null; msContentZoomLimit: string | null; msContentZoomLimitMax: any; msContentZoomLimitMin: any; msContentZoomSnap: string | null; msContentZoomSnapPoints: string | null; msContentZoomSnapType: string | null; msContentZooming: string | null; msFlowFrom: string | null; msFlowInto: string | null; msFontFeatureSettings: string | null; msGridColumn: any; msGridColumnAlign: string | null; msGridColumnSpan: any; msGridColumns: string | null; msGridRow: any; msGridRowAlign: string | null; msGridRowSpan: any; msGridRows: string | null; msHighContrastAdjust: string | null; msHyphenateLimitChars: string | null; msHyphenateLimitLines: any; msHyphenateLimitZone: any; msHyphens: string | null; msImeAlign: string | null; msOverflowStyle: string | null; msScrollChaining: string | null; msScrollLimit: string | null; msScrollLimitXMax: any; msScrollLimitXMin: any; msScrollLimitYMax: any; msScrollLimitYMin: any; msScrollRails: string | null; msScrollSnapPointsX: string | null; msScrollSnapPointsY: string | null; msScrollSnapType: string | null; msScrollSnapX: string | null; msScrollSnapY: string | null; msScrollTranslation: string | null; msTextCombineHorizontal: string | null; msTextSizeAdjust: any; msTouchAction: string | null; msTouchSelect: string | null; msUserSelect: string | null; msWrapFlow: string; msWrapMargin: any; msWrapThrough: string; opacity: string | null; order: string | null; orphans: string | null; outline: string | null; outlineColor: string | null; outlineStyle: string | null; outlineWidth: string | null; overflow: string | null; overflowX: string | null; overflowY: string | null; padding: string | null; paddingBottom: string | null; paddingLeft: string | null; paddingRight: string | null; paddingTop: string | null; pageBreakAfter: string | null; pageBreakBefore: string | null; pageBreakInside: string | null; readonly parentRule: CSSRule; perspective: string | null; perspectiveOrigin: string | null; pointerEvents: string | null; position: string | null; quotes: string | null; right: string | null; rubyAlign: string | null; rubyOverhang: string | null; rubyPosition: string | null; stopColor: string | null; stopOpacity: string | null; stroke: string | null; strokeDasharray: string | null; strokeDashoffset: string | null; strokeLinecap: string | null; strokeLinejoin: string | null; strokeMiterlimit: string | null; strokeOpacity: string | null; strokeWidth: string | null; tableLayout: string | null; textAlign: string | null; textAlignLast: string | null; textAnchor: string | null; textDecoration: string | null; textIndent: string | null; textJustify: string | null; textKashida: string | null; textKashidaSpace: string | null; textOverflow: string | null; textShadow: string | null; textTransform: string | null; textUnderlinePosition: string | null; top: string | null; touchAction: string | null; transform: string | null; transformOrigin: string | null; transformStyle: string | null; transition: string | null; transitionDelay: string | null; transitionDuration: string | null; transitionProperty: string | null; transitionTimingFunction: string | null; unicodeBidi: string | null; verticalAlign: string | null; visibility: string | null; webkitAlignContent: string | null; webkitAlignItems: string | null; webkitAlignSelf: string | null; webkitAnimation: string | null; webkitAnimationDelay: string | null; webkitAnimationDirection: string | null; webkitAnimationDuration: string | null; webkitAnimationFillMode: string | null; webkitAnimationIterationCount: string | null; webkitAnimationName: string | null; webkitAnimationPlayState: string | null; webkitAnimationTimingFunction: string | null; webkitAppearance: string | null; webkitBackfaceVisibility: string | null; webkitBackgroundClip: string | null; webkitBackgroundOrigin: string | null; webkitBackgroundSize: string | null; webkitBorderBottomLeftRadius: string | null; webkitBorderBottomRightRadius: string | null; webkitBorderImage: string | null; webkitBorderRadius: string | null; webkitBorderTopLeftRadius: string | null; webkitBorderTopRightRadius: string | null; webkitBoxAlign: string | null; webkitBoxDirection: string | null; webkitBoxFlex: string | null; webkitBoxOrdinalGroup: string | null; webkitBoxOrient: string | null; webkitBoxPack: string | null; webkitBoxSizing: string | null; webkitColumnBreakAfter: string | null; webkitColumnBreakBefore: string | null; webkitColumnBreakInside: string | null; webkitColumnCount: any; webkitColumnGap: any; webkitColumnRule: string | null; webkitColumnRuleColor: any; webkitColumnRuleStyle: string | null; webkitColumnRuleWidth: any; webkitColumnSpan: string | null; webkitColumnWidth: any; webkitColumns: string | null; webkitFilter: string | null; webkitFlex: string | null; webkitFlexBasis: string | null; webkitFlexDirection: string | null; webkitFlexFlow: string | null; webkitFlexGrow: string | null; webkitFlexShrink: string | null; webkitFlexWrap: string | null; webkitJustifyContent: string | null; webkitOrder: string | null; webkitPerspective: string | null; webkitPerspectiveOrigin: string | null; webkitTapHighlightColor: string | null; webkitTextFillColor: string | null; webkitTextSizeAdjust: any; webkitTransform: string | null; webkitTransformOrigin: string | null; webkitTransformStyle: string | null; webkitTransition: string | null; webkitTransitionDelay: string | null; webkitTransitionDuration: string | null; webkitTransitionProperty: string | null; webkitTransitionTimingFunction: string | null; webkitUserModify: string | null; webkitUserSelect: string | null; webkitWritingMode: string | null; whiteSpace: string | null; widows: string | null; width: string | null; wordBreak: string | null; wordSpacing: string | null; wordWrap: string | null; writingMode: string | null; zIndex: string | null; zoom: string | null; getPropertyPriority(propertyName: string): string; getPropertyValue(propertyName: string): string; item(index: number): string; removeProperty(propertyName: string): string; setProperty(propertyName: string, value: string | null, priority?: string): void; [index: number]: string; } declare var CSSStyleDeclaration: { prototype: CSSStyleDeclaration; new(): CSSStyleDeclaration; } interface CSSStyleRule extends CSSRule { readonly readOnly: boolean; selectorText: string; readonly style: CSSStyleDeclaration; } declare var CSSStyleRule: { prototype: CSSStyleRule; new(): CSSStyleRule; } interface CSSStyleSheet extends StyleSheet { readonly cssRules: CSSRuleList; cssText: string; readonly href: string; readonly id: string; readonly imports: StyleSheetList; readonly isAlternate: boolean; readonly isPrefAlternate: boolean; readonly ownerRule: CSSRule; readonly owningElement: Element; readonly pages: StyleSheetPageList; readonly readOnly: bo