lib.dom.iterable.d.ts (29802B)
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 /// <reference no-default-lib="true"/> 18 19 ///////////////////////////// 20 /// Window Iterable APIs 21 ///////////////////////////// 22 23 interface AudioParam { 24 /** 25 * The **`setValueCurveAtTime()`** method of the following a curve defined by a list of values. 26 * 27 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueCurveAtTime) 28 */ 29 setValueCurveAtTime(values: Iterable<number>, startTime: number, duration: number): AudioParam; 30 } 31 32 interface AudioParamMap extends ReadonlyMap<string, AudioParam> { 33 } 34 35 interface BaseAudioContext { 36 /** 37 * The **`createIIRFilter()`** method of the BaseAudioContext interface creates an IIRFilterNode, which represents a general **infinite impulse response** (IIR) filter which can be configured to serve as various types of filter. 38 * 39 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createIIRFilter) 40 */ 41 createIIRFilter(feedforward: Iterable<number>, feedback: Iterable<number>): IIRFilterNode; 42 /** 43 * The `createPeriodicWave()` method of the BaseAudioContext interface is used to create a PeriodicWave. 44 * 45 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPeriodicWave) 46 */ 47 createPeriodicWave(real: Iterable<number>, imag: Iterable<number>, constraints?: PeriodicWaveConstraints): PeriodicWave; 48 } 49 50 interface CSSKeyframesRule { 51 [Symbol.iterator](): ArrayIterator<CSSKeyframeRule>; 52 } 53 54 interface CSSNumericArray { 55 [Symbol.iterator](): ArrayIterator<CSSNumericValue>; 56 entries(): ArrayIterator<[number, CSSNumericValue]>; 57 keys(): ArrayIterator<number>; 58 values(): ArrayIterator<CSSNumericValue>; 59 } 60 61 interface CSSRuleList { 62 [Symbol.iterator](): ArrayIterator<CSSRule>; 63 } 64 65 interface CSSStyleDeclaration { 66 [Symbol.iterator](): ArrayIterator<string>; 67 } 68 69 interface CSSTransformValue { 70 [Symbol.iterator](): ArrayIterator<CSSTransformComponent>; 71 entries(): ArrayIterator<[number, CSSTransformComponent]>; 72 keys(): ArrayIterator<number>; 73 values(): ArrayIterator<CSSTransformComponent>; 74 } 75 76 interface CSSUnparsedValue { 77 [Symbol.iterator](): ArrayIterator<CSSUnparsedSegment>; 78 entries(): ArrayIterator<[number, CSSUnparsedSegment]>; 79 keys(): ArrayIterator<number>; 80 values(): ArrayIterator<CSSUnparsedSegment>; 81 } 82 83 interface Cache { 84 /** 85 * The **`addAll()`** method of the Cache interface takes an array of URLs, retrieves them, and adds the resulting response objects to the given cache. 86 * 87 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/addAll) 88 */ 89 addAll(requests: Iterable<RequestInfo>): Promise<void>; 90 } 91 92 interface CanvasPath { 93 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/roundRect) */ 94 roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | Iterable<number | DOMPointInit>): void; 95 } 96 97 interface CanvasPathDrawingStyles { 98 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setLineDash) */ 99 setLineDash(segments: Iterable<number>): void; 100 } 101 102 interface CookieStoreManager { 103 /** 104 * The **`subscribe()`** method of the CookieStoreManager interface subscribes a ServiceWorkerRegistration to cookie change events. 105 * 106 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CookieStoreManager/subscribe) 107 */ 108 subscribe(subscriptions: Iterable<CookieStoreGetOptions>): Promise<void>; 109 /** 110 * The **`unsubscribe()`** method of the CookieStoreManager interface stops the ServiceWorkerRegistration from receiving previously subscribed events. 111 * 112 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CookieStoreManager/unsubscribe) 113 */ 114 unsubscribe(subscriptions: Iterable<CookieStoreGetOptions>): Promise<void>; 115 } 116 117 interface CustomStateSet extends Set<string> { 118 } 119 120 interface DOMRectList { 121 [Symbol.iterator](): ArrayIterator<DOMRect>; 122 } 123 124 interface DOMStringList { 125 [Symbol.iterator](): ArrayIterator<string>; 126 } 127 128 interface DOMTokenList { 129 [Symbol.iterator](): ArrayIterator<string>; 130 entries(): ArrayIterator<[number, string]>; 131 keys(): ArrayIterator<number>; 132 values(): ArrayIterator<string>; 133 } 134 135 interface DataTransferItemList { 136 [Symbol.iterator](): ArrayIterator<DataTransferItem>; 137 } 138 139 interface EventCounts extends ReadonlyMap<string, number> { 140 } 141 142 interface FileList { 143 [Symbol.iterator](): ArrayIterator<File>; 144 } 145 146 interface FontFaceSet extends Set<FontFace> { 147 } 148 149 interface FormDataIterator<T> extends IteratorObject<T, BuiltinIteratorReturn, unknown> { 150 [Symbol.iterator](): FormDataIterator<T>; 151 } 152 153 interface FormData { 154 [Symbol.iterator](): FormDataIterator<[string, FormDataEntryValue]>; 155 /** Returns an array of key, value pairs for every entry in the list. */ 156 entries(): FormDataIterator<[string, FormDataEntryValue]>; 157 /** Returns a list of keys in the list. */ 158 keys(): FormDataIterator<string>; 159 /** Returns a list of values in the list. */ 160 values(): FormDataIterator<FormDataEntryValue>; 161 } 162 163 interface HTMLAllCollection { 164 [Symbol.iterator](): ArrayIterator<Element>; 165 } 166 167 interface HTMLCollectionBase { 168 [Symbol.iterator](): ArrayIterator<Element>; 169 } 170 171 interface HTMLCollectionOf<T extends Element> { 172 [Symbol.iterator](): ArrayIterator<T>; 173 } 174 175 interface HTMLFormElement { 176 [Symbol.iterator](): ArrayIterator<Element>; 177 } 178 179 interface HTMLSelectElement { 180 [Symbol.iterator](): ArrayIterator<HTMLOptionElement>; 181 } 182 183 interface HeadersIterator<T> extends IteratorObject<T, BuiltinIteratorReturn, unknown> { 184 [Symbol.iterator](): HeadersIterator<T>; 185 } 186 187 interface Headers { 188 [Symbol.iterator](): HeadersIterator<[string, string]>; 189 /** Returns an iterator allowing to go through all key/value pairs contained in this object. */ 190 entries(): HeadersIterator<[string, string]>; 191 /** Returns an iterator allowing to go through all keys of the key/value pairs contained in this object. */ 192 keys(): HeadersIterator<string>; 193 /** Returns an iterator allowing to go through all values of the key/value pairs contained in this object. */ 194 values(): HeadersIterator<string>; 195 } 196 197 interface Highlight extends Set<AbstractRange> { 198 } 199 200 interface HighlightRegistry extends Map<string, Highlight> { 201 } 202 203 interface IDBDatabase { 204 /** 205 * The **`transaction`** method of the IDBDatabase interface immediately returns a transaction object (IDBTransaction) containing the IDBTransaction.objectStore method, which you can use to access your object store. 206 * 207 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/transaction) 208 */ 209 transaction(storeNames: string | Iterable<string>, mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction; 210 } 211 212 interface IDBObjectStore { 213 /** 214 * The **`createIndex()`** method of the field/column defining a new data point for each database record to contain. 215 * 216 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/createIndex) 217 */ 218 createIndex(name: string, keyPath: string | Iterable<string>, options?: IDBIndexParameters): IDBIndex; 219 } 220 221 interface ImageTrackList { 222 [Symbol.iterator](): ArrayIterator<ImageTrack>; 223 } 224 225 interface MIDIInputMap extends ReadonlyMap<string, MIDIInput> { 226 } 227 228 interface MIDIOutput { 229 /** 230 * The **`send()`** method of the MIDIOutput interface queues messages for the corresponding MIDI port. 231 * 232 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput/send) 233 */ 234 send(data: Iterable<number>, timestamp?: DOMHighResTimeStamp): void; 235 } 236 237 interface MIDIOutputMap extends ReadonlyMap<string, MIDIOutput> { 238 } 239 240 interface MediaKeyStatusMapIterator<T> extends IteratorObject<T, BuiltinIteratorReturn, unknown> { 241 [Symbol.iterator](): MediaKeyStatusMapIterator<T>; 242 } 243 244 interface MediaKeyStatusMap { 245 [Symbol.iterator](): MediaKeyStatusMapIterator<[BufferSource, MediaKeyStatus]>; 246 entries(): MediaKeyStatusMapIterator<[BufferSource, MediaKeyStatus]>; 247 keys(): MediaKeyStatusMapIterator<BufferSource>; 248 values(): MediaKeyStatusMapIterator<MediaKeyStatus>; 249 } 250 251 interface MediaList { 252 [Symbol.iterator](): ArrayIterator<string>; 253 } 254 255 interface MessageEvent<T = any> { 256 /** @deprecated */ 257 initMessageEvent(type: string, bubbles?: boolean, cancelable?: boolean, data?: any, origin?: string, lastEventId?: string, source?: MessageEventSource | null, ports?: Iterable<MessagePort>): void; 258 } 259 260 interface MimeTypeArray { 261 [Symbol.iterator](): ArrayIterator<MimeType>; 262 } 263 264 interface NamedNodeMap { 265 [Symbol.iterator](): ArrayIterator<Attr>; 266 } 267 268 interface Navigator { 269 /** 270 * The **`requestMediaKeySystemAccess()`** method of the Navigator interface returns a Promise which delivers a MediaKeySystemAccess object that can be used to access a particular media key system, which can in turn be used to create keys for decrypting a media stream. 271 * Available only in secure contexts. 272 * 273 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/requestMediaKeySystemAccess) 274 */ 275 requestMediaKeySystemAccess(keySystem: string, supportedConfigurations: Iterable<MediaKeySystemConfiguration>): Promise<MediaKeySystemAccess>; 276 /** 277 * The **`vibrate()`** method of the Navigator interface pulses the vibration hardware on the device, if such hardware exists. 278 * 279 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vibrate) 280 */ 281 vibrate(pattern: Iterable<number>): boolean; 282 } 283 284 interface NodeList { 285 [Symbol.iterator](): ArrayIterator<Node>; 286 /** Returns an array of key, value pairs for every entry in the list. */ 287 entries(): ArrayIterator<[number, Node]>; 288 /** Returns an list of keys in the list. */ 289 keys(): ArrayIterator<number>; 290 /** Returns an list of values in the list. */ 291 values(): ArrayIterator<Node>; 292 } 293 294 interface NodeListOf<TNode extends Node> { 295 [Symbol.iterator](): ArrayIterator<TNode>; 296 /** Returns an array of key, value pairs for every entry in the list. */ 297 entries(): ArrayIterator<[number, TNode]>; 298 /** Returns an list of keys in the list. */ 299 keys(): ArrayIterator<number>; 300 /** Returns an list of values in the list. */ 301 values(): ArrayIterator<TNode>; 302 } 303 304 interface Plugin { 305 [Symbol.iterator](): ArrayIterator<MimeType>; 306 } 307 308 interface PluginArray { 309 [Symbol.iterator](): ArrayIterator<Plugin>; 310 } 311 312 interface RTCRtpTransceiver { 313 /** 314 * The **`setCodecPreferences()`** method of the RTCRtpTransceiver interface is used to set the codecs that the transceiver allows for decoding _received_ data, in order of decreasing preference. 315 * 316 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/setCodecPreferences) 317 */ 318 setCodecPreferences(codecs: Iterable<RTCRtpCodec>): void; 319 } 320 321 interface RTCStatsReport extends ReadonlyMap<string, any> { 322 } 323 324 interface SVGLengthList { 325 [Symbol.iterator](): ArrayIterator<SVGLength>; 326 } 327 328 interface SVGNumberList { 329 [Symbol.iterator](): ArrayIterator<SVGNumber>; 330 } 331 332 interface SVGPointList { 333 [Symbol.iterator](): ArrayIterator<DOMPoint>; 334 } 335 336 interface SVGStringList { 337 [Symbol.iterator](): ArrayIterator<string>; 338 } 339 340 interface SVGTransformList { 341 [Symbol.iterator](): ArrayIterator<SVGTransform>; 342 } 343 344 interface SourceBufferList { 345 [Symbol.iterator](): ArrayIterator<SourceBuffer>; 346 } 347 348 interface SpeechRecognitionResult { 349 [Symbol.iterator](): ArrayIterator<SpeechRecognitionAlternative>; 350 } 351 352 interface SpeechRecognitionResultList { 353 [Symbol.iterator](): ArrayIterator<SpeechRecognitionResult>; 354 } 355 356 interface StylePropertyMapReadOnlyIterator<T> extends IteratorObject<T, BuiltinIteratorReturn, unknown> { 357 [Symbol.iterator](): StylePropertyMapReadOnlyIterator<T>; 358 } 359 360 interface StylePropertyMapReadOnly { 361 [Symbol.iterator](): StylePropertyMapReadOnlyIterator<[string, Iterable<CSSStyleValue>]>; 362 entries(): StylePropertyMapReadOnlyIterator<[string, Iterable<CSSStyleValue>]>; 363 keys(): StylePropertyMapReadOnlyIterator<string>; 364 values(): StylePropertyMapReadOnlyIterator<Iterable<CSSStyleValue>>; 365 } 366 367 interface StyleSheetList { 368 [Symbol.iterator](): ArrayIterator<CSSStyleSheet>; 369 } 370 371 interface SubtleCrypto { 372 /** 373 * The **`deriveKey()`** method of the SubtleCrypto interface can be used to derive a secret key from a master key. 374 * 375 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) 376 */ 377 deriveKey(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>; 378 /** 379 * The **`generateKey()`** method of the SubtleCrypto interface is used to generate a new key (for symmetric algorithms) or key pair (for public-key algorithms). 380 * 381 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) 382 */ 383 generateKey(algorithm: "Ed25519" | { name: "Ed25519" }, extractable: boolean, keyUsages: ReadonlyArray<"sign" | "verify">): Promise<CryptoKeyPair>; 384 generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKeyPair>; 385 generateKey(algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>; 386 generateKey(algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKeyPair | CryptoKey>; 387 /** 388 * The **`importKey()`** method of the SubtleCrypto interface imports a key: that is, it takes as input a key in an external, portable format and gives you a CryptoKey object that you can use in the Web Crypto API. 389 * 390 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) 391 */ 392 importKey(format: "jwk", keyData: JsonWebKey, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>; 393 importKey(format: Exclude<KeyFormat, "jwk">, keyData: BufferSource, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>; 394 /** 395 * The **`unwrapKey()`** method of the SubtleCrypto interface 'unwraps' a key. 396 * 397 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) 398 */ 399 unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>; 400 } 401 402 interface TextTrackCueList { 403 [Symbol.iterator](): ArrayIterator<TextTrackCue>; 404 } 405 406 interface TextTrackList { 407 [Symbol.iterator](): ArrayIterator<TextTrack>; 408 } 409 410 interface TouchList { 411 [Symbol.iterator](): ArrayIterator<Touch>; 412 } 413 414 interface URLSearchParamsIterator<T> extends IteratorObject<T, BuiltinIteratorReturn, unknown> { 415 [Symbol.iterator](): URLSearchParamsIterator<T>; 416 } 417 418 interface URLSearchParams { 419 [Symbol.iterator](): URLSearchParamsIterator<[string, string]>; 420 /** Returns an array of key, value pairs for every entry in the search params. */ 421 entries(): URLSearchParamsIterator<[string, string]>; 422 /** Returns a list of keys in the search params. */ 423 keys(): URLSearchParamsIterator<string>; 424 /** Returns a list of values in the search params. */ 425 values(): URLSearchParamsIterator<string>; 426 } 427 428 interface ViewTransitionTypeSet extends Set<string> { 429 } 430 431 interface WEBGL_draw_buffers { 432 /** 433 * The **`WEBGL_draw_buffers.drawBuffersWEBGL()`** method is part of the WebGL API and allows you to define the draw buffers to which all fragment colors are written. 434 * 435 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers/drawBuffersWEBGL) 436 */ 437 drawBuffersWEBGL(buffers: Iterable<GLenum>): void; 438 } 439 440 interface WEBGL_multi_draw { 441 /** 442 * The **`WEBGL_multi_draw.multiDrawArraysInstancedWEBGL()`** method of the WebGL API renders multiple primitives from array data. 443 * 444 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysInstancedWEBGL) 445 */ 446 multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array<ArrayBufferLike> | Iterable<GLint>, firstsOffset: number, countsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, countsOffset: number, instanceCountsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void; 447 /** 448 * The **`WEBGL_multi_draw.multiDrawArraysWEBGL()`** method of the WebGL API renders multiple primitives from array data. 449 * 450 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysWEBGL) 451 */ 452 multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array<ArrayBufferLike> | Iterable<GLint>, firstsOffset: number, countsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, countsOffset: number, drawcount: GLsizei): void; 453 /** 454 * The **`WEBGL_multi_draw.multiDrawElementsInstancedWEBGL()`** method of the WebGL API renders multiple primitives from array data. 455 * 456 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsInstancedWEBGL) 457 */ 458 multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, offsetsOffset: number, instanceCountsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void; 459 /** 460 * The **`WEBGL_multi_draw.multiDrawElementsWEBGL()`** method of the WebGL API renders multiple primitives from array data. 461 * 462 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsWEBGL) 463 */ 464 multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array<ArrayBufferLike> | Iterable<GLsizei>, offsetsOffset: number, drawcount: GLsizei): void; 465 } 466 467 interface WebGL2RenderingContextBase { 468 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */ 469 clearBufferfv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLfloat>, srcOffset?: number): void; 470 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */ 471 clearBufferiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLint>, srcOffset?: number): void; 472 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */ 473 clearBufferuiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLuint>, srcOffset?: number): void; 474 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawBuffers) */ 475 drawBuffers(buffers: Iterable<GLenum>): void; 476 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniforms) */ 477 getActiveUniforms(program: WebGLProgram, uniformIndices: Iterable<GLuint>, pname: GLenum): any; 478 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformIndices) */ 479 getUniformIndices(program: WebGLProgram, uniformNames: Iterable<string>): GLuint[] | null; 480 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateFramebuffer) */ 481 invalidateFramebuffer(target: GLenum, attachments: Iterable<GLenum>): void; 482 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateSubFramebuffer) */ 483 invalidateSubFramebuffer(target: GLenum, attachments: Iterable<GLenum>, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void; 484 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/transformFeedbackVaryings) */ 485 transformFeedbackVaryings(program: WebGLProgram, varyings: Iterable<string>, bufferMode: GLenum): void; 486 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */ 487 uniform1uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void; 488 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */ 489 uniform2uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void; 490 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */ 491 uniform3uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void; 492 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */ 493 uniform4uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void; 494 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */ 495 uniformMatrix2x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 496 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */ 497 uniformMatrix2x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 498 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */ 499 uniformMatrix3x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 500 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */ 501 uniformMatrix3x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 502 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */ 503 uniformMatrix4x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 504 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */ 505 uniformMatrix4x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 506 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */ 507 vertexAttribI4iv(index: GLuint, values: Iterable<GLint>): void; 508 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */ 509 vertexAttribI4uiv(index: GLuint, values: Iterable<GLuint>): void; 510 } 511 512 interface WebGL2RenderingContextOverloads { 513 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 514 uniform1fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 515 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 516 uniform1iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void; 517 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 518 uniform2fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 519 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 520 uniform2iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void; 521 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 522 uniform3fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 523 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 524 uniform3iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void; 525 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 526 uniform4fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 527 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 528 uniform4iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void; 529 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */ 530 uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 531 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */ 532 uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 533 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */ 534 uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void; 535 } 536 537 interface WebGLRenderingContextBase { 538 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */ 539 vertexAttrib1fv(index: GLuint, values: Iterable<GLfloat>): void; 540 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */ 541 vertexAttrib2fv(index: GLuint, values: Iterable<GLfloat>): void; 542 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */ 543 vertexAttrib3fv(index: GLuint, values: Iterable<GLfloat>): void; 544 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */ 545 vertexAttrib4fv(index: GLuint, values: Iterable<GLfloat>): void; 546 } 547 548 interface WebGLRenderingContextOverloads { 549 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 550 uniform1fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void; 551 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 552 uniform1iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void; 553 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 554 uniform2fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void; 555 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 556 uniform2iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void; 557 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 558 uniform3fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void; 559 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 560 uniform3iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void; 561 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 562 uniform4fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void; 563 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */ 564 uniform4iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void; 565 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */ 566 uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void; 567 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */ 568 uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void; 569 /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */ 570 uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void; 571 }