lib.dom.iterable.d.ts 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475
  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. THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  7. KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
  8. WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
  9. MERCHANTABLITY OR NON-INFRINGEMENT.
  10. See the Apache Version 2.0 License for specific language governing permissions
  11. and limitations under the License.
  12. ***************************************************************************** */
  13. /// <reference no-default-lib="true"/>
  14. /////////////////////////////
  15. /// Window Iterable APIs
  16. /////////////////////////////
  17. interface AbortSignal {
  18. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/any_static) */
  19. any(signals: Iterable<AbortSignal>): AbortSignal;
  20. }
  21. interface AudioParam {
  22. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueCurveAtTime) */
  23. setValueCurveAtTime(values: Iterable<number>, startTime: number, duration: number): AudioParam;
  24. }
  25. interface AudioParamMap extends ReadonlyMap<string, AudioParam> {
  26. }
  27. interface BaseAudioContext {
  28. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createIIRFilter) */
  29. createIIRFilter(feedforward: Iterable<number>, feedback: Iterable<number>): IIRFilterNode;
  30. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPeriodicWave) */
  31. createPeriodicWave(real: Iterable<number>, imag: Iterable<number>, constraints?: PeriodicWaveConstraints): PeriodicWave;
  32. }
  33. interface CSSKeyframesRule {
  34. [Symbol.iterator](): IterableIterator<CSSKeyframeRule>;
  35. }
  36. interface CSSNumericArray {
  37. [Symbol.iterator](): IterableIterator<CSSNumericValue>;
  38. entries(): IterableIterator<[number, CSSNumericValue]>;
  39. keys(): IterableIterator<number>;
  40. values(): IterableIterator<CSSNumericValue>;
  41. }
  42. interface CSSRuleList {
  43. [Symbol.iterator](): IterableIterator<CSSRule>;
  44. }
  45. interface CSSStyleDeclaration {
  46. [Symbol.iterator](): IterableIterator<string>;
  47. }
  48. interface CSSTransformValue {
  49. [Symbol.iterator](): IterableIterator<CSSTransformComponent>;
  50. entries(): IterableIterator<[number, CSSTransformComponent]>;
  51. keys(): IterableIterator<number>;
  52. values(): IterableIterator<CSSTransformComponent>;
  53. }
  54. interface CSSUnparsedValue {
  55. [Symbol.iterator](): IterableIterator<CSSUnparsedSegment>;
  56. entries(): IterableIterator<[number, CSSUnparsedSegment]>;
  57. keys(): IterableIterator<number>;
  58. values(): IterableIterator<CSSUnparsedSegment>;
  59. }
  60. interface Cache {
  61. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/addAll) */
  62. addAll(requests: Iterable<RequestInfo>): Promise<void>;
  63. }
  64. interface CanvasPath {
  65. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/roundRect) */
  66. roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | Iterable<number | DOMPointInit>): void;
  67. }
  68. interface CanvasPathDrawingStyles {
  69. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setLineDash) */
  70. setLineDash(segments: Iterable<number>): void;
  71. }
  72. interface CustomStateSet extends Set<string> {
  73. }
  74. interface DOMRectList {
  75. [Symbol.iterator](): IterableIterator<DOMRect>;
  76. }
  77. interface DOMStringList {
  78. [Symbol.iterator](): IterableIterator<string>;
  79. }
  80. interface DOMTokenList {
  81. [Symbol.iterator](): IterableIterator<string>;
  82. entries(): IterableIterator<[number, string]>;
  83. keys(): IterableIterator<number>;
  84. values(): IterableIterator<string>;
  85. }
  86. interface DataTransferItemList {
  87. [Symbol.iterator](): IterableIterator<DataTransferItem>;
  88. }
  89. interface EventCounts extends ReadonlyMap<string, number> {
  90. }
  91. interface FileList {
  92. [Symbol.iterator](): IterableIterator<File>;
  93. }
  94. interface FontFaceSet extends Set<FontFace> {
  95. }
  96. interface FormData {
  97. [Symbol.iterator](): IterableIterator<[string, FormDataEntryValue]>;
  98. /** Returns an array of key, value pairs for every entry in the list. */
  99. entries(): IterableIterator<[string, FormDataEntryValue]>;
  100. /** Returns a list of keys in the list. */
  101. keys(): IterableIterator<string>;
  102. /** Returns a list of values in the list. */
  103. values(): IterableIterator<FormDataEntryValue>;
  104. }
  105. interface HTMLAllCollection {
  106. [Symbol.iterator](): IterableIterator<Element>;
  107. }
  108. interface HTMLCollectionBase {
  109. [Symbol.iterator](): IterableIterator<Element>;
  110. }
  111. interface HTMLCollectionOf<T extends Element> {
  112. [Symbol.iterator](): IterableIterator<T>;
  113. }
  114. interface HTMLFormElement {
  115. [Symbol.iterator](): IterableIterator<Element>;
  116. }
  117. interface HTMLSelectElement {
  118. [Symbol.iterator](): IterableIterator<HTMLOptionElement>;
  119. }
  120. interface Headers {
  121. [Symbol.iterator](): IterableIterator<[string, string]>;
  122. /** Returns an iterator allowing to go through all key/value pairs contained in this object. */
  123. entries(): IterableIterator<[string, string]>;
  124. /** Returns an iterator allowing to go through all keys of the key/value pairs contained in this object. */
  125. keys(): IterableIterator<string>;
  126. /** Returns an iterator allowing to go through all values of the key/value pairs contained in this object. */
  127. values(): IterableIterator<string>;
  128. }
  129. interface Highlight extends Set<AbstractRange> {
  130. }
  131. interface HighlightRegistry extends Map<string, Highlight> {
  132. }
  133. interface IDBDatabase {
  134. /**
  135. * Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names.
  136. *
  137. * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/transaction)
  138. */
  139. transaction(storeNames: string | Iterable<string>, mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction;
  140. }
  141. interface IDBObjectStore {
  142. /**
  143. * Creates a new index in store with the given name, keyPath and options and returns a new IDBIndex. If the keyPath and options define constraints that cannot be satisfied with the data already in store the upgrade transaction will abort with a "ConstraintError" DOMException.
  144. *
  145. * Throws an "InvalidStateError" DOMException if not called within an upgrade transaction.
  146. *
  147. * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/createIndex)
  148. */
  149. createIndex(name: string, keyPath: string | Iterable<string>, options?: IDBIndexParameters): IDBIndex;
  150. }
  151. interface MIDIInputMap extends ReadonlyMap<string, MIDIInput> {
  152. }
  153. interface MIDIOutput {
  154. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput/send) */
  155. send(data: Iterable<number>, timestamp?: DOMHighResTimeStamp): void;
  156. }
  157. interface MIDIOutputMap extends ReadonlyMap<string, MIDIOutput> {
  158. }
  159. interface MediaKeyStatusMap {
  160. [Symbol.iterator](): IterableIterator<[BufferSource, MediaKeyStatus]>;
  161. entries(): IterableIterator<[BufferSource, MediaKeyStatus]>;
  162. keys(): IterableIterator<BufferSource>;
  163. values(): IterableIterator<MediaKeyStatus>;
  164. }
  165. interface MediaList {
  166. [Symbol.iterator](): IterableIterator<string>;
  167. }
  168. interface MessageEvent<T = any> {
  169. /**
  170. * @deprecated
  171. *
  172. * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/initMessageEvent)
  173. */
  174. initMessageEvent(type: string, bubbles?: boolean, cancelable?: boolean, data?: any, origin?: string, lastEventId?: string, source?: MessageEventSource | null, ports?: Iterable<MessagePort>): void;
  175. }
  176. interface MimeTypeArray {
  177. [Symbol.iterator](): IterableIterator<MimeType>;
  178. }
  179. interface NamedNodeMap {
  180. [Symbol.iterator](): IterableIterator<Attr>;
  181. }
  182. interface Navigator {
  183. /**
  184. * Available only in secure contexts.
  185. *
  186. * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/requestMediaKeySystemAccess)
  187. */
  188. requestMediaKeySystemAccess(keySystem: string, supportedConfigurations: Iterable<MediaKeySystemConfiguration>): Promise<MediaKeySystemAccess>;
  189. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vibrate) */
  190. vibrate(pattern: Iterable<number>): boolean;
  191. }
  192. interface NodeList {
  193. [Symbol.iterator](): IterableIterator<Node>;
  194. /** Returns an array of key, value pairs for every entry in the list. */
  195. entries(): IterableIterator<[number, Node]>;
  196. /** Returns an list of keys in the list. */
  197. keys(): IterableIterator<number>;
  198. /** Returns an list of values in the list. */
  199. values(): IterableIterator<Node>;
  200. }
  201. interface NodeListOf<TNode extends Node> {
  202. [Symbol.iterator](): IterableIterator<TNode>;
  203. /** Returns an array of key, value pairs for every entry in the list. */
  204. entries(): IterableIterator<[number, TNode]>;
  205. /** Returns an list of keys in the list. */
  206. keys(): IterableIterator<number>;
  207. /** Returns an list of values in the list. */
  208. values(): IterableIterator<TNode>;
  209. }
  210. interface Plugin {
  211. [Symbol.iterator](): IterableIterator<MimeType>;
  212. }
  213. interface PluginArray {
  214. [Symbol.iterator](): IterableIterator<Plugin>;
  215. }
  216. interface RTCRtpTransceiver {
  217. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/setCodecPreferences) */
  218. setCodecPreferences(codecs: Iterable<RTCRtpCodecCapability>): void;
  219. }
  220. interface RTCStatsReport extends ReadonlyMap<string, any> {
  221. }
  222. interface SVGLengthList {
  223. [Symbol.iterator](): IterableIterator<SVGLength>;
  224. }
  225. interface SVGNumberList {
  226. [Symbol.iterator](): IterableIterator<SVGNumber>;
  227. }
  228. interface SVGPointList {
  229. [Symbol.iterator](): IterableIterator<DOMPoint>;
  230. }
  231. interface SVGStringList {
  232. [Symbol.iterator](): IterableIterator<string>;
  233. }
  234. interface SVGTransformList {
  235. [Symbol.iterator](): IterableIterator<SVGTransform>;
  236. }
  237. interface SourceBufferList {
  238. [Symbol.iterator](): IterableIterator<SourceBuffer>;
  239. }
  240. interface SpeechRecognitionResult {
  241. [Symbol.iterator](): IterableIterator<SpeechRecognitionAlternative>;
  242. }
  243. interface SpeechRecognitionResultList {
  244. [Symbol.iterator](): IterableIterator<SpeechRecognitionResult>;
  245. }
  246. interface StylePropertyMapReadOnly {
  247. [Symbol.iterator](): IterableIterator<[string, Iterable<CSSStyleValue>]>;
  248. entries(): IterableIterator<[string, Iterable<CSSStyleValue>]>;
  249. keys(): IterableIterator<string>;
  250. values(): IterableIterator<Iterable<CSSStyleValue>>;
  251. }
  252. interface StyleSheetList {
  253. [Symbol.iterator](): IterableIterator<CSSStyleSheet>;
  254. }
  255. interface SubtleCrypto {
  256. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) */
  257. deriveKey(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
  258. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) */
  259. generateKey(algorithm: "Ed25519", extractable: boolean, keyUsages: ReadonlyArray<"sign" | "verify">): Promise<CryptoKeyPair>;
  260. generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKeyPair>;
  261. generateKey(algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
  262. generateKey(algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKeyPair | CryptoKey>;
  263. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) */
  264. importKey(format: "jwk", keyData: JsonWebKey, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
  265. importKey(format: Exclude<KeyFormat, "jwk">, keyData: BufferSource, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
  266. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) */
  267. 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>;
  268. }
  269. interface TextTrackCueList {
  270. [Symbol.iterator](): IterableIterator<TextTrackCue>;
  271. }
  272. interface TextTrackList {
  273. [Symbol.iterator](): IterableIterator<TextTrack>;
  274. }
  275. interface TouchList {
  276. [Symbol.iterator](): IterableIterator<Touch>;
  277. }
  278. interface URLSearchParams {
  279. [Symbol.iterator](): IterableIterator<[string, string]>;
  280. /** Returns an array of key, value pairs for every entry in the search params. */
  281. entries(): IterableIterator<[string, string]>;
  282. /** Returns a list of keys in the search params. */
  283. keys(): IterableIterator<string>;
  284. /** Returns a list of values in the search params. */
  285. values(): IterableIterator<string>;
  286. }
  287. interface WEBGL_draw_buffers {
  288. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers/drawBuffersWEBGL) */
  289. drawBuffersWEBGL(buffers: Iterable<GLenum>): void;
  290. }
  291. interface WEBGL_multi_draw {
  292. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysInstancedWEBGL) */
  293. multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: number, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void;
  294. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysWEBGL) */
  295. multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: number, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, drawcount: GLsizei): void;
  296. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsInstancedWEBGL) */
  297. multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: number, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void;
  298. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsWEBGL) */
  299. multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: number, drawcount: GLsizei): void;
  300. }
  301. interface WebGL2RenderingContextBase {
  302. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
  303. clearBufferfv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLfloat>, srcOffset?: number): void;
  304. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
  305. clearBufferiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLint>, srcOffset?: number): void;
  306. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
  307. clearBufferuiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLuint>, srcOffset?: number): void;
  308. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawBuffers) */
  309. drawBuffers(buffers: Iterable<GLenum>): void;
  310. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniforms) */
  311. getActiveUniforms(program: WebGLProgram, uniformIndices: Iterable<GLuint>, pname: GLenum): any;
  312. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformIndices) */
  313. getUniformIndices(program: WebGLProgram, uniformNames: Iterable<string>): Iterable<GLuint> | null;
  314. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateFramebuffer) */
  315. invalidateFramebuffer(target: GLenum, attachments: Iterable<GLenum>): void;
  316. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateSubFramebuffer) */
  317. invalidateSubFramebuffer(target: GLenum, attachments: Iterable<GLenum>, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
  318. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/transformFeedbackVaryings) */
  319. transformFeedbackVaryings(program: WebGLProgram, varyings: Iterable<string>, bufferMode: GLenum): void;
  320. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
  321. uniform1uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
  322. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
  323. uniform2uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
  324. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
  325. uniform3uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
  326. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
  327. uniform4uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
  328. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
  329. uniformMatrix2x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  330. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
  331. uniformMatrix2x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  332. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
  333. uniformMatrix3x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  334. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
  335. uniformMatrix3x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  336. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
  337. uniformMatrix4x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  338. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
  339. uniformMatrix4x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  340. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
  341. vertexAttribI4iv(index: GLuint, values: Iterable<GLint>): void;
  342. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
  343. vertexAttribI4uiv(index: GLuint, values: Iterable<GLuint>): void;
  344. }
  345. interface WebGL2RenderingContextOverloads {
  346. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  347. uniform1fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  348. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  349. uniform1iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
  350. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  351. uniform2fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  352. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  353. uniform2iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
  354. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  355. uniform3fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  356. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  357. uniform3iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
  358. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  359. uniform4fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  360. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  361. uniform4iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
  362. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
  363. uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  364. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
  365. uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  366. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
  367. uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
  368. }
  369. interface WebGLRenderingContextBase {
  370. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
  371. vertexAttrib1fv(index: GLuint, values: Iterable<GLfloat>): void;
  372. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
  373. vertexAttrib2fv(index: GLuint, values: Iterable<GLfloat>): void;
  374. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
  375. vertexAttrib3fv(index: GLuint, values: Iterable<GLfloat>): void;
  376. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
  377. vertexAttrib4fv(index: GLuint, values: Iterable<GLfloat>): void;
  378. }
  379. interface WebGLRenderingContextOverloads {
  380. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  381. uniform1fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
  382. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  383. uniform1iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
  384. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  385. uniform2fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
  386. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  387. uniform2iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
  388. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  389. uniform3fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
  390. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  391. uniform3iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
  392. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  393. uniform4fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
  394. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
  395. uniform4iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
  396. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
  397. uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
  398. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
  399. uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
  400. /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
  401. uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
  402. }