Dom update 2022-10-25 (#51300)

* Update DOM

Looks like the changes are:

- AbortSignal.abort finally has the right type.
- Add OffscreenCanvas support
- Some new properties scattered around, some properties now allow `null`.
- rename VideoFrameMetadata -> VideoFrameCallbackMetadata
- Add CSSContainerRule, EXT_texture_norm16, OES_draw_buffers_indexed
- Some type aliases include more types in their union.

* Update baselines
This commit is contained in:
Nathan Shively-Sanders
2022-10-25 17:04:55 -07:00
committed by GitHub
parent 9c4e14d751
commit 170a17fad5
12 changed files with 333 additions and 37 deletions
+111 -14
View File
@@ -117,11 +117,13 @@ interface AudioWorkletNodeOptions extends AudioNodeOptions {
interface AuthenticationExtensionsClientInputs {
appid?: string;
credProps?: boolean;
hmacCreateSecret?: boolean;
}
interface AuthenticationExtensionsClientOutputs {
appid?: boolean;
credProps?: CredentialPropertiesOutput;
hmacCreateSecret?: boolean;
}
interface AuthenticatorSelectionCriteria {
@@ -1324,6 +1326,7 @@ interface RTCInboundRtpStreamStats extends RTCReceivedRtpStreamStats {
frameHeight?: number;
frameWidth?: number;
framesDecoded?: number;
framesDropped?: number;
framesPerSecond?: number;
framesReceived?: number;
headerBytesReceived?: number;
@@ -1343,6 +1346,7 @@ interface RTCInboundRtpStreamStats extends RTCReceivedRtpStreamStats {
totalAudioEnergy?: number;
totalDecodeTime?: number;
totalInterFrameDelay?: number;
totalProcessingDelay?: number;
totalSamplesDuration?: number;
totalSamplesReceived?: number;
totalSquaredInterFrameDelay?: number;
@@ -1401,7 +1405,6 @@ interface RTCPeerConnectionIceEventInit extends EventInit {
}
interface RTCReceivedRtpStreamStats extends RTCRtpStreamStats {
framesDropped?: number;
jitter?: number;
packetsLost?: number;
packetsReceived?: number;
@@ -1446,6 +1449,8 @@ interface RTCRtpContributingSource {
interface RTCRtpEncodingParameters extends RTCRtpCodingParameters {
active?: boolean;
maxBitrate?: number;
maxFramerate?: number;
networkPriority?: RTCPriorityType;
priority?: RTCPriorityType;
scaleResolutionDownBy?: number;
}
@@ -1866,10 +1871,10 @@ interface ValidityStateFlags {
}
interface VideoColorSpaceInit {
fullRange?: boolean;
matrix?: VideoMatrixCoefficients;
primaries?: VideoColorPrimaries;
transfer?: VideoTransferCharacteristics;
fullRange?: boolean | null;
matrix?: VideoMatrixCoefficients | null;
primaries?: VideoColorPrimaries | null;
transfer?: VideoTransferCharacteristics | null;
}
interface VideoConfiguration {
@@ -1884,7 +1889,7 @@ interface VideoConfiguration {
width: number;
}
interface VideoFrameMetadata {
interface VideoFrameCallbackMetadata {
captureTime?: DOMHighResTimeStamp;
expectedDisplayTime: DOMHighResTimeStamp;
height: number;
@@ -2046,7 +2051,7 @@ interface AbortSignal extends EventTarget {
declare var AbortSignal: {
prototype: AbortSignal;
new(): AbortSignal;
// abort(): AbortSignal; - To be re-added in the future
abort(reason?: any): AbortSignal;
timeout(milliseconds: number): AbortSignal;
};
@@ -2182,7 +2187,7 @@ declare var AnimationPlaybackEvent: {
};
interface AnimationTimeline {
readonly currentTime: number | null;
readonly currentTime: CSSNumberish | null;
}
declare var AnimationTimeline: {
@@ -2435,6 +2440,8 @@ declare var AuthenticatorAssertionResponse: {
interface AuthenticatorAttestationResponse extends AuthenticatorResponse {
readonly attestationObject: ArrayBuffer;
getAuthenticatorData(): ArrayBuffer;
getPublicKey(): ArrayBuffer | null;
getPublicKeyAlgorithm(): COSEAlgorithmIdentifier;
getTransports(): string[];
}
@@ -2634,6 +2641,14 @@ declare var CSSConditionRule: {
new(): CSSConditionRule;
};
interface CSSContainerRule extends CSSConditionRule {
}
declare var CSSContainerRule: {
prototype: CSSContainerRule;
new(): CSSContainerRule;
};
interface CSSCounterStyleRule extends CSSRule {
additiveSymbols: string;
fallback: string;
@@ -2943,6 +2958,9 @@ interface CSSStyleDeclaration {
columnWidth: string;
columns: string;
contain: string;
container: string;
containerName: string;
containerType: string;
content: string;
counterIncrement: string;
counterReset: string;
@@ -3011,6 +3029,7 @@ interface CSSStyleDeclaration {
gridTemplateColumns: string;
gridTemplateRows: string;
height: string;
hyphenateCharacter: string;
hyphens: string;
/** @deprecated */
imageOrientation: string;
@@ -3087,6 +3106,7 @@ interface CSSStyleDeclaration {
outlineWidth: string;
overflow: string;
overflowAnchor: string;
overflowClipMargin: string;
overflowWrap: string;
overflowX: string;
overflowY: string;
@@ -3544,6 +3564,7 @@ interface CanvasPath {
moveTo(x: number, y: number): void;
quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
rect(x: number, y: number, w: number, h: number): void;
roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | (number | DOMPointInit)[]): void;
}
interface CanvasPathDrawingStyles {
@@ -4950,6 +4971,17 @@ interface EXT_texture_filter_anisotropic {
readonly TEXTURE_MAX_ANISOTROPY_EXT: GLenum;
}
interface EXT_texture_norm16 {
readonly R16_EXT: GLenum;
readonly R16_SNORM_EXT: GLenum;
readonly RG16_EXT: GLenum;
readonly RG16_SNORM_EXT: GLenum;
readonly RGB16_EXT: GLenum;
readonly RGB16_SNORM_EXT: GLenum;
readonly RGBA16_EXT: GLenum;
readonly RGBA16_SNORM_EXT: GLenum;
}
interface ElementEventMap {
"fullscreenchange": Event;
"fullscreenerror": Event;
@@ -6290,6 +6322,7 @@ interface HTMLCanvasElement extends HTMLElement {
* @param type The standard MIME type for the image format to return. If you do not specify this parameter, the default value is a PNG format image.
*/
toDataURL(type?: string, quality?: any): string;
transferControlToOffscreen(): OffscreenCanvas;
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
@@ -9004,7 +9037,7 @@ declare var ImageBitmap: {
interface ImageBitmapRenderingContext {
/** Returns the canvas element that the context is bound to. */
readonly canvas: HTMLCanvasElement;
readonly canvas: HTMLCanvasElement | OffscreenCanvas;
/** Transfers the underlying bitmap data from imageBitmap to context, and the bitmap becomes the contents of the canvas element to which context is bound. */
transferFromImageBitmap(bitmap: ImageBitmap | null): void;
}
@@ -9035,6 +9068,7 @@ interface InnerHTML {
innerHTML: string;
}
/** Available only in secure contexts. */
interface InputDeviceInfo extends MediaDeviceInfo {
}
@@ -10239,6 +10273,16 @@ declare var Notification: {
requestPermission(deprecatedCallback?: NotificationPermissionCallback): Promise<NotificationPermission>;
};
interface OES_draw_buffers_indexed {
blendEquationSeparateiOES(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum): void;
blendEquationiOES(buf: GLuint, mode: GLenum): void;
blendFuncSeparateiOES(buf: GLuint, srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
blendFunciOES(buf: GLuint, src: GLenum, dst: GLenum): void;
colorMaskiOES(buf: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean): void;
disableiOES(target: GLenum, index: GLuint): void;
enableiOES(target: GLenum, index: GLuint): void;
}
/** The OES_element_index_uint extension is part of the WebGL API and adds support for gl.UNSIGNED_INT types to WebGLRenderingContext.drawElements(). */
interface OES_element_index_uint {
}
@@ -10317,6 +10361,57 @@ declare var OfflineAudioContext: {
new(numberOfChannels: number, length: number, sampleRate: number): OfflineAudioContext;
};
interface OffscreenCanvasEventMap {
"contextlost": Event;
"contextrestored": Event;
}
interface OffscreenCanvas extends EventTarget {
/**
* These attributes return the dimensions of the OffscreenCanvas object's bitmap.
*
* They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
*/
height: number;
oncontextlost: ((this: OffscreenCanvas, ev: Event) => any) | null;
oncontextrestored: ((this: OffscreenCanvas, ev: Event) => any) | null;
/**
* These attributes return the dimensions of the OffscreenCanvas object's bitmap.
*
* They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
*/
width: number;
/**
* Returns an object that exposes an API for drawing on the OffscreenCanvas object. contextId specifies the desired API: "2d", "bitmaprenderer", "webgl", or "webgl2". options is handled by that API.
*
* This specification defines the "2d" context below, which is similar but distinct from the "2d" context that is created from a canvas element. The WebGL specifications define the "webgl" and "webgl2" contexts. [WEBGL]
*
* Returns null if the canvas has already been initialized with another context type (e.g., trying to get a "2d" context after getting a "webgl" context).
*/
getContext(contextId: OffscreenRenderingContextId, options?: any): OffscreenRenderingContext | null;
/** Returns a newly created ImageBitmap object with the image in the OffscreenCanvas object. The image in the OffscreenCanvas object is replaced with a new blank image. */
transferToImageBitmap(): ImageBitmap;
addEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
declare var OffscreenCanvas: {
prototype: OffscreenCanvas;
new(width: number, height: number): OffscreenCanvas;
};
interface OffscreenCanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPath, CanvasPathDrawingStyles, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform {
readonly canvas: OffscreenCanvas;
commit(): void;
}
declare var OffscreenCanvasRenderingContext2D: {
prototype: OffscreenCanvasRenderingContext2D;
new(): OffscreenCanvasRenderingContext2D;
};
/** The OscillatorNode interface represents a periodic waveform, such as a sine wave. It is an AudioScheduledSourceNode audio-processing module that causes a specified frequency of a given wave to be created—in effect, a constant tone. */
interface OscillatorNode extends AudioScheduledSourceNode {
readonly detune: AudioParam;
@@ -16027,7 +16122,7 @@ declare var WebGLRenderingContext: {
};
interface WebGLRenderingContextBase {
readonly canvas: HTMLCanvasElement;
readonly canvas: HTMLCanvasElement | OffscreenCanvas;
readonly drawingBufferHeight: GLsizei;
readonly drawingBufferWidth: GLsizei;
activeTexture(texture: GLenum): void;
@@ -17505,7 +17600,7 @@ interface UnderlyingSourceStartCallback<R> {
}
interface VideoFrameRequestCallback {
(now: DOMHighResTimeStamp, metadata: VideoFrameMetadata): void;
(now: DOMHighResTimeStamp, metadata: VideoFrameCallbackMetadata): void;
}
interface VoidFunction {
@@ -18182,7 +18277,7 @@ type BodyInit = ReadableStream | XMLHttpRequestBodyInit;
type BufferSource = ArrayBufferView | ArrayBuffer;
type COSEAlgorithmIdentifier = number;
type CSSNumberish = number;
type CanvasImageSource = HTMLOrSVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap;
type CanvasImageSource = HTMLOrSVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas;
type ClipboardItemData = Promise<string | Blob>;
type ClipboardItems = ClipboardItem[];
type ConstrainBoolean = boolean | ConstrainBooleanParameters;
@@ -18219,6 +18314,7 @@ type MediaProvider = MediaStream | MediaSource | Blob;
type MessageEventSource = WindowProxy | MessagePort | ServiceWorker;
type MutationRecordType = "attributes" | "characterData" | "childList";
type NamedCurve = string;
type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
type OnBeforeUnloadEventHandler = OnBeforeUnloadEventHandlerNonNull | null;
type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
type PerformanceEntryList = PerformanceEntry[];
@@ -18227,9 +18323,9 @@ type ReadableStreamReadResult<T> = ReadableStreamReadValueResult<T> | ReadableSt
type ReadableStreamReader<T> = ReadableStreamDefaultReader<T> | ReadableStreamBYOBReader;
type RenderingContext = CanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
type RequestInfo = Request | string;
type TexImageSource = ImageBitmap | ImageData | HTMLImageElement | HTMLCanvasElement | HTMLVideoElement;
type TexImageSource = ImageBitmap | ImageData | HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | OffscreenCanvas;
type TimerHandler = string | Function;
type Transferable = ImageBitmap | MessagePort | ReadableStream | WritableStream | TransformStream | ArrayBuffer;
type Transferable = OffscreenCanvas | ImageBitmap | MessagePort | ReadableStream | WritableStream | TransformStream | ArrayBuffer;
type Uint32List = Uint32Array | GLuint[];
type VibratePattern = number | number[];
type WindowProxy = Window;
@@ -18309,6 +18405,7 @@ type MediaStreamTrackState = "ended" | "live";
type NavigationTimingType = "back_forward" | "navigate" | "prerender" | "reload";
type NotificationDirection = "auto" | "ltr" | "rtl";
type NotificationPermission = "default" | "denied" | "granted";
type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2" | "webgpu";
type OrientationLockType = "any" | "landscape" | "landscape-primary" | "landscape-secondary" | "natural" | "portrait" | "portrait-primary" | "portrait-secondary";
type OrientationType = "landscape-primary" | "landscape-secondary" | "portrait-primary" | "portrait-secondary";
type OscillatorType = "custom" | "sawtooth" | "sine" | "square" | "triangle";
+6 -2
View File
@@ -26,6 +26,10 @@ interface Cache {
addAll(requests: Iterable<RequestInfo>): Promise<void>;
}
interface CanvasPath {
roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | Iterable<number | DOMPointInit>): void;
}
interface CanvasPathDrawingStyles {
setLineDash(segments: Iterable<number>): void;
}
@@ -253,8 +257,8 @@ interface WEBGL_draw_buffers {
interface WEBGL_multi_draw {
multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: GLuint, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: GLuint, drawcount: GLsizei): void;
multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: GLuint, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLint>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLint>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, drawcount: GLsizei): void;
}
interface WebGL2RenderingContextBase {
+194 -7
View File
@@ -679,10 +679,10 @@ interface UnderlyingSource<R = any> {
}
interface VideoColorSpaceInit {
fullRange?: boolean;
matrix?: VideoMatrixCoefficients;
primaries?: VideoColorPrimaries;
transfer?: VideoTransferCharacteristics;
fullRange?: boolean | null;
matrix?: VideoMatrixCoefficients | null;
primaries?: VideoColorPrimaries | null;
transfer?: VideoTransferCharacteristics | null;
}
interface VideoConfiguration {
@@ -732,7 +732,7 @@ interface AbortController {
/** Returns the AbortSignal object associated with this object. */
readonly signal: AbortSignal;
/** Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted. */
// abort(): AbortSignal; - To be re-added in the future
abort(reason?: any): void;
}
declare var AbortController: {
@@ -878,6 +878,44 @@ declare var CacheStorage: {
new(): CacheStorage;
};
interface CanvasCompositing {
globalAlpha: number;
globalCompositeOperation: GlobalCompositeOperation;
}
interface CanvasDrawImage {
drawImage(image: CanvasImageSource, dx: number, dy: number): void;
drawImage(image: CanvasImageSource, dx: number, dy: number, dw: number, dh: number): void;
drawImage(image: CanvasImageSource, sx: number, sy: number, sw: number, sh: number, dx: number, dy: number, dw: number, dh: number): void;
}
interface CanvasDrawPath {
beginPath(): void;
clip(fillRule?: CanvasFillRule): void;
clip(path: Path2D, fillRule?: CanvasFillRule): void;
fill(fillRule?: CanvasFillRule): void;
fill(path: Path2D, fillRule?: CanvasFillRule): void;
isPointInPath(x: number, y: number, fillRule?: CanvasFillRule): boolean;
isPointInPath(path: Path2D, x: number, y: number, fillRule?: CanvasFillRule): boolean;
isPointInStroke(x: number, y: number): boolean;
isPointInStroke(path: Path2D, x: number, y: number): boolean;
stroke(): void;
stroke(path: Path2D): void;
}
interface CanvasFillStrokeStyles {
fillStyle: string | CanvasGradient | CanvasPattern;
strokeStyle: string | CanvasGradient | CanvasPattern;
createConicGradient(startAngle: number, x: number, y: number): CanvasGradient;
createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
createPattern(image: CanvasImageSource, repetition: string | null): CanvasPattern | null;
createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
}
interface CanvasFilters {
filter: string;
}
/** An opaque object describing a gradient. It is returned by the methods CanvasRenderingContext2D.createLinearGradient() or CanvasRenderingContext2D.createRadialGradient(). */
interface CanvasGradient {
/**
@@ -893,6 +931,19 @@ declare var CanvasGradient: {
new(): CanvasGradient;
};
interface CanvasImageData {
createImageData(sw: number, sh: number, settings?: ImageDataSettings): ImageData;
createImageData(imagedata: ImageData): ImageData;
getImageData(sx: number, sy: number, sw: number, sh: number, settings?: ImageDataSettings): ImageData;
putImageData(imagedata: ImageData, dx: number, dy: number): void;
putImageData(imagedata: ImageData, dx: number, dy: number, dirtyX: number, dirtyY: number, dirtyWidth: number, dirtyHeight: number): void;
}
interface CanvasImageSmoothing {
imageSmoothingEnabled: boolean;
imageSmoothingQuality: ImageSmoothingQuality;
}
interface CanvasPath {
arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
@@ -903,6 +954,17 @@ interface CanvasPath {
moveTo(x: number, y: number): void;
quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
rect(x: number, y: number, w: number, h: number): void;
roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | (number | DOMPointInit)[]): void;
}
interface CanvasPathDrawingStyles {
lineCap: CanvasLineCap;
lineDashOffset: number;
lineJoin: CanvasLineJoin;
lineWidth: number;
miterLimit: number;
getLineDash(): number[];
setLineDash(segments: number[]): void;
}
/** An opaque object describing a pattern, based on an image, a canvas, or a video, created by the CanvasRenderingContext2D.createPattern() method. */
@@ -916,6 +978,49 @@ declare var CanvasPattern: {
new(): CanvasPattern;
};
interface CanvasRect {
clearRect(x: number, y: number, w: number, h: number): void;
fillRect(x: number, y: number, w: number, h: number): void;
strokeRect(x: number, y: number, w: number, h: number): void;
}
interface CanvasShadowStyles {
shadowBlur: number;
shadowColor: string;
shadowOffsetX: number;
shadowOffsetY: number;
}
interface CanvasState {
restore(): void;
save(): void;
}
interface CanvasText {
fillText(text: string, x: number, y: number, maxWidth?: number): void;
measureText(text: string): TextMetrics;
strokeText(text: string, x: number, y: number, maxWidth?: number): void;
}
interface CanvasTextDrawingStyles {
direction: CanvasDirection;
font: string;
fontKerning: CanvasFontKerning;
textAlign: CanvasTextAlign;
textBaseline: CanvasTextBaseline;
}
interface CanvasTransform {
getTransform(): DOMMatrix;
resetTransform(): void;
rotate(angle: number): void;
scale(x: number, y: number): void;
setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
setTransform(transform?: DOMMatrix2DInit): void;
transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
translate(x: number, y: number): void;
}
/** The Client interface represents an executable context such as a Worker, or a SharedWorker. Window clients are represented by the more-specific WindowClient. You can get Client/WindowClient objects from methods such as Clients.matchAll() and Clients.get(). */
interface Client {
readonly frameType: FrameType;
@@ -1342,6 +1447,17 @@ interface EXT_texture_filter_anisotropic {
readonly TEXTURE_MAX_ANISOTROPY_EXT: GLenum;
}
interface EXT_texture_norm16 {
readonly R16_EXT: GLenum;
readonly R16_SNORM_EXT: GLenum;
readonly RG16_EXT: GLenum;
readonly RG16_SNORM_EXT: GLenum;
readonly RGB16_EXT: GLenum;
readonly RGB16_SNORM_EXT: GLenum;
readonly RGBA16_EXT: GLenum;
readonly RGBA16_SNORM_EXT: GLenum;
}
/** Events providing information related to errors in scripts or in files. */
interface ErrorEvent extends Event {
readonly colno: number;
@@ -2376,6 +2492,16 @@ declare var NotificationEvent: {
new(type: string, eventInitDict: NotificationEventInit): NotificationEvent;
};
interface OES_draw_buffers_indexed {
blendEquationSeparateiOES(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum): void;
blendEquationiOES(buf: GLuint, mode: GLenum): void;
blendFuncSeparateiOES(buf: GLuint, srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
blendFunciOES(buf: GLuint, src: GLenum, dst: GLenum): void;
colorMaskiOES(buf: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean): void;
disableiOES(target: GLenum, index: GLuint): void;
enableiOES(target: GLenum, index: GLuint): void;
}
/** The OES_element_index_uint extension is part of the WebGL API and adds support for gl.UNSIGNED_INT types to WebGLRenderingContext.drawElements(). */
interface OES_element_index_uint {
}
@@ -2421,10 +2547,57 @@ interface OVR_multiview2 {
readonly MAX_VIEWS_OVR: GLenum;
}
/** @deprecated this is not available in most browsers */
interface OffscreenCanvas extends EventTarget {
interface OffscreenCanvasEventMap {
"contextlost": Event;
"contextrestored": Event;
}
interface OffscreenCanvas extends EventTarget {
/**
* These attributes return the dimensions of the OffscreenCanvas object's bitmap.
*
* They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
*/
height: number;
oncontextlost: ((this: OffscreenCanvas, ev: Event) => any) | null;
oncontextrestored: ((this: OffscreenCanvas, ev: Event) => any) | null;
/**
* These attributes return the dimensions of the OffscreenCanvas object's bitmap.
*
* They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
*/
width: number;
/**
* Returns an object that exposes an API for drawing on the OffscreenCanvas object. contextId specifies the desired API: "2d", "bitmaprenderer", "webgl", or "webgl2". options is handled by that API.
*
* This specification defines the "2d" context below, which is similar but distinct from the "2d" context that is created from a canvas element. The WebGL specifications define the "webgl" and "webgl2" contexts. [WEBGL]
*
* Returns null if the canvas has already been initialized with another context type (e.g., trying to get a "2d" context after getting a "webgl" context).
*/
getContext(contextId: OffscreenRenderingContextId, options?: any): OffscreenRenderingContext | null;
/** Returns a newly created ImageBitmap object with the image in the OffscreenCanvas object. The image in the OffscreenCanvas object is replaced with a new blank image. */
transferToImageBitmap(): ImageBitmap;
addEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
declare var OffscreenCanvas: {
prototype: OffscreenCanvas;
new(width: number, height: number): OffscreenCanvas;
};
interface OffscreenCanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPath, CanvasPathDrawingStyles, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform {
readonly canvas: OffscreenCanvas;
commit(): void;
}
declare var OffscreenCanvasRenderingContext2D: {
prototype: OffscreenCanvasRenderingContext2D;
new(): OffscreenCanvasRenderingContext2D;
};
/** This Canvas 2D API interface is used to declare a path that can then be used on a CanvasRenderingContext2D object. The path methods of the CanvasRenderingContext2D interface are also present on this interface, which gives you the convenience of being able to retain and replay your path whenever desired. */
interface Path2D extends CanvasPath {
/** Adds to the path the path given by the argument. */
@@ -5920,6 +6093,7 @@ type ImageBitmapSource = CanvasImageSource | Blob | ImageData;
type Int32List = Int32Array | GLint[];
type MessageEventSource = MessagePort | ServiceWorker;
type NamedCurve = string;
type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
type PerformanceEntryList = PerformanceEntry[];
type PushMessageDataInit = BufferSource | string;
@@ -5934,6 +6108,16 @@ type Uint32List = Uint32Array | GLuint[];
type VibratePattern = number | number[];
type XMLHttpRequestBodyInit = Blob | BufferSource | FormData | URLSearchParams | string;
type BinaryType = "arraybuffer" | "blob";
type CanvasDirection = "inherit" | "ltr" | "rtl";
type CanvasFillRule = "evenodd" | "nonzero";
type CanvasFontKerning = "auto" | "none" | "normal";
type CanvasFontStretch = "condensed" | "expanded" | "extra-condensed" | "extra-expanded" | "normal" | "semi-condensed" | "semi-expanded" | "ultra-condensed" | "ultra-expanded";
type CanvasFontVariantCaps = "all-petite-caps" | "all-small-caps" | "normal" | "petite-caps" | "small-caps" | "titling-caps" | "unicase";
type CanvasLineCap = "butt" | "round" | "square";
type CanvasLineJoin = "bevel" | "miter" | "round";
type CanvasTextAlign = "center" | "end" | "left" | "right" | "start";
type CanvasTextBaseline = "alphabetic" | "bottom" | "hanging" | "ideographic" | "middle" | "top";
type CanvasTextRendering = "auto" | "geometricPrecision" | "optimizeLegibility" | "optimizeSpeed";
type ClientTypes = "all" | "sharedworker" | "window" | "worker";
type ColorGamut = "p3" | "rec2020" | "srgb";
type ColorSpaceConversion = "default" | "none";
@@ -5943,12 +6127,14 @@ type FileSystemHandleKind = "directory" | "file";
type FontFaceLoadStatus = "error" | "loaded" | "loading" | "unloaded";
type FontFaceSetLoadStatus = "loaded" | "loading";
type FrameType = "auxiliary" | "nested" | "none" | "top-level";
type GlobalCompositeOperation = "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor";
type HdrMetadataType = "smpteSt2086" | "smpteSt2094-10" | "smpteSt2094-40";
type IDBCursorDirection = "next" | "nextunique" | "prev" | "prevunique";
type IDBRequestReadyState = "done" | "pending";
type IDBTransactionDurability = "default" | "relaxed" | "strict";
type IDBTransactionMode = "readonly" | "readwrite" | "versionchange";
type ImageOrientation = "flipY" | "none";
type ImageSmoothingQuality = "high" | "low" | "medium";
type KeyFormat = "jwk" | "pkcs8" | "raw" | "spki";
type KeyType = "private" | "public" | "secret";
type KeyUsage = "decrypt" | "deriveBits" | "deriveKey" | "encrypt" | "sign" | "unwrapKey" | "verify" | "wrapKey";
@@ -5957,6 +6143,7 @@ type MediaDecodingType = "file" | "media-source" | "webrtc";
type MediaEncodingType = "record" | "webrtc";
type NotificationDirection = "auto" | "ltr" | "rtl";
type NotificationPermission = "default" | "denied" | "granted";
type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2" | "webgpu";
type PermissionName = "geolocation" | "notifications" | "persistent-storage" | "push" | "screen-wake-lock" | "xr-spatial-tracking";
type PermissionState = "denied" | "granted" | "prompt";
type PredefinedColorSpace = "display-p3" | "srgb";
+10 -2
View File
@@ -6,6 +6,14 @@ interface Cache {
addAll(requests: Iterable<RequestInfo>): Promise<void>;
}
interface CanvasPath {
roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | Iterable<number | DOMPointInit>): void;
}
interface CanvasPathDrawingStyles {
setLineDash(segments: Iterable<number>): void;
}
interface DOMStringList {
[Symbol.iterator](): IterableIterator<string>;
}
@@ -83,8 +91,8 @@ interface WEBGL_draw_buffers {
interface WEBGL_multi_draw {
multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: GLuint, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: GLuint, drawcount: GLsizei): void;
multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: GLuint, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLint>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLint>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: GLuint, drawcount: GLsizei): void;
multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: GLuint, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: GLuint, drawcount: GLsizei): void;
}
interface WebGL2RenderingContextBase {
@@ -21,7 +21,7 @@ tests/cases/compiler/baseCheck.ts(26,9): error TS2304: Cannot find name 'x'.
super(0, loc);
~~~
!!! error TS2552: Cannot find name 'loc'. Did you mean 'Lock'?
!!! related TS2728 /.ts/lib.dom.d.ts:9241:13: 'Lock' is declared here.
!!! related TS2728 /.ts/lib.dom.d.ts:9275:13: 'Lock' is declared here.
}
m() {
@@ -12,10 +12,10 @@ tests/cases/compiler/extendArray.ts(7,32): error TS2552: Cannot find name '_elem
collect(fn:(e:_element) => _element[]) : any[];
~~~~~~~~
!!! error TS2552: Cannot find name '_element'. Did you mean 'Element'?
!!! related TS2728 /.ts/lib.dom.d.ts:5089:13: 'Element' is declared here.
!!! related TS2728 /.ts/lib.dom.d.ts:5121:13: 'Element' is declared here.
~~~~~~~~
!!! error TS2552: Cannot find name '_element'. Did you mean 'Element'?
!!! related TS2728 /.ts/lib.dom.d.ts:5089:13: 'Element' is declared here.
!!! related TS2728 /.ts/lib.dom.d.ts:5121:13: 'Element' is declared here.
}
}
File diff suppressed because one or more lines are too long
@@ -10,7 +10,7 @@ tests/cases/compiler/intersectionsOfLargeUnions2.ts(31,15): error TS2536: Type '
interface ElementTagNameMap {
~~~~~~~~~~~~~~~~~
!!! error TS2300: Duplicate identifier 'ElementTagNameMap'.
!!! related TS6203 /.ts/lib.dom.d.ts:17748:6: 'ElementTagNameMap' was also declared here.
!!! related TS6203 /.ts/lib.dom.d.ts:17843:6: 'ElementTagNameMap' was also declared here.
[index: number]: HTMLElement
}
@@ -13,7 +13,7 @@ tests/cases/compiler/test.tsx(9,17): error TS2552: Cannot find name 'createEleme
return <div />;
~~~
!!! error TS2552: Cannot find name 'createElement'. Did you mean 'frameElement'?
!!! related TS2728 /.ts/lib.dom.d.ts:17771:13: 'frameElement' is declared here.
!!! related TS2728 /.ts/lib.dom.d.ts:17866:13: 'frameElement' is declared here.
}
}
@@ -13,6 +13,6 @@ tests/cases/compiler/test.tsx(9,17): error TS2552: Cannot find name 'MyElement'.
return <div />;
~~~
!!! error TS2552: Cannot find name 'MyElement'. Did you mean 'Element'?
!!! related TS2728 /.ts/lib.dom.d.ts:5089:13: 'Element' is declared here.
!!! related TS2728 /.ts/lib.dom.d.ts:5121:13: 'Element' is declared here.
}
}
File diff suppressed because one or more lines are too long
@@ -352,7 +352,7 @@ tests/cases/conformance/parser/ecmascript5/parserRealSource7.ts(828,13): error T
!!! error TS2304: Cannot find name 'Type'.
~~~~~~~~~~~~~~~
!!! error TS2552: Cannot find name 'TypeDeclaration'. Did you mean 'CSSStyleDeclaration'?
!!! related TS2728 /.ts/lib.dom.d.ts:3382:13: 'CSSStyleDeclaration' is declared here.
!!! related TS2728 /.ts/lib.dom.d.ts:3402:13: 'CSSStyleDeclaration' is declared here.
type.extendsTypeLinks = getBaseTypeLinks(typeDecl.extendsList, type.extendsTypeLinks);
type.implementsTypeLinks = getBaseTypeLinks(typeDecl.implementsList, type.implementsTypeLinks);
}