ts-mjs
Version:
TypeScript is a language for application scale JavaScript development
2,042 lines (1,730 loc) • 678 kB
TypeScript
/*! *****************************************************************************
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"/>
/////////////////////////////
/// DOM APIs
/////////////////////////////
interface Account {
displayName: string;
id: string;
imageURL?: string;
name?: string;
rpDisplayName: string;
}
interface AddEventListenerOptions extends EventListenerOptions {
once?: boolean;
passive?: boolean;
}
interface AesCbcParams extends Algorithm {
iv: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
}
interface AesCtrParams extends Algorithm {
counter: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
length: number;
}
interface AesDerivedKeyParams extends Algorithm {
length: number;
}
interface AesGcmParams extends Algorithm {
additionalData?: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
iv: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
tagLength?: number;
}
interface AesKeyAlgorithm extends KeyAlgorithm {
length: number;
}
interface AesKeyGenParams extends Algorithm {
length: number;
}
interface Algorithm {
name: string;
}
interface AnalyserOptions extends AudioNodeOptions {
fftSize?: number;
maxDecibels?: number;
minDecibels?: number;
smoothingTimeConstant?: number;
}
interface AnimationEventInit extends EventInit {
animationName?: string;
elapsedTime?: number;
pseudoElement?: string;
}
interface AnimationPlaybackEventInit extends EventInit {
currentTime?: number | null;
timelineTime?: number | null;
}
interface AssertionOptions {
allowList?: ScopedCredentialDescriptor[];
extensions?: WebAuthnExtensions;
rpId?: string;
timeoutSeconds?: number;
}
interface AudioBufferOptions {
length: number;
numberOfChannels?: number;
sampleRate: number;
}
interface AudioBufferSourceOptions {
buffer?: AudioBuffer | null;
detune?: number;
loop?: boolean;
loopEnd?: number;
loopStart?: number;
playbackRate?: number;
}
interface AudioContextInfo {
currentTime?: number;
sampleRate?: number;
}
interface AudioContextOptions {
latencyHint?: AudioContextLatencyCategory | number;
sampleRate?: number;
}
interface AudioNodeOptions {
channelCount?: number;
channelCountMode?: ChannelCountMode;
channelInterpretation?: ChannelInterpretation;
}
interface AudioParamDescriptor {
automationRate?: AutomationRate;
defaultValue?: number;
maxValue?: number;
minValue?: number;
name: string;
}
interface AudioProcessingEventInit extends EventInit {
inputBuffer: AudioBuffer;
outputBuffer: AudioBuffer;
playbackTime: number;
}
interface AudioTimestamp {
contextTime?: number;
performanceTime?: number;
}
interface AudioWorkletNodeOptions extends AudioNodeOptions {
numberOfInputs?: number;
numberOfOutputs?: number;
outputChannelCount?: number[];
parameterData?: Record<string, number>;
processorOptions?: any;
}
interface BiquadFilterOptions extends AudioNodeOptions {
Q?: number;
detune?: number;
frequency?: number;
gain?: number;
type?: BiquadFilterType;
}
interface BlobPropertyBag {
type?: string;
}
interface ByteLengthChunk {
byteLength?: number;
}
interface CacheQueryOptions {
cacheName?: string;
ignoreMethod?: boolean;
ignoreSearch?: boolean;
ignoreVary?: boolean;
}
interface ChannelMergerOptions extends AudioNodeOptions {
numberOfInputs?: number;
}
interface ChannelSplitterOptions extends AudioNodeOptions {
numberOfOutputs?: number;
}
interface ClientData {
challenge: string;
extensions?: WebAuthnExtensions;
hashAlg: string | Algorithm;
origin: string;
rpId: string;
tokenBinding?: string;
}
interface ClientQueryOptions {
includeUncontrolled?: boolean;
type?: ClientTypes;
}
interface CloseEventInit extends EventInit {
code?: number;
reason?: string;
wasClean?: boolean;
}
interface CompositionEventInit extends UIEventInit {
data?: string;
}
interface ComputedEffectTiming extends EffectTiming {
activeDuration?: number;
currentIteration?: number | null;
endTime?: number;
localTime?: number | null;
progress?: number | null;
}
interface ComputedKeyframe extends Record<keyof CSSStyleDeclaration, string> {
composite?: CompositeOperation | null;
computedOffset?: number;
easing?: string;
offset?: number | null;
}
interface ConfirmSiteSpecificExceptionsInformation extends ExceptionInformation {
arrayOfDomainStrings?: string[];
}
interface ConstantSourceOptions {
offset?: number;
}
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?: VideoFacingModeEnum | VideoFacingModeEnum[];
ideal?: VideoFacingModeEnum | VideoFacingModeEnum[];
}
interface ConvolverOptions extends AudioNodeOptions {
buffer?: AudioBuffer | null;
disableNormalization?: boolean;
}
interface CustomEventInit<T = any> extends EventInit {
detail?: T;
}
interface DOMMatrix2DInit {
a?: number;
b?: number;
c?: number;
d?: number;
e?: number;
f?: number;
m11?: number;
m12?: number;
m21?: number;
m22?: number;
m41?: number;
m42?: number;
}
interface DOMMatrixInit extends DOMMatrix2DInit {
is2D?: boolean;
m13?: number;
m14?: number;
m23?: number;
m24?: number;
m31?: number;
m32?: number;
m33?: number;
m34?: number;
m43?: number;
m44?: number;
}
interface DOMPointInit {
w?: number;
x?: number;
y?: number;
z?: number;
}
interface DOMQuadInit {
p1?: DOMPointInit;
p2?: DOMPointInit;
p3?: DOMPointInit;
p4?: DOMPointInit;
}
interface DOMRectInit {
height?: number;
width?: number;
x?: number;
y?: number;
}
interface DelayOptions extends AudioNodeOptions {
delayTime?: number;
maxDelayTime?: number;
}
interface DeviceAccelerationDict {
x?: number | null;
y?: number | null;
z?: number | null;
}
interface DeviceLightEventInit extends EventInit {
value?: number;
}
interface DeviceMotionEventInit extends EventInit {
acceleration?: DeviceAccelerationDict | null;
accelerationIncludingGravity?: DeviceAccelerationDict | null;
interval?: number | null;
rotationRate?: DeviceRotationRateDict | null;
}
interface DeviceOrientationEventInit extends EventInit {
absolute?: boolean;
alpha?: number | null;
beta?: number | null;
gamma?: number | null;
}
interface DeviceRotationRateDict {
alpha?: number | null;
beta?: number | null;
gamma?: number | null;
}
interface DocumentTimelineOptions {
originTime?: number;
}
interface DoubleRange {
max?: number;
min?: number;
}
interface DynamicsCompressorOptions extends AudioNodeOptions {
attack?: number;
knee?: number;
ratio?: number;
release?: number;
threshold?: number;
}
interface EcKeyAlgorithm extends KeyAlgorithm {
namedCurve: string;
}
interface EcKeyGenParams extends Algorithm {
namedCurve: string;
}
interface EcKeyImportParams extends Algorithm {
namedCurve: string;
}
interface EcdhKeyDeriveParams extends Algorithm {
public: CryptoKey;
}
interface EcdsaParams extends Algorithm {
hash: string | Algorithm;
}
interface EffectTiming {
delay?: number;
direction?: PlaybackDirection;
duration?: number | string;
easing?: string;
endDelay?: number;
fill?: FillMode;
iterationStart?: number;
iterations?: number;
}
interface ErrorEventInit extends EventInit {
colno?: number;
error?: any;
filename?: string;
lineno?: number;
message?: string;
}
interface EventInit {
bubbles?: boolean;
cancelable?: boolean;
composed?: boolean;
}
interface EventListenerOptions {
capture?: boolean;
}
interface EventModifierInit extends UIEventInit {
altKey?: boolean;
ctrlKey?: 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;
shiftKey?: boolean;
}
interface ExceptionInformation {
domain?: string | null;
}
interface ExtendableEventInit extends EventInit {
}
interface ExtendableMessageEventInit extends ExtendableEventInit {
data?: any;
lastEventId?: string;
origin?: string;
ports?: MessagePort[];
source?: object | ServiceWorker | MessagePort;
}
interface FetchEventInit extends ExtendableEventInit {
clientId?: string;
preloadResponse: Promise<any>;
request: Request;
resultingClientId?: string;
targetClientId?: string;
}
interface FilePropertyBag extends BlobPropertyBag {
lastModified?: number;
}
interface FocusEventInit extends UIEventInit {
relatedTarget?: EventTarget | null;
}
interface FocusNavigationEventInit extends EventInit {
navigationReason?: string | null;
originHeight?: number;
originLeft?: number;
originTop?: number;
originWidth?: number;
}
interface FocusNavigationOrigin {
originHeight?: number;
originLeft?: number;
originTop?: number;
originWidth?: number;
}
interface GainOptions extends AudioNodeOptions {
gain?: number;
}
interface GamepadEventInit extends EventInit {
gamepad?: Gamepad;
}
interface GetNotificationOptions {
tag?: string;
}
interface HashChangeEventInit extends EventInit {
newURL?: string;
oldURL?: string;
}
interface HkdfParams extends Algorithm {
hash: string | Algorithm;
info: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
salt: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
}
interface HmacImportParams extends Algorithm {
hash: string | Algorithm;
length?: number;
}
interface HmacKeyAlgorithm extends KeyAlgorithm {
hash: KeyAlgorithm;
length: number;
}
interface HmacKeyGenParams extends Algorithm {
hash: string | Algorithm;
length?: number;
}
interface IDBIndexParameters {
multiEntry?: boolean;
unique?: boolean;
}
interface IDBObjectStoreParameters {
autoIncrement?: boolean;
keyPath?: string | string[];
}
interface IDBVersionChangeEventInit extends EventInit {
newVersion?: number | null;
oldVersion?: number;
}
interface IIRFilterOptions extends AudioNodeOptions {
feedback: number[];
feedforward: number[];
}
interface IntersectionObserverEntryInit {
boundingClientRect: DOMRectInit;
intersectionRect: DOMRectInit;
isIntersecting: boolean;
rootBounds: DOMRectInit;
target: Element;
time: number;
}
interface IntersectionObserverInit {
root?: Element | null;
rootMargin?: string;
threshold?: number | number[];
}
interface JsonWebKey {
alg?: string;
crv?: string;
d?: string;
dp?: string;
dq?: string;
e?: string;
ext?: boolean;
k?: string;
key_ops?: string[];
kty?: string;
n?: string;
oth?: RsaOtherPrimesInfo[];
p?: string;
q?: string;
qi?: string;
use?: string;
x?: string;
y?: string;
}
interface KeyAlgorithm {
name: string;
}
interface KeyboardEventInit extends EventModifierInit {
code?: string;
key?: string;
location?: number;
repeat?: boolean;
}
interface Keyframe extends Record<keyof CSSStyleDeclaration, string> {
composite?: CompositeOperation | null;
easing?: string;
offset?: number | null;
}
interface KeyframeAnimationOptions extends KeyframeEffectOptions {
id?: string;
}
interface KeyframeEffectOptions extends EffectTiming {
composite?: CompositeOperation;
iterationComposite?: IterationCompositeOperation;
}
interface LongRange {
max?: number;
min?: number;
}
interface MSAccountInfo {
accountImageUri?: string;
accountName?: string;
rpDisplayName: string;
userDisplayName: string;
userId?: string;
}
interface MSAudioLocalClientEvent extends MSLocalClientEventBase {
cpuInsufficientEventRatio?: number;
deviceCaptureNotFunctioningEventRatio?: number;
deviceClippingEventRatio?: number;
deviceEchoEventRatio?: number;
deviceGlitchesEventRatio?: number;
deviceHalfDuplexAECEventRatio?: number;
deviceHowlingEventCount?: number;
deviceLowSNREventRatio?: number;
deviceLowSpeechLevelEventRatio?: number;
deviceMultipleEndpointsEventCount?: number;
deviceNearEndToEchoRatioEventRatio?: number;
deviceRenderMuteEventRatio?: number;
deviceRenderNotFunctioningEventRatio?: number;
deviceRenderZeroVolumeEventRatio?: number;
networkDelayEventRatio?: number;
networkSendQualityEventRatio?: number;
}
interface MSAudioRecvPayload extends MSPayloadBase {
burstLossLength1?: number;
burstLossLength2?: number;
burstLossLength3?: number;
burstLossLength4?: number;
burstLossLength5?: number;
burstLossLength6?: number;
burstLossLength7?: number;
burstLossLength8OrHigher?: number;
fecRecvDistance1?: number;
fecRecvDistance2?: number;
fecRecvDistance3?: number;
packetReorderDepthAvg?: number;
packetReorderDepthMax?: number;
packetReorderRatio?: number;
ratioCompressedSamplesAvg?: number;
ratioConcealedSamplesAvg?: number;
ratioStretchedSamplesAvg?: number;
samplingRate?: number;
signal?: MSAudioRecvSignal;
}
interface MSAudioRecvSignal {
initialSignalLevelRMS?: number;
recvNoiseLevelCh1?: number;
recvSignalLevelCh1?: number;
renderLoopbackSignalLevel?: number;
renderNoiseLevel?: number;
renderSignalLevel?: number;
}
interface MSAudioSendPayload extends MSPayloadBase {
audioFECUsed?: boolean;
samplingRate?: number;
sendMutePercent?: number;
signal?: MSAudioSendSignal;
}
interface MSAudioSendSignal {
noiseLevel?: number;
sendNoiseLevelCh1?: number;
sendSignalLevelCh1?: number;
}
interface MSConnectivity {
iceType?: MSIceType;
iceWarningFlags?: MSIceWarningFlags;
relayAddress?: MSRelayAddress;
}
interface MSCredentialFilter {
accept?: MSCredentialSpec[];
}
interface MSCredentialParameters {
type?: MSCredentialType;
}
interface MSCredentialSpec {
id?: string;
type: MSCredentialType;
}
interface MSDCCEventInit extends EventInit {
maxFr?: number;
maxFs?: number;
}
interface MSDSHEventInit extends EventInit {
sources?: number[];
timestamp?: number;
}
interface MSDelay {
roundTrip?: number;
roundTripMax?: number;
}
interface MSDescription extends RTCStats {
connectivity?: MSConnectivity;
deviceDevName?: string;
localAddr?: MSIPAddressInfo;
networkconnectivity?: MSNetworkConnectivityInfo;
reflexiveLocalIPAddr?: MSIPAddressInfo;
remoteAddr?: MSIPAddressInfo;
transport?: RTCIceProtocol;
}
interface MSFIDOCredentialParameters extends MSCredentialParameters {
algorithm?: string | Algorithm;
authenticators?: string[];
}
interface MSIPAddressInfo {
ipAddr?: string;
manufacturerMacAddrMask?: string;
port?: number;
}
interface MSIceWarningFlags {
allocationMessageIntegrityFailed?: boolean;
alternateServerReceived?: boolean;
connCheckMessageIntegrityFailed?: boolean;
connCheckOtherError?: boolean;
fipsAllocationFailure?: boolean;
multipleRelayServersAttempted?: boolean;
noRelayServersConfigured?: boolean;
portRangeExhausted?: boolean;
pseudoTLSFailure?: boolean;
tcpNatConnectivityFailed?: boolean;
tcpRelayConnectivityFailed?: boolean;
turnAuthUnknownUsernameError?: boolean;
turnTcpAllocateFailed?: boolean;
turnTcpSendFailed?: boolean;
turnTcpTimedOut?: boolean;
turnTurnTcpConnectivityFailed?: boolean;
turnUdpAllocateFailed?: boolean;
turnUdpSendFailed?: boolean;
udpLocalConnectivityFailed?: boolean;
udpNatConnectivityFailed?: boolean;
udpRelayConnectivityFailed?: boolean;
useCandidateChecksFailed?: boolean;
}
interface MSJitter {
interArrival?: number;
interArrivalMax?: number;
interArrivalSD?: number;
}
interface MSLocalClientEventBase extends RTCStats {
networkBandwidthLowEventRatio?: number;
networkReceiveQualityEventRatio?: number;
}
interface MSNetwork extends RTCStats {
delay?: MSDelay;
jitter?: MSJitter;
packetLoss?: MSPacketLoss;
utilization?: MSUtilization;
}
interface MSNetworkConnectivityInfo {
linkspeed?: number;
networkConnectionDetails?: string;
vpn?: boolean;
}
interface MSNetworkInterfaceType {
interfaceTypeEthernet?: boolean;
interfaceTypePPP?: boolean;
interfaceTypeTunnel?: boolean;
interfaceTypeWWAN?: boolean;
interfaceTypeWireless?: boolean;
}
interface MSOutboundNetwork extends MSNetwork {
appliedBandwidthLimit?: number;
}
interface MSPacketLoss {
lossRate?: number;
lossRateMax?: number;
}
interface MSPayloadBase extends RTCStats {
payloadDescription?: string;
}
interface MSPortRange {
max?: number;
min?: number;
}
interface MSRelayAddress {
port?: number;
relayAddress?: string;
}
interface MSSignatureParameters {
userPrompt?: string;
}
interface MSTransportDiagnosticsStats extends RTCStats {
allocationTimeInMs?: number;
baseAddress?: string;
baseInterface?: MSNetworkInterfaceType;
iceRole?: RTCIceRole;
iceWarningFlags?: MSIceWarningFlags;
interfaces?: MSNetworkInterfaceType;
localAddrType?: MSIceAddrType;
localAddress?: string;
localInterface?: MSNetworkInterfaceType;
localMR?: string;
localMRTCPPort?: number;
localSite?: string;
msRtcEngineVersion?: string;
networkName?: string;
numConsentReqReceived?: number;
numConsentReqSent?: number;
numConsentRespReceived?: number;
numConsentRespSent?: number;
portRangeMax?: number;
portRangeMin?: number;
protocol?: RTCIceProtocol;
remoteAddrType?: MSIceAddrType;
remoteAddress?: string;
remoteMR?: string;
remoteMRTCPPort?: number;
remoteSite?: string;
rtpRtcpMux?: boolean;
stunVer?: number;
}
interface MSUtilization {
bandwidthEstimation?: number;
bandwidthEstimationAvg?: number;
bandwidthEstimationMax?: number;
bandwidthEstimationMin?: number;
bandwidthEstimationStdDev?: number;
packets?: number;
}
interface MSVideoPayload extends MSPayloadBase {
durationSeconds?: number;
resolution?: string;
videoBitRateAvg?: number;
videoBitRateMax?: number;
videoFrameRateAvg?: number;
videoPacketLossRate?: number;
}
interface MSVideoRecvPayload extends MSVideoPayload {
lowBitRateCallPercent?: number;
lowFrameRateCallPercent?: number;
recvBitRateAverage?: number;
recvBitRateMaximum?: number;
recvCodecType?: string;
recvFpsHarmonicAverage?: number;
recvFrameRateAverage?: number;
recvNumResSwitches?: number;
recvReorderBufferMaxSuccessfullyOrderedExtent?: number;
recvReorderBufferMaxSuccessfullyOrderedLateTime?: number;
recvReorderBufferPacketsDroppedDueToBufferExhaustion?: number;
recvReorderBufferPacketsDroppedDueToTimeout?: number;
recvReorderBufferReorderedPackets?: number;
recvResolutionHeight?: number;
recvResolutionWidth?: number;
recvVideoStreamsMax?: number;
recvVideoStreamsMin?: number;
recvVideoStreamsMode?: number;
reorderBufferTotalPackets?: number;
videoFrameLossRate?: number;
videoPostFECPLR?: number;
videoResolutions?: MSVideoResolutionDistribution;
}
interface MSVideoResolutionDistribution {
cifQuality?: number;
h1080Quality?: number;
h1440Quality?: number;
h2160Quality?: number;
h720Quality?: number;
vgaQuality?: number;
}
interface MSVideoSendPayload extends MSVideoPayload {
sendBitRateAverage?: number;
sendBitRateMaximum?: number;
sendFrameRateAverage?: number;
sendResolutionHeight?: number;
sendResolutionWidth?: number;
sendVideoStreamsMax?: number;
}
interface MediaElementAudioSourceOptions {
mediaElement: HTMLMediaElement;
}
interface MediaEncryptedEventInit extends EventInit {
initData?: ArrayBuffer | null;
initDataType?: string;
}
interface MediaKeyMessageEventInit extends EventInit {
message?: ArrayBuffer | null;
messageType?: MediaKeyMessageType;
}
interface MediaKeySystemConfiguration {
audioCapabilities?: MediaKeySystemMediaCapability[];
distinctiveIdentifier?: MediaKeysRequirement;
initDataTypes?: string[];
persistentState?: MediaKeysRequirement;
videoCapabilities?: MediaKeySystemMediaCapability[];
}
interface MediaKeySystemMediaCapability {
contentType?: string;
robustness?: string;
}
interface MediaStreamAudioSourceOptions {
mediaStream: MediaStream;
}
interface MediaStreamConstraints {
audio?: boolean | MediaTrackConstraints;
peerIdentity?: string;
video?: boolean | MediaTrackConstraints;
}
interface MediaStreamErrorEventInit extends EventInit {
error?: MediaStreamError | null;
}
interface MediaStreamEventInit extends EventInit {
stream?: MediaStream;
}
interface MediaStreamTrackAudioSourceOptions {
mediaStreamTrack: MediaStreamTrack;
}
interface MediaStreamTrackEventInit extends EventInit {
track?: MediaStreamTrack | null;
}
interface MediaTrackCapabilities {
aspectRatio?: number | DoubleRange;
deviceId?: string;
echoCancellation?: boolean[];
facingMode?: string;
frameRate?: number | DoubleRange;
groupId?: string;
height?: number | LongRange;
sampleRate?: number | LongRange;
sampleSize?: number | LongRange;
volume?: number | DoubleRange;
width?: number | LongRange;
}
interface MediaTrackConstraintSet {
aspectRatio?: number | ConstrainDoubleRange;
channelCount?: number | ConstrainLongRange;
deviceId?: string | string[] | ConstrainDOMStringParameters;
displaySurface?: string | string[] | ConstrainDOMStringParameters;
echoCancellation?: boolean | ConstrainBooleanParameters;
facingMode?: string | string[] | ConstrainDOMStringParameters;
frameRate?: number | ConstrainDoubleRange;
groupId?: string | string[] | ConstrainDOMStringParameters;
height?: number | ConstrainLongRange;
latency?: number | ConstrainDoubleRange;
logicalSurface?: boolean | ConstrainBooleanParameters;
sampleRate?: number | ConstrainLongRange;
sampleSize?: number | ConstrainLongRange;
volume?: number | ConstrainDoubleRange;
width?: number | ConstrainLongRange;
}
interface MediaTrackConstraints extends MediaTrackConstraintSet {
advanced?: MediaTrackConstraintSet[];
}
interface MediaTrackSettings {
aspectRatio?: number;
deviceId?: string;
echoCancellation?: boolean;
facingMode?: string;
frameRate?: number;
groupId?: string;
height?: number;
sampleRate?: number;
sampleSize?: number;
volume?: number;
width?: number;
}
interface MediaTrackSupportedConstraints {
aspectRatio?: boolean;
deviceId?: boolean;
echoCancellation?: boolean;
facingMode?: boolean;
frameRate?: boolean;
groupId?: boolean;
height?: boolean;
sampleRate?: boolean;
sampleSize?: boolean;
volume?: boolean;
width?: boolean;
}
interface MessageEventInit extends EventInit {
channel?: string;
data?: any;
lastEventId?: string;
origin?: string;
ports?: MessagePort[];
source?: Window | null;
}
interface MouseEventInit extends EventModifierInit {
button?: number;
buttons?: number;
clientX?: number;
clientY?: number;
relatedTarget?: EventTarget | null;
screenX?: number;
screenY?: number;
}
interface MsZoomToOptions {
animate?: string;
contentX?: number;
contentY?: number;
scaleFactor?: number;
viewportX?: string | null;
viewportY?: string | null;
}
interface MutationObserverInit {
attributeFilter?: string[];
attributeOldValue?: boolean;
attributes?: boolean;
characterData?: boolean;
characterDataOldValue?: boolean;
childList?: boolean;
subtree?: boolean;
}
interface NavigationPreloadState {
enabled?: boolean;
headerValue?: string;
}
interface NotificationAction {
action: string;
icon?: string;
title: string;
}
interface NotificationEventInit extends ExtendableEventInit {
action?: string;
notification: Notification;
}
interface NotificationOptions {
actions?: NotificationAction[];
badge?: string;
body?: string;
data?: any;
dir?: NotificationDirection;
icon?: string;
image?: string;
lang?: string;
renotify?: boolean;
requireInteraction?: boolean;
silent?: boolean;
tag?: string;
timestamp?: number;
vibrate?: VibratePattern;
}
interface OfflineAudioCompletionEventInit extends EventInit {
renderedBuffer: AudioBuffer;
}
interface OfflineAudioContextOptions {
length: number;
numberOfChannels?: number;
sampleRate: number;
}
interface OptionalEffectTiming {
delay?: number;
direction?: PlaybackDirection;
duration?: number | string;
easing?: string;
endDelay?: number;
fill?: FillMode;
iterationStart?: number;
iterations?: number;
}
interface OscillatorOptions extends AudioNodeOptions {
detune?: number;
frequency?: number;
periodicWave?: PeriodicWave;
type?: OscillatorType;
}
interface PannerOptions extends AudioNodeOptions {
coneInnerAngle?: number;
coneOuterAngle?: number;
coneOuterGain?: number;
distanceModel?: DistanceModelType;
maxDistance?: number;
orientationX?: number;
orientationY?: number;
orientationZ?: number;
panningModel?: PanningModelType;
positionX?: number;
positionY?: number;
positionZ?: number;
refDistance?: number;
rolloffFactor?: number;
}
interface PaymentCurrencyAmount {
currency: string;
currencySystem?: string;
value: string;
}
interface PaymentDetailsBase {
displayItems?: PaymentItem[];
modifiers?: PaymentDetailsModifier[];
shippingOptions?: PaymentShippingOption[];
}
interface PaymentDetailsInit extends PaymentDetailsBase {
id?: string;
total: PaymentItem;
}
interface PaymentDetailsModifier {
additionalDisplayItems?: PaymentItem[];
data?: any;
supportedMethods: string | string[];
total?: PaymentItem;
}
interface PaymentDetailsUpdate extends PaymentDetailsBase {
error?: string;
total?: PaymentItem;
}
interface PaymentItem {
amount: PaymentCurrencyAmount;
label: string;
pending?: boolean;
}
interface PaymentMethodData {
data?: any;
supportedMethods: string | string[];
}
interface PaymentOptions {
requestPayerEmail?: boolean;
requestPayerName?: boolean;
requestPayerPhone?: boolean;
requestShipping?: boolean;
shippingType?: string;
}
interface PaymentRequestUpdateEventInit extends EventInit {
}
interface PaymentShippingOption {
amount: PaymentCurrencyAmount;
id: string;
label: string;
selected?: boolean;
}
interface Pbkdf2Params extends Algorithm {
hash: string | Algorithm;
iterations: number;
salt: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
}
interface PerformanceObserverInit {
buffered?: boolean;
entryTypes: string[];
}
interface PeriodicWaveConstraints {
disableNormalization?: boolean;
}
interface PeriodicWaveOptions extends PeriodicWaveConstraints {
imag?: number[] | Float32Array;
real?: number[] | Float32Array;
}
interface PointerEventInit extends MouseEventInit {
height?: number;
isPrimary?: boolean;
pointerId?: number;
pointerType?: string;
pressure?: number;
tangentialPressure?: number;
tiltX?: number;
tiltY?: number;
twist?: number;
width?: number;
}
interface PopStateEventInit extends EventInit {
state?: any;
}
interface PositionOptions {
enableHighAccuracy?: boolean;
maximumAge?: number;
timeout?: number;
}
interface ProgressEventInit extends EventInit {
lengthComputable?: boolean;
loaded?: number;
total?: number;
}
interface PromiseRejectionEventInit extends EventInit {
promise: Promise<any>;
reason?: any;
}
interface PropertyIndexedKeyframes extends Record<keyof CSSStyleDeclaration, string | string[]> {
composite?: CompositeOperation | (CompositeOperation | null)[];
easing?: string | string[];
offset?: number | (number | null)[];
}
interface PushEventInit extends ExtendableEventInit {
data?: PushMessageDataInit;
}
interface PushSubscriptionChangeInit extends ExtendableEventInit {
newSubscription?: PushSubscription;
oldSubscription?: PushSubscription;
}
interface PushSubscriptionJSON {
endpoint?: string;
expirationTime?: number | null;
keys?: Record<string, string>;
}
interface PushSubscriptionOptionsInit {
applicationServerKey?: BufferSource | string;
userVisibleOnly?: boolean;
}
interface QueuingStrategy {
highWaterMark?: number;
size?: WritableStreamChunkCallback;
}
interface RTCAnswerOptions extends RTCOfferAnswerOptions {
}
interface RTCCertificateExpiration {
expires?: number;
}
interface RTCConfiguration {
bundlePolicy?: RTCBundlePolicy;
certificates?: RTCCertificate[];
iceCandidatePoolSize?: number;
iceServers?: RTCIceServer[];
iceTransportPolicy?: RTCIceTransportPolicy;
peerIdentity?: string;
rtcpMuxPolicy?: RTCRtcpMuxPolicy;
}
interface RTCDTMFToneChangeEventInit extends EventInit {
tone: string;
}
interface RTCDataChannelEventInit extends EventInit {
channel: RTCDataChannel;
}
interface RTCDataChannelInit {
id?: number;
maxPacketLifeTime?: number;
maxRetransmits?: number;
negotiated?: boolean;
ordered?: boolean;
priority?: RTCPriorityType;
protocol?: string;
}
interface RTCDtlsFingerprint {
algorithm?: string;
value?: string;
}
interface RTCDtlsParameters {
fingerprints?: RTCDtlsFingerprint[];
role?: RTCDtlsRole;
}
interface RTCErrorEventInit extends EventInit {
error?: RTCError | null;
}
interface RTCIceCandidateAttributes extends RTCStats {
addressSourceUrl?: string;
candidateType?: RTCStatsIceCandidateType;
ipAddress?: string;
portNumber?: number;
priority?: number;
transport?: string;
}
interface RTCIceCandidateComplete {
}
interface RTCIceCandidateDictionary {
foundation?: string;
ip?: string;
msMTurnSessionId?: string;
port?: number;
priority?: number;
protocol?: RTCIceProtocol;
relatedAddress?: string;
relatedPort?: number;
tcpType?: RTCIceTcpCandidateType;
type?: RTCIceCandidateType;
}
interface RTCIceCandidateInit {
candidate?: string;
sdpMLineIndex?: number | null;
sdpMid?: string | null;
usernameFragment?: string;
}
interface RTCIceCandidatePair {
local?: RTCIceCandidate;
remote?: RTCIceCandidate;
}
interface RTCIceCandidatePairStats extends RTCStats {
availableIncomingBitrate?: number;
availableOutgoingBitrate?: number;
bytesReceived?: number;
bytesSent?: number;
localCandidateId?: string;
nominated?: boolean;
priority?: number;
readable?: boolean;
remoteCandidateId?: string;
roundTripTime?: number;
state?: RTCStatsIceCandidatePairState;
transportId?: string;
writable?: boolean;
}
interface RTCIceGatherOptions {
gatherPolicy?: RTCIceGatherPolicy;
iceservers?: RTCIceServer[];
portRange?: MSPortRange;
}
interface RTCIceParameters {
password?: string;
usernameFragment?: string;
}
interface RTCIceServer {
credential?: string | RTCOAuthCredential;
credentialType?: RTCIceCredentialType;
urls: string | string[];
username?: string;
}
interface RTCIdentityAssertionResult {
assertion: string;
idp: RTCIdentityProviderDetails;
}
interface RTCIdentityProvider {
generateAssertion: GenerateAssertionCallback;
validateAssertion: ValidateAssertionCallback;
}
interface RTCIdentityProviderDetails {
domain: string;
protocol?: string;
}
interface RTCIdentityProviderOptions {
peerIdentity?: string;
protocol?: string;
usernameHint?: string;
}
interface RTCIdentityValidationResult {
contents: string;
identity: string;
}
interface RTCInboundRTPStreamStats extends RTCRTPStreamStats {
bytesReceived?: number;
fractionLost?: number;
jitter?: number;
packetsLost?: number;
packetsReceived?: number;
}
interface RTCMediaStreamTrackStats extends RTCStats {
audioLevel?: number;
echoReturnLoss?: number;
echoReturnLossEnhancement?: number;
frameHeight?: number;
frameWidth?: number;
framesCorrupted?: number;
framesDecoded?: number;
framesDropped?: number;
framesPerSecond?: number;
framesReceived?: number;
framesSent?: number;
remoteSource?: boolean;
ssrcIds?: string[];
trackIdentifier?: string;
}
interface RTCOAuthCredential {
accessToken: string;
macKey: string;
}
interface RTCOfferAnswerOptions {
voiceActivityDetection?: boolean;
}
interface RTCOfferOptions extends RTCOfferAnswerOptions {
iceRestart?: boolean;
offerToReceiveAudio?: boolean;
offerToReceiveVideo?: boolean;
}
interface RTCOutboundRTPStreamStats extends RTCRTPStreamStats {
bytesSent?: number;
packetsSent?: number;
roundTripTime?: number;
targetBitrate?: number;
}
interface RTCPeerConnectionIceErrorEventInit extends EventInit {
errorCode: number;
hostCandidate?: string;
statusText?: string;
url?: string;
}
interface RTCPeerConnectionIceEventInit extends EventInit {
candidate?: RTCIceCandidate | null;
url?: string | null;
}
interface RTCRTPStreamStats extends RTCStats {
associateStatsId?: string;
codecId?: string;
firCount?: number;
isRemote?: boolean;
mediaTrackId?: string;
mediaType?: string;
nackCount?: number;
pliCount?: number;
sliCount?: number;
ssrc?: string;
transportId?: string;
}
interface RTCRtcpFeedback {
parameter?: string;
type?: string;
}
interface RTCRtcpParameters {
cname?: string;
reducedSize?: boolean;
}
interface RTCRtpCapabilities {
codecs: RTCRtpCodecCapability[];
headerExtensions: RTCRtpHeaderExtensionCapability[];
}
interface RTCRtpCodecCapability {
channels?: number;
clockRate: number;
mimeType: string;
sdpFmtpLine?: string;
}
interface RTCRtpCodecParameters {
channels?: number;
clockRate: number;
mimeType: string;
payloadType: number;
sdpFmtpLine?: string;
}
interface RTCRtpCodingParameters {
rid?: string;
}
interface RTCRtpContributingSource {
audioLevel?: number;
source: number;
timestamp: number;
}
interface RTCRtpDecodingParameters extends RTCRtpCodingParameters {
}
interface RTCRtpEncodingParameters extends RTCRtpCodingParameters {
active?: boolean;
codecPayloadType?: number;
dtx?: RTCDtxStatus;
maxBitrate?: number;
maxFramerate?: number;
priority?: RTCPriorityType;
ptime?: number;
scaleResolutionDownBy?: number;
}
interface RTCRtpFecParameters {
mechanism?: string;
ssrc?: number;
}
interface RTCRtpHeaderExtension {
kind?: string;
preferredEncrypt?: boolean;
preferredId?: number;
uri?: string;
}
interface RTCRtpHeaderExtensionCapability {
uri?: string;
}
interface RTCRtpHeaderExtensionParameters {
encrypted?: boolean;
id: number;
uri: string;
}
interface RTCRtpParameters {
codecs: RTCRtpCodecParameters[];
headerExtensions: RTCRtpHeaderExtensionParameters[];
rtcp: RTCRtcpParameters;
}
interface RTCRtpReceiveParameters extends RTCRtpParameters {
encodings: RTCRtpDecodingParameters[];
}
interface RTCRtpRtxParameters {
ssrc?: number;
}
interface RTCRtpSendParameters extends RTCRtpParameters {
degradationPreference?: RTCDegradationPreference;
encodings: RTCRtpEncodingParameters[];
transactionId: string;
}
interface RTCRtpSynchronizationSource extends RTCRtpContributingSource {
voiceActivityFlag?: boolean;
}
interface RTCRtpTransceiverInit {
direction?: RTCRtpTransceiverDirection;
sendEncodings?: RTCRtpEncodingParameters[];
streams?: MediaStream[];
}
interface RTCRtpUnhandled {
muxId?: string;
payloadType?: number;
ssrc?: number;
}
interface RTCSessionDescriptionInit {
sdp?: string;
type: RTCSdpType;
}
interface RTCSrtpKeyParam {
keyMethod?: string;
keySalt?: string;
lifetime?: string;
mkiLength?: number;
mkiValue?: number;
}
interface RTCSrtpSdesParameters {
cryptoSuite?: string;
keyParams?: RTCSrtpKeyParam[];
sessionParams?: string[];
tag?: number;
}
interface RTCSsrcRange {
max?: number;
min?: number;
}
interface RTCStats {
id: string;
timestamp: number;
type: RTCStatsType;
}
interface RTCStatsEventInit extends EventInit {
report: RTCStatsReport;
}
interface RTCStatsReport {
}
interface RTCTrackEventInit extends EventInit {
receiver: RTCRtpReceiver;
streams?: MediaStream[];
track: MediaStreamTrack;
transceiver: RTCRtpTransceiver;
}
interface RTCTransportStats extends RTCStats {
activeConnection?: boolean;
bytesReceived?: number;
bytesSent?: number;
localCertificateId?: string;
remoteCertificateId?: string;
rtcpTransportStatsId?: string;
selectedCandidatePairId?: string;
}
interface RegistrationOptions {
scope?: string;
type?: WorkerType;
updateViaCache?: ServiceWorkerUpdateViaCache;
}
interface RequestInit {
body?: BodyInit | null;
cache?: RequestCache;
credentials?: RequestCredentials;
headers?: HeadersInit;
integrity?: string;
keepalive?: boolean;
method?: string;
mode?: RequestMode;
redirect?: RequestRedirect;
referrer?: string;
referrerPolicy?: ReferrerPolicy;
signal?: AbortSignal | null;
window?: any;
}
interface ResponseInit {
headers?: HeadersInit;
status?: number;
statusText?: string;
}
interface RsaHashedImportParams extends Algorithm {
hash: string | Algorithm;
}
interface RsaHashedKeyAlgorithm extends RsaKeyAlgorithm {
hash: KeyAlgorithm;
}
interface RsaHashedKeyGenParams extends RsaKeyGenParams {
hash: string | Algorithm;
}
interface RsaKeyAlgorithm extends KeyAlgorithm {
modulusLength: number;
publicExponent: Uint8Array;
}
interface RsaKeyGenParams extends Algorithm {
modulusLength: number;
publicExponent: Uint8Array;
}
interface RsaOaepParams extends Algorithm {
label?: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
}
interface RsaOtherPrimesInfo {
d?: string;
r?: string;
t?: string;
}
interface RsaPssParams extends Algorithm {
saltLength: number;
}
interface ScopedCredentialDescriptor {
id: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer | null;
transports?: Transport[];
type: ScopedCredentialType;
}
interface ScopedCredentialOptions {
excludeList?: ScopedCredentialDescriptor[];
extensions?: WebAuthnExtensions;
rpId?: string;
timeoutSeconds?: number;
}
interface ScopedCredentialParameters {
algorithm: string | Algorithm;
type: ScopedCredentialType;
}
interface ScrollIntoViewOptions extends ScrollOptions {
block?: ScrollLogicalPosition;
inline?: ScrollLogicalPosition;
}
interface ScrollOptions {
behavior?: ScrollBehavior;
}
interface ScrollToOptions extends ScrollOptions {
left?: number;
top?: number;
}
interface SecurityPolicyViolationEventInit extends EventInit {
blockedURI?: string;
columnNumber?: number;
documentURI?: string;
effectiveDirective?: string;
lineNumber?: number;
originalPolicy?: string;
referrer?: string;
sourceFile?: string;
statusCode?: number;
violatedDirective?: string;
}
interface ServiceWorkerMessageEventInit extends EventInit {
data?: any;
lastEventId?: string;
origin?: string;
ports?: MessagePort[] | null;
source?: ServiceWorker | MessagePort | null;
}
interface SpeechSynthesisEventInit extends EventInit {
charIndex?: number;
charLength?: number;
elapsedTime?: number;
name?: string;
utterance?: SpeechSynthesisUtterance | null;
}
interface StereoPannerOptions extends AudioNodeOptions {
pan?: number;
}
interface StorageEstimate {
quota?: number;
usage?: number;
}
interface StorageEventInit extends EventInit {
key?: string | null;
newValue?: string | null;
oldValue?: string | null;
storageArea?: Storage | null;
url?: string;
}
interface StoreExceptionsInformation extends ExceptionInformation {
detailURI?: string | null;
explanationString?: string | null;
siteName?: string | null;
}
interface StoreSiteSpecificExceptionsInformation extends StoreExceptionsInformation {
arrayOfDomainStrings?: string[];
}
interface SyncEventInit extends ExtendableEventInit {
lastChance?: boolean;
tag: string;
}
interface TextDecodeOptions {
stream?: boolean;
}
interface TextDecoderOptions {
fatal?: boolean;
ignoreBOM?: boolean;
}
interface TouchEventInit extends EventModifierInit {
changedTouches?: Touch[];
targetTouches?: Touch[];
touches?: Touch[];
}
interface TouchInit {
altitudeAngle?: number;
azimuthAngle?: number;
clientX?: number;
clientY?: number;
force?: number;
identifier: number;
pageX?: number;
pageY?: number;
radiusX?: number;
radiusY?: number;
rotationAngle?: number;
screenX?: number;
screenY?: number;
target: EventTarget;
touchType?: TouchType;
}
interface TrackEventInit extends EventInit {
track?: VideoTrack | AudioTrack | TextTrack | null;
}
interface TransitionEventInit extends EventInit {
elapsedTime?: number;
propertyName?: string;
pseudoElement?: string;
}
interface UIEventInit extends EventInit {
detail?: number;
view?: Window | null;
}
interface UnderlyingSink {
abort?: WritableStreamErrorCallback;
close?: WritableStreamDefaultControllerCallback;
start: WritableStreamDefaultControllerCallback;
write?: WritableStreamChunkCallback;
}
interface VRDisplayEventInit extends EventInit {
display: VRDisplay;
reason?: VRDisplayEventReason;
}
interface VRLayer {
leftBounds?: number[] | Float32Array | null;
rightBounds?: number[] | Float32Array | null;
source?: HTMLCanvasElement | null;
}
interface VRStageParameters {
sittingToStandingTransform?: Float32Array;
sizeX?: number;
sizeY?: number;
}
interface WaveShaperOptions extends AudioNodeOptions {
curve?: number[] | Float32Array;
oversample?: OverSampleType;
}
interface WebAuthnExtensions {
}
interface WebGLContextAttributes {
alpha?: boolean;
antialias?: boolean;
depth?: boolean;
failIfMajorPerformanceCaveat?: boolean;
premultipliedAlpha?: boolean;
preserveDrawingBuffer?: boolean;
stencil?: boolean;
}
interface WebGLContextEventInit extends EventInit {
statusMessage?: string;
}
interface WheelEventInit extends MouseEventInit {
deltaMode?: number;
deltaX?: number;
deltaY?: number;
deltaZ?: number;
}
interface WorkletOptions {
credentials?: RequestCredentials;
}
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 AbortController {
readonly signal: AbortSignal;
abort(): void;
}
declare var AbortController: {
prototype: AbortController;
new(): AbortController;
};
interface AbortSignalEventMap {
"abort": ProgressEvent;
}
interface AbortSignal extends EventTarget {
readonly aborted: boolean;
onabort: ((this: AbortSignal, ev: ProgressEvent) => any) | null;
addEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
declare var AbortSignal: {
prototype: AbortSignal;
new(): AbortSignal;
};
interface AbstractWorkerEventMap {
"error": ErrorEvent;
}
interface AbstractWorker {
onerror: ((this: AbstractWorker, ev: ErrorEvent) => any) | null;
addEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
interface AesCfbParams extends Algorithm {
iv: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer;
}
interface AesCmacParams extends Algorithm {
length: 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(context: BaseAudioContext, options?: AnalyserOptions): AnalyserNode;
};
interface Animatable {
animate(keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeAnimationOptions): Animation;
getAnimations(): Animation[];
}
interface AnimationEventMap {
"cancel": AnimationPlaybackEvent;
"finish": AnimationPlaybackEvent;
}
interface Animation extends EventTarget {
currentTime: number | null;
effect: AnimationEffect | null;
readonly finished: Promise<Animation>;
id: string;
oncancel: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;
onfinish: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;
readonly pending: boolean;
readonly playState: AnimationPlayState;
playbackRate: number;
readonly ready: Promise<Animation>;
startTime: number | null;
timeline: AnimationTimeline | null;
cancel(): void;
finish(): void;
pause(): void;
play(): void;
reverse(): void;
updatePlaybackRate(playbackRate: number): void;
addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean