2020-07-22 12:03:46 -04:00
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Copyright ( c ) Microsoft Corporation . All rights reserved .
Licensed under the Apache License , Version 2.0 ( the "License" ) ; you may not use
this file except in compliance with the License . You may obtain a copy of the
License at http : //www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN * AS IS * BASIS , WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND , EITHER EXPRESS OR IMPLIED , INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE , FITNESS FOR A PARTICULAR PURPOSE ,
MERCHANTABLITY OR NON - INFRINGEMENT .
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License .
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/// <reference no-default-lib="true"/>
/////////////////////////////
2021-08-26 20:12:59 -04:00
/// Window Iterable APIs
2020-07-22 12:03:46 -04:00
/////////////////////////////
interface AudioParam {
setValueCurveAtTime ( values : Iterable < number > , startTime : number , duration : number ) : AudioParam ;
}
interface AudioParamMap extends ReadonlyMap < string , AudioParam > {
}
interface BaseAudioContext {
createIIRFilter ( feedforward : Iterable < number > , feedback : Iterable < number > ) : IIRFilterNode ;
createPeriodicWave ( real : Iterable < number > , imag : Iterable < number > , constraints? : PeriodicWaveConstraints ) : PeriodicWave ;
}
2023-03-21 11:46:40 -04:00
interface CSSKeyframesRule {
[ Symbol . iterator ] ( ) : IterableIterator < CSSKeyframeRule > ;
}
2020-07-22 12:03:46 -04:00
interface CSSRuleList {
[ Symbol . iterator ] ( ) : IterableIterator < CSSRule > ;
}
interface CSSStyleDeclaration {
[ Symbol . iterator ] ( ) : IterableIterator < string > ;
}
interface Cache {
addAll ( requests : Iterable < RequestInfo > ) : Promise < void > ;
}
2022-12-07 12:59:59 -05:00
interface CanvasPath {
roundRect ( x : number , y : number , w : number , h : number , radii? : number | DOMPointInit | Iterable < number | DOMPointInit > ) : void ;
}
2020-07-22 12:03:46 -04:00
interface CanvasPathDrawingStyles {
setLineDash ( segments : Iterable < number > ) : void ;
}
interface DOMRectList {
[ Symbol . iterator ] ( ) : IterableIterator < DOMRect > ;
}
interface DOMStringList {
[ Symbol . iterator ] ( ) : IterableIterator < string > ;
}
interface DOMTokenList {
[ Symbol . iterator ] ( ) : IterableIterator < string > ;
entries ( ) : IterableIterator < [ number , string ] > ;
keys ( ) : IterableIterator < number > ;
values ( ) : IterableIterator < string > ;
}
interface DataTransferItemList {
[ Symbol . iterator ] ( ) : IterableIterator < DataTransferItem > ;
}
2022-05-31 20:19:18 -04:00
interface EventCounts extends ReadonlyMap < string , number > {
}
2020-07-22 12:03:46 -04:00
interface FileList {
[ Symbol . iterator ] ( ) : IterableIterator < File > ;
}
2021-08-26 20:12:59 -04:00
interface FontFaceSet extends Set < FontFace > {
}
2020-07-22 12:03:46 -04:00
interface FormData {
[ Symbol . iterator ] ( ) : IterableIterator < [ string , FormDataEntryValue ] > ;
2021-12-09 17:12:21 -05:00
/** Returns an array of key, value pairs for every entry in the list. */
2020-07-22 12:03:46 -04:00
entries ( ) : IterableIterator < [ string , FormDataEntryValue ] > ;
2021-12-09 17:12:21 -05:00
/** Returns a list of keys in the list. */
2020-07-22 12:03:46 -04:00
keys ( ) : IterableIterator < string > ;
2021-12-09 17:12:21 -05:00
/** Returns a list of values in the list. */
2020-07-22 12:03:46 -04:00
values ( ) : IterableIterator < FormDataEntryValue > ;
}
interface HTMLAllCollection {
[ Symbol . iterator ] ( ) : IterableIterator < Element > ;
}
interface HTMLCollectionBase {
[ Symbol . iterator ] ( ) : IterableIterator < Element > ;
}
interface HTMLCollectionOf < T extends Element > {
[ Symbol . iterator ] ( ) : IterableIterator < T > ;
}
interface HTMLFormElement {
[ Symbol . iterator ] ( ) : IterableIterator < Element > ;
}
interface HTMLSelectElement {
2021-08-26 20:12:59 -04:00
[ Symbol . iterator ] ( ) : IterableIterator < HTMLOptionElement > ;
2020-07-22 12:03:46 -04:00
}
interface Headers {
[ Symbol . iterator ] ( ) : IterableIterator < [ string , string ] > ;
2021-12-09 17:12:21 -05:00
/** Returns an iterator allowing to go through all key/value pairs contained in this object. */
2020-07-22 12:03:46 -04:00
entries ( ) : IterableIterator < [ string , string ] > ;
2021-12-09 17:12:21 -05:00
/** Returns an iterator allowing to go through all keys of the key/value pairs contained in this object. */
2020-07-22 12:03:46 -04:00
keys ( ) : IterableIterator < string > ;
2021-12-09 17:12:21 -05:00
/** Returns an iterator allowing to go through all values of the key/value pairs contained in this object. */
2020-07-22 12:03:46 -04:00
values ( ) : IterableIterator < string > ;
}
2020-11-23 17:31:10 -05:00
interface IDBDatabase {
2021-12-09 17:12:21 -05:00
/** 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. */
2022-09-19 17:00:01 -04:00
transaction ( storeNames : string | Iterable < string > , mode? : IDBTransactionMode , options? : IDBTransactionOptions ) : IDBTransaction ;
2020-11-23 17:31:10 -05:00
}
2020-07-22 12:03:46 -04:00
interface IDBObjectStore {
/ * *
* 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 .
2021-05-27 19:33:11 -04:00
*
2020-07-22 12:03:46 -04:00
* Throws an "InvalidStateError" DOMException if not called within an upgrade transaction .
* /
createIndex ( name : string , keyPath : string | Iterable < string > , options? : IDBIndexParameters ) : IDBIndex ;
}
2023-03-21 11:46:40 -04:00
interface MIDIInputMap extends ReadonlyMap < string , MIDIInput > {
}
interface MIDIOutput {
send ( data : Iterable < number > , timestamp? : DOMHighResTimeStamp ) : void ;
}
interface MIDIOutputMap extends ReadonlyMap < string , MIDIOutput > {
}
2020-07-22 12:03:46 -04:00
interface MediaKeyStatusMap {
[ Symbol . iterator ] ( ) : IterableIterator < [ BufferSource , MediaKeyStatus ] > ;
entries ( ) : IterableIterator < [ BufferSource , MediaKeyStatus ] > ;
keys ( ) : IterableIterator < BufferSource > ;
values ( ) : IterableIterator < MediaKeyStatus > ;
}
interface MediaList {
[ Symbol . iterator ] ( ) : IterableIterator < string > ;
}
2021-08-26 20:12:59 -04:00
interface MessageEvent < T = any > {
/** @deprecated */
initMessageEvent ( type : string , bubbles? : boolean , cancelable? : boolean , data? : any , origin? : string , lastEventId? : string , source? : MessageEventSource | null , ports? : Iterable < MessagePort > ) : void ;
}
2020-07-22 12:03:46 -04:00
interface MimeTypeArray {
[ Symbol . iterator ] ( ) : IterableIterator < MimeType > ;
}
interface NamedNodeMap {
[ Symbol . iterator ] ( ) : IterableIterator < Attr > ;
}
interface Navigator {
2021-12-09 17:12:21 -05:00
/** Available only in secure contexts. */
2020-07-22 12:03:46 -04:00
requestMediaKeySystemAccess ( keySystem : string , supportedConfigurations : Iterable < MediaKeySystemConfiguration > ) : Promise < MediaKeySystemAccess > ;
2021-08-26 20:12:59 -04:00
vibrate ( pattern : Iterable < number > ) : boolean ;
2020-07-22 12:03:46 -04:00
}
interface NodeList {
[ Symbol . iterator ] ( ) : IterableIterator < Node > ;
2021-12-09 17:12:21 -05:00
/** Returns an array of key, value pairs for every entry in the list. */
2020-07-22 12:03:46 -04:00
entries ( ) : IterableIterator < [ number , Node ] > ;
2021-12-09 17:12:21 -05:00
/** Returns an list of keys in the list. */
2020-07-22 12:03:46 -04:00
keys ( ) : IterableIterator < number > ;
2021-12-09 17:12:21 -05:00
/** Returns an list of values in the list. */
2020-07-22 12:03:46 -04:00
values ( ) : IterableIterator < Node > ;
}
interface NodeListOf < TNode extends Node > {
[ Symbol . iterator ] ( ) : IterableIterator < TNode > ;
2021-12-09 17:12:21 -05:00
/** Returns an array of key, value pairs for every entry in the list. */
2020-07-22 12:03:46 -04:00
entries ( ) : IterableIterator < [ number , TNode ] > ;
2021-12-09 17:12:21 -05:00
/** Returns an list of keys in the list. */
2020-07-22 12:03:46 -04:00
keys ( ) : IterableIterator < number > ;
2021-12-09 17:12:21 -05:00
/** Returns an list of values in the list. */
2020-07-22 12:03:46 -04:00
values ( ) : IterableIterator < TNode > ;
}
interface Plugin {
[ Symbol . iterator ] ( ) : IterableIterator < MimeType > ;
}
interface PluginArray {
[ Symbol . iterator ] ( ) : IterableIterator < Plugin > ;
}
2022-03-01 15:44:43 -05:00
interface RTCRtpTransceiver {
setCodecPreferences ( codecs : Iterable < RTCRtpCodecCapability > ) : void ;
}
2021-08-26 20:12:59 -04:00
interface RTCStatsReport extends ReadonlyMap < string , any > {
2020-07-22 12:03:46 -04:00
}
interface SVGLengthList {
[ Symbol . iterator ] ( ) : IterableIterator < SVGLength > ;
}
interface SVGNumberList {
[ Symbol . iterator ] ( ) : IterableIterator < SVGNumber > ;
}
interface SVGPointList {
[ Symbol . iterator ] ( ) : IterableIterator < DOMPoint > ;
}
interface SVGStringList {
[ Symbol . iterator ] ( ) : IterableIterator < string > ;
}
2021-08-26 20:12:59 -04:00
interface SVGTransformList {
[ Symbol . iterator ] ( ) : IterableIterator < SVGTransform > ;
2020-07-22 12:03:46 -04:00
}
2021-08-26 20:12:59 -04:00
interface SourceBufferList {
[ Symbol . iterator ] ( ) : IterableIterator < SourceBuffer > ;
2020-07-22 12:03:46 -04:00
}
interface SpeechRecognitionResult {
[ Symbol . iterator ] ( ) : IterableIterator < SpeechRecognitionAlternative > ;
}
interface SpeechRecognitionResultList {
[ Symbol . iterator ] ( ) : IterableIterator < SpeechRecognitionResult > ;
}
interface StyleSheetList {
[ Symbol . iterator ] ( ) : IterableIterator < CSSStyleSheet > ;
}
2021-08-26 20:12:59 -04:00
interface SubtleCrypto {
deriveKey ( algorithm : AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params , baseKey : CryptoKey , derivedKeyType : AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params , extractable : boolean , keyUsages : Iterable < KeyUsage > ) : Promise < CryptoKey > ;
2022-05-31 20:19:18 -04:00
generateKey ( algorithm : RsaHashedKeyGenParams | EcKeyGenParams , extractable : boolean , keyUsages : ReadonlyArray < KeyUsage > ) : Promise < CryptoKeyPair > ;
generateKey ( algorithm : AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params , extractable : boolean , keyUsages : ReadonlyArray < KeyUsage > ) : Promise < CryptoKey > ;
2021-08-26 20:12:59 -04:00
generateKey ( algorithm : AlgorithmIdentifier , extractable : boolean , keyUsages : Iterable < KeyUsage > ) : Promise < CryptoKeyPair | CryptoKey > ;
2022-05-31 20:19:18 -04:00
importKey ( format : "jwk" , keyData : JsonWebKey , algorithm : AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm , extractable : boolean , keyUsages : ReadonlyArray < KeyUsage > ) : Promise < CryptoKey > ;
2021-08-26 20:12:59 -04:00
importKey ( format : Exclude < KeyFormat , " jwk " > , keyData : BufferSource , algorithm : AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm , extractable : boolean , keyUsages : Iterable < KeyUsage > ) : Promise < CryptoKey > ;
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 > ;
}
2020-07-22 12:03:46 -04:00
interface TextTrackCueList {
[ Symbol . iterator ] ( ) : IterableIterator < TextTrackCue > ;
}
interface TextTrackList {
[ Symbol . iterator ] ( ) : IterableIterator < TextTrack > ;
}
interface TouchList {
[ Symbol . iterator ] ( ) : IterableIterator < Touch > ;
}
interface URLSearchParams {
[ Symbol . iterator ] ( ) : IterableIterator < [ string , string ] > ;
2021-12-09 17:12:21 -05:00
/** Returns an array of key, value pairs for every entry in the search params. */
2020-07-22 12:03:46 -04:00
entries ( ) : IterableIterator < [ string , string ] > ;
2021-12-09 17:12:21 -05:00
/** Returns a list of keys in the search params. */
2020-07-22 12:03:46 -04:00
keys ( ) : IterableIterator < string > ;
2021-12-09 17:12:21 -05:00
/** Returns a list of values in the search params. */
2020-07-22 12:03:46 -04:00
values ( ) : IterableIterator < string > ;
}
interface WEBGL_draw_buffers {
drawBuffersWEBGL ( buffers : Iterable < GLenum > ) : void ;
}
2022-03-01 15:44:43 -05:00
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 ;
2022-12-07 12:59:59 -05:00
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 ;
2022-03-01 15:44:43 -05:00
}
2020-07-22 12:03:46 -04:00
interface WebGL2RenderingContextBase {
clearBufferfv ( buffer : GLenum , drawbuffer : GLint , values : Iterable < GLfloat > , srcOffset? : GLuint ) : void ;
clearBufferiv ( buffer : GLenum , drawbuffer : GLint , values : Iterable < GLint > , srcOffset? : GLuint ) : void ;
clearBufferuiv ( buffer : GLenum , drawbuffer : GLint , values : Iterable < GLuint > , srcOffset? : GLuint ) : void ;
drawBuffers ( buffers : Iterable < GLenum > ) : void ;
getActiveUniforms ( program : WebGLProgram , uniformIndices : Iterable < GLuint > , pname : GLenum ) : any ;
getUniformIndices ( program : WebGLProgram , uniformNames : Iterable < string > ) : Iterable < GLuint > | null ;
invalidateFramebuffer ( target : GLenum , attachments : Iterable < GLenum > ) : void ;
invalidateSubFramebuffer ( target : GLenum , attachments : Iterable < GLenum > , x : GLint , y : GLint , width : GLsizei , height : GLsizei ) : void ;
transformFeedbackVaryings ( program : WebGLProgram , varyings : Iterable < string > , bufferMode : GLenum ) : void ;
uniform1uiv ( location : WebGLUniformLocation | null , data : Iterable < GLuint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform2uiv ( location : WebGLUniformLocation | null , data : Iterable < GLuint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform3uiv ( location : WebGLUniformLocation | null , data : Iterable < GLuint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform4uiv ( location : WebGLUniformLocation | null , data : Iterable < GLuint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix2x3fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix2x4fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix3x2fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix3x4fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix4x2fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix4x3fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
vertexAttribI4iv ( index : GLuint , values : Iterable < GLint > ) : void ;
vertexAttribI4uiv ( index : GLuint , values : Iterable < GLuint > ) : void ;
}
interface WebGL2RenderingContextOverloads {
uniform1fv ( location : WebGLUniformLocation | null , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform1iv ( location : WebGLUniformLocation | null , data : Iterable < GLint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform2fv ( location : WebGLUniformLocation | null , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform2iv ( location : WebGLUniformLocation | null , data : Iterable < GLint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform3fv ( location : WebGLUniformLocation | null , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform3iv ( location : WebGLUniformLocation | null , data : Iterable < GLint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform4fv ( location : WebGLUniformLocation | null , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniform4iv ( location : WebGLUniformLocation | null , data : Iterable < GLint > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix2fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix3fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
uniformMatrix4fv ( location : WebGLUniformLocation | null , transpose : GLboolean , data : Iterable < GLfloat > , srcOffset? : GLuint , srcLength? : GLuint ) : void ;
}
interface WebGLRenderingContextBase {
vertexAttrib1fv ( index : GLuint , values : Iterable < GLfloat > ) : void ;
vertexAttrib2fv ( index : GLuint , values : Iterable < GLfloat > ) : void ;
vertexAttrib3fv ( index : GLuint , values : Iterable < GLfloat > ) : void ;
vertexAttrib4fv ( index : GLuint , values : Iterable < GLfloat > ) : void ;
}
interface WebGLRenderingContextOverloads {
uniform1fv ( location : WebGLUniformLocation | null , v : Iterable < GLfloat > ) : void ;
uniform1iv ( location : WebGLUniformLocation | null , v : Iterable < GLint > ) : void ;
uniform2fv ( location : WebGLUniformLocation | null , v : Iterable < GLfloat > ) : void ;
uniform2iv ( location : WebGLUniformLocation | null , v : Iterable < GLint > ) : void ;
uniform3fv ( location : WebGLUniformLocation | null , v : Iterable < GLfloat > ) : void ;
uniform3iv ( location : WebGLUniformLocation | null , v : Iterable < GLint > ) : void ;
uniform4fv ( location : WebGLUniformLocation | null , v : Iterable < GLfloat > ) : void ;
uniform4iv ( location : WebGLUniformLocation | null , v : Iterable < GLint > ) : void ;
uniformMatrix2fv ( location : WebGLUniformLocation | null , transpose : GLboolean , value : Iterable < GLfloat > ) : void ;
uniformMatrix3fv ( location : WebGLUniformLocation | null , transpose : GLboolean , value : Iterable < GLfloat > ) : void ;
uniformMatrix4fv ( location : WebGLUniformLocation | null , transpose : GLboolean , value : Iterable < GLfloat > ) : void ;
}