@types/web
Version:
Types for the DOM, and other web technologies in browsers
2,134 lines (1,791 loc) • 2.32 MB
TypeScript
/// <reference path="./iterable.d.ts" />
/// <reference path="./asynciterable.d.ts" />
/////////////////////////////
/// Window APIs
/////////////////////////////
interface AacEncoderConfig {
format?: AacBitstreamFormat;
}
interface AddEventListenerOptions extends EventListenerOptions {
once?: boolean;
passive?: boolean;
signal?: AbortSignal;
}
interface AddressErrors {
addressLine?: string;
city?: string;
country?: string;
dependentLocality?: string;
organization?: string;
phone?: string;
postalCode?: string;
recipient?: string;
region?: string;
sortingCode?: string;
}
interface AesCbcParams extends Algorithm {
iv: BufferSource;
}
interface AesCtrParams extends Algorithm {
counter: BufferSource;
length: number;
}
interface AesDerivedKeyParams extends Algorithm {
length: number;
}
interface AesGcmParams extends Algorithm {
additionalData?: BufferSource;
iv: BufferSource;
tagLength?: number;
}
interface AesKeyAlgorithm extends KeyAlgorithm {
length: number;
}
interface AesKeyGenParams extends Algorithm {
length: number;
}
interface Algorithm {
name: string;
}
interface AllAcceptedCredentialsOptions {
allAcceptedCredentialIds: Base64URLString[];
rpId: string;
userId: Base64URLString;
}
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?: CSSNumberish | null;
timelineTime?: CSSNumberish | null;
}
interface AssignedNodesOptions {
flatten?: boolean;
}
interface AudioBufferOptions {
length: number;
numberOfChannels?: number;
sampleRate: number;
}
interface AudioBufferSourceOptions {
buffer?: AudioBuffer | null;
detune?: number;
loop?: boolean;
loopEnd?: number;
loopStart?: number;
playbackRate?: number;
}
interface AudioConfiguration {
bitrate?: number;
channels?: string;
contentType: string;
samplerate?: number;
spatialRendering?: boolean;
}
interface AudioContextOptions {
latencyHint?: AudioContextLatencyCategory | number;
sampleRate?: number;
}
interface AudioDataCopyToOptions {
format?: AudioSampleFormat;
frameCount?: number;
frameOffset?: number;
planeIndex: number;
}
interface AudioDataInit {
data: BufferSource;
format: AudioSampleFormat;
numberOfChannels: number;
numberOfFrames: number;
sampleRate: number;
timestamp: number;
transfer?: ArrayBuffer[];
}
interface AudioDecoderConfig {
codec: string;
description?: AllowSharedBufferSource;
numberOfChannels: number;
sampleRate: number;
}
interface AudioDecoderInit {
error: WebCodecsErrorCallback;
output: AudioDataOutputCallback;
}
interface AudioDecoderSupport {
config?: AudioDecoderConfig;
supported?: boolean;
}
interface AudioEncoderConfig {
aac?: AacEncoderConfig;
bitrate?: number;
bitrateMode?: BitrateMode;
codec: string;
numberOfChannels: number;
opus?: OpusEncoderConfig;
sampleRate: number;
}
interface AudioEncoderInit {
error: WebCodecsErrorCallback;
output: EncodedAudioChunkOutputCallback;
}
interface AudioEncoderSupport {
config?: AudioEncoderConfig;
supported?: boolean;
}
interface AudioNodeOptions {
channelCount?: number;
channelCountMode?: ChannelCountMode;
channelInterpretation?: ChannelInterpretation;
}
interface AudioProcessingEventInit extends EventInit {
inputBuffer: AudioBuffer;
outputBuffer: AudioBuffer;
playbackTime: number;
}
interface AudioTimestamp {
contextTime?: number;
performanceTime?: DOMHighResTimeStamp;
}
interface AudioWorkletNodeOptions extends AudioNodeOptions {
numberOfInputs?: number;
numberOfOutputs?: number;
outputChannelCount?: number[];
parameterData?: Record<string, number>;
processorOptions?: any;
}
interface AuthenticationExtensionsClientInputs {
appid?: string;
credProps?: boolean;
credentialProtectionPolicy?: string;
enforceCredentialProtectionPolicy?: boolean;
hmacCreateSecret?: boolean;
largeBlob?: AuthenticationExtensionsLargeBlobInputs;
minPinLength?: boolean;
prf?: AuthenticationExtensionsPRFInputs;
}
interface AuthenticationExtensionsClientInputsJSON {
appid?: string;
credProps?: boolean;
largeBlob?: AuthenticationExtensionsLargeBlobInputsJSON;
prf?: AuthenticationExtensionsPRFInputsJSON;
}
interface AuthenticationExtensionsClientOutputs {
appid?: boolean;
credProps?: CredentialPropertiesOutput;
hmacCreateSecret?: boolean;
largeBlob?: AuthenticationExtensionsLargeBlobOutputs;
prf?: AuthenticationExtensionsPRFOutputs;
}
interface AuthenticationExtensionsClientOutputsJSON {
appid?: boolean;
credProps?: CredentialPropertiesOutput;
largeBlob?: AuthenticationExtensionsLargeBlobOutputsJSON;
prf?: AuthenticationExtensionsPRFOutputsJSON;
}
interface AuthenticationExtensionsLargeBlobInputs {
read?: boolean;
support?: string;
write?: BufferSource;
}
interface AuthenticationExtensionsLargeBlobInputsJSON {
read?: boolean;
support?: string;
write?: Base64URLString;
}
interface AuthenticationExtensionsLargeBlobOutputs {
blob?: ArrayBuffer;
supported?: boolean;
written?: boolean;
}
interface AuthenticationExtensionsLargeBlobOutputsJSON {
blob?: Base64URLString;
supported?: boolean;
written?: boolean;
}
interface AuthenticationExtensionsPRFInputs {
eval?: AuthenticationExtensionsPRFValues;
evalByCredential?: Record<string, AuthenticationExtensionsPRFValues>;
}
interface AuthenticationExtensionsPRFInputsJSON {
eval?: AuthenticationExtensionsPRFValuesJSON;
evalByCredential?: Record<string, AuthenticationExtensionsPRFValuesJSON>;
}
interface AuthenticationExtensionsPRFOutputs {
enabled?: boolean;
results?: AuthenticationExtensionsPRFValues;
}
interface AuthenticationExtensionsPRFOutputsJSON {
enabled?: boolean;
results?: AuthenticationExtensionsPRFValuesJSON;
}
interface AuthenticationExtensionsPRFValues {
first: BufferSource;
second?: BufferSource;
}
interface AuthenticationExtensionsPRFValuesJSON {
first: Base64URLString;
second?: Base64URLString;
}
interface AuthenticationResponseJSON {
authenticatorAttachment?: string;
clientExtensionResults: AuthenticationExtensionsClientOutputsJSON;
id: string;
rawId: Base64URLString;
response: AuthenticatorAssertionResponseJSON;
type: string;
}
interface AuthenticatorAssertionResponseJSON {
authenticatorData: Base64URLString;
clientDataJSON: Base64URLString;
signature: Base64URLString;
userHandle?: Base64URLString;
}
interface AuthenticatorAttestationResponseJSON {
attestationObject: Base64URLString;
authenticatorData: Base64URLString;
clientDataJSON: Base64URLString;
publicKey?: Base64URLString;
publicKeyAlgorithm: COSEAlgorithmIdentifier;
transports: string[];
}
interface AuthenticatorSelectionCriteria {
authenticatorAttachment?: AuthenticatorAttachment;
requireResidentKey?: boolean;
residentKey?: ResidentKeyRequirement;
userVerification?: UserVerificationRequirement;
}
interface AvcEncoderConfig {
format?: AvcBitstreamFormat;
}
interface BiquadFilterOptions extends AudioNodeOptions {
Q?: number;
detune?: number;
frequency?: number;
gain?: number;
type?: BiquadFilterType;
}
interface BlobEventInit extends EventInit {
data: Blob;
timecode?: DOMHighResTimeStamp;
}
interface BlobPropertyBag {
endings?: EndingType;
type?: string;
}
interface CSSMatrixComponentOptions {
is2D?: boolean;
}
interface CSSNumericType {
angle?: number;
flex?: number;
frequency?: number;
length?: number;
percent?: number;
percentHint?: CSSNumericBaseType;
resolution?: number;
time?: number;
}
interface CSSStyleSheetInit {
baseURL?: string | null;
disabled?: boolean;
media?: MediaList | string;
}
interface CacheQueryOptions {
ignoreMethod?: boolean;
ignoreSearch?: boolean;
ignoreVary?: boolean;
}
interface CanvasRenderingContext2DSettings {
alpha?: boolean;
colorSpace?: PredefinedColorSpace;
desynchronized?: boolean;
willReadFrequently?: boolean;
}
interface CaretPositionFromPointOptions {
shadowRoots?: ShadowRoot[];
}
interface ChannelMergerOptions extends AudioNodeOptions {
numberOfInputs?: number;
}
interface ChannelSplitterOptions extends AudioNodeOptions {
numberOfOutputs?: number;
}
interface CheckVisibilityOptions {
checkOpacity?: boolean;
checkVisibilityCSS?: boolean;
contentVisibilityAuto?: boolean;
opacityProperty?: boolean;
visibilityProperty?: boolean;
}
interface ClientQueryOptions {
includeUncontrolled?: boolean;
type?: ClientTypes;
}
interface ClipboardEventInit extends EventInit {
clipboardData?: DataTransfer | null;
}
interface ClipboardItemOptions {
presentationStyle?: PresentationStyle;
}
interface CloseEventInit extends EventInit {
code?: number;
reason?: string;
wasClean?: boolean;
}
interface CloseWatcherOptions {
signal?: AbortSignal;
}
interface CommandEventInit extends EventInit {
command?: string;
source?: Element | null;
}
interface CompositionEventInit extends UIEventInit {
data?: string;
}
interface ComputedEffectTiming extends EffectTiming {
activeDuration?: CSSNumberish;
currentIteration?: number | null;
endTime?: CSSNumberish;
localTime?: CSSNumberish | null;
progress?: number | null;
startTime?: CSSNumberish;
}
interface ComputedKeyframe {
composite: CompositeOperationOrAuto;
computedOffset: number;
easing: string;
offset: number | null;
[property: string]: string | number | null | undefined;
}
interface ConstantSourceOptions {
offset?: number;
}
interface ConstrainBooleanOrDOMStringParameters {
exact?: boolean | string;
ideal?: boolean | string;
}
interface ConstrainBooleanParameters {
exact?: boolean;
ideal?: boolean;
}
interface ConstrainDOMStringParameters {
exact?: string | string[];
ideal?: string | string[];
}
interface ConstrainDoubleRange extends DoubleRange {
exact?: number;
ideal?: number;
}
interface ConstrainULongRange extends ULongRange {
exact?: number;
ideal?: number;
}
interface ContentVisibilityAutoStateChangeEventInit extends EventInit {
skipped?: boolean;
}
interface ConvolverOptions extends AudioNodeOptions {
buffer?: AudioBuffer | null;
disableNormalization?: boolean;
}
interface CookieChangeEventInit extends EventInit {
changed?: CookieList;
deleted?: CookieList;
}
interface CookieInit {
domain?: string | null;
expires?: DOMHighResTimeStamp | null;
name: string;
partitioned?: boolean;
path?: string;
sameSite?: CookieSameSite;
value: string;
}
interface CookieListItem {
name?: string;
value?: string;
}
interface CookieStoreDeleteOptions {
domain?: string | null;
name: string;
partitioned?: boolean;
path?: string;
}
interface CookieStoreGetOptions {
name?: string;
url?: string;
}
interface CredentialCreationOptions {
publicKey?: PublicKeyCredentialCreationOptions;
signal?: AbortSignal;
}
interface CredentialPropertiesOutput {
rk?: boolean;
}
interface CredentialRequestOptions {
mediation?: CredentialMediationRequirement;
publicKey?: PublicKeyCredentialRequestOptions;
signal?: AbortSignal;
}
interface CryptoKeyPair {
privateKey: CryptoKey;
publicKey: CryptoKey;
}
interface CurrentUserDetailsOptions {
displayName: string;
name: string;
rpId: string;
userId: Base64URLString;
}
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 DeviceMotionEventAccelerationInit {
x?: number | null;
y?: number | null;
z?: number | null;
}
interface DeviceMotionEventInit extends EventInit {
acceleration?: DeviceMotionEventAccelerationInit;
accelerationIncludingGravity?: DeviceMotionEventAccelerationInit;
interval?: number;
rotationRate?: DeviceMotionEventRotationRateInit;
}
interface DeviceMotionEventRotationRateInit {
alpha?: number | null;
beta?: number | null;
gamma?: number | null;
}
interface DeviceOrientationEventInit extends EventInit {
absolute?: boolean;
alpha?: number | null;
beta?: number | null;
gamma?: number | null;
}
interface DisplayMediaStreamOptions {
audio?: boolean | MediaTrackConstraints;
video?: boolean | MediaTrackConstraints;
}
interface DocumentTimelineOptions {
originTime?: DOMHighResTimeStamp;
}
interface DoubleRange {
max?: number;
min?: number;
}
interface DragEventInit extends MouseEventInit {
dataTransfer?: DataTransfer | null;
}
interface DynamicsCompressorOptions extends AudioNodeOptions {
attack?: number;
knee?: number;
ratio?: number;
release?: number;
threshold?: number;
}
interface EcKeyAlgorithm extends KeyAlgorithm {
namedCurve: NamedCurve;
}
interface EcKeyGenParams extends Algorithm {
namedCurve: NamedCurve;
}
interface EcKeyImportParams extends Algorithm {
namedCurve: NamedCurve;
}
interface EcdhKeyDeriveParams extends Algorithm {
public: CryptoKey;
}
interface EcdsaParams extends Algorithm {
hash: HashAlgorithmIdentifier;
}
interface EffectTiming {
delay?: number;
direction?: PlaybackDirection;
duration?: number | CSSNumericValue | string;
easing?: string;
endDelay?: number;
fill?: FillMode;
iterationStart?: number;
iterations?: number;
playbackRate?: number;
}
interface ElementCreationOptions {
customElementRegistry?: CustomElementRegistry | null;
is?: string;
}
interface ElementDefinitionOptions {
extends?: string;
}
interface EncodedAudioChunkInit {
data: AllowSharedBufferSource;
duration?: number;
timestamp: number;
transfer?: ArrayBuffer[];
type: EncodedAudioChunkType;
}
interface EncodedAudioChunkMetadata {
decoderConfig?: AudioDecoderConfig;
}
interface EncodedVideoChunkInit {
data: AllowSharedBufferSource;
duration?: number;
timestamp: number;
type: EncodedVideoChunkType;
}
interface EncodedVideoChunkMetadata {
decoderConfig?: VideoDecoderConfig;
svc?: SvcOutputMetadata;
}
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;
modifierScrollLock?: boolean;
modifierSuper?: boolean;
modifierSymbol?: boolean;
modifierSymbolLock?: boolean;
shiftKey?: boolean;
}
interface EventSourceInit {
withCredentials?: boolean;
}
interface FilePropertyBag extends BlobPropertyBag {
lastModified?: number;
}
interface FileSystemCreateWritableOptions {
keepExistingData?: boolean;
}
interface FileSystemFlags {
create?: boolean;
exclusive?: boolean;
}
interface FileSystemGetDirectoryOptions {
create?: boolean;
}
interface FileSystemGetFileOptions {
create?: boolean;
}
interface FileSystemRemoveOptions {
recursive?: boolean;
}
interface FocusEventInit extends UIEventInit {
relatedTarget?: EventTarget | null;
}
interface FocusOptions {
focusVisible?: boolean;
preventScroll?: boolean;
}
interface FontFaceDescriptors {
ascentOverride?: string;
descentOverride?: string;
display?: FontDisplay;
featureSettings?: string;
lineGapOverride?: string;
stretch?: string;
style?: string;
unicodeRange?: string;
variationSettings?: string;
weight?: string;
}
interface FontFaceSetLoadEventInit extends EventInit {
fontfaces?: FontFace[];
}
interface FormDataEventInit extends EventInit {
formData: FormData;
}
interface FullscreenOptions {
navigationUI?: FullscreenNavigationUI;
}
interface GPUBindGroupDescriptor extends GPUObjectDescriptorBase {
entries: GPUBindGroupEntry[];
layout: GPUBindGroupLayout;
}
interface GPUBindGroupEntry {
binding: GPUIndex32;
resource: GPUBindingResource;
}
interface GPUBindGroupLayoutDescriptor extends GPUObjectDescriptorBase {
entries: GPUBindGroupLayoutEntry[];
}
interface GPUBindGroupLayoutEntry {
binding: GPUIndex32;
buffer?: GPUBufferBindingLayout;
externalTexture?: GPUExternalTextureBindingLayout;
sampler?: GPUSamplerBindingLayout;
storageTexture?: GPUStorageTextureBindingLayout;
texture?: GPUTextureBindingLayout;
visibility: GPUShaderStageFlags;
}
interface GPUBlendComponent {
dstFactor?: GPUBlendFactor;
operation?: GPUBlendOperation;
srcFactor?: GPUBlendFactor;
}
interface GPUBlendState {
alpha: GPUBlendComponent;
color: GPUBlendComponent;
}
interface GPUBufferBinding {
buffer: GPUBuffer;
offset?: GPUSize64;
size?: GPUSize64;
}
interface GPUBufferBindingLayout {
hasDynamicOffset?: boolean;
minBindingSize?: GPUSize64;
type?: GPUBufferBindingType;
}
interface GPUBufferDescriptor extends GPUObjectDescriptorBase {
mappedAtCreation?: boolean;
size: GPUSize64;
usage: GPUBufferUsageFlags;
}
interface GPUCanvasConfiguration {
alphaMode?: GPUCanvasAlphaMode;
colorSpace?: PredefinedColorSpace;
device: GPUDevice;
format: GPUTextureFormat;
toneMapping?: GPUCanvasToneMapping;
usage?: GPUTextureUsageFlags;
viewFormats?: GPUTextureFormat[];
}
interface GPUCanvasToneMapping {
mode?: GPUCanvasToneMappingMode;
}
interface GPUColorDict {
a: number;
b: number;
g: number;
r: number;
}
interface GPUColorTargetState {
blend?: GPUBlendState;
format: GPUTextureFormat;
writeMask?: GPUColorWriteFlags;
}
interface GPUCommandBufferDescriptor extends GPUObjectDescriptorBase {
}
interface GPUCommandEncoderDescriptor extends GPUObjectDescriptorBase {
}
interface GPUComputePassDescriptor extends GPUObjectDescriptorBase {
timestampWrites?: GPUComputePassTimestampWrites;
}
interface GPUComputePassTimestampWrites {
beginningOfPassWriteIndex?: GPUSize32;
endOfPassWriteIndex?: GPUSize32;
querySet: GPUQuerySet;
}
interface GPUComputePipelineDescriptor extends GPUPipelineDescriptorBase {
compute: GPUProgrammableStage;
}
interface GPUCopyExternalImageDestInfo extends GPUTexelCopyTextureInfo {
colorSpace?: PredefinedColorSpace;
premultipliedAlpha?: boolean;
}
interface GPUCopyExternalImageSourceInfo {
flipY?: boolean;
origin?: GPUOrigin2D;
source: GPUCopyExternalImageSource;
}
interface GPUDepthStencilState {
depthBias?: GPUDepthBias;
depthBiasClamp?: number;
depthBiasSlopeScale?: number;
depthCompare?: GPUCompareFunction;
depthWriteEnabled?: boolean;
format: GPUTextureFormat;
stencilBack?: GPUStencilFaceState;
stencilFront?: GPUStencilFaceState;
stencilReadMask?: GPUStencilValue;
stencilWriteMask?: GPUStencilValue;
}
interface GPUDeviceDescriptor extends GPUObjectDescriptorBase {
defaultQueue?: GPUQueueDescriptor;
requiredFeatures?: GPUFeatureName[];
requiredLimits?: Record<string, GPUSize64 | undefined>;
}
interface GPUExtent3DDict {
depthOrArrayLayers?: GPUIntegerCoordinate;
height?: GPUIntegerCoordinate;
width: GPUIntegerCoordinate;
}
interface GPUExternalTextureBindingLayout {
}
interface GPUExternalTextureDescriptor extends GPUObjectDescriptorBase {
colorSpace?: PredefinedColorSpace;
source: HTMLVideoElement | VideoFrame;
}
interface GPUFragmentState extends GPUProgrammableStage {
targets: (GPUColorTargetState | null)[];
}
interface GPUMultisampleState {
alphaToCoverageEnabled?: boolean;
count?: GPUSize32;
mask?: GPUSampleMask;
}
interface GPUObjectDescriptorBase {
label?: string;
}
interface GPUOrigin2DDict {
x?: GPUIntegerCoordinate;
y?: GPUIntegerCoordinate;
}
interface GPUOrigin3DDict {
x?: GPUIntegerCoordinate;
y?: GPUIntegerCoordinate;
z?: GPUIntegerCoordinate;
}
interface GPUPipelineDescriptorBase extends GPUObjectDescriptorBase {
layout: GPUPipelineLayout | GPUAutoLayoutMode;
}
interface GPUPipelineErrorInit {
reason: GPUPipelineErrorReason;
}
interface GPUPipelineLayoutDescriptor extends GPUObjectDescriptorBase {
bindGroupLayouts: (GPUBindGroupLayout | null)[];
}
interface GPUPrimitiveState {
cullMode?: GPUCullMode;
frontFace?: GPUFrontFace;
stripIndexFormat?: GPUIndexFormat;
topology?: GPUPrimitiveTopology;
unclippedDepth?: boolean;
}
interface GPUProgrammableStage {
constants?: Record<string, GPUPipelineConstantValue>;
entryPoint?: string;
module: GPUShaderModule;
}
interface GPUQuerySetDescriptor extends GPUObjectDescriptorBase {
count: GPUSize32;
type: GPUQueryType;
}
interface GPUQueueDescriptor extends GPUObjectDescriptorBase {
}
interface GPURenderBundleDescriptor extends GPUObjectDescriptorBase {
}
interface GPURenderBundleEncoderDescriptor extends GPURenderPassLayout {
depthReadOnly?: boolean;
stencilReadOnly?: boolean;
}
interface GPURenderPassColorAttachment {
clearValue?: GPUColor;
depthSlice?: GPUIntegerCoordinate;
loadOp: GPULoadOp;
resolveTarget?: GPUTexture | GPUTextureView;
storeOp: GPUStoreOp;
view: GPUTexture | GPUTextureView;
}
interface GPURenderPassDepthStencilAttachment {
depthClearValue?: number;
depthLoadOp?: GPULoadOp;
depthReadOnly?: boolean;
depthStoreOp?: GPUStoreOp;
stencilClearValue?: GPUStencilValue;
stencilLoadOp?: GPULoadOp;
stencilReadOnly?: boolean;
stencilStoreOp?: GPUStoreOp;
view: GPUTexture | GPUTextureView;
}
interface GPURenderPassDescriptor extends GPUObjectDescriptorBase {
colorAttachments: (GPURenderPassColorAttachment | null)[];
depthStencilAttachment?: GPURenderPassDepthStencilAttachment;
maxDrawCount?: GPUSize64;
occlusionQuerySet?: GPUQuerySet;
timestampWrites?: GPURenderPassTimestampWrites;
}
interface GPURenderPassLayout extends GPUObjectDescriptorBase {
colorFormats: (GPUTextureFormat | null)[];
depthStencilFormat?: GPUTextureFormat;
sampleCount?: GPUSize32;
}
interface GPURenderPassTimestampWrites {
beginningOfPassWriteIndex?: GPUSize32;
endOfPassWriteIndex?: GPUSize32;
querySet: GPUQuerySet;
}
interface GPURenderPipelineDescriptor extends GPUPipelineDescriptorBase {
depthStencil?: GPUDepthStencilState;
fragment?: GPUFragmentState;
multisample?: GPUMultisampleState;
primitive?: GPUPrimitiveState;
vertex: GPUVertexState;
}
interface GPURequestAdapterOptions {
forceFallbackAdapter?: boolean;
powerPreference?: GPUPowerPreference;
}
interface GPUSamplerBindingLayout {
type?: GPUSamplerBindingType;
}
interface GPUSamplerDescriptor extends GPUObjectDescriptorBase {
addressModeU?: GPUAddressMode;
addressModeV?: GPUAddressMode;
addressModeW?: GPUAddressMode;
compare?: GPUCompareFunction;
lodMaxClamp?: number;
lodMinClamp?: number;
magFilter?: GPUFilterMode;
maxAnisotropy?: number;
minFilter?: GPUFilterMode;
mipmapFilter?: GPUMipmapFilterMode;
}
interface GPUShaderModuleDescriptor extends GPUObjectDescriptorBase {
code: string;
}
interface GPUStencilFaceState {
compare?: GPUCompareFunction;
depthFailOp?: GPUStencilOperation;
failOp?: GPUStencilOperation;
passOp?: GPUStencilOperation;
}
interface GPUStorageTextureBindingLayout {
access?: GPUStorageTextureAccess;
format: GPUTextureFormat;
viewDimension?: GPUTextureViewDimension;
}
interface GPUTexelCopyBufferInfo extends GPUTexelCopyBufferLayout {
buffer: GPUBuffer;
}
interface GPUTexelCopyBufferLayout {
bytesPerRow?: GPUSize32;
offset?: GPUSize64;
rowsPerImage?: GPUSize32;
}
interface GPUTexelCopyTextureInfo {
aspect?: GPUTextureAspect;
mipLevel?: GPUIntegerCoordinate;
origin?: GPUOrigin3D;
texture: GPUTexture;
}
interface GPUTextureBindingLayout {
multisampled?: boolean;
sampleType?: GPUTextureSampleType;
viewDimension?: GPUTextureViewDimension;
}
interface GPUTextureDescriptor extends GPUObjectDescriptorBase {
dimension?: GPUTextureDimension;
format: GPUTextureFormat;
mipLevelCount?: GPUIntegerCoordinate;
sampleCount?: GPUSize32;
size: GPUExtent3D;
usage: GPUTextureUsageFlags;
viewFormats?: GPUTextureFormat[];
}
interface GPUTextureViewDescriptor extends GPUObjectDescriptorBase {
arrayLayerCount?: GPUIntegerCoordinate;
aspect?: GPUTextureAspect;
baseArrayLayer?: GPUIntegerCoordinate;
baseMipLevel?: GPUIntegerCoordinate;
dimension?: GPUTextureViewDimension;
format?: GPUTextureFormat;
mipLevelCount?: GPUIntegerCoordinate;
usage?: GPUTextureUsageFlags;
}
interface GPUUncapturedErrorEventInit extends EventInit {
error: GPUError;
}
interface GPUVertexAttribute {
format: GPUVertexFormat;
offset: GPUSize64;
shaderLocation: GPUIndex32;
}
interface GPUVertexBufferLayout {
arrayStride: GPUSize64;
attributes: GPUVertexAttribute[];
stepMode?: GPUVertexStepMode;
}
interface GPUVertexState extends GPUProgrammableStage {
buffers?: (GPUVertexBufferLayout | null)[];
}
interface GainOptions extends AudioNodeOptions {
gain?: number;
}
interface GamepadEffectParameters {
duration?: number;
leftTrigger?: number;
rightTrigger?: number;
startDelay?: number;
strongMagnitude?: number;
weakMagnitude?: number;
}
interface GamepadEventInit extends EventInit {
gamepad?: Gamepad | null;
}
interface GetAnimationsOptions {
subtree?: boolean;
}
interface GetComposedRangesOptions {
shadowRoots?: ShadowRoot[];
}
interface GetHTMLOptions {
serializableShadowRoots?: boolean;
shadowRoots?: ShadowRoot[];
}
interface GetNotificationOptions {
tag?: string;
}
interface GetRootNodeOptions {
composed?: boolean;
}
interface HashChangeEventInit extends EventInit {
newURL?: string;
oldURL?: string;
}
interface HkdfParams extends Algorithm {
hash: HashAlgorithmIdentifier;
info: BufferSource;
salt: BufferSource;
}
interface HmacImportParams extends Algorithm {
hash: HashAlgorithmIdentifier;
length?: number;
}
interface HmacKeyAlgorithm extends KeyAlgorithm {
hash: KeyAlgorithm;
length: number;
}
interface HmacKeyGenParams extends Algorithm {
hash: HashAlgorithmIdentifier;
length?: number;
}
interface IDBDatabaseInfo {
name?: string;
version?: number;
}
interface IDBIndexParameters {
multiEntry?: boolean;
unique?: boolean;
}
interface IDBObjectStoreParameters {
autoIncrement?: boolean;
keyPath?: string | string[] | null;
}
interface IDBTransactionOptions {
durability?: IDBTransactionDurability;
}
interface IDBVersionChangeEventInit extends EventInit {
newVersion?: number | null;
oldVersion?: number;
}
interface IIRFilterOptions extends AudioNodeOptions {
feedback: number[];
feedforward: number[];
}
interface IdleRequestOptions {
timeout?: number;
}
interface ImageBitmapOptions {
colorSpaceConversion?: ColorSpaceConversion;
imageOrientation?: ImageOrientation;
premultiplyAlpha?: PremultiplyAlpha;
resizeHeight?: number;
resizeQuality?: ResizeQuality;
resizeWidth?: number;
}
interface ImageBitmapRenderingContextSettings {
alpha?: boolean;
}
interface ImageDataSettings {
colorSpace?: PredefinedColorSpace;
pixelFormat?: ImageDataPixelFormat;
}
interface ImageDecodeOptions {
completeFramesOnly?: boolean;
frameIndex?: number;
}
interface ImageDecodeResult {
complete: boolean;
image: VideoFrame;
}
interface ImageDecoderInit {
colorSpaceConversion?: ColorSpaceConversion;
data: ImageBufferSource;
desiredHeight?: number;
desiredWidth?: number;
preferAnimation?: boolean;
transfer?: ArrayBuffer[];
type: string;
}
interface ImageEncodeOptions {
quality?: number;
type?: string;
}
interface ImportNodeOptions {
customElementRegistry?: CustomElementRegistry;
selfOnly?: boolean;
}
interface InputEventInit extends UIEventInit {
data?: string | null;
dataTransfer?: DataTransfer | null;
inputType?: string;
isComposing?: boolean;
targetRanges?: StaticRange[];
}
interface IntersectionObserverInit {
root?: Element | Document | null;
rootMargin?: string;
scrollMargin?: 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 KeySystemTrackConfiguration {
robustness?: string;
}
interface KeyboardEventInit extends EventModifierInit {
/** @deprecated `charCode` is inconsistent across environments, consider using `key` instead. */
charCode?: number;
code?: string;
isComposing?: boolean;
key?: string;
/** @deprecated `keyCode` is inconsistent across environments, consider using `key` instead. */
keyCode?: number;
location?: number;
repeat?: boolean;
}
interface Keyframe {
composite?: CompositeOperationOrAuto;
easing?: string;
offset?: number | null;
[property: string]: string | number | null | undefined;
}
interface KeyframeAnimationOptions extends KeyframeEffectOptions {
id?: string;
rangeEnd?: TimelineRangeOffset | CSSNumericValue | CSSKeywordValue | string;
rangeStart?: TimelineRangeOffset | CSSNumericValue | CSSKeywordValue | string;
timeline?: AnimationTimeline | null;
}
interface KeyframeEffectOptions extends EffectTiming {
composite?: CompositeOperation;
iterationComposite?: IterationCompositeOperation;
pseudoElement?: string | null;
}
interface LockInfo {
clientId?: string;
mode?: LockMode;
name?: string;
}
interface LockManagerSnapshot {
held?: LockInfo[];
pending?: LockInfo[];
}
interface LockOptions {
ifAvailable?: boolean;
mode?: LockMode;
signal?: AbortSignal;
steal?: boolean;
}
interface MIDIConnectionEventInit extends EventInit {
port?: MIDIPort;
}
interface MIDIMessageEventInit extends EventInit {
data?: Uint8Array;
}
interface MIDIOptions {
software?: boolean;
sysex?: boolean;
}
interface MediaCapabilitiesDecodingInfo extends MediaCapabilitiesInfo {
keySystemAccess: MediaKeySystemAccess | null;
}
interface MediaCapabilitiesEncodingInfo extends MediaCapabilitiesInfo {
}
interface MediaCapabilitiesInfo {
powerEfficient: boolean;
smooth: boolean;
supported: boolean;
}
interface MediaCapabilitiesKeySystemConfiguration {
audio?: KeySystemTrackConfiguration;
distinctiveIdentifier?: MediaKeysRequirement;
initDataType?: string;
keySystem: string;
persistentState?: MediaKeysRequirement;
sessionTypes?: string[];
video?: KeySystemTrackConfiguration;
}
interface MediaConfiguration {
audio?: AudioConfiguration;
video?: VideoConfiguration;
}
interface MediaDecodingConfiguration extends MediaConfiguration {
keySystemConfiguration?: MediaCapabilitiesKeySystemConfiguration;
type: MediaDecodingType;
}
interface MediaElementAudioSourceOptions {
mediaElement: HTMLMediaElement;
}
interface MediaEncodingConfiguration extends MediaConfiguration {
type: MediaEncodingType;
}
interface MediaEncryptedEventInit extends EventInit {
initData?: ArrayBuffer | null;
initDataType?: string;
}
interface MediaImage {
sizes?: string;
src: string;
type?: string;
}
interface MediaKeyMessageEventInit extends EventInit {
message: ArrayBuffer;
messageType: MediaKeyMessageType;
}
interface MediaKeySystemConfiguration {
audioCapabilities?: MediaKeySystemMediaCapability[];
distinctiveIdentifier?: MediaKeysRequirement;
initDataTypes?: string[];
label?: string;
persistentState?: MediaKeysRequirement;
sessionTypes?: string[];
videoCapabilities?: MediaKeySystemMediaCapability[];
}
interface MediaKeySystemMediaCapability {
contentType?: string;
encryptionScheme?: string | null;
robustness?: string;
}
interface MediaKeysPolicy {
minHdcpVersion?: string;
}
interface MediaMetadataInit {
album?: string;
artist?: string;
artwork?: MediaImage[];
title?: string;
}
interface MediaPositionState {
duration?: number;
playbackRate?: number;
position?: number;
}
interface MediaQueryListEventInit extends EventInit {
matches?: boolean;
media?: string;
}
interface MediaRecorderOptions {
audioBitsPerSecond?: number;
bitsPerSecond?: number;
mimeType?: string;
videoBitsPerSecond?: number;
}
interface MediaSessionActionDetails {
action: MediaSessionAction;
fastSeek?: boolean;
seekOffset?: number;
seekTime?: number;
}
interface MediaSettingsRange {
max?: number;
min?: number;
step?: number;
}
interface MediaStreamAudioSourceOptions {
mediaStream: MediaStream;
}
interface MediaStreamConstraints {
audio?: boolean | MediaTrackConstraints;
peerIdentity?: string;
preferCurrentTab?: boolean;
video?: boolean | MediaTrackConstraints;
}
interface MediaStreamTrackEventInit extends EventInit {
track: MediaStreamTrack;
}
interface MediaTrackCapabilities {
aspectRatio?: DoubleRange;
autoGainControl?: boolean[];
backgroundBlur?: boolean[];
channelCount?: ULongRange;
deviceId?: string;
displaySurface?: string;
echoCancellation?: (boolean | string)[];
facingMode?: string[];
frameRate?: DoubleRange;
groupId?: string;
height?: ULongRange;
noiseSuppression?: boolean[];
sampleRate?: ULongRange;
sampleSize?: ULongRange;
width?: ULongRange;
}
interface MediaTrackConstraintSet {
aspectRatio?: ConstrainDouble;
autoGainControl?: ConstrainBoolean;
backgroundBlur?: ConstrainBoolean;
channelCount?: ConstrainULong;
deviceId?: ConstrainDOMString;
displaySurface?: ConstrainDOMString;
echoCancellation?: ConstrainBooleanOrDOMString;
facingMode?: ConstrainDOMString;
frameRate?: ConstrainDouble;
groupId?: ConstrainDOMString;
height?: ConstrainULong;
noiseSuppression?: ConstrainBoolean;
sampleRate?: ConstrainULong;
sampleSize?: ConstrainULong;
width?: ConstrainULong;
}
interface MediaTrackConstraints extends MediaTrackConstraintSet {
advanced?: MediaTrackConstraintSet[];
}
interface MediaTrackSettings {
aspectRatio?: number;
autoGainControl?: boolean;
backgroundBlur?: boolean;
channelCount?: number;
deviceId?: string;
displaySurface?: string;
echoCancellation?: boolean | string;
facingMode?: string;
frameRate?: number;
groupId?: string;
height?: number;
noiseSuppression?: boolean;
sampleRate?: number;
sampleSize?: number;
torch?: boolean;
whiteBalanceMode?: string;
width?: number;
zoom?: number;
}
interface MediaTrackSupportedConstraints {
aspectRatio?: boolean;
autoGainControl?: boolean;
backgroundBlur?: boolean;
channelCount?: boolean;
deviceId?: boolean;
displaySurface?: boolean;
echoCancellation?: boolean;
facingMode?: boolean;
frameRate?: boolean;
groupId?: boolean;
height?: boolean;
noiseSuppression?: boolean;
sampleRate?: boolean;
sampleSize?: boolean;
width?: boolean;
}
interface MessageEventInit<T = any> extends EventInit {
data?: T;
lastEventId?: string;
origin?: string;
ports?: MessagePort[];
source?: MessageEventSource | null;
}
interface MouseEventInit extends EventModifierInit {
button?: number;
buttons?: number;
clientX?: number;
clientY?: number;
movementX?: number;
movementY?: number;
relatedTarget?: EventTarget | null;
screenX?: number;
screenY?: number;
}
interface MultiCacheQueryOptions extends CacheQueryOptions {
cacheName?: string;
}
interface MutationObserverInit {
/** 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. */
attributeFilter?: string[];
/** Set to true if attributes is true or omitted and target's attribute value before the mutation needs to be recorded. */
attributeOldValue?: boolean;
/** Set to true if mutations to target's attributes are to be observed. Can be omitted if attributeOldValue or attributeFilter is specified. */
attributes?: boolean;
/** Set to true if mutations to target's data are to be observed. Can be omitted if characterDataOldValue is specified. */
characterData?: boolean;
/** Set to true if characterData is set to true or omitted and target's data before the mutation needs to be recorded. */
characterDataOldValue?: boolean;
/** Set to true if mutations to target's children are to be observed. */
childList?: boolean;
/** Set to true if mutations to not just target, but also target's descendants are to be observed. */
subtree?: boolean;
}
interface NavigateEventInit extends EventInit {
canIntercept?: boolean;
destination: NavigationDestination;
downloadRequest?: string | null;
formData?: FormData | null;
hasUAVisualTransition?: boolean;
hashChange?: boolean;
info?: any;
navigationType?: NavigationType;
signal: AbortSignal;
sourceElement?: Element | null;
userInitiated?: boolean;
}
interface NavigationCurrentEntryChangeEventInit extends EventInit {
from: NavigationHistoryEntry;
navigationType?: NavigationType | null;
}
interface NavigationInterceptOptions {
focusReset?: NavigationFocusReset;
handler?: NavigationInterceptHandler;
precommitHandler?: NavigationPrecommitHandler;
scroll?: NavigationScrollBehavior;
}
interface NavigationNavigateOptions extends NavigationOptions {
history?: NavigationHistoryBehavior;
state?: any;
}
interface NavigationOptions {
info?: any;
}
interface NavigationPreloadState {
enabled?: boolean;
headerValue?: string;
}
interface NavigationReloadOptions extends NavigationOptions {
state?: any;
}
interface NavigationResult {
committed?: Promise<NavigationHistoryEntry>;
finished?: Promise<NavigationHistoryEntry>;
}
interface NavigationUpdateCurrentEntryOptions {
state: any;
}
interface NotificationOptions {
badge?: string;
body?: string;
data?: any;
dir?: NotificationDirection;
icon?: string;
lang?: string;
requireInteraction?: boolean;
silent?: boolean | null;
tag?: string;
}
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;
playbackRate?: number;
}
interface OpusEncoderConfig {
complexity?: number;
format?: OpusBitstreamFormat;
frameDuration?: number;
packetlossperc?: number;
usedtx?: boolean;
useinbandfec?: boolean;
}
interface OscillatorOptions extends AudioNodeOptions {
detune?: number;
frequency?: number;
periodicWave?: PeriodicWave;
type?: OscillatorType;
}
interface PageRevealEventInit extends EventInit {
viewTransition?: ViewTransition | null;
}
interface PageSwapEventInit extends EventInit {
activation?: NavigationActivation | null;
viewTransition?: ViewTransition | null;
}
interface PageTransitionEventInit extends EventInit {
persisted?: boolean;
}
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 PayerErrors {
email?: string;
name?: string;
phone?: string;
}
interface PaymentCurrencyAmount {
currency: 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;
total?: PaymentItem;
}
interface PaymentDetailsUpdate extends PaymentDetailsBase {
error?: string;
paymentMethodErrors?: any;
shippingAddressErrors?: AddressErrors;
total?: PaymentItem;
}
interface PaymentItem {
amount: PaymentCurrencyAmount;
label: string;
pending?: boolean;
}
interface PaymentMethodChangeEventInit extends PaymentRequestUpdateEventInit {
methodDetails?: any;
methodName?: string;
}
interface PaymentMethodData {
data?: any;
supportedMethods: string;
}
interface PaymentOptions {
requestPayerEmail?: boolean;
requestPayerName?: boolean;
requestPayerPhone?: boolean;
requestShipping?: boolean;
shippingType?: PaymentShippingType;
}
interface PaymentRequestUpdateEventInit extends EventInit {
}
interface PaymentShippingOption {
amount: PaymentCurrencyAmount;
id: string;
label: string;
selected?: boolean;
}
interface PaymentValidationErrors {
error?: string;
payer?: PayerErrors;
shippingAddress?: AddressErrors;
}
interface Pbkdf2Params extends Algorithm {
hash: HashAlgorithmIdentifier;
iterations: number;
salt: BufferSource;
}
interface PerformanceMarkOptions {
detail?: any;
startTime?: DOMHighResTimeStamp;
}
interface PerformanceMeasureOptions {
detail?: any;
duration?: DOMHighResTimeStamp;
end?: string | DOMHighResTimeStamp;
start?: string | DOMHighResTimeStamp;
}
interface PerformanceObserverInit {
buffered?: boolean;
entryTypes?: string[];
type?: string;
}
interface PeriodicWaveConstraints {
disableNormalization?: boolean;
}
interface PeriodicWaveOptions extends PeriodicWaveConstraints {
imag?: number[] | Float32Array;
real?: number[] | Float32Array;
}
interface PermissionDescriptor {
name: PermissionName;
}
interface PhotoCapabilities {
fillLightMode?: FillLightMode[];
imageHeight?: MediaSettingsRange;
imageWidth?: MediaSettingsRange;
redEyeReduction?: RedEyeReduction;
}
interface PhotoSettings {
fillLightMode?: FillLightMode;
imageHeight?: number;
imageWidth?: number;
redEyeReduction?: boolean;
}
interface PictureInPictureEventInit extends EventInit {
pictureInPictureWindow: PictureInPictureWindow;
}
interface PlaneLayout {
offset: number;
stride: number;
}
interface PointerEventInit extends MouseEventInit {
altitudeAngle?: number;
azimuthAngle?: number;
coalescedEvents?: PointerEvent[];
height?: number;
isPrimary?: boolean;
pointerId?: number;
pointerType?: string;
predictedEvents?: PointerEvent[];
pressure?: number;
tangentialPressure?: number;
tiltX?: number;
tiltY?: number;
twist?: number;
width?: number;
}
interface PointerLockOptions {
unadjustedMovement?: boolean;
}
interface PopStateEventInit extends EventInit {
hasUAVisualTransition?: boolean;
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 PropertyDefinition {
inherits: boolean;
initialValue?: string;
name: string;
syntax?: string;
}
interface PropertyIndexedKeyframes {
composite?: CompositeOperationOrAuto | CompositeOperationOrAuto[];
easing?: string | string[];
offset?: number | (number | null)[];
[property: string]: string | string[] | number | null | (number | null)[] | undefined;
}
interface PublicKeyCredentialCreationOptions {
attestation?: AttestationConveyancePreference;
authenticatorSelection?: AuthenticatorSelectionCriteria;
challenge: BufferSource;
excludeCredentials?: PublicKeyCredentialDescriptor[];
extensions?: AuthenticationExtensionsClientInputs;
pubKeyCredParams: PublicKeyCredentialParameters[];
rp: PublicKeyCredentialRpEntity;
timeout?: number;
user: PublicKeyCredentialUserEntity;
}
interface PublicKeyCredentialCreationOptionsJSON {
attestation?: string;
authenticatorSelection?: AuthenticatorSelectionCriteria;
challenge: Base64URLString;
excludeCredentials?: PublicKeyCredentialDescriptorJSON[];
extensions?: AuthenticationExtensionsClientInputsJSON;
hints?: string[];
pubKeyCredParams: PublicKeyCredentialParameters[];
rp: PublicKeyCredentialRpEntity;
timeout?: number;
user: PublicKeyCredentialUserEntityJSON;
}
interface PublicKeyCredentialDescriptor {
id: BufferSource;
transports?: AuthenticatorTransport[];
type: PublicKeyCredentialType;
}
interface PublicKeyCredentialDescriptorJSON {
id: Base64URLString;
transports?: string[];
type: string;
}
interface PublicKeyCredentialEntity {
name: string;
}
interface PublicKeyCredentialParameters {
alg: COSEAlgorithmIdentifier;
type: PublicKeyCredentialType;
}
interface PublicKeyCredentialRequestOptions {
allowCredentials?: PublicKeyCredentialDescriptor[];
challenge: BufferSource;
extensions?: AuthenticationExtensionsClientInputs;
rpId?: string;
timeout?: number;
userVerification?: UserVerificationRequirement;
}
interface PublicKeyCredentialRequestOptionsJSON {
allowCredentials?: PublicKeyCredentialDescriptorJSON[];
challenge: Base64URLString;
extensions?: AuthenticationExtensionsClientInputsJSON;
hints?: string[];
rpId?: string;
timeout?: number;
userVerification?: string;
}
interface PublicKeyCredentialRpEntity extends PublicKeyCredentialEntity {
id?: string;
}
interface PublicKeyCredentialUserEntity extends PublicKeyCredentialEntity {
displayName: string;
id: BufferSource;
}
interface PublicKeyCredentialUserEntityJSON {
displayName: string;
id: Base64URLString;
name: string;
}
interface PushSubscriptionJSON {
endpoint?: string;
expirationTime?: EpochTimeStamp | null;
keys?: Record<string, string>;
}
interface PushSubscriptionOptionsInit {
applicationServerKey?: BufferSource | string | null;
userVisibleOnly?: boolean;
}
interface QueuingStrategy<T = any> {
highWaterMark?: number;
size?: QueuingStrategySize<T>;
}
interface QueuingStrategyInit {
/**
* Creates a new ByteLengthQueuingStrategy with the provided high water mark.
*
* Note that the provided high water mark will not be validated ahead of time. Instead, if it is negative, NaN, or not a number, the resulting ByteLengthQueuingStrategy will cause the corresponding stream constructor to throw.
*/
highWaterMark: number;
}
interface RTCAnswerOptions extends RTCOfferAnswerOptions {
}
interface RTCCertificateExpiration {
expires?: number;
}
interface RTCConfiguration {
bundlePolicy?: RTCBundlePolicy;
certificates?: RTCCertificate[];
iceCandidatePoolSize?: number;
iceServers?: RTCIceServer[];
iceTransportPolicy?: RTCIceTransportPolicy;
rtcpMuxPolicy?: RTCRtcpMuxPolicy;
}
interface RTCDTMFToneChangeEventInit extends EventInit {
tone?: string;
}
interface RTCDataChannelEventInit extends EventInit {
channel: RTCDataChannel;
}
interface RTCDataChannelInit {
id?: number;
maxPacketLifeTime?: n