@typescript-deploys/pr-build 4.9.0-pr-50903-18 → 5.0.0-pr-50820-19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,305 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ type ClassMemberDecoratorContext =
22
+ | ClassMethodDecoratorContext
23
+ | ClassGetterDecoratorContext
24
+ | ClassSetterDecoratorContext
25
+ | ClassFieldDecoratorContext
26
+ | ClassAccessorDecoratorContext
27
+ ;
28
+
29
+ type DecoratorContext =
30
+ | ClassDecoratorContext
31
+ | ClassMemberDecoratorContext
32
+ ;
33
+
34
+ /**
35
+ * Context provided to a class decorator.
36
+ */
37
+ interface ClassDecoratorContext<Class extends abstract new (...args: any) => any = abstract new (...args: any) => any> {
38
+ readonly kind: "class";
39
+ readonly name: string | undefined;
40
+
41
+ /**
42
+ * Adds a callback to be invoked after the class definition has been finalized.
43
+ *
44
+ * @example
45
+ * ```ts
46
+ * function customElement(name: string): ClassDecoratorFunction {
47
+ * return (target, { addInitializer }) => {
48
+ * addInitializer(function () {
49
+ * customElements.define(name, this);
50
+ * });
51
+ * }
52
+ * }
53
+ *
54
+ * @customElement("my-element")
55
+ * class MyElement {}
56
+ * ```
57
+ */
58
+ addInitializer(initializer: (this: Class) => void): void;
59
+ }
60
+
61
+ // #region type ClassDecoratorFunction
62
+
63
+ /**
64
+ * Describes a function that can be used to decorate a class.
65
+ */
66
+ type ClassDecoratorFunction = <
67
+ In extends abstract new (...args: any[]) => any,
68
+ Out extends abstract new (...args: any[]) => any = In,
69
+ Class extends abstract new (...args: any[]) => any = Out
70
+ >(target: In, context: ClassDecoratorContext<Class>) => Out | void;
71
+
72
+ // #endregion
73
+
74
+ /**
75
+ * Context provided to a class method decorator.
76
+ */
77
+ interface ClassMethodDecoratorContext<This = unknown, Value extends (this: This, ...args: any) => any = (this: This, ...args: any) => any> {
78
+ readonly kind: "method";
79
+ readonly name: string | symbol;
80
+ readonly static: boolean;
81
+ readonly private: boolean;
82
+ readonly access: {
83
+ /**
84
+ * Gets the current value of the method from the provided receiver.
85
+ *
86
+ * @example
87
+ * let fn = context.access.get.call(instance);
88
+ */
89
+ get(this: This): Value;
90
+ };
91
+
92
+ /**
93
+ * Adds a callback to be invoked either before static initializers are run (when
94
+ * decorating a `static` member), or before instance initializers are run (when
95
+ * decorating a non-`static` member).
96
+ *
97
+ * @example
98
+ * ```ts
99
+ * const bound: ClassMethodDecoratorFunction = (value, { name, private: isPrivate, addInitializer }) {
100
+ * if (isPrivate) throw new TypeError("Not supported on private methods.");
101
+ * addInitializer(function () {
102
+ * this[name] = this[name].bind(this);
103
+ * });
104
+ * }
105
+ *
106
+ * class C {
107
+ * message = "Hello";
108
+ *
109
+ * @bound
110
+ * m() {
111
+ * console.log(this.message);
112
+ * }
113
+ * }
114
+ * ```
115
+ */
116
+ addInitializer(initializer: (this: This) => void): void;
117
+ }
118
+
119
+ // #region type ClassMethodDecoratorFunction
120
+ /**
121
+ * Describes a function that can be used to decorate a class method.
122
+ */
123
+ type ClassMethodDecoratorFunction<Traits extends { name?: string | symbol, static?: boolean, private?: boolean } = {}> = <
124
+ This,
125
+ In extends (this: This, ...args: any[]) => any,
126
+ Out extends (this: This, ...args: any[]) => any = In,
127
+ Value extends (this: This, ...args: any[]) => any = Out
128
+ >(target: In, context: ClassMethodDecoratorContext<This, Value> & Readonly<Pick<Traits, "name" | "static" | "private">>) => Out | void;
129
+ // #endregion
130
+
131
+ /**
132
+ * Context provided to a class `get` method decorator.
133
+ */
134
+ interface ClassGetterDecoratorContext<This = unknown, Value = unknown> {
135
+ readonly kind: "getter";
136
+ readonly name: string | symbol;
137
+ readonly static: boolean;
138
+ readonly private: boolean;
139
+ readonly access: {
140
+ /**
141
+ * Invokes the getter on the provided receiver.
142
+ *
143
+ * @example
144
+ * let value = context.access.get.call(instance);
145
+ */
146
+ get(this: This): Value;
147
+ };
148
+
149
+ /**
150
+ * Adds a callback to be invoked either before static initializers are run (when
151
+ * decorating a `static` member), or before instance initializers are run (when
152
+ * decorating a non-`static` member).
153
+ */
154
+ addInitializer(initializer: (this: This) => void): void;
155
+ }
156
+
157
+ // #region type ClassGetterDecoratorFunction
158
+ /**
159
+ * Describes a function that can be used to decorate a class `get` method.
160
+ */
161
+ type ClassGetterDecoratorFunction = <
162
+ This,
163
+ In,
164
+ Out = In,
165
+ Value = Out,
166
+ >(target: (this: This) => In, context: ClassGetterDecoratorContext<This, Value>) => ((this: This) => Out) | void;
167
+ // #endregion
168
+
169
+ /**
170
+ * Context provided to a class `set` method decorator.
171
+ */
172
+ interface ClassSetterDecoratorContext<This = unknown, Value = unknown> {
173
+ readonly kind: "setter";
174
+ readonly name: string | symbol;
175
+ readonly static: boolean;
176
+ readonly private: boolean;
177
+ readonly access: {
178
+ /**
179
+ * Invokes the setter on the provided receiver.
180
+ *
181
+ * @example
182
+ * context.access.set.call(instance, value);
183
+ */
184
+ set(this: This, value: Value): void;
185
+ };
186
+
187
+ /**
188
+ * Adds a callback to be invoked either before static initializers are run (when
189
+ * decorating a `static` member), or before instance initializers are run (when
190
+ * decorating a non-`static` member).
191
+ */
192
+ addInitializer(initializer: (this: This) => void): void;
193
+ }
194
+
195
+ // #region type ClassSetterDecoratorFunction
196
+ /**
197
+ * Describes a function that can be used to decorate a class `set` method.
198
+ */
199
+ type ClassSetterDecoratorFunction = <
200
+ This,
201
+ In,
202
+ Out = In,
203
+ Value = Out
204
+ >(target: (this: This, value: In) => void, context: ClassSetterDecoratorContext<This, Value>) => ((this: This, value: Out) => void) | void;
205
+ // #endregion
206
+
207
+ /**
208
+ * Context provided to a class `accessor` field decorator.
209
+ */
210
+ interface ClassAccessorDecoratorContext<This = unknown, Value = unknown> {
211
+ readonly kind: "accessor";
212
+ readonly name: string | symbol;
213
+ readonly static: boolean;
214
+ readonly private: boolean;
215
+ readonly access: {
216
+ /**
217
+ * Invokes the getter on the provided receiver.
218
+ *
219
+ * @example
220
+ * let value = context.access.get.call(instance);
221
+ */
222
+ get(this: This): Value;
223
+
224
+ /**
225
+ * Invokes the setter on the provided receiver.
226
+ *
227
+ * @example
228
+ * context.access.set.call(instance, value);
229
+ */
230
+ set(this: This, value: Value): void;
231
+ };
232
+
233
+ /**
234
+ * Adds a callback to be invoked either before static initializers are run (when
235
+ * decorating a `static` member), or before instance initializers are run (when
236
+ * decorating a non-`static` member).
237
+ */
238
+ addInitializer(initializer: (this: This) => void): void;
239
+ }
240
+
241
+ interface ClassAccessorDecoratorTarget<This, In> {
242
+ get(this: This): In;
243
+ set(this: This, value: In): void;
244
+ }
245
+
246
+ interface ClassAccessorDecoratorResult<This, In, Out> {
247
+ get?(this: This): Out;
248
+ set?(this: This, value: Out): void;
249
+ init?(this: This, value: In): Out
250
+ }
251
+
252
+ // #region type ClassAccessorDecoratorFunction
253
+ /**
254
+ * Describes a function that can be used to decorate a class `accessor` field.
255
+ */
256
+ type ClassAccessorDecoratorFunction = <
257
+ This,
258
+ In,
259
+ Out = In,
260
+ Value = Out
261
+ >(
262
+ target: ClassAccessorDecoratorTarget<This, In>,
263
+ context: ClassAccessorDecoratorContext<This, Value>
264
+ ) => ClassAccessorDecoratorResult<This, In, Out> | void;
265
+ // #endregion
266
+
267
+ /**
268
+ * Context provided to a class field decorator.
269
+ */
270
+ interface ClassFieldDecoratorContext<This = unknown, Value = unknown> {
271
+ readonly kind: "field";
272
+ readonly name: string | symbol;
273
+ readonly static: boolean;
274
+ readonly private: boolean;
275
+ readonly access: {
276
+ /**
277
+ * Gets the value of the field on the provided receiver.
278
+ */
279
+ get(this: This): Value;
280
+
281
+ /**
282
+ * Sets the value of the field on the provided receiver.
283
+ */
284
+ set(this: This, value: Value): void;
285
+ };
286
+
287
+ /**
288
+ * Adds a callback to be invoked either before static initializers are run (when
289
+ * decorating a `static` member), or before instance initializers are run (when
290
+ * decorating a non-`static` member).
291
+ */
292
+ addInitializer(initializer: (this: This) => void): void;
293
+ }
294
+
295
+ // #region type ClassFieldDecoratorFunction
296
+ /**
297
+ * Describes a function that can be used to decorate a class field.
298
+ */
299
+ type ClassFieldDecoratorFunction = <
300
+ This,
301
+ In,
302
+ Out = In,
303
+ Value = Out
304
+ >(target: undefined, context: ClassAccessorDecoratorContext<This, Value>) => ((this: This, initialValue: In) => Out) | void;
305
+ // #endregion
@@ -0,0 +1,24 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ declare type ClassDecorator = <TFunction extends Function>(target: TFunction) => TFunction | void;
22
+ declare type PropertyDecorator = (target: Object, propertyKey: string | symbol) => void;
23
+ declare type MethodDecorator = <T>(target: Object, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor<T>) => TypedPropertyDescriptor<T> | void;
24
+ declare type ParameterDecorator = (target: Object, propertyKey: string | symbol, parameterIndex: number) => void;
@@ -0,0 +1,34 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation. All rights reserved.
3
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4
+ this file except in compliance with the License. You may obtain a copy of the
5
+ License at http://www.apache.org/licenses/LICENSE-2.0
6
+
7
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10
+ MERCHANTABLITY OR NON-INFRINGEMENT.
11
+
12
+ See the Apache Version 2.0 License for specific language governing permissions
13
+ and limitations under the License.
14
+ ***************************************************************************** */
15
+
16
+
17
+
18
+ /// <reference no-default-lib="true"/>
19
+
20
+
21
+ interface ParameterDecoratorContext<Func extends Function> {
22
+ readonly kind: "parameter";
23
+ readonly index: number;
24
+ readonly name: string | undefined;
25
+ readonly rest: boolean;
26
+ addInitializer(initializer: (this: Func) => void): void;
27
+ }
28
+
29
+ type ParameterDecoratorFunction = <
30
+ Func extends Function,
31
+ This,
32
+ In,
33
+ Out = In
34
+ >(target: undefined, context: ParameterDecoratorContext<Func>) => ((this: This, initialValue: In) => Out) | void;
package/lib/lib.dom.d.ts CHANGED
@@ -137,11 +137,13 @@ interface AudioWorkletNodeOptions extends AudioNodeOptions {
137
137
  interface AuthenticationExtensionsClientInputs {
138
138
  appid?: string;
139
139
  credProps?: boolean;
140
+ hmacCreateSecret?: boolean;
140
141
  }
141
142
 
142
143
  interface AuthenticationExtensionsClientOutputs {
143
144
  appid?: boolean;
144
145
  credProps?: CredentialPropertiesOutput;
146
+ hmacCreateSecret?: boolean;
145
147
  }
146
148
 
147
149
  interface AuthenticatorSelectionCriteria {
@@ -1344,6 +1346,7 @@ interface RTCInboundRtpStreamStats extends RTCReceivedRtpStreamStats {
1344
1346
  frameHeight?: number;
1345
1347
  frameWidth?: number;
1346
1348
  framesDecoded?: number;
1349
+ framesDropped?: number;
1347
1350
  framesPerSecond?: number;
1348
1351
  framesReceived?: number;
1349
1352
  headerBytesReceived?: number;
@@ -1363,6 +1366,7 @@ interface RTCInboundRtpStreamStats extends RTCReceivedRtpStreamStats {
1363
1366
  totalAudioEnergy?: number;
1364
1367
  totalDecodeTime?: number;
1365
1368
  totalInterFrameDelay?: number;
1369
+ totalProcessingDelay?: number;
1366
1370
  totalSamplesDuration?: number;
1367
1371
  totalSamplesReceived?: number;
1368
1372
  totalSquaredInterFrameDelay?: number;
@@ -1421,7 +1425,6 @@ interface RTCPeerConnectionIceEventInit extends EventInit {
1421
1425
  }
1422
1426
 
1423
1427
  interface RTCReceivedRtpStreamStats extends RTCRtpStreamStats {
1424
- framesDropped?: number;
1425
1428
  jitter?: number;
1426
1429
  packetsLost?: number;
1427
1430
  packetsReceived?: number;
@@ -1466,6 +1469,8 @@ interface RTCRtpContributingSource {
1466
1469
  interface RTCRtpEncodingParameters extends RTCRtpCodingParameters {
1467
1470
  active?: boolean;
1468
1471
  maxBitrate?: number;
1472
+ maxFramerate?: number;
1473
+ networkPriority?: RTCPriorityType;
1469
1474
  priority?: RTCPriorityType;
1470
1475
  scaleResolutionDownBy?: number;
1471
1476
  }
@@ -1886,10 +1891,10 @@ interface ValidityStateFlags {
1886
1891
  }
1887
1892
 
1888
1893
  interface VideoColorSpaceInit {
1889
- fullRange?: boolean;
1890
- matrix?: VideoMatrixCoefficients;
1891
- primaries?: VideoColorPrimaries;
1892
- transfer?: VideoTransferCharacteristics;
1894
+ fullRange?: boolean | null;
1895
+ matrix?: VideoMatrixCoefficients | null;
1896
+ primaries?: VideoColorPrimaries | null;
1897
+ transfer?: VideoTransferCharacteristics | null;
1893
1898
  }
1894
1899
 
1895
1900
  interface VideoConfiguration {
@@ -1904,7 +1909,7 @@ interface VideoConfiguration {
1904
1909
  width: number;
1905
1910
  }
1906
1911
 
1907
- interface VideoFrameMetadata {
1912
+ interface VideoFrameCallbackMetadata {
1908
1913
  captureTime?: DOMHighResTimeStamp;
1909
1914
  expectedDisplayTime: DOMHighResTimeStamp;
1910
1915
  height: number;
@@ -2066,7 +2071,7 @@ interface AbortSignal extends EventTarget {
2066
2071
  declare var AbortSignal: {
2067
2072
  prototype: AbortSignal;
2068
2073
  new(): AbortSignal;
2069
- // abort(): AbortSignal; - To be re-added in the future
2074
+ abort(reason?: any): AbortSignal;
2070
2075
  timeout(milliseconds: number): AbortSignal;
2071
2076
  };
2072
2077
 
@@ -2202,7 +2207,7 @@ declare var AnimationPlaybackEvent: {
2202
2207
  };
2203
2208
 
2204
2209
  interface AnimationTimeline {
2205
- readonly currentTime: number | null;
2210
+ readonly currentTime: CSSNumberish | null;
2206
2211
  }
2207
2212
 
2208
2213
  declare var AnimationTimeline: {
@@ -2455,6 +2460,8 @@ declare var AuthenticatorAssertionResponse: {
2455
2460
  interface AuthenticatorAttestationResponse extends AuthenticatorResponse {
2456
2461
  readonly attestationObject: ArrayBuffer;
2457
2462
  getAuthenticatorData(): ArrayBuffer;
2463
+ getPublicKey(): ArrayBuffer | null;
2464
+ getPublicKeyAlgorithm(): COSEAlgorithmIdentifier;
2458
2465
  getTransports(): string[];
2459
2466
  }
2460
2467
 
@@ -2654,6 +2661,14 @@ declare var CSSConditionRule: {
2654
2661
  new(): CSSConditionRule;
2655
2662
  };
2656
2663
 
2664
+ interface CSSContainerRule extends CSSConditionRule {
2665
+ }
2666
+
2667
+ declare var CSSContainerRule: {
2668
+ prototype: CSSContainerRule;
2669
+ new(): CSSContainerRule;
2670
+ };
2671
+
2657
2672
  interface CSSCounterStyleRule extends CSSRule {
2658
2673
  additiveSymbols: string;
2659
2674
  fallback: string;
@@ -2963,6 +2978,9 @@ interface CSSStyleDeclaration {
2963
2978
  columnWidth: string;
2964
2979
  columns: string;
2965
2980
  contain: string;
2981
+ container: string;
2982
+ containerName: string;
2983
+ containerType: string;
2966
2984
  content: string;
2967
2985
  counterIncrement: string;
2968
2986
  counterReset: string;
@@ -3031,6 +3049,7 @@ interface CSSStyleDeclaration {
3031
3049
  gridTemplateColumns: string;
3032
3050
  gridTemplateRows: string;
3033
3051
  height: string;
3052
+ hyphenateCharacter: string;
3034
3053
  hyphens: string;
3035
3054
  /** @deprecated */
3036
3055
  imageOrientation: string;
@@ -3107,6 +3126,7 @@ interface CSSStyleDeclaration {
3107
3126
  outlineWidth: string;
3108
3127
  overflow: string;
3109
3128
  overflowAnchor: string;
3129
+ overflowClipMargin: string;
3110
3130
  overflowWrap: string;
3111
3131
  overflowX: string;
3112
3132
  overflowY: string;
@@ -3564,6 +3584,7 @@ interface CanvasPath {
3564
3584
  moveTo(x: number, y: number): void;
3565
3585
  quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
3566
3586
  rect(x: number, y: number, w: number, h: number): void;
3587
+ roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | (number | DOMPointInit)[]): void;
3567
3588
  }
3568
3589
 
3569
3590
  interface CanvasPathDrawingStyles {
@@ -4970,6 +4991,17 @@ interface EXT_texture_filter_anisotropic {
4970
4991
  readonly TEXTURE_MAX_ANISOTROPY_EXT: GLenum;
4971
4992
  }
4972
4993
 
4994
+ interface EXT_texture_norm16 {
4995
+ readonly R16_EXT: GLenum;
4996
+ readonly R16_SNORM_EXT: GLenum;
4997
+ readonly RG16_EXT: GLenum;
4998
+ readonly RG16_SNORM_EXT: GLenum;
4999
+ readonly RGB16_EXT: GLenum;
5000
+ readonly RGB16_SNORM_EXT: GLenum;
5001
+ readonly RGBA16_EXT: GLenum;
5002
+ readonly RGBA16_SNORM_EXT: GLenum;
5003
+ }
5004
+
4973
5005
  interface ElementEventMap {
4974
5006
  "fullscreenchange": Event;
4975
5007
  "fullscreenerror": Event;
@@ -6310,6 +6342,7 @@ interface HTMLCanvasElement extends HTMLElement {
6310
6342
  * @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.
6311
6343
  */
6312
6344
  toDataURL(type?: string, quality?: any): string;
6345
+ transferControlToOffscreen(): OffscreenCanvas;
6313
6346
  addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
6314
6347
  addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
6315
6348
  removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
@@ -9024,7 +9057,7 @@ declare var ImageBitmap: {
9024
9057
 
9025
9058
  interface ImageBitmapRenderingContext {
9026
9059
  /** Returns the canvas element that the context is bound to. */
9027
- readonly canvas: HTMLCanvasElement;
9060
+ readonly canvas: HTMLCanvasElement | OffscreenCanvas;
9028
9061
  /** Transfers the underlying bitmap data from imageBitmap to context, and the bitmap becomes the contents of the canvas element to which context is bound. */
9029
9062
  transferFromImageBitmap(bitmap: ImageBitmap | null): void;
9030
9063
  }
@@ -9055,6 +9088,7 @@ interface InnerHTML {
9055
9088
  innerHTML: string;
9056
9089
  }
9057
9090
 
9091
+ /** Available only in secure contexts. */
9058
9092
  interface InputDeviceInfo extends MediaDeviceInfo {
9059
9093
  }
9060
9094
 
@@ -10259,6 +10293,16 @@ declare var Notification: {
10259
10293
  requestPermission(deprecatedCallback?: NotificationPermissionCallback): Promise<NotificationPermission>;
10260
10294
  };
10261
10295
 
10296
+ interface OES_draw_buffers_indexed {
10297
+ blendEquationSeparateiOES(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum): void;
10298
+ blendEquationiOES(buf: GLuint, mode: GLenum): void;
10299
+ blendFuncSeparateiOES(buf: GLuint, srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
10300
+ blendFunciOES(buf: GLuint, src: GLenum, dst: GLenum): void;
10301
+ colorMaskiOES(buf: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean): void;
10302
+ disableiOES(target: GLenum, index: GLuint): void;
10303
+ enableiOES(target: GLenum, index: GLuint): void;
10304
+ }
10305
+
10262
10306
  /** The OES_element_index_uint extension is part of the WebGL API and adds support for gl.UNSIGNED_INT types to WebGLRenderingContext.drawElements(). */
10263
10307
  interface OES_element_index_uint {
10264
10308
  }
@@ -10337,6 +10381,57 @@ declare var OfflineAudioContext: {
10337
10381
  new(numberOfChannels: number, length: number, sampleRate: number): OfflineAudioContext;
10338
10382
  };
10339
10383
 
10384
+ interface OffscreenCanvasEventMap {
10385
+ "contextlost": Event;
10386
+ "contextrestored": Event;
10387
+ }
10388
+
10389
+ interface OffscreenCanvas extends EventTarget {
10390
+ /**
10391
+ * These attributes return the dimensions of the OffscreenCanvas object's bitmap.
10392
+ *
10393
+ * They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
10394
+ */
10395
+ height: number;
10396
+ oncontextlost: ((this: OffscreenCanvas, ev: Event) => any) | null;
10397
+ oncontextrestored: ((this: OffscreenCanvas, ev: Event) => any) | null;
10398
+ /**
10399
+ * These attributes return the dimensions of the OffscreenCanvas object's bitmap.
10400
+ *
10401
+ * They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
10402
+ */
10403
+ width: number;
10404
+ /**
10405
+ * 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.
10406
+ *
10407
+ * 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]
10408
+ *
10409
+ * 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).
10410
+ */
10411
+ getContext(contextId: OffscreenRenderingContextId, options?: any): OffscreenRenderingContext | null;
10412
+ /** 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. */
10413
+ transferToImageBitmap(): ImageBitmap;
10414
+ addEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
10415
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
10416
+ removeEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
10417
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
10418
+ }
10419
+
10420
+ declare var OffscreenCanvas: {
10421
+ prototype: OffscreenCanvas;
10422
+ new(width: number, height: number): OffscreenCanvas;
10423
+ };
10424
+
10425
+ interface OffscreenCanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPath, CanvasPathDrawingStyles, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform {
10426
+ readonly canvas: OffscreenCanvas;
10427
+ commit(): void;
10428
+ }
10429
+
10430
+ declare var OffscreenCanvasRenderingContext2D: {
10431
+ prototype: OffscreenCanvasRenderingContext2D;
10432
+ new(): OffscreenCanvasRenderingContext2D;
10433
+ };
10434
+
10340
10435
  /** 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. */
10341
10436
  interface OscillatorNode extends AudioScheduledSourceNode {
10342
10437
  readonly detune: AudioParam;
@@ -16047,7 +16142,7 @@ declare var WebGLRenderingContext: {
16047
16142
  };
16048
16143
 
16049
16144
  interface WebGLRenderingContextBase {
16050
- readonly canvas: HTMLCanvasElement;
16145
+ readonly canvas: HTMLCanvasElement | OffscreenCanvas;
16051
16146
  readonly drawingBufferHeight: GLsizei;
16052
16147
  readonly drawingBufferWidth: GLsizei;
16053
16148
  activeTexture(texture: GLenum): void;
@@ -17525,7 +17620,7 @@ interface UnderlyingSourceStartCallback<R> {
17525
17620
  }
17526
17621
 
17527
17622
  interface VideoFrameRequestCallback {
17528
- (now: DOMHighResTimeStamp, metadata: VideoFrameMetadata): void;
17623
+ (now: DOMHighResTimeStamp, metadata: VideoFrameCallbackMetadata): void;
17529
17624
  }
17530
17625
 
17531
17626
  interface VoidFunction {
@@ -18202,7 +18297,7 @@ type BodyInit = ReadableStream | XMLHttpRequestBodyInit;
18202
18297
  type BufferSource = ArrayBufferView | ArrayBuffer;
18203
18298
  type COSEAlgorithmIdentifier = number;
18204
18299
  type CSSNumberish = number;
18205
- type CanvasImageSource = HTMLOrSVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap;
18300
+ type CanvasImageSource = HTMLOrSVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas;
18206
18301
  type ClipboardItemData = Promise<string | Blob>;
18207
18302
  type ClipboardItems = ClipboardItem[];
18208
18303
  type ConstrainBoolean = boolean | ConstrainBooleanParameters;
@@ -18239,6 +18334,7 @@ type MediaProvider = MediaStream | MediaSource | Blob;
18239
18334
  type MessageEventSource = WindowProxy | MessagePort | ServiceWorker;
18240
18335
  type MutationRecordType = "attributes" | "characterData" | "childList";
18241
18336
  type NamedCurve = string;
18337
+ type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
18242
18338
  type OnBeforeUnloadEventHandler = OnBeforeUnloadEventHandlerNonNull | null;
18243
18339
  type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
18244
18340
  type PerformanceEntryList = PerformanceEntry[];
@@ -18247,9 +18343,9 @@ type ReadableStreamReadResult<T> = ReadableStreamReadValueResult<T> | ReadableSt
18247
18343
  type ReadableStreamReader<T> = ReadableStreamDefaultReader<T> | ReadableStreamBYOBReader;
18248
18344
  type RenderingContext = CanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
18249
18345
  type RequestInfo = Request | string;
18250
- type TexImageSource = ImageBitmap | ImageData | HTMLImageElement | HTMLCanvasElement | HTMLVideoElement;
18346
+ type TexImageSource = ImageBitmap | ImageData | HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | OffscreenCanvas;
18251
18347
  type TimerHandler = string | Function;
18252
- type Transferable = ImageBitmap | MessagePort | ReadableStream | WritableStream | TransformStream | ArrayBuffer;
18348
+ type Transferable = OffscreenCanvas | ImageBitmap | MessagePort | ReadableStream | WritableStream | TransformStream | ArrayBuffer;
18253
18349
  type Uint32List = Uint32Array | GLuint[];
18254
18350
  type VibratePattern = number | number[];
18255
18351
  type WindowProxy = Window;
@@ -18329,6 +18425,7 @@ type MediaStreamTrackState = "ended" | "live";
18329
18425
  type NavigationTimingType = "back_forward" | "navigate" | "prerender" | "reload";
18330
18426
  type NotificationDirection = "auto" | "ltr" | "rtl";
18331
18427
  type NotificationPermission = "default" | "denied" | "granted";
18428
+ type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2" | "webgpu";
18332
18429
  type OrientationLockType = "any" | "landscape" | "landscape-primary" | "landscape-secondary" | "natural" | "portrait" | "portrait-primary" | "portrait-secondary";
18333
18430
  type OrientationType = "landscape-primary" | "landscape-secondary" | "portrait-primary" | "portrait-secondary";
18334
18431
  type OscillatorType = "custom" | "sawtooth" | "sine" | "square" | "triangle";