Merge pull request #2417 from luser/fix-weak-map-keys
[shumway.git] / src / lib.d.ts
blob415ead403ae0c0a057a367c8ab0abcb134b1afe9
1 /*! *****************************************************************************\r
2  Copyright (c) Microsoft Corporation. All rights reserved. \r
3  Licensed under the Apache License, Version 2.0 (the "License"); you may not use\r
4  this file except in compliance with the License. You may obtain a copy of the\r
5  License at http://www.apache.org/licenses/LICENSE-2.0  \r
6 \r
7  THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r
8  KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r
9  WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, \r
10  MERCHANTABLITY OR NON-INFRINGEMENT. \r
12  See the Apache Version 2.0 License for specific language governing permissions\r
13  and limitations under the License.\r
14  ***************************************************************************** */\r
16 /// <reference no-default-lib="true"/>\r
18 /////////////////////////////\r
19 /// ECMAScript APIs\r
20 /////////////////////////////\r
22 declare var NaN: number;\r
23 declare var Infinity: number;\r
25 /**\r
26  * Evaluates JavaScript code and executes it.\r
27  * @param x A String value that contains valid JavaScript code.\r
28  */\r
29 declare function eval(x: string): any;\r
31 /**\r
32  * Converts A string to an integer.\r
33  * @param s A string to convert into a number.\r
34  * @param radix A value between 2 and 36 that specifies the base of the number in numString.\r
35  * If this argument is not supplied, strings with a prefix of '0x' are considered hexadecimal.\r
36  * All other strings are considered decimal.\r
37  */\r
38 declare function parseInt(s: string, radix?: number): number;\r
40 /**\r
41  * Converts a string to a floating-point number.\r
42  * @param string A string that contains a floating-point number.\r
43  */\r
44 declare function parseFloat(string: string): number;\r
46 /**\r
47  * Returns a Boolean value that indicates whether a value is the reserved value NaN (not a number).\r
48  * @param number A numeric value.\r
49  */\r
50 declare function isNaN(number: number): boolean;\r
52 /**\r
53  * Determines whether a supplied number is finite.\r
54  * @param number Any numeric value.\r
55  */\r
56 declare function isFinite(number: number): boolean;\r
58 /**\r
59  * Gets the unencoded version of an encoded Uniform Resource Identifier (URI).\r
60  * @param encodedURI A value representing an encoded URI.\r
61  */\r
62 declare function decodeURI(encodedURI: string): string;\r
64 /**\r
65  * Gets the unencoded version of an encoded component of a Uniform Resource Identifier (URI).\r
66  * @param encodedURIComponent A value representing an encoded URI component.\r
67  */\r
68 declare function decodeURIComponent(encodedURIComponent: string): string;\r
70 /**\r
71  * Encodes a text string as a valid Uniform Resource Identifier (URI)\r
72  * @param uri A value representing an encoded URI.\r
73  */\r
74 declare function encodeURI(uri: string): string;\r
76 /**\r
77  * Encodes a text string as a valid component of a Uniform Resource Identifier (URI).\r
78  * @param uriComponent A value representing an encoded URI component.\r
79  */\r
80 declare function encodeURIComponent(uriComponent: string): string;\r
82 interface PropertyDescriptor {\r
83   configurable?: boolean;\r
84   enumerable?: boolean;\r
85   value?: any;\r
86   writable?: boolean;\r
87   get? (): any;\r
88   set? (v: any): void;\r
89 }\r
91 interface PropertyDescriptorMap {\r
92   [s: string]: PropertyDescriptor;\r
93 }\r
95 interface Object {\r
96   /** The initial value of Object.prototype.constructor is the standard built-in Object constructor. */\r
97   constructor: Function;\r
99   /** Returns a string representation of an object. */\r
100   toString(): string;\r
102   /** Returns a date converted to a string using the current locale. */\r
103   toLocaleString(): string;\r
105   /** Returns the primitive value of the specified object. */\r
106   valueOf(): Object;\r
108   /**\r
109    * Determines whether an object has a property with the specified name.\r
110    * @param v A property name.\r
111    */\r
112   hasOwnProperty(v: string): boolean;\r
114   /**\r
115    * Determines whether an object exists in another object's prototype chain.\r
116    * @param v Another object whose prototype chain is to be checked.\r
117    */\r
118   isPrototypeOf(v: Object): boolean;\r
120   /**\r
121    * Determines whether a specified property is enumerable.\r
122    * @param v A property name.\r
123    */\r
124   propertyIsEnumerable(v: string): boolean;\r
127 interface ObjectConstructor {\r
128   new (value?: any): Object;\r
129   (): any;\r
130   (value: any): any;\r
132   /** A reference to the prototype for a class of objects. */\r
133   prototype: Object;\r
135   /**\r
136    * Returns the prototype of an object.\r
137    * @param o The object that references the prototype.\r
138    */\r
139   getPrototypeOf(o: any): any;\r
141   /**\r
142    * Gets the own property descriptor of the specified object.\r
143    * An own property descriptor is one that is defined directly on the object and is not inherited from the object's prototype.\r
144    * @param o Object that contains the property.\r
145    * @param p Name of the property.\r
146    */\r
147   getOwnPropertyDescriptor(o: any, p: string): PropertyDescriptor;\r
149   /**\r
150    * Returns the names of the own properties of an object. The own properties of an object are those that are defined directly\r
151    * on that object, and are not inherited from the object's prototype. The properties of an object include both fields (objects) and functions.\r
152    * @param o Object that contains the own properties.\r
153    */\r
154   getOwnPropertyNames(o: any): string[];\r
156   /**\r
157    * Creates an object that has the specified prototype, and that optionally contains specified properties.\r
158    * @param o Object to use as a prototype. May be null\r
159    * @param properties JavaScript object that contains one or more property descriptors.\r
160    */\r
161   create(o: any, properties?: PropertyDescriptorMap): any;\r
163   /**\r
164    * Adds a property to an object, or modifies attributes of an existing property.\r
165    * @param o Object on which to add or modify the property. This can be a native JavaScript object (that is, a user-defined object or a built in object) or a DOM object.\r
166    * @param p The property name.\r
167    * @param attributes Descriptor for the property. It can be for a data property or an accessor property.\r
168    */\r
169   defineProperty(o: any, p: string, attributes: PropertyDescriptor): any;\r
171   /**\r
172    * Adds one or more properties to an object, and/or modifies attributes of existing properties.\r
173    * @param o Object on which to add or modify the properties. This can be a native JavaScript object or a DOM object.\r
174    * @param properties JavaScript object that contains one or more descriptor objects. Each descriptor object describes a data property or an accessor property.\r
175    */\r
176   defineProperties(o: any, properties: PropertyDescriptorMap): any;\r
178   /**\r
179    * Prevents the modification of attributes of existing properties, and prevents the addition of new properties.\r
180    * @param o Object on which to lock the attributes.\r
181    */\r
182   seal(o: any): any;\r
184   /**\r
185    * Prevents the modification of existing property attributes and values, and prevents the addition of new properties.\r
186    * @param o Object on which to lock the attributes.\r
187    */\r
188   freeze(o: any): any;\r
190   /**\r
191    * Prevents the addition of new properties to an object.\r
192    * @param o Object to make non-extensible.\r
193    */\r
194   preventExtensions(o: any): any;\r
196   /**\r
197    * Returns true if existing property attributes cannot be modified in an object and new properties cannot be added to the object.\r
198    * @param o Object to test.\r
199    */\r
200   isSealed(o: any): boolean;\r
202   /**\r
203    * Returns true if existing property attributes and values cannot be modified in an object, and new properties cannot be added to the object.\r
204    * @param o Object to test.\r
205    */\r
206   isFrozen(o: any): boolean;\r
208   /**\r
209    * Returns a value that indicates whether new properties can be added to an object.\r
210    * @param o Object to test.\r
211    */\r
212   isExtensible(o: any): boolean;\r
214   /**\r
215    * Returns the names of the enumerable properties and methods of an object.\r
216    * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.\r
217    */\r
218   keys(o: any): string[];\r
221 /**\r
222  * Provides functionality common to all JavaScript objects.\r
223  */\r
224 declare var Object: ObjectConstructor;\r
226 /**\r
227  * Creates a new function.\r
228  */\r
229 interface Function {\r
230   /**\r
231    * Calls the function, substituting the specified object for the this value of the function, and the specified array for the arguments of the function.\r
232    * @param thisArg The object to be used as the this object.\r
233    * @param argArray A set of arguments to be passed to the function.\r
234    */\r
235   apply(thisArg: any, argArray?: any): any;\r
237   /**\r
238    * Calls a method of an object, substituting another object for the current object.\r
239    * @param thisArg The object to be used as the current object.\r
240    * @param argArray A list of arguments to be passed to the method.\r
241    */\r
242   call(thisArg: any, ...argArray: any[]): any;\r
244   /**\r
245    * For a given function, creates a bound function that has the same body as the original function.\r
246    * The this object of the bound function is associated with the specified object, and has the specified initial parameters.\r
247    * @param thisArg An object to which the this keyword can refer inside the new function.\r
248    * @param argArray A list of arguments to be passed to the new function.\r
249    */\r
250   bind(thisArg: any, ...argArray: any[]): any;\r
252   prototype: any;\r
253   name: string;\r
254   length: number;\r
256   // Non-standard extensions\r
257   arguments: any;\r
258   caller: Function;\r
261 interface FunctionConstructor {\r
262   /**\r
263    * Creates a new function.\r
264    * @param args A list of arguments the function accepts.\r
265    */\r
266   new (...args: string[]): Function;\r
267   (...args: string[]): Function;\r
268   prototype: Function;\r
271 declare var Function: FunctionConstructor;\r
273 interface IArguments {\r
274   [index: number]: any;\r
275   length: number;\r
276   callee: Function;\r
279 interface String {\r
280   /** Returns a string representation of a string. */\r
281   toString(): string;\r
283   /**\r
284    * Returns the character at the specified index.\r
285    * @param pos The zero-based index of the desired character.\r
286    */\r
287   charAt(pos: number): string;\r
289   /**\r
290    * Returns the Unicode value of the character at the specified location.\r
291    * @param index The zero-based index of the desired character. If there is no character at the specified index, NaN is returned.\r
292    */\r
293   charCodeAt(index: number): number;\r
295   /**\r
296    * Returns a string that contains the concatenation of two or more strings.\r
297    * @param strings The strings to append to the end of the string.\r
298    */\r
299   concat(...strings: string[]): string;\r
301   /**\r
302    * Returns the position of the first occurrence of a substring.\r
303    * @param searchString The substring to search for in the string\r
304    * @param position The index at which to begin searching the String object. If omitted, search starts at the beginning of the string.\r
305    */\r
306   indexOf(searchString: string, position?: number): number;\r
308   /**\r
309    * Returns the last occurrence of a substring in the string.\r
310    * @param searchString The substring to search for.\r
311    * @param position The index at which to begin searching. If omitted, the search begins at the end of the string.\r
312    */\r
313   lastIndexOf(searchString: string, position?: number): number;\r
315   /**\r
316    * Determines whether two strings are equivalent in the current locale.\r
317    * @param that String to compare to target string\r
318    */\r
319   localeCompare(that: string): number;\r
321   /**\r
322    * Matches a string with a regular expression, and returns an array containing the results of that search.\r
323    * @param regexp A variable name or string literal containing the regular expression pattern and flags.\r
324    */\r
325   match(regexp: string): RegExpMatchArray;\r
327   /**\r
328    * Matches a string with a regular expression, and returns an array containing the results of that search.\r
329    * @param regexp A regular expression object that contains the regular expression pattern and applicable flags.\r
330    */\r
331   match(regexp: RegExp): RegExpMatchArray;\r
333   /**\r
334    * Replaces text in a string, using a regular expression or search string.\r
335    * @param searchValue A String object or string literal that represents the regular expression\r
336    * @param replaceValue A String object or string literal containing the text to replace for every successful match of rgExp in stringObj.\r
337    */\r
338   replace(searchValue: string, replaceValue: string): string;\r
340   /**\r
341    * Replaces text in a string, using a regular expression or search string.\r
342    * @param searchValue A String object or string literal that represents the regular expression\r
343    * @param replaceValue A function that returns the replacement text.\r
344    */\r
345   replace(searchValue: string, replaceValue: (substring: string, ...args: any[]) => string): string;\r
347   /**\r
348    * Replaces text in a string, using a regular expression or search string.\r
349    * @param searchValue A Regular Expression object containing the regular expression pattern and applicable flags\r
350    * @param replaceValue A String object or string literal containing the text to replace for every successful match of rgExp in stringObj.\r
351    */\r
352   replace(searchValue: RegExp, replaceValue: string): string;\r
354   /**\r
355    * Replaces text in a string, using a regular expression or search string.\r
356    * @param searchValue A Regular Expression object containing the regular expression pattern and applicable flags\r
357    * @param replaceValue A function that returns the replacement text.\r
358    */\r
359   replace(searchValue: RegExp, replaceValue: (substring: string, ...args: any[]) => string): string;\r
361   /**\r
362    * Finds the first substring match in a regular expression search.\r
363    * @param regexp The regular expression pattern and applicable flags.\r
364    */\r
365   search(regexp: string): number;\r
367   /**\r
368    * Finds the first substring match in a regular expression search.\r
369    * @param regexp The regular expression pattern and applicable flags.\r
370    */\r
371   search(regexp: RegExp): number;\r
373   /**\r
374    * Returns a section of a string.\r
375    * @param start The index to the beginning of the specified portion of stringObj.\r
376    * @param end The index to the end of the specified portion of stringObj. The substring includes the characters up to, but not including, the character indicated by end.\r
377    * If this value is not specified, the substring continues to the end of stringObj.\r
378    */\r
379   slice(start?: number, end?: number): string;\r
381   /**\r
382    * Split a string into substrings using the specified separator and return them as an array.\r
383    * @param separator A string that identifies character or characters to use in separating the string. If omitted, a single-element array containing the entire string is returned.\r
384    * @param limit A value used to limit the number of elements returned in the array.\r
385    */\r
386   split(separator: string, limit?: number): string[];\r
388   /**\r
389    * Split a string into substrings using the specified separator and return them as an array.\r
390    * @param separator A Regular Express that identifies character or characters to use in separating the string. If omitted, a single-element array containing the entire string is returned.\r
391    * @param limit A value used to limit the number of elements returned in the array.\r
392    */\r
393   split(separator: RegExp, limit?: number): string[];\r
395   /**\r
396    * Returns the substring at the specified location within a String object.\r
397    * @param start The zero-based index number indicating the beginning of the substring.\r
398    * @param end Zero-based index number indicating the end of the substring. The substring includes the characters up to, but not including, the character indicated by end.\r
399    * If end is omitted, the characters from start through the end of the original string are returned.\r
400    */\r
401   substring(start: number, end?: number): string;\r
403   /** Converts all the alphabetic characters in a string to lowercase. */\r
404   toLowerCase(): string;\r
406   /** Converts all alphabetic characters to lowercase, taking into account the host environment's current locale. */\r
407   toLocaleLowerCase(): string;\r
409   /** Converts all the alphabetic characters in a string to uppercase. */\r
410   toUpperCase(): string;\r
412   /** Returns a string where all alphabetic characters have been converted to uppercase, taking into account the host environment's current locale. */\r
413   toLocaleUpperCase(): string;\r
415   /** Removes the leading and trailing white space and line terminator characters from a string. */\r
416   trim(): string;\r
418   /** Returns the length of a String object. */\r
419   length: number;\r
421   // IE extensions\r
422   /**\r
423    * Gets a substring beginning at the specified location and having the specified length.\r
424    * @param from The starting position of the desired substring. The index of the first character in the string is zero.\r
425    * @param length The number of characters to include in the returned substring.\r
426    */\r
427   substr(from: number, length?: number): string;\r
429   [index: number]: string;\r
432 interface StringConstructor {\r
433   new (value?: any): String;\r
434   (value?: any): string;\r
435   prototype: String;\r
436   fromCharCode(...codes: number[]): string;\r
439 /**\r
440  * Allows manipulation and formatting of text strings and determination and location of substrings within strings.\r
441  */\r
442 declare var String: StringConstructor;\r
444 interface Boolean {\r
447 interface BooleanConstructor {\r
448   new (value?: any): Boolean;\r
449   (value?: any): boolean;\r
450   prototype: Boolean;\r
453 declare var Boolean: BooleanConstructor;\r
455 interface Number {\r
456   /**\r
457    * Returns a string representation of an object.\r
458    * @param radix Specifies a radix for converting numeric values to strings. This value is only used for numbers.\r
459    */\r
460   toString(radix?: number): string;\r
462   /**\r
463    * Returns a string representing a number in fixed-point notation.\r
464    * @param fractionDigits Number of digits after the decimal point. Must be in the range 0 - 20, inclusive.\r
465    */\r
466   toFixed(fractionDigits?: number): string;\r
468   /**\r
469    * Returns a string containing a number represented in exponential notation.\r
470    * @param fractionDigits Number of digits after the decimal point. Must be in the range 0 - 20, inclusive.\r
471    */\r
472   toExponential(fractionDigits?: number): string;\r
474   /**\r
475    * Returns a string containing a number represented either in exponential or fixed-point notation with a specified number of digits.\r
476    * @param precision Number of significant digits. Must be in the range 1 - 21, inclusive.\r
477    */\r
478   toPrecision(precision?: number): string;\r
481 interface NumberConstructor {\r
482   new (value?: any): Number;\r
483   (value?: any): number;\r
484   prototype: Number;\r
486   /** The largest number that can be represented in JavaScript. Equal to approximately 1.79E+308. */\r
487   MAX_VALUE: number;\r
489   /** The closest number to zero that can be represented in JavaScript. Equal to approximately 5.00E-324. */\r
490   MIN_VALUE: number;\r
492   /**\r
493    * A value that is not a number.\r
494    * In equality comparisons, NaN does not equal any value, including itself. To test whether a value is equivalent to NaN, use the isNaN function.\r
495    */\r
496   NaN: number;\r
498   /**\r
499    * A value that is less than the largest negative number that can be represented in JavaScript.\r
500    * JavaScript displays NEGATIVE_INFINITY values as -infinity.\r
501    */\r
502   NEGATIVE_INFINITY: number;\r
504   /**\r
505    * A value greater than the largest number that can be represented in JavaScript.\r
506    * JavaScript displays POSITIVE_INFINITY values as infinity.\r
507    */\r
508   POSITIVE_INFINITY: number;\r
511 /** An object that represents a number of any kind. All JavaScript numbers are 64-bit floating-point numbers. */\r
512 declare var Number: NumberConstructor;\r
514 interface TemplateStringsArray extends Array<string> {\r
515   raw: string[];\r
518 interface Math {\r
519   /** The mathematical constant e. This is Euler's number, the base of natural logarithms. */\r
520   E: number;\r
521   /** The natural logarithm of 10. */\r
522   LN10: number;\r
523   /** The natural logarithm of 2. */\r
524   LN2: number;\r
525   /** The base-2 logarithm of e. */\r
526   LOG2E: number;\r
527   /** The base-10 logarithm of e. */\r
528   LOG10E: number;\r
529   /** Pi. This is the ratio of the circumference of a circle to its diameter. */\r
530   PI: number;\r
531   /** The square root of 0.5, or, equivalently, one divided by the square root of 2. */\r
532   SQRT1_2: number;\r
533   /** The square root of 2. */\r
534   SQRT2: number;\r
535   /**\r
536    * Returns the absolute value of a number (the value without regard to whether it is positive or negative).\r
537    * For example, the absolute value of -5 is the same as the absolute value of 5.\r
538    * @param x A numeric expression for which the absolute value is needed.\r
539    */\r
540   abs(x: number): number;\r
541   /**\r
542    * Returns the arc cosine (or inverse cosine) of a number.\r
543    * @param x A numeric expression.\r
544    */\r
545   acos(x: number): number;\r
546   /**\r
547    * Returns the arcsine of a number.\r
548    * @param x A numeric expression.\r
549    */\r
550   asin(x: number): number;\r
551   /**\r
552    * Returns the arctangent of a number.\r
553    * @param x A numeric expression for which the arctangent is needed.\r
554    */\r
555   atan(x: number): number;\r
556   /**\r
557    * Returns the angle (in radians) from the X axis to a point (y,x).\r
558    * @param y A numeric expression representing the cartesian y-coordinate.\r
559    * @param x A numeric expression representing the cartesian x-coordinate.\r
560    */\r
561   atan2(y: number, x: number): number;\r
562   /**\r
563    * Returns the smallest number greater than or equal to its numeric argument.\r
564    * @param x A numeric expression.\r
565    */\r
566   ceil(x: number): number;\r
567   /**\r
568    * Returns the cosine of a number.\r
569    * @param x A numeric expression that contains an angle measured in radians.\r
570    */\r
571   cos(x: number): number;\r
572   /**\r
573    * Returns e (the base of natural logarithms) raised to a power.\r
574    * @param x A numeric expression representing the power of e.\r
575    */\r
576   exp(x: number): number;\r
577   /**\r
578    * Returns the greatest number less than or equal to its numeric argument.\r
579    * @param x A numeric expression.\r
580    */\r
581   floor(x: number): number;\r
582   /**\r
583    * Returns the natural logarithm (base e) of a number.\r
584    * @param x A numeric expression.\r
585    */\r
586   log(x: number): number;\r
587   /**\r
588    * Returns the larger of a set of supplied numeric expressions.\r
589    * @param values Numeric expressions to be evaluated.\r
590    */\r
591   max(...values: number[]): number;\r
592   /**\r
593    * Returns the smaller of a set of supplied numeric expressions.\r
594    * @param values Numeric expressions to be evaluated.\r
595    */\r
596   min(...values: number[]): number;\r
597   /**\r
598    * Returns the value of a base expression taken to a specified power.\r
599    * @param x The base value of the expression.\r
600    * @param y The exponent value of the expression.\r
601    */\r
602   pow(x: number, y: number): number;\r
603   /** Returns a pseudorandom number between 0 and 1. */\r
604   random(): number;\r
605   /**\r
606    * Returns a supplied numeric expression rounded to the nearest number.\r
607    * @param x The value to be rounded to the nearest number.\r
608    */\r
609   round(x: number): number;\r
610   /**\r
611    * Returns the sine of a number.\r
612    * @param x A numeric expression that contains an angle measured in radians.\r
613    */\r
614   sin(x: number): number;\r
615   /**\r
616    * Returns the square root of a number.\r
617    * @param x A numeric expression.\r
618    */\r
619   sqrt(x: number): number;\r
620   /**\r
621    * Returns the tangent of a number.\r
622    * @param x A numeric expression that contains an angle measured in radians.\r
623    */\r
624   tan(x: number): number;\r
626 /** An intrinsic object that provides basic mathematics functionality and constants. */\r
627 declare var Math: Math;\r
629 /** Enables basic storage and retrieval of dates and times. */\r
630 interface Date {\r
631   /** Returns a string representation of a date. The format of the string depends on the locale. */\r
632   toString(): string;\r
633   /** Returns a date as a string value. */\r
634   toDateString(): string;\r
635   /** Returns a time as a string value. */\r
636   toTimeString(): string;\r
637   /** Returns a value as a string value appropriate to the host environment's current locale. */\r
638   toLocaleString(): string;\r
639   /** Returns a date as a string value appropriate to the host environment's current locale. */\r
640   toLocaleDateString(): string;\r
641   /** Returns a time as a string value appropriate to the host environment's current locale. */\r
642   toLocaleTimeString(): string;\r
643   /** Returns the stored time value in milliseconds since midnight, January 1, 1970 UTC. */\r
644   valueOf(): number;\r
645   /** Gets the time value in milliseconds. */\r
646   getTime(): number;\r
647   /** Gets the year, using local time. */\r
648   getFullYear(): number;\r
649   /** Gets the year using Universal Coordinated Time (UTC). */\r
650   getUTCFullYear(): number;\r
651   /** Gets the month, using local time. */\r
652   getMonth(): number;\r
653   /** Gets the month of a Date object using Universal Coordinated Time (UTC). */\r
654   getUTCMonth(): number;\r
655   /** Gets the day-of-the-month, using local time. */\r
656   getDate(): number;\r
657   /** Gets the day-of-the-month, using Universal Coordinated Time (UTC). */\r
658   getUTCDate(): number;\r
659   /** Gets the day of the week, using local time. */\r
660   getDay(): number;\r
661   /** Gets the day of the week using Universal Coordinated Time (UTC). */\r
662   getUTCDay(): number;\r
663   /** Gets the hours in a date, using local time. */\r
664   getHours(): number;\r
665   /** Gets the hours value in a Date object using Universal Coordinated Time (UTC). */\r
666   getUTCHours(): number;\r
667   /** Gets the minutes of a Date object, using local time. */\r
668   getMinutes(): number;\r
669   /** Gets the minutes of a Date object using Universal Coordinated Time (UTC). */\r
670   getUTCMinutes(): number;\r
671   /** Gets the seconds of a Date object, using local time. */\r
672   getSeconds(): number;\r
673   /** Gets the seconds of a Date object using Universal Coordinated Time (UTC). */\r
674   getUTCSeconds(): number;\r
675   /** Gets the milliseconds of a Date, using local time. */\r
676   getMilliseconds(): number;\r
677   /** Gets the milliseconds of a Date object using Universal Coordinated Time (UTC). */\r
678   getUTCMilliseconds(): number;\r
679   /** Gets the difference in minutes between the time on the local computer and Universal Coordinated Time (UTC). */\r
680   getTimezoneOffset(): number;\r
681   /**\r
682    * Sets the date and time value in the Date object.\r
683    * @param time A numeric value representing the number of elapsed milliseconds since midnight, January 1, 1970 GMT.\r
684    */\r
685   setTime(time: number): number;\r
686   /**\r
687    * Sets the milliseconds value in the Date object using local time.\r
688    * @param ms A numeric value equal to the millisecond value.\r
689    */\r
690   setMilliseconds(ms: number): number;\r
691   /**\r
692    * Sets the milliseconds value in the Date object using Universal Coordinated Time (UTC).\r
693    * @param ms A numeric value equal to the millisecond value.\r
694    */\r
695   setUTCMilliseconds(ms: number): number;\r
697   /**\r
698    * Sets the seconds value in the Date object using local time.\r
699    * @param sec A numeric value equal to the seconds value.\r
700    * @param ms A numeric value equal to the milliseconds value.\r
701    */\r
702   setSeconds(sec: number, ms?: number): number;\r
703   /**\r
704    * Sets the seconds value in the Date object using Universal Coordinated Time (UTC).\r
705    * @param sec A numeric value equal to the seconds value.\r
706    * @param ms A numeric value equal to the milliseconds value.\r
707    */\r
708   setUTCSeconds(sec: number, ms?: number): number;\r
709   /**\r
710    * Sets the minutes value in the Date object using local time.\r
711    * @param min A numeric value equal to the minutes value.\r
712    * @param sec A numeric value equal to the seconds value.\r
713    * @param ms A numeric value equal to the milliseconds value.\r
714    */\r
715   setMinutes(min: number, sec?: number, ms?: number): number;\r
716   /**\r
717    * Sets the minutes value in the Date object using Universal Coordinated Time (UTC).\r
718    * @param min A numeric value equal to the minutes value.\r
719    * @param sec A numeric value equal to the seconds value.\r
720    * @param ms A numeric value equal to the milliseconds value.\r
721    */\r
722   setUTCMinutes(min: number, sec?: number, ms?: number): number;\r
723   /**\r
724    * Sets the hour value in the Date object using local time.\r
725    * @param hours A numeric value equal to the hours value.\r
726    * @param min A numeric value equal to the minutes value.\r
727    * @param sec A numeric value equal to the seconds value.\r
728    * @param ms A numeric value equal to the milliseconds value.\r
729    */\r
730   setHours(hours: number, min?: number, sec?: number, ms?: number): number;\r
731   /**\r
732    * Sets the hours value in the Date object using Universal Coordinated Time (UTC).\r
733    * @param hours A numeric value equal to the hours value.\r
734    * @param min A numeric value equal to the minutes value.\r
735    * @param sec A numeric value equal to the seconds value.\r
736    * @param ms A numeric value equal to the milliseconds value.\r
737    */\r
738   setUTCHours(hours: number, min?: number, sec?: number, ms?: number): number;\r
739   /**\r
740    * Sets the numeric day-of-the-month value of the Date object using local time.\r
741    * @param date A numeric value equal to the day of the month.\r
742    */\r
743   setDate(date: number): number;\r
744   /**\r
745    * Sets the numeric day of the month in the Date object using Universal Coordinated Time (UTC).\r
746    * @param date A numeric value equal to the day of the month.\r
747    */\r
748   setUTCDate(date: number): number;\r
749   /**\r
750    * Sets the month value in the Date object using local time.\r
751    * @param month A numeric value equal to the month. The value for January is 0, and other month values follow consecutively.\r
752    * @param date A numeric value representing the day of the month. If this value is not supplied, the value from a call to the getDate method is used.\r
753    */\r
754   setMonth(month: number, date?: number): number;\r
755   /**\r
756    * Sets the month value in the Date object using Universal Coordinated Time (UTC).\r
757    * @param month A numeric value equal to the month. The value for January is 0, and other month values follow consecutively.\r
758    * @param date A numeric value representing the day of the month. If it is not supplied, the value from a call to the getUTCDate method is used.\r
759    */\r
760   setUTCMonth(month: number, date?: number): number;\r
761   /**\r
762    * Sets the year of the Date object using local time.\r
763    * @param year A numeric value for the year.\r
764    * @param month A zero-based numeric value for the month (0 for January, 11 for December). Must be specified if numDate is specified.\r
765    * @param date A numeric value equal for the day of the month.\r
766    */\r
767   setFullYear(year: number, month?: number, date?: number): number;\r
768   /**\r
769    * Sets the year value in the Date object using Universal Coordinated Time (UTC).\r
770    * @param year A numeric value equal to the year.\r
771    * @param month A numeric value equal to the month. The value for January is 0, and other month values follow consecutively. Must be supplied if numDate is supplied.\r
772    * @param date A numeric value equal to the day of the month.\r
773    */\r
774   setUTCFullYear(year: number, month?: number, date?: number): number;\r
775   /** Returns a date converted to a string using Universal Coordinated Time (UTC). */\r
776   toUTCString(): string;\r
777   /** Returns a date as a string value in ISO format. */\r
778   toISOString(): string;\r
779   /** Used by the JSON.stringify method to enable the transformation of an object's data for JavaScript Object Notation (JSON) serialization. */\r
780   toJSON(key?: any): string;\r
783 interface DateConstructor {\r
784   new (): Date;\r
785   new (value: number): Date;\r
786   new (value: string): Date;\r
787   new (year: number, month: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): Date;\r
788   (): string;\r
789   prototype: Date;\r
790   /**\r
791    * Parses a string containing a date, and returns the number of milliseconds between that date and midnight, January 1, 1970.\r
792    * @param s A date string\r
793    */\r
794   parse(s: string): number;\r
795   /**\r
796    * Returns the number of milliseconds between midnight, January 1, 1970 Universal Coordinated Time (UTC) (or GMT) and the specified date.\r
797    * @param year The full year designation is required for cross-century date accuracy. If year is between 0 and 99 is used, then year is assumed to be 1900 + year.\r
798    * @param month The month as an number between 0 and 11 (January to December).\r
799    * @param date The date as an number between 1 and 31.\r
800    * @param hours Must be supplied if minutes is supplied. An number from 0 to 23 (midnight to 11pm) that specifies the hour.\r
801    * @param minutes Must be supplied if seconds is supplied. An number from 0 to 59 that specifies the minutes.\r
802    * @param seconds Must be supplied if milliseconds is supplied. An number from 0 to 59 that specifies the seconds.\r
803    * @param ms An number from 0 to 999 that specifies the milliseconds.\r
804    */\r
805   UTC(year: number, month: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): number;\r
806   now(): number;\r
809 declare var Date: DateConstructor;\r
811 interface RegExpMatchArray extends Array<string> {\r
812   index?: number;\r
813   input?: string;\r
816 interface RegExpExecArray extends Array<string> {\r
817   index: number;\r
818   input: string;\r
821 interface RegExp {\r
822   /**\r
823    * Executes a search on a string using a regular expression pattern, and returns an array containing the results of that search.\r
824    * @param string The String object or string literal on which to perform the search.\r
825    */\r
826   exec(string: string): RegExpExecArray;\r
828   /**\r
829    * Returns a Boolean value that indicates whether or not a pattern exists in a searched string.\r
830    * @param string String on which to perform the search.\r
831    */\r
832   test(string: string): boolean;\r
834   /** Returns a copy of the text of the regular expression pattern. Read-only. The rgExp argument is a Regular expression object. It can be a variable name or a literal. */\r
835   source: string;\r
837   /** Returns a Boolean value indicating the state of the global flag (g) used with a regular expression. Default is false. Read-only. */\r
838   global: boolean;\r
840   sticky: boolean;\r
842   /** Returns a Boolean value indicating the state of the ignoreCase flag (i) used with a regular expression. Default is false. Read-only. */\r
843   ignoreCase: boolean;\r
845   /** Returns a Boolean value indicating the state of the multiline flag (m) used with a regular expression. Default is false. Read-only. */\r
846   multiline: boolean;\r
848   lastIndex: number;\r
850   // Non-standard extensions\r
851   compile(): RegExp;\r
854 interface RegExpConstructor {\r
855   new (pattern: string, flags?: string): RegExp;\r
856   (pattern: string, flags?: string): RegExp;\r
857   prototype: RegExp;\r
859   // Non-standard extensions\r
860   $1: string;\r
861   $2: string;\r
862   $3: string;\r
863   $4: string;\r
864   $5: string;\r
865   $6: string;\r
866   $7: string;\r
867   $8: string;\r
868   $9: string;\r
869   lastMatch: string;\r
872 declare var RegExp: RegExpConstructor;\r
874 interface Error {\r
875   name: string;\r
876   message: string;\r
879 interface ErrorConstructor {\r
880   new (message?: string): Error;\r
881   (message?: string): Error;\r
882   prototype: Error;\r
885 declare var Error: ErrorConstructor;\r
887 interface EvalError extends Error {\r
890 interface EvalErrorConstructor {\r
891   new (message?: string): EvalError;\r
892   (message?: string): EvalError;\r
893   prototype: EvalError;\r
896 declare var EvalError: EvalErrorConstructor;\r
898 interface RangeError extends Error {\r
901 interface RangeErrorConstructor {\r
902   new (message?: string): RangeError;\r
903   (message?: string): RangeError;\r
904   prototype: RangeError;\r
907 declare var RangeError: RangeErrorConstructor;\r
909 interface ReferenceError extends Error {\r
912 interface ReferenceErrorConstructor {\r
913   new (message?: string): ReferenceError;\r
914   (message?: string): ReferenceError;\r
915   prototype: ReferenceError;\r
918 declare var ReferenceError: ReferenceErrorConstructor;\r
920 interface SyntaxError extends Error {\r
923 interface SyntaxErrorConstructor {\r
924   new (message?: string): SyntaxError;\r
925   (message?: string): SyntaxError;\r
926   prototype: SyntaxError;\r
929 declare var SyntaxError: SyntaxErrorConstructor;\r
931 interface TypeError extends Error {\r
934 interface TypeErrorConstructor {\r
935   new (message?: string): TypeError;\r
936   (message?: string): TypeError;\r
937   prototype: TypeError;\r
940 declare var TypeError: TypeErrorConstructor;\r
942 interface URIError extends Error {\r
945 interface URIErrorConstructor {\r
946   new (message?: string): URIError;\r
947   (message?: string): URIError;\r
948   prototype: URIError;\r
951 declare var URIError: URIErrorConstructor;\r
953 interface JSON {\r
954   /**\r
955    * Converts a JavaScript Object Notation (JSON) string into an object.\r
956    * @param text A valid JSON string.\r
957    * @param reviver A function that transforms the results. This function is called for each member of the object.\r
958    * If a member contains nested objects, the nested objects are transformed before the parent object is.\r
959    */\r
960   parse(text: string, reviver?: (key: any, value: any) => any): any;\r
961   /**\r
962    * Converts a JavaScript value to a JavaScript Object Notation (JSON) string.\r
963    * @param value A JavaScript value, usually an object or array, to be converted.\r
964    */\r
965   stringify(value: any): string;\r
966   /**\r
967    * Converts a JavaScript value to a JavaScript Object Notation (JSON) string.\r
968    * @param value A JavaScript value, usually an object or array, to be converted.\r
969    * @param replacer A function that transforms the results.\r
970    */\r
971   stringify(value: any, replacer: (key: string, value: any) => any): string;\r
972   /**\r
973    * Converts a JavaScript value to a JavaScript Object Notation (JSON) string.\r
974    * @param value A JavaScript value, usually an object or array, to be converted.\r
975    * @param replacer Array that transforms the results.\r
976    */\r
977   stringify(value: any, replacer: any[]): string;\r
978   /**\r
979    * Converts a JavaScript value to a JavaScript Object Notation (JSON) string.\r
980    * @param value A JavaScript value, usually an object or array, to be converted.\r
981    * @param replacer A function that transforms the results.\r
982    * @param space Adds indentation, white space, and line break characters to the return-value JSON text to make it easier to read.\r
983    */\r
984   stringify(value: any, replacer: (key: string, value: any) => any, space: any): string;\r
985   /**\r
986    * Converts a JavaScript value to a JavaScript Object Notation (JSON) string.\r
987    * @param value A JavaScript value, usually an object or array, to be converted.\r
988    * @param replacer Array that transforms the results.\r
989    * @param space Adds indentation, white space, and line break characters to the return-value JSON text to make it easier to read.\r
990    */\r
991   stringify(value: any, replacer: any[], space: any): string;\r
993 /**\r
994  * An intrinsic object that provides functions to convert JavaScript values to and from the JavaScript Object Notation (JSON) format.\r
995  */\r
996 declare var JSON: JSON;\r
999 /////////////////////////////\r
1000 /// ECMAScript Array API (specially handled by compiler)\r
1001 /////////////////////////////\r
1003 interface Array<T> {\r
1004   /**\r
1005    * Gets or sets the length of the array. This is a number one higher than the highest element defined in an array.\r
1006    */\r
1007   length: number;\r
1008   /**\r
1009    * Returns a string representation of an array.\r
1010    */\r
1011   toString(): string;\r
1012   toLocaleString(): string;\r
1013   /**\r
1014    * Appends new elements to an array, and returns the new length of the array.\r
1015    * @param items New elements of the Array.\r
1016    */\r
1017   push(...items: T[]): number;\r
1018   /**\r
1019    * Removes the last element from an array and returns it.\r
1020    */\r
1021   pop(): T;\r
1022   /**\r
1023    * Combines two or more arrays.\r
1024    * @param items Additional items to add to the end of array1.\r
1025    */\r
1026   concat<U extends T[]>(...items: U[]): T[];\r
1027   /**\r
1028    * Combines two or more arrays.\r
1029    * @param items Additional items to add to the end of array1.\r
1030    */\r
1031   concat(...items: T[]): T[];\r
1032   /**\r
1033    * Adds all the elements of an array separated by the specified separator string.\r
1034    * @param separator A string used to separate one element of an array from the next in the resulting String. If omitted, the array elements are separated with a comma.\r
1035    */\r
1036   join(separator?: string): string;\r
1037   /**\r
1038    * Reverses the elements in an Array.\r
1039    */\r
1040   reverse(): T[];\r
1041   /**\r
1042    * Removes the first element from an array and returns it.\r
1043    */\r
1044   shift(): T;\r
1045   /**\r
1046    * Returns a section of an array.\r
1047    * @param start The beginning of the specified portion of the array.\r
1048    * @param end The end of the specified portion of the array.\r
1049    */\r
1050   slice(start?: number, end?: number): T[];\r
1052   /**\r
1053    * Sorts an array.\r
1054    * @param compareFn The name of the function used to determine the order of the elements. If omitted, the elements are sorted in ascending, ASCII character order.\r
1055    */\r
1056   sort(compareFn?: (a: T, b: T) => number): T[];\r
1058   /**\r
1059    * Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.\r
1060    * @param start The zero-based location in the array from which to start removing elements.\r
1061    */\r
1062   splice(start: number): T[];\r
1064   /**\r
1065    * Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.\r
1066    * @param start The zero-based location in the array from which to start removing elements.\r
1067    * @param deleteCount The number of elements to remove.\r
1068    * @param items Elements to insert into the array in place of the deleted elements.\r
1069    */\r
1070   splice(start: number, deleteCount: number, ...items: T[]): T[];\r
1072   /**\r
1073    * Inserts new elements at the start of an array.\r
1074    * @param items  Elements to insert at the start of the Array.\r
1075    */\r
1076   unshift(...items: T[]): number;\r
1078   /**\r
1079    * Returns the index of the first occurrence of a value in an array.\r
1080    * @param searchElement The value to locate in the array.\r
1081    * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0.\r
1082    */\r
1083   indexOf(searchElement: T, fromIndex?: number): number;\r
1085   /**\r
1086    * Returns the index of the last occurrence of a specified value in an array.\r
1087    * @param searchElement The value to locate in the array.\r
1088    * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the search starts at the last index in the array.\r
1089    */\r
1090   lastIndexOf(searchElement: T, fromIndex?: number): number;\r
1092   /**\r
1093    * Determines whether all the members of an array satisfy the specified test.\r
1094    * @param callbackfn A function that accepts up to three arguments. The every method calls the callbackfn function for each element in array1 until the callbackfn returns false, or until the end of the array.\r
1095    * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\r
1096    */\r
1097   every(callbackfn: (value: T, index: number, array: T[]) => boolean, thisArg?: any): boolean;\r
1099   /**\r
1100    * Determines whether the specified callback function returns true for any element of an array.\r
1101    * @param callbackfn A function that accepts up to three arguments. The some method calls the callbackfn function for each element in array1 until the callbackfn returns true, or until the end of the array.\r
1102    * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\r
1103    */\r
1104   some(callbackfn: (value: T, index: number, array: T[]) => boolean, thisArg?: any): boolean;\r
1106   /**\r
1107    * Performs the specified action for each element in an array.\r
1108    * @param callbackfn  A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array.\r
1109    * @param thisArg  An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\r
1110    */\r
1111   forEach(callbackfn: (value: T, index: number, array: T[]) => void, thisArg?: any): void;\r
1113   /**\r
1114    * Calls a defined callback function on each element of an array, and returns an array that contains the results.\r
1115    * @param callbackfn A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array.\r
1116    * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\r
1117    */\r
1118   map<U>(callbackfn: (value: T, index: number, array: T[]) => U, thisArg?: any): U[];\r
1120   /**\r
1121    * Returns the elements of an array that meet the condition specified in a callback function.\r
1122    * @param callbackfn A function that accepts up to three arguments. The filter method calls the callbackfn function one time for each element in the array.\r
1123    * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.\r
1124    */\r
1125   filter(callbackfn: (value: T, index: number, array: T[]) => boolean, thisArg?: any): T[];\r
1127   /**\r
1128    * Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.\r
1129    * @param callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.\r
1130    * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.\r
1131    */\r
1132   reduce(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue?: T): T;\r
1133   /**\r
1134    * Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.\r
1135    * @param callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.\r
1136    * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.\r
1137    */\r
1138   reduce<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U, initialValue: U): U;\r
1140   /**\r
1141    * Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.\r
1142    * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.\r
1143    * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.\r
1144    */\r
1145   reduceRight(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue?: T): T;\r
1146   /**\r
1147    * Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.\r
1148    * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.\r
1149    * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.\r
1150    */\r
1151   reduceRight<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U, initialValue: U): U;\r
1153   [n: number]: T;\r
1156 interface ArrayConstructor {\r
1157   new (arrayLength?: number): any[];\r
1158   new <T>(arrayLength: number): T[];\r
1159   new <T>(...items: T[]): T[];\r
1160   (arrayLength?: number): any[];\r
1161   <T>(arrayLength: number): T[];\r
1162   <T>(...items: T[]): T[];\r
1163   isArray(arg: any): boolean;\r
1164   prototype: Array<any>;\r
1167 declare var Array: ArrayConstructor;\r
1169 /////////////////////////////\r
1170 /// IE10 ECMAScript Extensions\r
1171 /////////////////////////////\r
1173 /**\r
1174  * Represents a raw buffer of binary data, which is used to store data for the\r
1175  * different typed arrays. ArrayBuffers cannot be read from or written to directly,\r
1176  * but can be passed to a typed array or DataView Object to interpret the raw\r
1177  * buffer as needed.\r
1178  */\r
1179 interface ArrayBuffer {\r
1180   /**\r
1181    * Read-only. The length of the ArrayBuffer (in bytes).\r
1182    */\r
1183   byteLength: number;\r
1185   /**\r
1186    * Returns a section of an ArrayBuffer.\r
1187    */\r
1188   slice(begin:number, end?:number): ArrayBuffer;\r
1191 declare var ArrayBuffer: {\r
1192   prototype: ArrayBuffer;\r
1193   new (byteLength: number): ArrayBuffer;\r
1196 interface ArrayBufferView {\r
1197   buffer: ArrayBuffer;\r
1198   byteOffset: number;\r
1199   byteLength: number;\r
1202 /**\r
1203  * A typed array of 8-bit integer values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1204  */\r
1205 interface Int8Array extends ArrayBufferView {\r
1206   /**\r
1207    * The size in bytes of each element in the array.\r
1208    */\r
1209   BYTES_PER_ELEMENT: number;\r
1211   /**\r
1212    * The length of the array.\r
1213    */\r
1214   length: number;\r
1216   [index: number]: number;\r
1218   /**\r
1219    * Gets the element at the specified index.\r
1220    * @param index The index at which to get the element of the array.\r
1221    */\r
1222   get(index: number): number;\r
1224   /**\r
1225    * Sets a value or an array of values.\r
1226    * @param index The index of the location to set.\r
1227    * @param value The value to set.\r
1228    */\r
1229   set(index: number, value: number): void;\r
1231   /**\r
1232    * Sets a value or an array of values.\r
1233    * @param array A typed or untyped array of values to set.\r
1234    * @param offset The index in the current array at which the values are to be written.\r
1235    */\r
1236   set(array: Int8Array, offset?: number): void;\r
1238   /**\r
1239    * Sets a value or an array of values.\r
1240    * @param array A typed or untyped array of values to set.\r
1241    * @param offset The index in the current array at which the values are to be written.\r
1242    */\r
1243   set(array: number[], offset?: number): void;\r
1245   /**\r
1246    * Gets a new Int8Array view of the ArrayBuffer store for this array, referencing the elements at begin, inclusive, up to end, exclusive.\r
1247    * @param begin The index of the beginning of the array.\r
1248    * @param end The index of the end of the array.\r
1249    */\r
1250   subarray(begin: number, end?: number): Int8Array;\r
1252 declare var Int8Array: {\r
1253   prototype: Int8Array;\r
1254   new (length: number): Int8Array;\r
1255   new (array: Int8Array): Int8Array;\r
1256   new (array: number[]): Int8Array;\r
1257   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Int8Array;\r
1258   BYTES_PER_ELEMENT: number;\r
1261 /**\r
1262  * A typed array of 8-bit unsigned integer values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1263  */\r
1264 interface Uint8Array extends ArrayBufferView {\r
1265   /**\r
1266    * The size in bytes of each element in the array.\r
1267    */\r
1268   BYTES_PER_ELEMENT: number;\r
1270   /**\r
1271    * The length of the array.\r
1272    */\r
1273   length: number;\r
1274   [index: number]: number;\r
1276   /**\r
1277    * Gets the element at the specified index.\r
1278    * @param index The index at which to get the element of the array.\r
1279    */\r
1280   get(index: number): number;\r
1282   /**\r
1283    * Sets a value or an array of values.\r
1284    * @param index The index of the location to set.\r
1285    * @param value The value to set.\r
1286    */\r
1287   set(index: number, value: number): void;\r
1289   /**\r
1290    * Sets a value or an array of values.\r
1291    * @param array A typed or untyped array of values to set.\r
1292    * @param offset The index in the current array at which the values are to be written.\r
1293    */\r
1294   set(array: Uint8Array, offset?: number): void;\r
1296   /**\r
1297    * Sets a value or an array of values.\r
1298    * @param array A typed or untyped array of values to set.\r
1299    * @param offset The index in the current array at which the values are to be written.\r
1300    */\r
1301   set(array: number[], offset?: number): void;\r
1303   /**\r
1304    * Gets a new Uint8Array view of the ArrayBuffer Object store for this array, specifying the first and last members of the subarray.\r
1305    * @param begin The index of the beginning of the array.\r
1306    * @param end The index of the end of the array.\r
1307    */\r
1308   subarray(begin: number, end?: number): Uint8Array;\r
1310 declare var Uint8Array: {\r
1311   prototype: Uint8Array;\r
1312   new (length: number): Uint8Array;\r
1313   new (array: Uint8Array): Uint8Array;\r
1314   new (array: number[]): Uint8Array;\r
1315   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Uint8Array;\r
1316   BYTES_PER_ELEMENT: number;\r
1319 /**\r
1320  * A typed array of 16-bit integer values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1321  */\r
1322 interface Int16Array extends ArrayBufferView {\r
1323   /**\r
1324    * The size in bytes of each element in the array.\r
1325    */\r
1326   BYTES_PER_ELEMENT: number;\r
1328   /**\r
1329    * The length of the array.\r
1330    */\r
1331   length: number;\r
1332   [index: number]: number;\r
1334   /**\r
1335    * Gets the element at the specified index.\r
1336    * @param index The index at which to get the element of the array.\r
1337    */\r
1338   get(index: number): number;\r
1340   /**\r
1341    * Sets a value or an array of values.\r
1342    * @param index The index of the location to set.\r
1343    * @param value The value to set.\r
1344    */\r
1345   set(index: number, value: number): void;\r
1347   /**\r
1348    * Sets a value or an array of values.\r
1349    * @param array A typed or untyped array of values to set.\r
1350    * @param offset The index in the current array at which the values are to be written.\r
1351    */\r
1352   set(array: Int16Array, offset?: number): void;\r
1354   /**\r
1355    * Sets a value or an array of values.\r
1356    * @param array A typed or untyped array of values to set.\r
1357    * @param offset The index in the current array at which the values are to be written.\r
1358    */\r
1359   set(array: number[], offset?: number): void;\r
1361   /**\r
1362    * Gets a new Int16Array view of the ArrayBuffer Object store for this array, specifying the first and last members of the subarray.\r
1363    * @param begin The index of the beginning of the array.\r
1364    * @param end The index of the end of the array.\r
1365    */\r
1366   subarray(begin: number, end?: number): Int16Array;\r
1368 declare var Int16Array: {\r
1369   prototype: Int16Array;\r
1370   new (length: number): Int16Array;\r
1371   new (array: Int16Array): Int16Array;\r
1372   new (array: number[]): Int16Array;\r
1373   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Int16Array;\r
1374   BYTES_PER_ELEMENT: number;\r
1377 /**\r
1378  * A typed array of 16-bit unsigned integer values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1379  */\r
1380 interface Uint16Array extends ArrayBufferView {\r
1381   /**\r
1382    * The size in bytes of each element in the array.\r
1383    */\r
1384   BYTES_PER_ELEMENT: number;\r
1386   /**\r
1387    * The length of the array.\r
1388    */\r
1389   length: number;\r
1390   [index: number]: number;\r
1392   /**\r
1393    * Gets the element at the specified index.\r
1394    * @param index The index at which to get the element of the array.\r
1395    */\r
1396   get(index: number): number;\r
1398   /**\r
1399    * Sets a value or an array of values.\r
1400    * @param index The index of the location to set.\r
1401    * @param value The value to set.\r
1402    */\r
1403   set(index: number, value: number): void;\r
1405   /**\r
1406    * Sets a value or an array of values.\r
1407    * @param array A typed or untyped array of values to set.\r
1408    * @param offset The index in the current array at which the values are to be written.\r
1409    */\r
1410   set(array: Uint16Array, offset?: number): void;\r
1412   /**\r
1413    * Sets a value or an array of values.\r
1414    * @param array A typed or untyped array of values to set.\r
1415    * @param offset The index in the current array at which the values are to be written.\r
1416    */\r
1417   set(array: number[], offset?: number): void;\r
1419   /**\r
1420    * Gets a new Uint16Array view of the ArrayBuffer Object store for this array, specifying the first and last members of the subarray.\r
1421    * @param begin The index of the beginning of the array.\r
1422    * @param end The index of the end of the array.\r
1423    */\r
1424   subarray(begin: number, end?: number): Uint16Array;\r
1426 declare var Uint16Array: {\r
1427   prototype: Uint16Array;\r
1428   new (length: number): Uint16Array;\r
1429   new (array: Uint16Array): Uint16Array;\r
1430   new (array: number[]): Uint16Array;\r
1431   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Uint16Array;\r
1432   BYTES_PER_ELEMENT: number;\r
1435 /**\r
1436  * A typed array of 32-bit integer values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1437  */\r
1438 interface Int32Array extends ArrayBufferView {\r
1439   /**\r
1440    * The size in bytes of each element in the array.\r
1441    */\r
1442   BYTES_PER_ELEMENT: number;\r
1444   /**\r
1445    * The length of the array.\r
1446    */\r
1447   length: number;\r
1448   [index: number]: number;\r
1450   /**\r
1451    * Gets the element at the specified index.\r
1452    * @param index The index at which to get the element of the array.\r
1453    */\r
1454   get(index: number): number;\r
1456   /**\r
1457    * Sets a value or an array of values.\r
1458    * @param index The index of the location to set.\r
1459    * @param value The value to set.\r
1460    */\r
1461   set(index: number, value: number): void;\r
1463   /**\r
1464    * Sets a value or an array of values.\r
1465    * @param array A typed or untyped array of values to set.\r
1466    * @param offset The index in the current array at which the values are to be written.\r
1467    */\r
1468   set(array: Int32Array, offset?: number): void;\r
1470   /**\r
1471    * Sets a value or an array of values.\r
1472    * @param array A typed or untyped array of values to set.\r
1473    * @param offset The index in the current array at which the values are to be written.\r
1474    */\r
1475   set(array: number[], offset?: number): void;\r
1477   /**\r
1478    * Gets a new Int32Array view of the ArrayBuffer Object store for this array, specifying the first and last members of the subarray.\r
1479    * @param begin The index of the beginning of the array.\r
1480    * @param end The index of the end of the array.\r
1481    */\r
1482   subarray(begin: number, end?: number): Int32Array;\r
1484 declare var Int32Array: {\r
1485   prototype: Int32Array;\r
1486   new (length: number): Int32Array;\r
1487   new (array: Int32Array): Int32Array;\r
1488   new (array: number[]): Int32Array;\r
1489   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Int32Array;\r
1490   BYTES_PER_ELEMENT: number;\r
1493 /**\r
1494  * A typed array of 32-bit unsigned integer values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1495  */\r
1496 interface Uint32Array extends ArrayBufferView {\r
1497   /**\r
1498    * The size in bytes of each element in the array.\r
1499    */\r
1500   BYTES_PER_ELEMENT: number;\r
1502   /**\r
1503    * The length of the array.\r
1504    */\r
1505   length: number;\r
1506   [index: number]: number;\r
1508   /**\r
1509    * Gets the element at the specified index.\r
1510    * @param index The index at which to get the element of the array.\r
1511    */\r
1512   get(index: number): number;\r
1514   /**\r
1515    * Sets a value or an array of values.\r
1516    * @param index The index of the location to set.\r
1517    * @param value The value to set.\r
1518    */\r
1519   set(index: number, value: number): void;\r
1521   /**\r
1522    * Sets a value or an array of values.\r
1523    * @param array A typed or untyped array of values to set.\r
1524    * @param offset The index in the current array at which the values are to be written.\r
1525    */\r
1526   set(array: Uint32Array, offset?: number): void;\r
1528   /**\r
1529    * Sets a value or an array of values.\r
1530    * @param array A typed or untyped array of values to set.\r
1531    * @param offset The index in the current array at which the values are to be written.\r
1532    */\r
1533   set(array: number[], offset?: number): void;\r
1535   /**\r
1536    * Gets a new Int8Array view of the ArrayBuffer Object store for this array, specifying the first and last members of the subarray.\r
1537    * @param begin The index of the beginning of the array.\r
1538    * @param end The index of the end of the array.\r
1539    */\r
1540   subarray(begin: number, end?: number): Uint32Array;\r
1542 declare var Uint32Array: {\r
1543   prototype: Uint32Array;\r
1544   new (length: number): Uint32Array;\r
1545   new (array: Uint32Array): Uint32Array;\r
1546   new (array: number[]): Uint32Array;\r
1547   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Uint32Array;\r
1548   BYTES_PER_ELEMENT: number;\r
1551 /**\r
1552  * A typed array of 32-bit float values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1553  */\r
1554 interface Float32Array extends ArrayBufferView {\r
1555   /**\r
1556    * The size in bytes of each element in the array.\r
1557    */\r
1558   BYTES_PER_ELEMENT: number;\r
1560   /**\r
1561    * The length of the array.\r
1562    */\r
1563   length: number;\r
1564   [index: number]: number;\r
1566   /**\r
1567    * Gets the element at the specified index.\r
1568    * @param index The index at which to get the element of the array.\r
1569    */\r
1570   get(index: number): number;\r
1572   /**\r
1573    * Sets a value or an array of values.\r
1574    * @param index The index of the location to set.\r
1575    * @param value The value to set.\r
1576    */\r
1577   set(index: number, value: number): void;\r
1579   /**\r
1580    * Sets a value or an array of values.\r
1581    * @param array A typed or untyped array of values to set.\r
1582    * @param offset The index in the current array at which the values are to be written.\r
1583    */\r
1584   set(array: Float32Array, offset?: number): void;\r
1586   /**\r
1587    * Sets a value or an array of values.\r
1588    * @param array A typed or untyped array of values to set.\r
1589    * @param offset The index in the current array at which the values are to be written.\r
1590    */\r
1591   set(array: number[], offset?: number): void;\r
1593   /**\r
1594    * Gets a new Float32Array view of the ArrayBuffer Object store for this array, specifying the first and last members of the subarray.\r
1595    * @param begin The index of the beginning of the array.\r
1596    * @param end The index of the end of the array.\r
1597    */\r
1598   subarray(begin: number, end?: number): Float32Array;\r
1600 declare var Float32Array: {\r
1601   prototype: Float32Array;\r
1602   new (length: number): Float32Array;\r
1603   new (array: Float32Array): Float32Array;\r
1604   new (array: number[]): Float32Array;\r
1605   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Float32Array;\r
1606   BYTES_PER_ELEMENT: number;\r
1609 /**\r
1610  * A typed array of 64-bit float values. The contents are initialized to 0. If the requested number of bytes could not be allocated an exception is raised.\r
1611  */\r
1612 interface Float64Array extends ArrayBufferView {\r
1613   /**\r
1614    * The size in bytes of each element in the array.\r
1615    */\r
1616   BYTES_PER_ELEMENT: number;\r
1618   /**\r
1619    * The length of the array.\r
1620    */\r
1621   length: number;\r
1622   [index: number]: number;\r
1624   /**\r
1625    * Gets the element at the specified index.\r
1626    * @param index The index at which to get the element of the array.\r
1627    */\r
1628   get(index: number): number;\r
1630   /**\r
1631    * Sets a value or an array of values.\r
1632    * @param index The index of the location to set.\r
1633    * @param value The value to set.\r
1634    */\r
1635   set(index: number, value: number): void;\r
1637   /**\r
1638    * Sets a value or an array of values.\r
1639    * @param array A typed or untyped array of values to set.\r
1640    * @param offset The index in the current array at which the values are to be written.\r
1641    */\r
1642   set(array: Float64Array, offset?: number): void;\r
1644   /**\r
1645    * Sets a value or an array of values.\r
1646    * @param array A typed or untyped array of values to set.\r
1647    * @param offset The index in the current array at which the values are to be written.\r
1648    */\r
1649   set(array: number[], offset?: number): void;\r
1651   /**\r
1652    * Gets a new Float64Array view of the ArrayBuffer Object store for this array, specifying the first and last members of the subarray.\r
1653    * @param begin The index of the beginning of the array.\r
1654    * @param end The index of the end of the array.\r
1655    */\r
1656   subarray(begin: number, end?: number): Float64Array;\r
1658 declare var Float64Array: {\r
1659   prototype: Float64Array;\r
1660   new (length: number): Float64Array;\r
1661   new (array: Float64Array): Float64Array;\r
1662   new (array: number[]): Float64Array;\r
1663   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): Float64Array;\r
1664   BYTES_PER_ELEMENT: number;\r
1667 /**\r
1668  * You can use a DataView object to read and write the different kinds of binary data to any location in the ArrayBuffer.\r
1669  */\r
1670 interface DataView extends ArrayBufferView {\r
1671   /**\r
1672    * Gets the Int8 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1673    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1674    */\r
1675   getInt8(byteOffset: number): number;\r
1677   /**\r
1678    * Gets the Uint8 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1679    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1680    */\r
1681   getUint8(byteOffset: number): number;\r
1683   /**\r
1684    * Gets the Int16 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1685    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1686    */\r
1687   getInt16(byteOffset: number, littleEndian?: boolean): number;\r
1689   /**\r
1690    * Gets the Uint16 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1691    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1692    */\r
1693   getUint16(byteOffset: number, littleEndian?: boolean): number;\r
1695   /**\r
1696    * Gets the Int32 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1697    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1698    */\r
1699   getInt32(byteOffset: number, littleEndian?: boolean): number;\r
1701   /**\r
1702    * Gets the Uint32 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1703    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1704    */\r
1705   getUint32(byteOffset: number, littleEndian?: boolean): number;\r
1707   /**\r
1708    * Gets the Float32 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1709    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1710    */\r
1711   getFloat32(byteOffset: number, littleEndian?: boolean): number;\r
1713   /**\r
1714    * Gets the Float64 value at the specified byte offset from the start of the view. There is no alignment constraint; multi-byte values may be fetched from any offset.\r
1715    * @param byteOffset The place in the buffer at which the value should be retrieved.\r
1716    */\r
1717   getFloat64(byteOffset: number, littleEndian?: boolean): number;\r
1719   /**\r
1720    * Stores an Int8 value at the specified byte offset from the start of the view.\r
1721    * @param byteOffset The place in the buffer at which the value should be set.\r
1722    * @param value The value to set.\r
1723    */\r
1724   setInt8(byteOffset: number, value: number): void;\r
1726   /**\r
1727    * Stores an Uint8 value at the specified byte offset from the start of the view.\r
1728    * @param byteOffset The place in the buffer at which the value should be set.\r
1729    * @param value The value to set.\r
1730    */\r
1731   setUint8(byteOffset: number, value: number): void;\r
1733   /**\r
1734    * Stores an Int16 value at the specified byte offset from the start of the view.\r
1735    * @param byteOffset The place in the buffer at which the value should be set.\r
1736    * @param value The value to set.\r
1737    * @param littleEndian If false or undefined, a big-endian value should be written, otherwise a little-endian value should be written.\r
1738    */\r
1739   setInt16(byteOffset: number, value: number, littleEndian?: boolean): void;\r
1741   /**\r
1742    * Stores an Uint16 value at the specified byte offset from the start of the view.\r
1743    * @param byteOffset The place in the buffer at which the value should be set.\r
1744    * @param value The value to set.\r
1745    * @param littleEndian If false or undefined, a big-endian value should be written, otherwise a little-endian value should be written.\r
1746    */\r
1747   setUint16(byteOffset: number, value: number, littleEndian?: boolean): void;\r
1749   /**\r
1750    * Stores an Int32 value at the specified byte offset from the start of the view.\r
1751    * @param byteOffset The place in the buffer at which the value should be set.\r
1752    * @param value The value to set.\r
1753    * @param littleEndian If false or undefined, a big-endian value should be written, otherwise a little-endian value should be written.\r
1754    */\r
1755   setInt32(byteOffset: number, value: number, littleEndian?: boolean): void;\r
1757   /**\r
1758    * Stores an Uint32 value at the specified byte offset from the start of the view.\r
1759    * @param byteOffset The place in the buffer at which the value should be set.\r
1760    * @param value The value to set.\r
1761    * @param littleEndian If false or undefined, a big-endian value should be written, otherwise a little-endian value should be written.\r
1762    */\r
1763   setUint32(byteOffset: number, value: number, littleEndian?: boolean): void;\r
1765   /**\r
1766    * Stores an Float32 value at the specified byte offset from the start of the view.\r
1767    * @param byteOffset The place in the buffer at which the value should be set.\r
1768    * @param value The value to set.\r
1769    * @param littleEndian If false or undefined, a big-endian value should be written, otherwise a little-endian value should be written.\r
1770    */\r
1771   setFloat32(byteOffset: number, value: number, littleEndian?: boolean): void;\r
1773   /**\r
1774    * Stores an Float64 value at the specified byte offset from the start of the view.\r
1775    * @param byteOffset The place in the buffer at which the value should be set.\r
1776    * @param value The value to set.\r
1777    * @param littleEndian If false or undefined, a big-endian value should be written, otherwise a little-endian value should be written.\r
1778    */\r
1779   setFloat64(byteOffset: number, value: number, littleEndian?: boolean): void;\r
1781 declare var DataView: {\r
1782   prototype: DataView;\r
1783   new (buffer: ArrayBuffer, byteOffset?: number, length?: number): DataView;\r
1786 /////////////////////////////\r
1787 /// IE11 ECMAScript Extensions\r
1788 /////////////////////////////\r
1790 interface Map<K, V> {\r
1791   clear(): void;\r
1792   delete(key: K): boolean;\r
1793   forEach(callbackfn: (value: V, index: K, map: Map<K, V>) => void, thisArg?: any): void;\r
1794   get(key: K): V;\r
1795   has(key: K): boolean;\r
1796   set(key: K, value: V): Map<K, V>;\r
1797   size: number;\r
1799 declare var Map: {\r
1800   new <K, V>(): Map<K, V>;\r
1801   prototype: Map<any, any>;\r
1804 interface WeakMap<K, V> {\r
1805   clear(): void;\r
1806   delete(key: K): boolean;\r
1807   get(key: K): V;\r
1808   has(key: K): boolean;\r
1809   set(key: K, value: V): WeakMap<K, V>;\r
1811 declare var WeakMap: {\r
1812   new <K, V>(): WeakMap<K, V>;\r
1813   prototype: WeakMap<any, any>;\r
1816 interface Set<T> {\r
1817   add(value: T): Set<T>;\r
1818   clear(): void;\r
1819   delete(value: T): boolean;\r
1820   forEach(callbackfn: (value: T, index: T, set: Set<T>) => void, thisArg?: any): void;\r
1821   has(value: T): boolean;\r
1822   size: number;\r
1824 declare var Set: {\r
1825   new <T>(): Set<T>;\r
1826   prototype: Set<any>;\r
1828 /////////////////////////////\r
1829 /// ECMAScript Internationalization API \r
1830 /////////////////////////////\r
1832 declare module Intl {\r
1833   interface CollatorOptions {\r
1834     usage?: string;\r
1835     localeMatcher?: string;\r
1836     numeric?: boolean;\r
1837     caseFirst?: string;\r
1838     sensitivity?: string;\r
1839     ignorePunctuation?: boolean;\r
1840   }\r
1842   interface ResolvedCollatorOptions {\r
1843     locale: string;\r
1844     usage: string;\r
1845     sensitivity: string;\r
1846     ignorePunctuation: boolean;\r
1847     collation: string;\r
1848     caseFirst: string;\r
1849     numeric: boolean;\r
1850   }\r
1852   interface Collator {\r
1853     compare(x: string, y: string): number;\r
1854     resolvedOptions(): ResolvedCollatorOptions;\r
1855   }\r
1856   var Collator: {\r
1857     new (locales?: string[], options?: CollatorOptions): Collator;\r
1858     new (locale?: string, options?: CollatorOptions): Collator;\r
1859     (locales?: string[], options?: CollatorOptions): Collator;\r
1860     (locale?: string, options?: CollatorOptions): Collator;\r
1861     supportedLocalesOf(locales: string[], options?: CollatorOptions): string[];\r
1862     supportedLocalesOf(locale: string, options?: CollatorOptions): string[];\r
1863   }\r
1865   interface NumberFormatOptions {\r
1866     localeMatcher?: string;\r
1867     style?: string;\r
1868     currency?: string;\r
1869     currencyDisplay?: string;\r
1870     useGrouping?: boolean;\r
1871   }\r
1873   interface ResolvedNumberFormatOptions {\r
1874     locale: string;\r
1875     numberingSystem: string;\r
1876     style: string;\r
1877     currency?: string;\r
1878     currencyDisplay?: string;\r
1879     minimumintegerDigits: number;\r
1880     minimumFractionDigits: number;\r
1881     maximumFractionDigits: number;\r
1882     minimumSignificantDigits?: number;\r
1883     maximumSignificantDigits?: number;\r
1884     useGrouping: boolean;\r
1885   }\r
1887   interface NumberFormat {\r
1888     format(value: number): string;\r
1889     resolvedOptions(): ResolvedNumberFormatOptions;\r
1890   }\r
1891   var NumberFormat: {\r
1892     new (locales?: string[], options?: NumberFormatOptions): Collator;\r
1893     new (locale?: string, options?: NumberFormatOptions): Collator;\r
1894     (locales?: string[], options?: NumberFormatOptions): Collator;\r
1895     (locale?: string, options?: NumberFormatOptions): Collator;\r
1896     supportedLocalesOf(locales: string[], options?: NumberFormatOptions): string[];\r
1897     supportedLocalesOf(locale: string, options?: NumberFormatOptions): string[];\r
1898   }\r
1900   interface DateTimeFormatOptions {\r
1901     localeMatcher?: string;\r
1902     weekday?: string;\r
1903     era?: string;\r
1904     year?: string;\r
1905     month?: string;\r
1906     day?: string;\r
1907     hour?: string;\r
1908     minute?: string;\r
1909     second?: string;\r
1910     timeZoneName?: string;\r
1911     formatMatcher?: string;\r
1912     hour12: boolean;\r
1913   }\r
1915   interface ResolvedDateTimeFormatOptions {\r
1916     locale: string;\r
1917     calendar: string;\r
1918     numberingSystem: string;\r
1919     timeZone: string;\r
1920     hour12?: boolean;\r
1921     weekday?: string;\r
1922     era?: string;\r
1923     year?: string;\r
1924     month?: string;\r
1925     day?: string;\r
1926     hour?: string;\r
1927     minute?: string;\r
1928     second?: string;\r
1929     timeZoneName?: string;\r
1930   }\r
1932   interface DateTimeFormat {\r
1933     format(date: number): string;\r
1934     resolvedOptions(): ResolvedDateTimeFormatOptions;\r
1935   }\r
1936   var DateTimeFormat: {\r
1937     new (locales?: string[], options?: DateTimeFormatOptions): Collator;\r
1938     new (locale?: string, options?: DateTimeFormatOptions): Collator;\r
1939     (locales?: string[], options?: DateTimeFormatOptions): Collator;\r
1940     (locale?: string, options?: DateTimeFormatOptions): Collator;\r
1941     supportedLocalesOf(locales: string[], options?: DateTimeFormatOptions): string[];\r
1942     supportedLocalesOf(locale: string, options?: DateTimeFormatOptions): string[];\r
1943   }\r
1946 interface String {\r
1947   /**\r
1948    * Determines whether two strings are equivalent in the current locale.\r
1949    * @param that String to compare to target string\r
1950    * @param locales An array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used. This parameter must conform to BCP 47 standards; see the Intl.Collator object for details.\r
1951    * @param options An object that contains one or more properties that specify comparison options. see the Intl.Collator object for details.\r
1952    */\r
1953   localeCompare(that: string, locales: string[], options?: Intl.CollatorOptions): number;\r
1955   /**\r
1956    * Determines whether two strings are equivalent in the current locale.\r
1957    * @param that String to compare to target string\r
1958    * @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used. This parameter must conform to BCP 47 standards; see the Intl.Collator object for details.\r
1959    * @param options An object that contains one or more properties that specify comparison options. see the Intl.Collator object for details.\r
1960    */\r
1961   localeCompare(that: string, locale: string, options?: Intl.CollatorOptions): number;\r
1964 interface Number {\r
1965   /**\r
1966    * Converts a number to a string by using the current or specified locale.\r
1967    * @param locales An array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.\r
1968    * @param options An object that contains one or more properties that specify comparison options.\r
1969    */\r
1970   toLocaleString(locales?: string[], options?: Intl.NumberFormatOptions): string;\r
1972   /**\r
1973    * Converts a number to a string by using the current or specified locale.\r
1974    * @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used.\r
1975    * @param options An object that contains one or more properties that specify comparison options.\r
1976    */\r
1977   toLocaleString(locale?: string, options?: Intl.NumberFormatOptions): string;\r
1980 interface Date {\r
1981   /**\r
1982    * Converts a date to a string by using the current or specified locale.\r
1983    * @param locales An array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.\r
1984    * @param options An object that contains one or more properties that specify comparison options.\r
1985    */\r
1986   toLocaleString(locales?: string[], options?: Intl.DateTimeFormatOptions): string;\r
1988   /**\r
1989    * Converts a date to a string by using the current or specified locale.\r
1990    * @param locale Locale tag. If you omit this parameter, the default locale of the JavaScript runtime is used.\r
1991    * @param options An object that contains one or more properties that specify comparison options.\r
1992    */\r
1993   toLocaleString(locale?: string, options?: Intl.DateTimeFormatOptions): string;\r
1996 /////////////////////////////\r
1997 /// IE DOM APIs\r
1998 /////////////////////////////\r
2001 interface PositionOptions {\r
2002   enableHighAccuracy?: boolean;\r
2003   timeout?: number;\r
2004   maximumAge?: number;\r
2007 interface ObjectURLOptions {\r
2008   oneTimeOnly?: boolean;\r
2011 interface StoreExceptionsInformation extends ExceptionInformation {\r
2012   siteName?: string;\r
2013   explanationString?: string;\r
2014   detailURI?: string;\r
2017 interface StoreSiteSpecificExceptionsInformation extends StoreExceptionsInformation {\r
2018   arrayOfDomainStrings?: string[];\r
2021 interface ConfirmSiteSpecificExceptionsInformation extends ExceptionInformation {\r
2022   arrayOfDomainStrings?: string[];\r
2025 interface AlgorithmParameters {\r
2028 interface MutationObserverInit {\r
2029   childList?: boolean;\r
2030   attributes?: boolean;\r
2031   characterData?: boolean;\r
2032   subtree?: boolean;\r
2033   attributeOldValue?: boolean;\r
2034   characterDataOldValue?: boolean;\r
2035   attributeFilter?: string[];\r
2038 interface PointerEventInit extends MouseEventInit {\r
2039   pointerId?: number;\r
2040   width?: number;\r
2041   height?: number;\r
2042   pressure?: number;\r
2043   tiltX?: number;\r
2044   tiltY?: number;\r
2045   pointerType?: string;\r
2046   isPrimary?: boolean;\r
2049 interface ExceptionInformation {\r
2050   domain?: string;\r
2053 interface DeviceAccelerationDict {\r
2054   x?: number;\r
2055   y?: number;\r
2056   z?: number;\r
2059 interface MsZoomToOptions {\r
2060   contentX?: number;\r
2061   contentY?: number;\r
2062   viewportX?: string;\r
2063   viewportY?: string;\r
2064   scaleFactor?: number;\r
2065   animate?: string;\r
2068 interface DeviceRotationRateDict {\r
2069   alpha?: number;\r
2070   beta?: number;\r
2071   gamma?: number;\r
2074 interface Algorithm {\r
2075   name?: string;\r
2076   params?: AlgorithmParameters;\r
2079 interface MouseEventInit {\r
2080   bubbles?: boolean;\r
2081   cancelable?: boolean;\r
2082   view?: Window;\r
2083   detail?: number;\r
2084   screenX?: number;\r
2085   screenY?: number;\r
2086   clientX?: number;\r
2087   clientY?: number;\r
2088   ctrlKey?: boolean;\r
2089   shiftKey?: boolean;\r
2090   altKey?: boolean;\r
2091   metaKey?: boolean;\r
2092   button?: number;\r
2093   buttons?: number;\r
2094   relatedTarget?: EventTarget;\r
2097 interface WebGLContextAttributes {\r
2098   alpha?: boolean;\r
2099   depth?: boolean;\r
2100   stencil?: boolean;\r
2101   antialias?: boolean;\r
2102   premultipliedAlpha?: boolean;\r
2103   preserveDrawingBuffer?: boolean;\r
2106 interface NodeListOf<TNode extends Node> extends NodeList {\r
2107   length: number;\r
2108   item(index: number): TNode;\r
2109   [index: number]: TNode;\r
2112 interface HTMLElement extends Element, ElementCSSInlineStyle, MSEventAttachmentTarget, MSNodeExtensions {\r
2113   hidden: any;\r
2114   readyState: any;\r
2115   onmouseleave: (ev: MouseEvent) => any;\r
2116   onbeforecut: (ev: DragEvent) => any;\r
2117   onkeydown: (ev: KeyboardEvent) => any;\r
2118   onmove: (ev: MSEventObj) => any;\r
2119   onkeyup: (ev: KeyboardEvent) => any;\r
2120   onreset: (ev: Event) => any;\r
2121   onhelp: (ev: Event) => any;\r
2122   ondragleave: (ev: DragEvent) => any;\r
2123   className: string;\r
2124   onfocusin: (ev: FocusEvent) => any;\r
2125   onseeked: (ev: Event) => any;\r
2126   recordNumber: any;\r
2127   title: string;\r
2128   parentTextEdit: Element;\r
2129   outerHTML: string;\r
2130   ondurationchange: (ev: Event) => any;\r
2131   offsetHeight: number;\r
2132   all: HTMLCollection;\r
2133   onblur: (ev: FocusEvent) => any;\r
2134   dir: string;\r
2135   onemptied: (ev: Event) => any;\r
2136   onseeking: (ev: Event) => any;\r
2137   oncanplay: (ev: Event) => any;\r
2138   ondeactivate: (ev: UIEvent) => any;\r
2139   ondatasetchanged: (ev: MSEventObj) => any;\r
2140   onrowsdelete: (ev: MSEventObj) => any;\r
2141   sourceIndex: number;\r
2142   onloadstart: (ev: Event) => any;\r
2143   onlosecapture: (ev: MSEventObj) => any;\r
2144   ondragenter: (ev: DragEvent) => any;\r
2145   oncontrolselect: (ev: MSEventObj) => any;\r
2146   onsubmit: (ev: Event) => any;\r
2147   behaviorUrns: MSBehaviorUrnsCollection;\r
2148   scopeName: string;\r
2149   onchange: (ev: Event) => any;\r
2150   id: string;\r
2151   onlayoutcomplete: (ev: MSEventObj) => any;\r
2152   uniqueID: string;\r
2153   onbeforeactivate: (ev: UIEvent) => any;\r
2154   oncanplaythrough: (ev: Event) => any;\r
2155   onbeforeupdate: (ev: MSEventObj) => any;\r
2156   onfilterchange: (ev: MSEventObj) => any;\r
2157   offsetParent: Element;\r
2158   ondatasetcomplete: (ev: MSEventObj) => any;\r
2159   onsuspend: (ev: Event) => any;\r
2160   onmouseenter: (ev: MouseEvent) => any;\r
2161   innerText: string;\r
2162   onerrorupdate: (ev: MSEventObj) => any;\r
2163   onmouseout: (ev: MouseEvent) => any;\r
2164   parentElement: HTMLElement;\r
2165   onmousewheel: (ev: MouseWheelEvent) => any;\r
2166   onvolumechange: (ev: Event) => any;\r
2167   oncellchange: (ev: MSEventObj) => any;\r
2168   onrowexit: (ev: MSEventObj) => any;\r
2169   onrowsinserted: (ev: MSEventObj) => any;\r
2170   onpropertychange: (ev: MSEventObj) => any;\r
2171   filters: any;\r
2172   children: HTMLCollection;\r
2173   ondragend: (ev: DragEvent) => any;\r
2174   onbeforepaste: (ev: DragEvent) => any;\r
2175   ondragover: (ev: DragEvent) => any;\r
2176   offsetTop: number;\r
2177   onmouseup: (ev: MouseEvent) => any;\r
2178   ondragstart: (ev: DragEvent) => any;\r
2179   onbeforecopy: (ev: DragEvent) => any;\r
2180   ondrag: (ev: DragEvent) => any;\r
2181   innerHTML: string;\r
2182   onmouseover: (ev: MouseEvent) => any;\r
2183   lang: string;\r
2184   uniqueNumber: number;\r
2185   onpause: (ev: Event) => any;\r
2186   tagUrn: string;\r
2187   onmousedown: (ev: MouseEvent) => any;\r
2188   onclick: (ev: MouseEvent) => any;\r
2189   onwaiting: (ev: Event) => any;\r
2190   onresizestart: (ev: MSEventObj) => any;\r
2191   offsetLeft: number;\r
2192   isTextEdit: boolean;\r
2193   isDisabled: boolean;\r
2194   onpaste: (ev: DragEvent) => any;\r
2195   canHaveHTML: boolean;\r
2196   onmoveend: (ev: MSEventObj) => any;\r
2197   language: string;\r
2198   onstalled: (ev: Event) => any;\r
2199   onmousemove: (ev: MouseEvent) => any;\r
2200   style: MSStyleCSSProperties;\r
2201   isContentEditable: boolean;\r
2202   onbeforeeditfocus: (ev: MSEventObj) => any;\r
2203   onratechange: (ev: Event) => any;\r
2204   contentEditable: string;\r
2205   tabIndex: number;\r
2206   document: Document;\r
2207   onprogress: (ev: ProgressEvent) => any;\r
2208   ondblclick: (ev: MouseEvent) => any;\r
2209   oncontextmenu: (ev: MouseEvent) => any;\r
2210   onloadedmetadata: (ev: Event) => any;\r
2211   onafterupdate: (ev: MSEventObj) => any;\r
2212   onerror: (ev: ErrorEvent) => any;\r
2213   onplay: (ev: Event) => any;\r
2214   onresizeend: (ev: MSEventObj) => any;\r
2215   onplaying: (ev: Event) => any;\r
2216   isMultiLine: boolean;\r
2217   onfocusout: (ev: FocusEvent) => any;\r
2218   onabort: (ev: UIEvent) => any;\r
2219   ondataavailable: (ev: MSEventObj) => any;\r
2220   hideFocus: boolean;\r
2221   onreadystatechange: (ev: Event) => any;\r
2222   onkeypress: (ev: KeyboardEvent) => any;\r
2223   onloadeddata: (ev: Event) => any;\r
2224   onbeforedeactivate: (ev: UIEvent) => any;\r
2225   outerText: string;\r
2226   disabled: boolean;\r
2227   onactivate: (ev: UIEvent) => any;\r
2228   accessKey: string;\r
2229   onmovestart: (ev: MSEventObj) => any;\r
2230   onselectstart: (ev: Event) => any;\r
2231   onfocus: (ev: FocusEvent) => any;\r
2232   ontimeupdate: (ev: Event) => any;\r
2233   onresize: (ev: UIEvent) => any;\r
2234   oncut: (ev: DragEvent) => any;\r
2235   onselect: (ev: UIEvent) => any;\r
2236   ondrop: (ev: DragEvent) => any;\r
2237   offsetWidth: number;\r
2238   oncopy: (ev: DragEvent) => any;\r
2239   onended: (ev: Event) => any;\r
2240   onscroll: (ev: UIEvent) => any;\r
2241   onrowenter: (ev: MSEventObj) => any;\r
2242   onload: (ev: Event) => any;\r
2243   canHaveChildren: boolean;\r
2244   oninput: (ev: Event) => any;\r
2245   onmscontentzoom: (ev: MSEventObj) => any;\r
2246   oncuechange: (ev: Event) => any;\r
2247   spellcheck: boolean;\r
2248   classList: DOMTokenList;\r
2249   onmsmanipulationstatechanged: (ev: any) => any;\r
2250   draggable: boolean;\r
2251   dataset: DOMStringMap;\r
2252   dragDrop(): boolean;\r
2253   scrollIntoView(top?: boolean): void;\r
2254   addFilter(filter: any): void;\r
2255   setCapture(containerCapture?: boolean): void;\r
2256   focus(): void;\r
2257   getAdjacentText(where: string): string;\r
2258   insertAdjacentText(where: string, text: string): void;\r
2259   getElementsByClassName(classNames: string): NodeList;\r
2260   setActive(): void;\r
2261   removeFilter(filter: any): void;\r
2262   blur(): void;\r
2263   clearAttributes(): void;\r
2264   releaseCapture(): void;\r
2265   createControlRange(): ControlRangeCollection;\r
2266   removeBehavior(cookie: number): boolean;\r
2267   contains(child: HTMLElement): boolean;\r
2268   click(): void;\r
2269   insertAdjacentElement(position: string, insertedElement: Element): Element;\r
2270   mergeAttributes(source: HTMLElement, preserveIdentity?: boolean): void;\r
2271   replaceAdjacentText(where: string, newText: string): string;\r
2272   applyElement(apply: Element, where?: string): Element;\r
2273   addBehavior(bstrUrl: string, factory?: any): number;\r
2274   insertAdjacentHTML(where: string, html: string): void;\r
2275   msGetInputContext(): MSInputMethodContext;\r
2276   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2277   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2278   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2279   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2280   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2281   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2282   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2283   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2284   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
2285   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
2286   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
2287   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
2288   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
2289   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
2290   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
2291   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
2292   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
2293   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
2294   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
2295   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
2296   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
2297   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
2298   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
2299   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
2300   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2301   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
2302   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
2303   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
2304   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2305   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2306   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
2307   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2308   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
2309   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2310   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2311   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2312   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
2313   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2314   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2315   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
2316   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2317   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2318   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2319   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2320   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2321   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2322   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2323   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2324   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2325   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2326   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2327   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2328   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2329   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2330   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2331   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2332   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2333   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2334   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2335   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2336   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2337   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2338   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
2339   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2340   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2341   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2342   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2343   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2344   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2345   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2346   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2347   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2348   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2349   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2350   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2351   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2352   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2353   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2354   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2355   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2356   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2357   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2358   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2359   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2360   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2361   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2362   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2363   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
2364   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2365   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
2366   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2367   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2368   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
2369   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2370   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2371   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2372   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
2373   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2374   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2375   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2376   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
2377   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2378   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2379   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2380   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2381   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2382   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
2383   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2384   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2385   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2386   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2387   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2388   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
2389   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2390   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
2391   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2392   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2393   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2394   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
2395   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
2396   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
2397   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
2399 declare var HTMLElement: {\r
2400   prototype: HTMLElement;\r
2401   new(): HTMLElement;\r
2404 interface Document extends Node, NodeSelector, MSEventAttachmentTarget, DocumentEvent, MSResourceMetadata, MSNodeExtensions, MSDocumentExtensions, GlobalEventHandlers {\r
2405   /**\r
2406    * Gets a reference to the root node of the document.\r
2407    */\r
2408   documentElement: HTMLElement;\r
2409   /**\r
2410    * Retrieves the collection of user agents and versions declared in the X-UA-Compatible\r
2411    */\r
2412   compatible: MSCompatibleInfoCollection;\r
2413   /**\r
2414    * Fires when the user presses a key.\r
2415    * @param ev The keyboard event\r
2416    */\r
2417   onkeydown: (ev: KeyboardEvent) => any;\r
2418   /**\r
2419    * Fires when the user releases a key.\r
2420    * @param ev The keyboard event\r
2421    */\r
2422   onkeyup: (ev: KeyboardEvent) => any;\r
2423   /**\r
2424    * Gets the implementation object of the current document.\r
2425    */\r
2426   implementation: DOMImplementation;\r
2427   /**\r
2428    * Fires when the user resets a form.\r
2429    * @param ev The event.\r
2430    */\r
2431   onreset: (ev: Event) => any;\r
2432   /**\r
2433    * Retrieves a collection of all script objects in the document.\r
2434    */\r
2435   scripts: HTMLCollection;\r
2436   /**\r
2437    * Fires when the user presses the F1 key while the browser is the active window.\r
2438    * @param ev The event.\r
2439    */\r
2440   onhelp: (ev: Event) => any;\r
2441   /**\r
2442    * Fires on the target object when the user moves the mouse out of a valid drop target during a drag operation.\r
2443    * @param ev The drag event.\r
2444    */\r
2445   ondragleave: (ev: DragEvent) => any;\r
2446   /**\r
2447    * Gets or sets the character set used to encode the object.\r
2448    */\r
2449   charset: string;\r
2450   /**\r
2451    * Fires for an element just prior to setting focus on that element.\r
2452    * @param ev The focus event\r
2453    */\r
2454   onfocusin: (ev: FocusEvent) => any;\r
2455   /**\r
2456    * Sets or gets the color of the links that the user has visited.\r
2457    */\r
2458   vlinkColor: string;\r
2459   /**\r
2460    * Occurs when the seek operation ends.\r
2461    * @param ev The event.\r
2462    */\r
2463   onseeked: (ev: Event) => any;\r
2464   security: string;\r
2465   /**\r
2466    * Contains the title of the document.\r
2467    */\r
2468   title: string;\r
2469   /**\r
2470    * Retrieves a collection of namespace objects.\r
2471    */\r
2472   namespaces: MSNamespaceInfoCollection;\r
2473   /**\r
2474    * Gets the default character set from the current regional language settings.\r
2475    */\r
2476   defaultCharset: string;\r
2477   /**\r
2478    * Retrieves a collection of all embed objects in the document.\r
2479    */\r
2480   embeds: HTMLCollection;\r
2481   /**\r
2482    * Retrieves a collection of styleSheet objects representing the style sheets that correspond to each instance of a link or style object in the document.\r
2483    */\r
2484   styleSheets: StyleSheetList;\r
2485   /**\r
2486    * Retrieves a collection of all window objects defined by the given document or defined by the document associated with the given window.\r
2487    */\r
2488   frames: Window;\r
2489   /**\r
2490    * Occurs when the duration attribute is updated.\r
2491    * @param ev The event.\r
2492    */\r
2493   ondurationchange: (ev: Event) => any;\r
2494   /**\r
2495    * Returns a reference to the collection of elements contained by the object.\r
2496    */\r
2497   all: HTMLCollection;\r
2498   /**\r
2499    * Retrieves a collection, in source order, of all form objects in the document.\r
2500    */\r
2501   forms: HTMLCollection;\r
2502   /**\r
2503    * Fires when the object loses the input focus.\r
2504    * @param ev The focus event.\r
2505    */\r
2506   onblur: (ev: FocusEvent) => any;\r
2507   /**\r
2508    * Sets or retrieves a value that indicates the reading order of the object.\r
2509    */\r
2510   dir: string;\r
2511   /**\r
2512    * Occurs when the media element is reset to its initial state.\r
2513    * @param ev The event.\r
2514    */\r
2515   onemptied: (ev: Event) => any;\r
2516   /**\r
2517    * Sets or gets a value that indicates whether the document can be edited.\r
2518    */\r
2519   designMode: string;\r
2520   /**\r
2521    * Occurs when the current playback position is moved.\r
2522    * @param ev The event.\r
2523    */\r
2524   onseeking: (ev: Event) => any;\r
2525   /**\r
2526    * Fires when the activeElement is changed from the current object to another object in the parent document.\r
2527    * @param ev The UI Event\r
2528    */\r
2529   ondeactivate: (ev: UIEvent) => any;\r
2530   /**\r
2531    * Occurs when playback is possible, but would require further buffering.\r
2532    * @param ev The event.\r
2533    */\r
2534   oncanplay: (ev: Event) => any;\r
2535   /**\r
2536    * Fires when the data set exposed by a data source object changes.\r
2537    * @param ev The event.\r
2538    */\r
2539   ondatasetchanged: (ev: MSEventObj) => any;\r
2540   /**\r
2541    * Fires when rows are about to be deleted from the recordset.\r
2542    * @param ev The event\r
2543    */\r
2544   onrowsdelete: (ev: MSEventObj) => any;\r
2545   Script: MSScriptHost;\r
2546   /**\r
2547    * Occurs when Internet Explorer begins looking for media data.\r
2548    * @param ev The event.\r
2549    */\r
2550   onloadstart: (ev: Event) => any;\r
2551   /**\r
2552    * Gets the URL for the document, stripped of any character encoding.\r
2553    */\r
2554   URLUnencoded: string;\r
2555   defaultView: Window;\r
2556   /**\r
2557    * Fires when the user is about to make a control selection of the object.\r
2558    * @param ev The event.\r
2559    */\r
2560   oncontrolselect: (ev: MSEventObj) => any;\r
2561   /**\r
2562    * Fires on the target element when the user drags the object to a valid drop target.\r
2563    * @param ev The drag event.\r
2564    */\r
2565   ondragenter: (ev: DragEvent) => any;\r
2566   onsubmit: (ev: Event) => any;\r
2567   /**\r
2568    * Returns the character encoding used to create the webpage that is loaded into the document object.\r
2569    */\r
2570   inputEncoding: string;\r
2571   /**\r
2572    * Gets the object that has the focus when the parent document has focus.\r
2573    */\r
2574   activeElement: Element;\r
2575   /**\r
2576    * Fires when the contents of the object or selection have changed.\r
2577    * @param ev The event.\r
2578    */\r
2579   onchange: (ev: Event) => any;\r
2580   /**\r
2581    * Retrieves a collection of all a objects that specify the href property and all area objects in the document.\r
2582    */\r
2583   links: HTMLCollection;\r
2584   /**\r
2585    * Retrieves an autogenerated, unique identifier for the object.\r
2586    */\r
2587   uniqueID: string;\r
2588   /**\r
2589    * Sets or gets the URL for the current document.\r
2590    */\r
2591   URL: string;\r
2592   /**\r
2593    * Fires immediately before the object is set as the active element.\r
2594    * @param ev The event.\r
2595    */\r
2596   onbeforeactivate: (ev: UIEvent) => any;\r
2597   head: HTMLHeadElement;\r
2598   cookie: string;\r
2599   xmlEncoding: string;\r
2600   oncanplaythrough: (ev: Event) => any;\r
2601   /**\r
2602    * Retrieves the document compatibility mode of the document.\r
2603    */\r
2604   documentMode: number;\r
2605   characterSet: string;\r
2606   /**\r
2607    * Retrieves a collection of all a objects that have a name and/or id property. Objects in this collection are in HTML source order.\r
2608    */\r
2609   anchors: HTMLCollection;\r
2610   onbeforeupdate: (ev: MSEventObj) => any;\r
2611   /**\r
2612    * Fires to indicate that all data is available from the data source object.\r
2613    * @param ev The event.\r
2614    */\r
2615   ondatasetcomplete: (ev: MSEventObj) => any;\r
2616   plugins: HTMLCollection;\r
2617   /**\r
2618    * Occurs if the load operation has been intentionally halted.\r
2619    * @param ev The event.\r
2620    */\r
2621   onsuspend: (ev: Event) => any;\r
2622   /**\r
2623    * Gets the root svg element in the document hierarchy.\r
2624    */\r
2625   rootElement: SVGSVGElement;\r
2626   /**\r
2627    * Retrieves a value that indicates the current state of the object.\r
2628    */\r
2629   readyState: string;\r
2630   /**\r
2631    * Gets the URL of the location that referred the user to the current page.\r
2632    */\r
2633   referrer: string;\r
2634   /**\r
2635    * Sets or gets the color of all active links in the document.\r
2636    */\r
2637   alinkColor: string;\r
2638   /**\r
2639    * Fires on a databound object when an error occurs while updating the associated data in the data source object.\r
2640    * @param ev The event.\r
2641    */\r
2642   onerrorupdate: (ev: MSEventObj) => any;\r
2643   /**\r
2644    * Gets a reference to the container object of the window.\r
2645    */\r
2646   parentWindow: Window;\r
2647   /**\r
2648    * Fires when the user moves the mouse pointer outside the boundaries of the object.\r
2649    * @param ev The mouse event.\r
2650    */\r
2651   onmouseout: (ev: MouseEvent) => any;\r
2652   /**\r
2653    * Occurs when a user clicks a button in a Thumbnail Toolbar of a webpage running in Site Mode.\r
2654    * @param ev The event.\r
2655    */\r
2656   onmsthumbnailclick: (ev: MSSiteModeEvent) => any;\r
2657   /**\r
2658    * Fires when the wheel button is rotated.\r
2659    * @param ev The mouse event\r
2660    */\r
2661   onmousewheel: (ev: MouseWheelEvent) => any;\r
2662   /**\r
2663    * Occurs when the volume is changed, or playback is muted or unmuted.\r
2664    * @param ev The event.\r
2665    */\r
2666   onvolumechange: (ev: Event) => any;\r
2667   /**\r
2668    * Fires when data changes in the data provider.\r
2669    * @param ev The event.\r
2670    */\r
2671   oncellchange: (ev: MSEventObj) => any;\r
2672   /**\r
2673    * Fires just before the data source control changes the current row in the object.\r
2674    * @param ev The event.\r
2675    */\r
2676   onrowexit: (ev: MSEventObj) => any;\r
2677   /**\r
2678    * Fires just after new rows are inserted in the current recordset.\r
2679    * @param ev The event.\r
2680    */\r
2681   onrowsinserted: (ev: MSEventObj) => any;\r
2682   /**\r
2683    * Gets or sets the version attribute specified in the declaration of an XML document.\r
2684    */\r
2685   xmlVersion: string;\r
2686   msCapsLockWarningOff: boolean;\r
2687   /**\r
2688    * Fires when a property changes on the object.\r
2689    * @param ev The event.\r
2690    */\r
2691   onpropertychange: (ev: MSEventObj) => any;\r
2692   /**\r
2693    * Fires on the source object when the user releases the mouse at the close of a drag operation.\r
2694    * @param ev The event.\r
2695    */\r
2696   ondragend: (ev: DragEvent) => any;\r
2697   /**\r
2698    * Gets an object representing the document type declaration associated with the current document.\r
2699    */\r
2700   doctype: DocumentType;\r
2701   /**\r
2702    * Fires on the target element continuously while the user drags the object over a valid drop target.\r
2703    * @param ev The event.\r
2704    */\r
2705   ondragover: (ev: DragEvent) => any;\r
2706   /**\r
2707    * Deprecated. Sets or retrieves a value that indicates the background color behind the object.\r
2708    */\r
2709   bgColor: string;\r
2710   /**\r
2711    * Fires on the source object when the user starts to drag a text selection or selected object.\r
2712    * @param ev The event.\r
2713    */\r
2714   ondragstart: (ev: DragEvent) => any;\r
2715   /**\r
2716    * Fires when the user releases a mouse button while the mouse is over the object.\r
2717    * @param ev The mouse event.\r
2718    */\r
2719   onmouseup: (ev: MouseEvent) => any;\r
2720   /**\r
2721    * Fires on the source object continuously during a drag operation.\r
2722    * @param ev The event.\r
2723    */\r
2724   ondrag: (ev: DragEvent) => any;\r
2725   /**\r
2726    * Fires when the user moves the mouse pointer into the object.\r
2727    * @param ev The mouse event.\r
2728    */\r
2729   onmouseover: (ev: MouseEvent) => any;\r
2730   /**\r
2731    * Sets or gets the color of the document links.\r
2732    */\r
2733   linkColor: string;\r
2734   /**\r
2735    * Occurs when playback is paused.\r
2736    * @param ev The event.\r
2737    */\r
2738   onpause: (ev: Event) => any;\r
2739   /**\r
2740    * Fires when the user clicks the object with either mouse button.\r
2741    * @param ev The mouse event.\r
2742    */\r
2743   onmousedown: (ev: MouseEvent) => any;\r
2744   /**\r
2745    * Fires when the user clicks the left mouse button on the object\r
2746    * @param ev The mouse event.\r
2747    */\r
2748   onclick: (ev: MouseEvent) => any;\r
2749   /**\r
2750    * Occurs when playback stops because the next frame of a video resource is not available.\r
2751    * @param ev The event.\r
2752    */\r
2753   onwaiting: (ev: Event) => any;\r
2754   /**\r
2755    * Fires when the user clicks the Stop button or leaves the Web page.\r
2756    * @param ev The event.\r
2757    */\r
2758   onstop: (ev: Event) => any;\r
2759   /**\r
2760    * Occurs when an item is removed from a Jump List of a webpage running in Site Mode.\r
2761    * @param ev The event.\r
2762    */\r
2763   onmssitemodejumplistitemremoved: (ev: MSSiteModeEvent) => any;\r
2764   /**\r
2765    * Retrieves a collection of all applet objects in the document.\r
2766    */\r
2767   applets: HTMLCollection;\r
2768   /**\r
2769    * Specifies the beginning and end of the document body.\r
2770    */\r
2771   body: HTMLElement;\r
2772   /**\r
2773    * Sets or gets the security domain of the document.\r
2774    */\r
2775   domain: string;\r
2776   xmlStandalone: boolean;\r
2777   /**\r
2778    * Represents the active selection, which is a highlighted block of text or other elements in the document that a user or a script can carry out some action on.\r
2779    */\r
2780   selection: MSSelection;\r
2781   /**\r
2782    * Occurs when the download has stopped.\r
2783    * @param ev The event.\r
2784    */\r
2785   onstalled: (ev: Event) => any;\r
2786   /**\r
2787    * Fires when the user moves the mouse over the object.\r
2788    * @param ev The mouse event.\r
2789    */\r
2790   onmousemove: (ev: MouseEvent) => any;\r
2791   /**\r
2792    * Fires before an object contained in an editable element enters a UI-activated state or when an editable container object is control selected.\r
2793    * @param ev The event.\r
2794    */\r
2795   onbeforeeditfocus: (ev: MSEventObj) => any;\r
2796   /**\r
2797    * Occurs when the playback rate is increased or decreased.\r
2798    * @param ev The event.\r
2799    */\r
2800   onratechange: (ev: Event) => any;\r
2801   /**\r
2802    * Occurs to indicate progress while downloading media data.\r
2803    * @param ev The event.\r
2804    */\r
2805   onprogress: (ev: ProgressEvent) => any;\r
2806   /**\r
2807    * Fires when the user double-clicks the object.\r
2808    * @param ev The mouse event.\r
2809    */\r
2810   ondblclick: (ev: MouseEvent) => any;\r
2811   /**\r
2812    * Fires when the user clicks the right mouse button in the client area, opening the context menu.\r
2813    * @param ev The mouse event.\r
2814    */\r
2815   oncontextmenu: (ev: MouseEvent) => any;\r
2816   /**\r
2817    * Occurs when the duration and dimensions of the media have been determined.\r
2818    * @param ev The event.\r
2819    */\r
2820   onloadedmetadata: (ev: Event) => any;\r
2821   media: string;\r
2822   /**\r
2823    * Fires when an error occurs during object loading.\r
2824    * @param ev The event.\r
2825    */\r
2826   onerror: (ev: ErrorEvent) => any;\r
2827   /**\r
2828    * Occurs when the play method is requested.\r
2829    * @param ev The event.\r
2830    */\r
2831   onplay: (ev: Event) => any;\r
2832   onafterupdate: (ev: MSEventObj) => any;\r
2833   /**\r
2834    * Occurs when the audio or video has started playing.\r
2835    * @param ev The event.\r
2836    */\r
2837   onplaying: (ev: Event) => any;\r
2838   /**\r
2839    * Retrieves a collection, in source order, of img objects in the document.\r
2840    */\r
2841   images: HTMLCollection;\r
2842   /**\r
2843    * Contains information about the current URL.\r
2844    */\r
2845   location: Location;\r
2846   /**\r
2847    * Fires when the user aborts the download.\r
2848    * @param ev The event.\r
2849    */\r
2850   onabort: (ev: UIEvent) => any;\r
2851   /**\r
2852    * Fires for the current element with focus immediately after moving focus to another element.\r
2853    * @param ev The event.\r
2854    */\r
2855   onfocusout: (ev: FocusEvent) => any;\r
2856   /**\r
2857    * Fires when the selection state of a document changes.\r
2858    * @param ev The event.\r
2859    */\r
2860   onselectionchange: (ev: Event) => any;\r
2861   /**\r
2862    * Fires when a local DOM Storage area is written to disk.\r
2863    * @param ev The event.\r
2864    */\r
2865   onstoragecommit: (ev: StorageEvent) => any;\r
2866   /**\r
2867    * Fires periodically as data arrives from data source objects that asynchronously transmit their data.\r
2868    * @param ev The event.\r
2869    */\r
2870   ondataavailable: (ev: MSEventObj) => any;\r
2871   /**\r
2872    * Fires when the state of the object has changed.\r
2873    * @param ev The event\r
2874    */\r
2875   onreadystatechange: (ev: Event) => any;\r
2876   /**\r
2877    * Gets the date that the page was last modified, if the page supplies one.\r
2878    */\r
2879   lastModified: string;\r
2880   /**\r
2881    * Fires when the user presses an alphanumeric key.\r
2882    * @param ev The event.\r
2883    */\r
2884   onkeypress: (ev: KeyboardEvent) => any;\r
2885   /**\r
2886    * Occurs when media data is loaded at the current playback position.\r
2887    * @param ev The event.\r
2888    */\r
2889   onloadeddata: (ev: Event) => any;\r
2890   /**\r
2891    * Fires immediately before the activeElement is changed from the current object to another object in the parent document.\r
2892    * @param ev The event.\r
2893    */\r
2894   onbeforedeactivate: (ev: UIEvent) => any;\r
2895   /**\r
2896    * Fires when the object is set as the active element.\r
2897    * @param ev The event.\r
2898    */\r
2899   onactivate: (ev: UIEvent) => any;\r
2900   onselectstart: (ev: Event) => any;\r
2901   /**\r
2902    * Fires when the object receives focus.\r
2903    * @param ev The event.\r
2904    */\r
2905   onfocus: (ev: FocusEvent) => any;\r
2906   /**\r
2907    * Sets or gets the foreground (text) color of the document.\r
2908    */\r
2909   fgColor: string;\r
2910   /**\r
2911    * Occurs to indicate the current playback position.\r
2912    * @param ev The event.\r
2913    */\r
2914   ontimeupdate: (ev: Event) => any;\r
2915   /**\r
2916    * Fires when the current selection changes.\r
2917    * @param ev The event.\r
2918    */\r
2919   onselect: (ev: UIEvent) => any;\r
2920   ondrop: (ev: DragEvent) => any;\r
2921   /**\r
2922    * Occurs when the end of playback is reached.\r
2923    * @param ev The event\r
2924    */\r
2925   onended: (ev: Event) => any;\r
2926   /**\r
2927    * Gets a value that indicates whether standards-compliant mode is switched on for the object.\r
2928    */\r
2929   compatMode: string;\r
2930   /**\r
2931    * Fires when the user repositions the scroll box in the scroll bar on the object.\r
2932    * @param ev The event.\r
2933    */\r
2934   onscroll: (ev: UIEvent) => any;\r
2935   /**\r
2936    * Fires to indicate that the current row has changed in the data source and new data values are available on the object.\r
2937    * @param ev The event.\r
2938    */\r
2939   onrowenter: (ev: MSEventObj) => any;\r
2940   /**\r
2941    * Fires immediately after the browser loads the object.\r
2942    * @param ev The event.\r
2943    */\r
2944   onload: (ev: Event) => any;\r
2945   oninput: (ev: Event) => any;\r
2946   onmspointerdown: (ev: any) => any;\r
2947   msHidden: boolean;\r
2948   msVisibilityState: string;\r
2949   onmsgesturedoubletap: (ev: any) => any;\r
2950   visibilityState: string;\r
2951   onmsmanipulationstatechanged: (ev: any) => any;\r
2952   onmspointerhover: (ev: any) => any;\r
2953   onmscontentzoom: (ev: MSEventObj) => any;\r
2954   onmspointermove: (ev: any) => any;\r
2955   onmsgesturehold: (ev: any) => any;\r
2956   onmsgesturechange: (ev: any) => any;\r
2957   onmsgesturestart: (ev: any) => any;\r
2958   onmspointercancel: (ev: any) => any;\r
2959   onmsgestureend: (ev: any) => any;\r
2960   onmsgesturetap: (ev: any) => any;\r
2961   onmspointerout: (ev: any) => any;\r
2962   onmsinertiastart: (ev: any) => any;\r
2963   msCSSOMElementFloatMetrics: boolean;\r
2964   onmspointerover: (ev: any) => any;\r
2965   hidden: boolean;\r
2966   onmspointerup: (ev: any) => any;\r
2967   msFullscreenEnabled: boolean;\r
2968   onmsfullscreenerror: (ev: any) => any;\r
2969   onmspointerenter: (ev: any) => any;\r
2970   msFullscreenElement: Element;\r
2971   onmsfullscreenchange: (ev: any) => any;\r
2972   onmspointerleave: (ev: any) => any;\r
2973   /**\r
2974    * Returns a reference to the first object with the specified value of the ID or NAME attribute.\r
2975    * @param elementId String that specifies the ID value. Case-insensitive.\r
2976    */\r
2977   getElementById(elementId: string): HTMLElement;\r
2978   /**\r
2979    * Returns the current value of the document, range, or current selection for the given command.\r
2980    * @param commandId String that specifies a command identifier.\r
2981    */\r
2982   queryCommandValue(commandId: string): string;\r
2983   adoptNode(source: Node): Node;\r
2984   /**\r
2985    * Returns a Boolean value that indicates whether the specified command is in the indeterminate state.\r
2986    * @param commandId String that specifies a command identifier.\r
2987    */\r
2988   queryCommandIndeterm(commandId: string): boolean;\r
2989   getElementsByTagNameNS(namespaceURI: string, localName: string): NodeList;\r
2990   createProcessingInstruction(target: string, data: string): ProcessingInstruction;\r
2991   /**\r
2992    * Executes a command on the current document, current selection, or the given range.\r
2993    * @param commandId String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.\r
2994    * @param showUI Display the user interface, defaults to false.\r
2995    * @param value Value to assign.\r
2996    */\r
2997   execCommand(commandId: string, showUI?: boolean, value?: any): boolean;\r
2998   /**\r
2999    * Returns the element for the specified x coordinate and the specified y coordinate.\r
3000    * @param x The x-offset\r
3001    * @param y The y-offset\r
3002    */\r
3003   elementFromPoint(x: number, y: number): Element;\r
3004   createCDATASection(data: string): CDATASection;\r
3005   /**\r
3006    * Retrieves the string associated with a command.\r
3007    * @param commandId String that contains the identifier of a command. This can be any command identifier given in the list of Command Identifiers.\r
3008    */\r
3009   queryCommandText(commandId: string): string;\r
3010   /**\r
3011    * Writes one or more HTML expressions to a document in the specified window.\r
3012    * @param content Specifies the text and HTML tags to write.\r
3013    */\r
3014   write(...content: string[]): void;\r
3015   /**\r
3016    * Allows updating the print settings for the page.\r
3017    */\r
3018   updateSettings(): void;\r
3019   /**\r
3020    * Creates an instance of the element for the specified tag.\r
3021    * @param tagName The name of an element.\r
3022    */\r
3023   createElement(tagName: "a"): HTMLAnchorElement;\r
3024   createElement(tagName: "abbr"): HTMLPhraseElement;\r
3025   createElement(tagName: "acronym"): HTMLPhraseElement;\r
3026   createElement(tagName: "address"): HTMLBlockElement;\r
3027   createElement(tagName: "applet"): HTMLAppletElement;\r
3028   createElement(tagName: "area"): HTMLAreaElement;\r
3029   createElement(tagName: "article"): HTMLElement;\r
3030   createElement(tagName: "aside"): HTMLElement;\r
3031   createElement(tagName: "audio"): HTMLAudioElement;\r
3032   createElement(tagName: "b"): HTMLPhraseElement;\r
3033   createElement(tagName: "base"): HTMLBaseElement;\r
3034   createElement(tagName: "basefont"): HTMLBaseFontElement;\r
3035   createElement(tagName: "bdo"): HTMLPhraseElement;\r
3036   createElement(tagName: "bgsound"): HTMLBGSoundElement;\r
3037   createElement(tagName: "big"): HTMLPhraseElement;\r
3038   createElement(tagName: "blockquote"): HTMLBlockElement;\r
3039   createElement(tagName: "body"): HTMLBodyElement;\r
3040   createElement(tagName: "br"): HTMLBRElement;\r
3041   createElement(tagName: "button"): HTMLButtonElement;\r
3042   createElement(tagName: "canvas"): HTMLCanvasElement;\r
3043   createElement(tagName: "caption"): HTMLTableCaptionElement;\r
3044   createElement(tagName: "center"): HTMLBlockElement;\r
3045   createElement(tagName: "cite"): HTMLPhraseElement;\r
3046   createElement(tagName: "code"): HTMLPhraseElement;\r
3047   createElement(tagName: "col"): HTMLTableColElement;\r
3048   createElement(tagName: "colgroup"): HTMLTableColElement;\r
3049   createElement(tagName: "datalist"): HTMLDataListElement;\r
3050   createElement(tagName: "dd"): HTMLDDElement;\r
3051   createElement(tagName: "del"): HTMLModElement;\r
3052   createElement(tagName: "dfn"): HTMLPhraseElement;\r
3053   createElement(tagName: "dir"): HTMLDirectoryElement;\r
3054   createElement(tagName: "div"): HTMLDivElement;\r
3055   createElement(tagName: "dl"): HTMLDListElement;\r
3056   createElement(tagName: "dt"): HTMLDTElement;\r
3057   createElement(tagName: "em"): HTMLPhraseElement;\r
3058   createElement(tagName: "embed"): HTMLEmbedElement;\r
3059   createElement(tagName: "fieldset"): HTMLFieldSetElement;\r
3060   createElement(tagName: "figcaption"): HTMLElement;\r
3061   createElement(tagName: "figure"): HTMLElement;\r
3062   createElement(tagName: "font"): HTMLFontElement;\r
3063   createElement(tagName: "footer"): HTMLElement;\r
3064   createElement(tagName: "form"): HTMLFormElement;\r
3065   createElement(tagName: "frame"): HTMLFrameElement;\r
3066   createElement(tagName: "frameset"): HTMLFrameSetElement;\r
3067   createElement(tagName: "h1"): HTMLHeadingElement;\r
3068   createElement(tagName: "h2"): HTMLHeadingElement;\r
3069   createElement(tagName: "h3"): HTMLHeadingElement;\r
3070   createElement(tagName: "h4"): HTMLHeadingElement;\r
3071   createElement(tagName: "h5"): HTMLHeadingElement;\r
3072   createElement(tagName: "h6"): HTMLHeadingElement;\r
3073   createElement(tagName: "head"): HTMLHeadElement;\r
3074   createElement(tagName: "header"): HTMLElement;\r
3075   createElement(tagName: "hgroup"): HTMLElement;\r
3076   createElement(tagName: "hr"): HTMLHRElement;\r
3077   createElement(tagName: "html"): HTMLHtmlElement;\r
3078   createElement(tagName: "i"): HTMLPhraseElement;\r
3079   createElement(tagName: "iframe"): HTMLIFrameElement;\r
3080   createElement(tagName: "img"): HTMLImageElement;\r
3081   createElement(tagName: "input"): HTMLInputElement;\r
3082   createElement(tagName: "ins"): HTMLModElement;\r
3083   createElement(tagName: "isindex"): HTMLIsIndexElement;\r
3084   createElement(tagName: "kbd"): HTMLPhraseElement;\r
3085   createElement(tagName: "keygen"): HTMLBlockElement;\r
3086   createElement(tagName: "label"): HTMLLabelElement;\r
3087   createElement(tagName: "legend"): HTMLLegendElement;\r
3088   createElement(tagName: "li"): HTMLLIElement;\r
3089   createElement(tagName: "link"): HTMLLinkElement;\r
3090   createElement(tagName: "listing"): HTMLBlockElement;\r
3091   createElement(tagName: "map"): HTMLMapElement;\r
3092   createElement(tagName: "mark"): HTMLElement;\r
3093   createElement(tagName: "marquee"): HTMLMarqueeElement;\r
3094   createElement(tagName: "menu"): HTMLMenuElement;\r
3095   createElement(tagName: "meta"): HTMLMetaElement;\r
3096   createElement(tagName: "nav"): HTMLElement;\r
3097   createElement(tagName: "nextid"): HTMLNextIdElement;\r
3098   createElement(tagName: "nobr"): HTMLPhraseElement;\r
3099   createElement(tagName: "noframes"): HTMLElement;\r
3100   createElement(tagName: "noscript"): HTMLElement;\r
3101   createElement(tagName: "object"): HTMLObjectElement;\r
3102   createElement(tagName: "ol"): HTMLOListElement;\r
3103   createElement(tagName: "optgroup"): HTMLOptGroupElement;\r
3104   createElement(tagName: "option"): HTMLOptionElement;\r
3105   createElement(tagName: "p"): HTMLParagraphElement;\r
3106   createElement(tagName: "param"): HTMLParamElement;\r
3107   createElement(tagName: "plaintext"): HTMLBlockElement;\r
3108   createElement(tagName: "pre"): HTMLPreElement;\r
3109   createElement(tagName: "progress"): HTMLProgressElement;\r
3110   createElement(tagName: "q"): HTMLQuoteElement;\r
3111   createElement(tagName: "rt"): HTMLPhraseElement;\r
3112   createElement(tagName: "ruby"): HTMLPhraseElement;\r
3113   createElement(tagName: "s"): HTMLPhraseElement;\r
3114   createElement(tagName: "samp"): HTMLPhraseElement;\r
3115   createElement(tagName: "script"): HTMLScriptElement;\r
3116   createElement(tagName: "section"): HTMLElement;\r
3117   createElement(tagName: "select"): HTMLSelectElement;\r
3118   createElement(tagName: "small"): HTMLPhraseElement;\r
3119   createElement(tagName: "SOURCE"): HTMLSourceElement;\r
3120   createElement(tagName: "span"): HTMLSpanElement;\r
3121   createElement(tagName: "strike"): HTMLPhraseElement;\r
3122   createElement(tagName: "strong"): HTMLPhraseElement;\r
3123   createElement(tagName: "style"): HTMLStyleElement;\r
3124   createElement(tagName: "sub"): HTMLPhraseElement;\r
3125   createElement(tagName: "sup"): HTMLPhraseElement;\r
3126   createElement(tagName: "table"): HTMLTableElement;\r
3127   createElement(tagName: "tbody"): HTMLTableSectionElement;\r
3128   createElement(tagName: "td"): HTMLTableDataCellElement;\r
3129   createElement(tagName: "textarea"): HTMLTextAreaElement;\r
3130   createElement(tagName: "tfoot"): HTMLTableSectionElement;\r
3131   createElement(tagName: "th"): HTMLTableHeaderCellElement;\r
3132   createElement(tagName: "thead"): HTMLTableSectionElement;\r
3133   createElement(tagName: "title"): HTMLTitleElement;\r
3134   createElement(tagName: "tr"): HTMLTableRowElement;\r
3135   createElement(tagName: "track"): HTMLTrackElement;\r
3136   createElement(tagName: "tt"): HTMLPhraseElement;\r
3137   createElement(tagName: "u"): HTMLPhraseElement;\r
3138   createElement(tagName: "ul"): HTMLUListElement;\r
3139   createElement(tagName: "var"): HTMLPhraseElement;\r
3140   createElement(tagName: "video"): HTMLVideoElement;\r
3141   createElement(tagName: "wbr"): HTMLElement;\r
3142   createElement(tagName: "x-ms-webview"): MSHTMLWebViewElement;\r
3143   createElement(tagName: "xmp"): HTMLBlockElement;\r
3144   createElement(tagName: string): HTMLElement;\r
3145   /**\r
3146    * Removes mouse capture from the object in the current document.\r
3147    */\r
3148   releaseCapture(): void;\r
3149   /**\r
3150    * Writes one or more HTML expressions, followed by a carriage return, to a document in the specified window.\r
3151    * @param content The text and HTML tags to write.\r
3152    */\r
3153   writeln(...content: string[]): void;\r
3154   createElementNS(namespaceURI: string, qualifiedName: string): Element;\r
3155   /**\r
3156    * Opens a new window and loads a document specified by a given URL. Also, opens a new window that uses the url parameter and the name parameter to collect the output of the write method and the writeln method.\r
3157    * @param url Specifies a MIME type for the document.\r
3158    * @param name Specifies the name of the window. This name is used as the value for the TARGET attribute on a form or an anchor element.\r
3159    * @param features Contains a list of items separated by commas. Each item consists of an option and a value, separated by an equals sign (for example, "fullscreen=yes, toolbar=yes"). The following values are supported.\r
3160    * @param replace Specifies whether the existing entry for the document is replaced in the history list.\r
3161    */\r
3162   open(url?: string, name?: string, features?: string, replace?: boolean): any;\r
3163   /**\r
3164    * Returns a Boolean value that indicates whether the current command is supported on the current range.\r
3165    * @param commandId Specifies a command identifier.\r
3166    */\r
3167   queryCommandSupported(commandId: string): boolean;\r
3168   /**\r
3169    * Creates a TreeWalker object that you can use to traverse filtered lists of nodes or elements in a document.\r
3170    * @param root The root element or node to start traversing on.\r
3171    * @param whatToShow The type of nodes or elements to appear in the node list. For more information, see whatToShow.\r
3172    * @param filter A custom NodeFilter function to use.\r
3173    * @param entityReferenceExpansion A flag that specifies whether entity reference nodes are expanded.\r
3174    */\r
3175   createTreeWalker(root: Node, whatToShow: number, filter: NodeFilter, entityReferenceExpansion: boolean): TreeWalker;\r
3176   createAttributeNS(namespaceURI: string, qualifiedName: string): Attr;\r
3177   /**\r
3178    * Returns a Boolean value that indicates whether a specified command can be successfully executed using execCommand, given the current state of the document.\r
3179    * @param commandId Specifies a command identifier.\r
3180    */\r
3181   queryCommandEnabled(commandId: string): boolean;\r
3182   /**\r
3183    * Causes the element to receive the focus and executes the code specified by the onfocus event.\r
3184    */\r
3185   focus(): void;\r
3186   /**\r
3187    * Closes an output stream and forces the sent data to display.\r
3188    */\r
3189   close(): void;\r
3190   getElementsByClassName(classNames: string): NodeList;\r
3191   importNode(importedNode: Node, deep: boolean): Node;\r
3192   /**\r
3193    *  Returns an empty range object that has both of its boundary points positioned at the beginning of the document.\r
3194    */\r
3195   createRange(): Range;\r
3196   /**\r
3197    * Fires a specified event on the object.\r
3198    * @param eventName Specifies the name of the event to fire.\r
3199    * @param eventObj Object that specifies the event object from which to obtain event object properties.\r
3200    */\r
3201   fireEvent(eventName: string, eventObj?: any): boolean;\r
3202   /**\r
3203    * Creates a comment object with the specified data.\r
3204    * @param data Sets the comment object's data.\r
3205    */\r
3206   createComment(data: string): Comment;\r
3207   /**\r
3208    * Retrieves a collection of objects based on the specified element name.\r
3209    * @param name Specifies the name of an element.\r
3210    */\r
3211   getElementsByTagName(name: "a"): NodeListOf<HTMLAnchorElement>;\r
3212   getElementsByTagName(name: "abbr"): NodeListOf<HTMLPhraseElement>;\r
3213   getElementsByTagName(name: "acronym"): NodeListOf<HTMLPhraseElement>;\r
3214   getElementsByTagName(name: "address"): NodeListOf<HTMLBlockElement>;\r
3215   getElementsByTagName(name: "applet"): NodeListOf<HTMLAppletElement>;\r
3216   getElementsByTagName(name: "area"): NodeListOf<HTMLAreaElement>;\r
3217   getElementsByTagName(name: "article"): NodeListOf<HTMLElement>;\r
3218   getElementsByTagName(name: "aside"): NodeListOf<HTMLElement>;\r
3219   getElementsByTagName(name: "audio"): NodeListOf<HTMLAudioElement>;\r
3220   getElementsByTagName(name: "b"): NodeListOf<HTMLPhraseElement>;\r
3221   getElementsByTagName(name: "base"): NodeListOf<HTMLBaseElement>;\r
3222   getElementsByTagName(name: "basefont"): NodeListOf<HTMLBaseFontElement>;\r
3223   getElementsByTagName(name: "bdo"): NodeListOf<HTMLPhraseElement>;\r
3224   getElementsByTagName(name: "bgsound"): NodeListOf<HTMLBGSoundElement>;\r
3225   getElementsByTagName(name: "big"): NodeListOf<HTMLPhraseElement>;\r
3226   getElementsByTagName(name: "blockquote"): NodeListOf<HTMLBlockElement>;\r
3227   getElementsByTagName(name: "body"): NodeListOf<HTMLBodyElement>;\r
3228   getElementsByTagName(name: "br"): NodeListOf<HTMLBRElement>;\r
3229   getElementsByTagName(name: "button"): NodeListOf<HTMLButtonElement>;\r
3230   getElementsByTagName(name: "canvas"): NodeListOf<HTMLCanvasElement>;\r
3231   getElementsByTagName(name: "caption"): NodeListOf<HTMLTableCaptionElement>;\r
3232   getElementsByTagName(name: "center"): NodeListOf<HTMLBlockElement>;\r
3233   getElementsByTagName(name: "cite"): NodeListOf<HTMLPhraseElement>;\r
3234   getElementsByTagName(name: "code"): NodeListOf<HTMLPhraseElement>;\r
3235   getElementsByTagName(name: "col"): NodeListOf<HTMLTableColElement>;\r
3236   getElementsByTagName(name: "colgroup"): NodeListOf<HTMLTableColElement>;\r
3237   getElementsByTagName(name: "datalist"): NodeListOf<HTMLDataListElement>;\r
3238   getElementsByTagName(name: "dd"): NodeListOf<HTMLDDElement>;\r
3239   getElementsByTagName(name: "del"): NodeListOf<HTMLModElement>;\r
3240   getElementsByTagName(name: "dfn"): NodeListOf<HTMLPhraseElement>;\r
3241   getElementsByTagName(name: "dir"): NodeListOf<HTMLDirectoryElement>;\r
3242   getElementsByTagName(name: "div"): NodeListOf<HTMLDivElement>;\r
3243   getElementsByTagName(name: "dl"): NodeListOf<HTMLDListElement>;\r
3244   getElementsByTagName(name: "dt"): NodeListOf<HTMLDTElement>;\r
3245   getElementsByTagName(name: "em"): NodeListOf<HTMLPhraseElement>;\r
3246   getElementsByTagName(name: "embed"): NodeListOf<HTMLEmbedElement>;\r
3247   getElementsByTagName(name: "fieldset"): NodeListOf<HTMLFieldSetElement>;\r
3248   getElementsByTagName(name: "figcaption"): NodeListOf<HTMLElement>;\r
3249   getElementsByTagName(name: "figure"): NodeListOf<HTMLElement>;\r
3250   getElementsByTagName(name: "font"): NodeListOf<HTMLFontElement>;\r
3251   getElementsByTagName(name: "footer"): NodeListOf<HTMLElement>;\r
3252   getElementsByTagName(name: "form"): NodeListOf<HTMLFormElement>;\r
3253   getElementsByTagName(name: "frame"): NodeListOf<HTMLFrameElement>;\r
3254   getElementsByTagName(name: "frameset"): NodeListOf<HTMLFrameSetElement>;\r
3255   getElementsByTagName(name: "h1"): NodeListOf<HTMLHeadingElement>;\r
3256   getElementsByTagName(name: "h2"): NodeListOf<HTMLHeadingElement>;\r
3257   getElementsByTagName(name: "h3"): NodeListOf<HTMLHeadingElement>;\r
3258   getElementsByTagName(name: "h4"): NodeListOf<HTMLHeadingElement>;\r
3259   getElementsByTagName(name: "h5"): NodeListOf<HTMLHeadingElement>;\r
3260   getElementsByTagName(name: "h6"): NodeListOf<HTMLHeadingElement>;\r
3261   getElementsByTagName(name: "head"): NodeListOf<HTMLHeadElement>;\r
3262   getElementsByTagName(name: "header"): NodeListOf<HTMLElement>;\r
3263   getElementsByTagName(name: "hgroup"): NodeListOf<HTMLElement>;\r
3264   getElementsByTagName(name: "hr"): NodeListOf<HTMLHRElement>;\r
3265   getElementsByTagName(name: "html"): NodeListOf<HTMLHtmlElement>;\r
3266   getElementsByTagName(name: "i"): NodeListOf<HTMLPhraseElement>;\r
3267   getElementsByTagName(name: "iframe"): NodeListOf<HTMLIFrameElement>;\r
3268   getElementsByTagName(name: "img"): NodeListOf<HTMLImageElement>;\r
3269   getElementsByTagName(name: "input"): NodeListOf<HTMLInputElement>;\r
3270   getElementsByTagName(name: "ins"): NodeListOf<HTMLModElement>;\r
3271   getElementsByTagName(name: "isindex"): NodeListOf<HTMLIsIndexElement>;\r
3272   getElementsByTagName(name: "kbd"): NodeListOf<HTMLPhraseElement>;\r
3273   getElementsByTagName(name: "keygen"): NodeListOf<HTMLBlockElement>;\r
3274   getElementsByTagName(name: "label"): NodeListOf<HTMLLabelElement>;\r
3275   getElementsByTagName(name: "legend"): NodeListOf<HTMLLegendElement>;\r
3276   getElementsByTagName(name: "li"): NodeListOf<HTMLLIElement>;\r
3277   getElementsByTagName(name: "link"): NodeListOf<HTMLLinkElement>;\r
3278   getElementsByTagName(name: "listing"): NodeListOf<HTMLBlockElement>;\r
3279   getElementsByTagName(name: "map"): NodeListOf<HTMLMapElement>;\r
3280   getElementsByTagName(name: "mark"): NodeListOf<HTMLElement>;\r
3281   getElementsByTagName(name: "marquee"): NodeListOf<HTMLMarqueeElement>;\r
3282   getElementsByTagName(name: "menu"): NodeListOf<HTMLMenuElement>;\r
3283   getElementsByTagName(name: "meta"): NodeListOf<HTMLMetaElement>;\r
3284   getElementsByTagName(name: "nav"): NodeListOf<HTMLElement>;\r
3285   getElementsByTagName(name: "nextid"): NodeListOf<HTMLNextIdElement>;\r
3286   getElementsByTagName(name: "nobr"): NodeListOf<HTMLPhraseElement>;\r
3287   getElementsByTagName(name: "noframes"): NodeListOf<HTMLElement>;\r
3288   getElementsByTagName(name: "noscript"): NodeListOf<HTMLElement>;\r
3289   getElementsByTagName(name: "object"): NodeListOf<HTMLObjectElement>;\r
3290   getElementsByTagName(name: "ol"): NodeListOf<HTMLOListElement>;\r
3291   getElementsByTagName(name: "optgroup"): NodeListOf<HTMLOptGroupElement>;\r
3292   getElementsByTagName(name: "option"): NodeListOf<HTMLOptionElement>;\r
3293   getElementsByTagName(name: "p"): NodeListOf<HTMLParagraphElement>;\r
3294   getElementsByTagName(name: "param"): NodeListOf<HTMLParamElement>;\r
3295   getElementsByTagName(name: "plaintext"): NodeListOf<HTMLBlockElement>;\r
3296   getElementsByTagName(name: "pre"): NodeListOf<HTMLPreElement>;\r
3297   getElementsByTagName(name: "progress"): NodeListOf<HTMLProgressElement>;\r
3298   getElementsByTagName(name: "q"): NodeListOf<HTMLQuoteElement>;\r
3299   getElementsByTagName(name: "rt"): NodeListOf<HTMLPhraseElement>;\r
3300   getElementsByTagName(name: "ruby"): NodeListOf<HTMLPhraseElement>;\r
3301   getElementsByTagName(name: "s"): NodeListOf<HTMLPhraseElement>;\r
3302   getElementsByTagName(name: "samp"): NodeListOf<HTMLPhraseElement>;\r
3303   getElementsByTagName(name: "script"): NodeListOf<HTMLScriptElement>;\r
3304   getElementsByTagName(name: "section"): NodeListOf<HTMLElement>;\r
3305   getElementsByTagName(name: "select"): NodeListOf<HTMLSelectElement>;\r
3306   getElementsByTagName(name: "small"): NodeListOf<HTMLPhraseElement>;\r
3307   getElementsByTagName(name: "SOURCE"): NodeListOf<HTMLSourceElement>;\r
3308   getElementsByTagName(name: "span"): NodeListOf<HTMLSpanElement>;\r
3309   getElementsByTagName(name: "strike"): NodeListOf<HTMLPhraseElement>;\r
3310   getElementsByTagName(name: "strong"): NodeListOf<HTMLPhraseElement>;\r
3311   getElementsByTagName(name: "style"): NodeListOf<HTMLStyleElement>;\r
3312   getElementsByTagName(name: "sub"): NodeListOf<HTMLPhraseElement>;\r
3313   getElementsByTagName(name: "sup"): NodeListOf<HTMLPhraseElement>;\r
3314   getElementsByTagName(name: "table"): NodeListOf<HTMLTableElement>;\r
3315   getElementsByTagName(name: "tbody"): NodeListOf<HTMLTableSectionElement>;\r
3316   getElementsByTagName(name: "td"): NodeListOf<HTMLTableDataCellElement>;\r
3317   getElementsByTagName(name: "textarea"): NodeListOf<HTMLTextAreaElement>;\r
3318   getElementsByTagName(name: "tfoot"): NodeListOf<HTMLTableSectionElement>;\r
3319   getElementsByTagName(name: "th"): NodeListOf<HTMLTableHeaderCellElement>;\r
3320   getElementsByTagName(name: "thead"): NodeListOf<HTMLTableSectionElement>;\r
3321   getElementsByTagName(name: "title"): NodeListOf<HTMLTitleElement>;\r
3322   getElementsByTagName(name: "tr"): NodeListOf<HTMLTableRowElement>;\r
3323   getElementsByTagName(name: "track"): NodeListOf<HTMLTrackElement>;\r
3324   getElementsByTagName(name: "tt"): NodeListOf<HTMLPhraseElement>;\r
3325   getElementsByTagName(name: "u"): NodeListOf<HTMLPhraseElement>;\r
3326   getElementsByTagName(name: "ul"): NodeListOf<HTMLUListElement>;\r
3327   getElementsByTagName(name: "var"): NodeListOf<HTMLPhraseElement>;\r
3328   getElementsByTagName(name: "video"): NodeListOf<HTMLVideoElement>;\r
3329   getElementsByTagName(name: "wbr"): NodeListOf<HTMLElement>;\r
3330   getElementsByTagName(name: "x-ms-webview"): NodeListOf<MSHTMLWebViewElement>;\r
3331   getElementsByTagName(name: "xmp"): NodeListOf<HTMLBlockElement>;\r
3332   getElementsByTagName(name: string): NodeList;\r
3333   /**\r
3334    * Creates a new document.\r
3335    */\r
3336   createDocumentFragment(): DocumentFragment;\r
3337   /**\r
3338    * Creates a style sheet for the document.\r
3339    * @param href Specifies how to add the style sheet to the document. If a file name is specified for the URL, the style information is added as a link object. If the URL contains style information, it is added to the style object.\r
3340    * @param index Specifies the index that indicates where the new style sheet is inserted in the styleSheets collection. The default is to insert the new style sheet at the end of the collection.\r
3341    */\r
3342   createStyleSheet(href?: string, index?: number): CSSStyleSheet;\r
3343   /**\r
3344    * Gets a collection of objects based on the value of the NAME or ID attribute.\r
3345    * @param elementName Gets a collection of objects based on the value of the NAME or ID attribute.\r
3346    */\r
3347   getElementsByName(elementName: string): NodeList;\r
3348   /**\r
3349    * Returns a Boolean value that indicates the current state of the command.\r
3350    * @param commandId String that specifies a command identifier.\r
3351    */\r
3352   queryCommandState(commandId: string): boolean;\r
3353   /**\r
3354    * Gets a value indicating whether the object currently has focus.\r
3355    */\r
3356   hasFocus(): boolean;\r
3357   /**\r
3358    * Displays help information for the given command identifier.\r
3359    * @param commandId Displays help information for the given command identifier.\r
3360    */\r
3361   execCommandShowHelp(commandId: string): boolean;\r
3362   /**\r
3363    * Creates an attribute object with a specified name.\r
3364    * @param name String that sets the attribute object's name.\r
3365    */\r
3366   createAttribute(name: string): Attr;\r
3367   /**\r
3368    * Creates a text string from the specified value.\r
3369    * @param data String that specifies the nodeValue property of the text node.\r
3370    */\r
3371   createTextNode(data: string): Text;\r
3372   /**\r
3373    * Creates a NodeIterator object that you can use to traverse filtered lists of nodes or elements in a document.\r
3374    * @param root The root element or node to start traversing on.\r
3375    * @param whatToShow The type of nodes or elements to appear in the node list\r
3376    * @param filter A custom NodeFilter function to use. For more information, see filter. Use null for no filter.\r
3377    * @param entityReferenceExpansion A flag that specifies whether entity reference nodes are expanded.\r
3378    */\r
3379   createNodeIterator(root: Node, whatToShow: number, filter: NodeFilter, entityReferenceExpansion: boolean): NodeIterator;\r
3380   /**\r
3381    * Generates an event object to pass event context information when you use the fireEvent method.\r
3382    * @param eventObj An object that specifies an existing event object on which to base the new object.\r
3383    */\r
3384   createEventObject(eventObj?: any): MSEventObj;\r
3385   /**\r
3386    * Returns an object representing the current selection of the document that is loaded into the object displaying a webpage.\r
3387    */\r
3388   getSelection(): Selection;\r
3389   msElementsFromPoint(x: number, y: number): NodeList;\r
3390   msElementsFromRect(left: number, top: number, width: number, height: number): NodeList;\r
3391   clear(): void;\r
3392   msExitFullscreen(): void;\r
3393   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3394   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3395   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3396   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3397   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3398   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3399   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3400   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3401   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
3402   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
3403   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3404   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3405   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3406   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3407   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3408   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3409   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3410   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3411   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3412   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3413   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3414   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3415   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3416   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3417   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3418   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3419   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3420   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3421   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3422   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3423   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3424   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3425   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3426   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3427   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3428   addEventListener(type: "msthumbnailclick", listener: (ev: MSSiteModeEvent) => any, useCapture?: boolean): void;\r
3429   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
3430   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3431   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3432   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3433   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3434   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3435   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3436   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3437   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3438   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3439   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3440   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3441   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3442   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3443   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3444   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3445   addEventListener(type: "stop", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3446   addEventListener(type: "mssitemodejumplistitemremoved", listener: (ev: MSSiteModeEvent) => any, useCapture?: boolean): void;\r
3447   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3448   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3449   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3450   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3451   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
3452   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3453   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3454   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3455   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
3456   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3457   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3458   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3459   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3460   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3461   addEventListener(type: "selectionchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3462   addEventListener(type: "storagecommit", listener: (ev: StorageEvent) => any, useCapture?: boolean): void;\r
3463   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3464   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3465   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
3466   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3467   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3468   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3469   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3470   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3471   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3472   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3473   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3474   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3475   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3476   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3477   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3478   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3479   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
3480   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
3481   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
3482   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
3483   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
3484   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
3485   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
3486   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
3487   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
3488   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
3489   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
3490   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
3491   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
3492   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
3493   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
3494   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
3495   addEventListener(type: "msfullscreenerror", listener: (ev: any) => any, useCapture?: boolean): void;\r
3496   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
3497   addEventListener(type: "msfullscreenchange", listener: (ev: any) => any, useCapture?: boolean): void;\r
3498   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
3499   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
3501 declare var Document: {\r
3502   prototype: Document;\r
3503   new(): Document;\r
3506 interface Console {\r
3507   info(message?: any, ...optionalParams: any[]): void;\r
3508   warn(message?: any, ...optionalParams: any[]): void;\r
3509   error(message?: any, ...optionalParams: any[]): void;\r
3510   log(message?: any, ...optionalParams: any[]): void;\r
3511   profile(reportName?: string): void;\r
3512   assert(test?: boolean, message?: string, ...optionalParams: any[]): void;\r
3513   msIsIndependentlyComposed(element: Element): boolean;\r
3514   clear(): void;\r
3515   dir(value?: any, ...optionalParams: any[]): void;\r
3516   profileEnd(): void;\r
3517   count(countTitle?: string): void;\r
3518   groupEnd(): void;\r
3519   time(timerName?: string): void;\r
3520   timeEnd(timerName?: string): void;\r
3521   trace(): void;\r
3522   group(groupTitle?: string): void;\r
3523   dirxml(value: any): void;\r
3524   debug(message?: string, ...optionalParams: any[]): void;\r
3525   groupCollapsed(groupTitle?: string): void;\r
3526   select(element: Element): void;\r
3528 declare var Console: {\r
3529   prototype: Console;\r
3530   new(): Console;\r
3533 interface MSEventObj extends Event {\r
3534   nextPage: string;\r
3535   keyCode: number;\r
3536   toElement: Element;\r
3537   returnValue: any;\r
3538   dataFld: string;\r
3539   y: number;\r
3540   dataTransfer: DataTransfer;\r
3541   propertyName: string;\r
3542   url: string;\r
3543   offsetX: number;\r
3544   recordset: any;\r
3545   screenX: number;\r
3546   buttonID: number;\r
3547   wheelDelta: number;\r
3548   reason: number;\r
3549   origin: string;\r
3550   data: string;\r
3551   srcFilter: any;\r
3552   boundElements: HTMLCollection;\r
3553   cancelBubble: boolean;\r
3554   altLeft: boolean;\r
3555   behaviorCookie: number;\r
3556   bookmarks: BookmarkCollection;\r
3557   type: string;\r
3558   repeat: boolean;\r
3559   srcElement: Element;\r
3560   source: Window;\r
3561   fromElement: Element;\r
3562   offsetY: number;\r
3563   x: number;\r
3564   behaviorPart: number;\r
3565   qualifier: string;\r
3566   altKey: boolean;\r
3567   ctrlKey: boolean;\r
3568   clientY: number;\r
3569   shiftKey: boolean;\r
3570   shiftLeft: boolean;\r
3571   contentOverflow: boolean;\r
3572   screenY: number;\r
3573   ctrlLeft: boolean;\r
3574   button: number;\r
3575   srcUrn: string;\r
3576   clientX: number;\r
3577   actionURL: string;\r
3578   getAttribute(strAttributeName: string, lFlags?: number): any;\r
3579   setAttribute(strAttributeName: string, AttributeValue: any, lFlags?: number): void;\r
3580   removeAttribute(strAttributeName: string, lFlags?: number): boolean;\r
3582 declare var MSEventObj: {\r
3583   prototype: MSEventObj;\r
3584   new(): MSEventObj;\r
3587 interface HTMLCanvasElement extends HTMLElement {\r
3588   /**\r
3589    * Gets or sets the width of a canvas element on a document.\r
3590    */\r
3591   width: number;\r
3592   /**\r
3593    * Gets or sets the height of a canvas element on a document.\r
3594    */\r
3595   height: number;\r
3596   /**\r
3597    * Returns an object that provides methods and properties for drawing and manipulating images and graphics on a canvas element in a document. A context object includes information about colors, line widths, fonts, and other graphic parameters that can be drawn on a canvas.\r
3598    * @param contextId The identifier (ID) of the type of canvas to create. Internet Explorer 9 and Internet Explorer 10 support only a 2-D context using canvas.getContext("2d"); IE11 Preview also supports 3-D or WebGL context using canvas.getContext("experimental-webgl");\r
3599    */\r
3600   getContext(contextId: "2d"): CanvasRenderingContext2D;\r
3601   /**\r
3602    * Returns an object that provides methods and properties for drawing and manipulating images and graphics on a canvas element in a document. A context object includes information about colors, line widths, fonts, and other graphic parameters that can be drawn on a canvas.\r
3603    * @param contextId The identifier (ID) of the type of canvas to create. Internet Explorer 9 and Internet Explorer 10 support only a 2-D context using canvas.getContext("2d"); IE11 Preview also supports 3-D or WebGL context using canvas.getContext("experimental-webgl");\r
3604    */\r
3605   getContext(contextId: "experimental-webgl"): WebGLRenderingContext;\r
3606   /**\r
3607    * Returns an object that provides methods and properties for drawing and manipulating images and graphics on a canvas element in a document. A context object includes information about colors, line widths, fonts, and other graphic parameters that can be drawn on a canvas.\r
3608    * @param contextId The identifier (ID) of the type of canvas to create. Internet Explorer 9 and Internet Explorer 10 support only a 2-D context using canvas.getContext("2d"); IE11 Preview also supports 3-D or WebGL context using canvas.getContext("experimental-webgl");\r
3609    */\r
3610   getContext(contextId: string, ...args: any[]): any;\r
3611   /**\r
3612    * Returns the content of the current canvas as an image that you can use as a source for another canvas or an HTML element.\r
3613    * @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.\r
3614    */\r
3615   toDataURL(type?: string, ...args: any[]): string;\r
3616   /**\r
3617    * Returns a blob object encoded as a Portable Network Graphics (PNG) format from a canvas image or drawing.\r
3618    */\r
3619   msToBlob(): Blob;\r
3621 declare var HTMLCanvasElement: {\r
3622   prototype: HTMLCanvasElement;\r
3623   new(): HTMLCanvasElement;\r
3626 interface Window extends EventTarget, MSEventAttachmentTarget, WindowLocalStorage, MSWindowExtensions, WindowSessionStorage, WindowTimers, WindowBase64, IDBEnvironment, WindowConsole, GlobalEventHandlers {\r
3627   ondragend: (ev: DragEvent) => any;\r
3628   onkeydown: (ev: KeyboardEvent) => any;\r
3629   ondragover: (ev: DragEvent) => any;\r
3630   onkeyup: (ev: KeyboardEvent) => any;\r
3631   onreset: (ev: Event) => any;\r
3632   onmouseup: (ev: MouseEvent) => any;\r
3633   ondragstart: (ev: DragEvent) => any;\r
3634   ondrag: (ev: DragEvent) => any;\r
3635   screenX: number;\r
3636   onmouseover: (ev: MouseEvent) => any;\r
3637   ondragleave: (ev: DragEvent) => any;\r
3638   history: History;\r
3639   pageXOffset: number;\r
3640   name: string;\r
3641   onafterprint: (ev: Event) => any;\r
3642   onpause: (ev: Event) => any;\r
3643   onbeforeprint: (ev: Event) => any;\r
3644   top: Window;\r
3645   onmousedown: (ev: MouseEvent) => any;\r
3646   onseeked: (ev: Event) => any;\r
3647   opener: Window;\r
3648   onclick: (ev: MouseEvent) => any;\r
3649   innerHeight: number;\r
3650   onwaiting: (ev: Event) => any;\r
3651   ononline: (ev: Event) => any;\r
3652   ondurationchange: (ev: Event) => any;\r
3653   frames: Window;\r
3654   onblur: (ev: FocusEvent) => any;\r
3655   onemptied: (ev: Event) => any;\r
3656   onseeking: (ev: Event) => any;\r
3657   oncanplay: (ev: Event) => any;\r
3658   outerWidth: number;\r
3659   onstalled: (ev: Event) => any;\r
3660   onmousemove: (ev: MouseEvent) => any;\r
3661   innerWidth: number;\r
3662   onoffline: (ev: Event) => any;\r
3663   length: number;\r
3664   screen: Screen;\r
3665   onbeforeunload: (ev: BeforeUnloadEvent) => any;\r
3666   onratechange: (ev: Event) => any;\r
3667   onstorage: (ev: StorageEvent) => any;\r
3668   onloadstart: (ev: Event) => any;\r
3669   ondragenter: (ev: DragEvent) => any;\r
3670   onsubmit: (ev: Event) => any;\r
3671   self: Window;\r
3672   document: Document;\r
3673   onprogress: (ev: ProgressEvent) => any;\r
3674   ondblclick: (ev: MouseEvent) => any;\r
3675   pageYOffset: number;\r
3676   oncontextmenu: (ev: MouseEvent) => any;\r
3677   onchange: (ev: Event) => any;\r
3678   onloadedmetadata: (ev: Event) => any;\r
3679   onplay: (ev: Event) => any;\r
3680   onerror: ErrorEventHandler;\r
3681   onplaying: (ev: Event) => any;\r
3682   parent: Window;\r
3683   location: Location;\r
3684   oncanplaythrough: (ev: Event) => any;\r
3685   onabort: (ev: UIEvent) => any;\r
3686   onreadystatechange: (ev: Event) => any;\r
3687   outerHeight: number;\r
3688   onkeypress: (ev: KeyboardEvent) => any;\r
3689   frameElement: Element;\r
3690   onloadeddata: (ev: Event) => any;\r
3691   onsuspend: (ev: Event) => any;\r
3692   window: Window;\r
3693   onfocus: (ev: FocusEvent) => any;\r
3694   onmessage: (ev: MessageEvent) => any;\r
3695   ontimeupdate: (ev: Event) => any;\r
3696   onresize: (ev: UIEvent) => any;\r
3697   onselect: (ev: UIEvent) => any;\r
3698   navigator: Navigator;\r
3699   styleMedia: StyleMedia;\r
3700   ondrop: (ev: DragEvent) => any;\r
3701   onmouseout: (ev: MouseEvent) => any;\r
3702   onended: (ev: Event) => any;\r
3703   onhashchange: (ev: Event) => any;\r
3704   onunload: (ev: Event) => any;\r
3705   onscroll: (ev: UIEvent) => any;\r
3706   screenY: number;\r
3707   onmousewheel: (ev: MouseWheelEvent) => any;\r
3708   onload: (ev: Event) => any;\r
3709   onvolumechange: (ev: Event) => any;\r
3710   oninput: (ev: Event) => any;\r
3711   performance: Performance;\r
3712   onmspointerdown: (ev: any) => any;\r
3713   animationStartTime: number;\r
3714   onmsgesturedoubletap: (ev: any) => any;\r
3715   onmspointerhover: (ev: any) => any;\r
3716   onmsgesturehold: (ev: any) => any;\r
3717   onmspointermove: (ev: any) => any;\r
3718   onmsgesturechange: (ev: any) => any;\r
3719   onmsgesturestart: (ev: any) => any;\r
3720   onmspointercancel: (ev: any) => any;\r
3721   onmsgestureend: (ev: any) => any;\r
3722   onmsgesturetap: (ev: any) => any;\r
3723   onmspointerout: (ev: any) => any;\r
3724   msAnimationStartTime: number;\r
3725   applicationCache: ApplicationCache;\r
3726   onmsinertiastart: (ev: any) => any;\r
3727   onmspointerover: (ev: any) => any;\r
3728   onpopstate: (ev: PopStateEvent) => any;\r
3729   onmspointerup: (ev: any) => any;\r
3730   onpageshow: (ev: PageTransitionEvent) => any;\r
3731   ondevicemotion: (ev: DeviceMotionEvent) => any;\r
3732   devicePixelRatio: number;\r
3733   msCrypto: Crypto;\r
3734   ondeviceorientation: (ev: DeviceOrientationEvent) => any;\r
3735   doNotTrack: string;\r
3736   onmspointerenter: (ev: any) => any;\r
3737   onpagehide: (ev: PageTransitionEvent) => any;\r
3738   onmspointerleave: (ev: any) => any;\r
3739   alert(message?: any): void;\r
3740   scroll(x?: number, y?: number): void;\r
3741   focus(): void;\r
3742   scrollTo(x?: number, y?: number): void;\r
3743   print(): void;\r
3744   prompt(message?: string, _default?: string): string;\r
3745   toString(): string;\r
3746   open(url?: string, target?: string, features?: string, replace?: boolean): Window;\r
3747   scrollBy(x?: number, y?: number): void;\r
3748   confirm(message?: string): boolean;\r
3749   close(): void;\r
3750   postMessage(message: any, targetOrigin: string, ports?: any): void;\r
3751   showModalDialog(url?: string, argument?: any, options?: any): any;\r
3752   blur(): void;\r
3753   getSelection(): Selection;\r
3754   getComputedStyle(elt: Element, pseudoElt?: string): CSSStyleDeclaration;\r
3755   msCancelRequestAnimationFrame(handle: number): void;\r
3756   matchMedia(mediaQuery: string): MediaQueryList;\r
3757   cancelAnimationFrame(handle: number): void;\r
3758   msIsStaticHTML(html: string): boolean;\r
3759   msMatchMedia(mediaQuery: string): MediaQueryList;\r
3760   requestAnimationFrame(callback: FrameRequestCallback): number;\r
3761   msRequestAnimationFrame(callback: FrameRequestCallback): number;\r
3762   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3763   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3764   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3765   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3766   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3767   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3768   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3769   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3770   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3771   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3772   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3773   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3774   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
3775   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3776   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
3777   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3778   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
3779   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3780   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3781   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3782   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3783   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3784   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3785   addEventListener(type: "afterprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3786   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3787   addEventListener(type: "beforeprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3788   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3789   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3790   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3791   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3792   addEventListener(type: "online", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3793   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3794   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3795   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3796   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3797   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3798   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3799   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3800   addEventListener(type: "offline", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3801   addEventListener(type: "beforeunload", listener: (ev: BeforeUnloadEvent) => any, useCapture?: boolean): void;\r
3802   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3803   addEventListener(type: "storage", listener: (ev: StorageEvent) => any, useCapture?: boolean): void;\r
3804   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3805   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3806   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3807   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
3808   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3809   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3810   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3811   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3812   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3813   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3814   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3815   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3816   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3817   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
3818   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3819   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3820   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
3821   addEventListener(type: "message", listener: (ev: MessageEvent) => any, useCapture?: boolean): void;\r
3822   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3823   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3824   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3825   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
3826   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
3827   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3828   addEventListener(type: "hashchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3829   addEventListener(type: "unload", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3830   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
3831   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
3832   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3833   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3834   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
3835   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
3836   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
3837   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
3838   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
3839   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
3840   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
3841   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
3842   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
3843   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
3844   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
3845   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
3846   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
3847   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
3848   addEventListener(type: "popstate", listener: (ev: PopStateEvent) => any, useCapture?: boolean): void;\r
3849   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
3850   addEventListener(type: "pageshow", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
3851   addEventListener(type: "devicemotion", listener: (ev: DeviceMotionEvent) => any, useCapture?: boolean): void;\r
3852   addEventListener(type: "deviceorientation", listener: (ev: DeviceOrientationEvent) => any, useCapture?: boolean): void;\r
3853   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
3854   addEventListener(type: "pagehide", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
3855   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
3856   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
3858 declare var Window: {\r
3859   prototype: Window;\r
3860   new(): Window;\r
3863 interface HTMLCollection extends MSHTMLCollectionExtensions {\r
3864   /**\r
3865    * Sets or retrieves the number of objects in a collection.\r
3866    */\r
3867   length: number;\r
3868   /**\r
3869    * Retrieves an object from various collections.\r
3870    */\r
3871   item(nameOrIndex?: any, optionalIndex?: any): Element;\r
3872   /**\r
3873    * Retrieves a select object or an object from an options collection.\r
3874    */\r
3875   namedItem(name: string): Element;\r
3876   // [name: string]: Element;\r
3877   [index: number]: Element;\r
3879 declare var HTMLCollection: {\r
3880   prototype: HTMLCollection;\r
3881   new(): HTMLCollection;\r
3884 interface BlobPropertyBag {\r
3885   type?: string;\r
3886   endings?: string;\r
3889 interface Blob {\r
3890   type: string;\r
3891   size: number;\r
3892   msDetachStream(): any;\r
3893   slice(start?: number, end?: number, contentType?: string): Blob;\r
3894   msClose(): void;\r
3896 declare var Blob: {\r
3897   prototype: Blob;\r
3898   new (blobParts?: any[], options?: BlobPropertyBag): Blob;\r
3901 interface NavigatorID {\r
3902   appVersion: string;\r
3903   appName: string;\r
3904   userAgent: string;\r
3905   platform: string;\r
3906   product: string;\r
3907   vendor: string;\r
3910 interface HTMLTableElement extends HTMLElement, MSDataBindingTableExtensions, MSDataBindingExtensions, DOML2DeprecatedBackgroundStyle, DOML2DeprecatedBackgroundColorStyle {\r
3911   /**\r
3912    * Sets or retrieves the width of the object.\r
3913    */\r
3914   width: string;\r
3915   /**\r
3916    * Sets or retrieves the color for one of the two colors used to draw the 3-D border of the object.\r
3917    */\r
3918   borderColorLight: any;\r
3919   /**\r
3920    * Sets or retrieves the amount of space between cells in a table.\r
3921    */\r
3922   cellSpacing: string;\r
3923   /**\r
3924    * Retrieves the tFoot object of the table.\r
3925    */\r
3926   tFoot: HTMLTableSectionElement;\r
3927   /**\r
3928    * Sets or retrieves the way the border frame around the table is displayed.\r
3929    */\r
3930   frame: string;\r
3931   /**\r
3932    * Sets or retrieves the border color of the object.\r
3933    */\r
3934   borderColor: any;\r
3935   /**\r
3936    * Sets or retrieves the number of horizontal rows contained in the object.\r
3937    */\r
3938   rows: HTMLCollection;\r
3939   /**\r
3940    * Sets or retrieves which dividing lines (inner borders) are displayed.\r
3941    */\r
3942   rules: string;\r
3943   /**\r
3944    * Sets or retrieves the number of columns in the table.\r
3945    */\r
3946   cols: number;\r
3947   /**\r
3948    * Sets or retrieves a description and/or structure of the object.\r
3949    */\r
3950   summary: string;\r
3951   /**\r
3952    * Retrieves the caption object of a table.\r
3953    */\r
3954   caption: HTMLTableCaptionElement;\r
3955   /**\r
3956    * Retrieves a collection of all tBody objects in the table. Objects in this collection are in source order.\r
3957    */\r
3958   tBodies: HTMLCollection;\r
3959   /**\r
3960    * Retrieves the tHead object of the table.\r
3961    */\r
3962   tHead: HTMLTableSectionElement;\r
3963   /**\r
3964    * Sets or retrieves a value that indicates the table alignment.\r
3965    */\r
3966   align: string;\r
3967   /**\r
3968    * Retrieves a collection of all cells in the table row or in the entire table.\r
3969    */\r
3970   cells: HTMLCollection;\r
3971   /**\r
3972    * Sets or retrieves the height of the object.\r
3973    */\r
3974   height: any;\r
3975   /**\r
3976    * Sets or retrieves the amount of space between the border of the cell and the content of the cell.\r
3977    */\r
3978   cellPadding: string;\r
3979   /**\r
3980    * Sets or retrieves the width of the border to draw around the object.\r
3981    */\r
3982   border: string;\r
3983   /**\r
3984    * Sets or retrieves the color for one of the two colors used to draw the 3-D border of the object.\r
3985    */\r
3986   borderColorDark: any;\r
3987   /**\r
3988    * Removes the specified row (tr) from the element and from the rows collection.\r
3989    * @param index Number that specifies the zero-based position in the rows collection of the row to remove.\r
3990    */\r
3991   deleteRow(index?: number): void;\r
3992   /**\r
3993    * Creates an empty tBody element in the table.\r
3994    */\r
3995   createTBody(): HTMLElement;\r
3996   /**\r
3997    * Deletes the caption element and its contents from the table.\r
3998    */\r
3999   deleteCaption(): void;\r
4000   /**\r
4001    * Creates a new row (tr) in the table, and adds the row to the rows collection.\r
4002    * @param index Number that specifies where to insert the row in the rows collection. The default value is -1, which appends the new row to the end of the rows collection.\r
4003    */\r
4004   insertRow(index?: number): HTMLElement;\r
4005   /**\r
4006    * Deletes the tFoot element and its contents from the table.\r
4007    */\r
4008   deleteTFoot(): void;\r
4009   /**\r
4010    * Returns the tHead element object if successful, or null otherwise.\r
4011    */\r
4012   createTHead(): HTMLElement;\r
4013   /**\r
4014    * Deletes the tHead element and its contents from the table.\r
4015    */\r
4016   deleteTHead(): void;\r
4017   /**\r
4018    * Creates an empty caption element in the table.\r
4019    */\r
4020   createCaption(): HTMLElement;\r
4021   /**\r
4022    * Moves a table row to a new position.\r
4023    * @param indexFrom Number that specifies the index in the rows collection of the table row that is moved.\r
4024    * @param indexTo Number that specifies where the row is moved within the rows collection.\r
4025    */\r
4026   moveRow(indexFrom?: number, indexTo?: number): any;\r
4027   /**\r
4028    * Creates an empty tFoot element in the table.\r
4029    */\r
4030   createTFoot(): HTMLElement;\r
4032 declare var HTMLTableElement: {\r
4033   prototype: HTMLTableElement;\r
4034   new(): HTMLTableElement;\r
4037 interface TreeWalker {\r
4038   whatToShow: number;\r
4039   filter: NodeFilter;\r
4040   root: Node;\r
4041   currentNode: Node;\r
4042   expandEntityReferences: boolean;\r
4043   previousSibling(): Node;\r
4044   lastChild(): Node;\r
4045   nextSibling(): Node;\r
4046   nextNode(): Node;\r
4047   parentNode(): Node;\r
4048   firstChild(): Node;\r
4049   previousNode(): Node;\r
4051 declare var TreeWalker: {\r
4052   prototype: TreeWalker;\r
4053   new(): TreeWalker;\r
4056 interface GetSVGDocument {\r
4057   getSVGDocument(): Document;\r
4060 interface SVGPathSegCurvetoQuadraticRel extends SVGPathSeg {\r
4061   y: number;\r
4062   y1: number;\r
4063   x: number;\r
4064   x1: number;\r
4066 declare var SVGPathSegCurvetoQuadraticRel: {\r
4067   prototype: SVGPathSegCurvetoQuadraticRel;\r
4068   new(): SVGPathSegCurvetoQuadraticRel;\r
4071 interface Performance {\r
4072   navigation: PerformanceNavigation;\r
4073   timing: PerformanceTiming;\r
4074   getEntriesByType(entryType: string): any;\r
4075   toJSON(): any;\r
4076   getMeasures(measureName?: string): any;\r
4077   clearMarks(markName?: string): void;\r
4078   getMarks(markName?: string): any;\r
4079   clearResourceTimings(): void;\r
4080   mark(markName: string): void;\r
4081   measure(measureName: string, startMarkName?: string, endMarkName?: string): void;\r
4082   getEntriesByName(name: string, entryType?: string): any;\r
4083   getEntries(): any;\r
4084   clearMeasures(measureName?: string): void;\r
4085   setResourceTimingBufferSize(maxSize: number): void;\r
4086   now(): number;\r
4088 declare var Performance: {\r
4089   prototype: Performance;\r
4090   new(): Performance;\r
4093 interface MSDataBindingTableExtensions {\r
4094   dataPageSize: number;\r
4095   nextPage(): void;\r
4096   firstPage(): void;\r
4097   refresh(): void;\r
4098   previousPage(): void;\r
4099   lastPage(): void;\r
4102 interface CompositionEvent extends UIEvent {\r
4103   data: string;\r
4104   locale: string;\r
4105   initCompositionEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, dataArg: string, locale: string): void;\r
4107 declare var CompositionEvent: {\r
4108   prototype: CompositionEvent;\r
4109   new(): CompositionEvent;\r
4112 interface WindowTimers extends WindowTimersExtension {\r
4113   clearTimeout(handle: number): void;\r
4114   setTimeout(handler: any, timeout?: any, ...args: any[]): number;\r
4115   clearInterval(handle: number): void;\r
4116   setInterval(handler: any, timeout?: any, ...args: any[]): number;\r
4119 interface SVGMarkerElement extends SVGElement, SVGStylable, SVGLangSpace, SVGFitToViewBox, SVGExternalResourcesRequired {\r
4120   orientType: SVGAnimatedEnumeration;\r
4121   markerUnits: SVGAnimatedEnumeration;\r
4122   markerWidth: SVGAnimatedLength;\r
4123   markerHeight: SVGAnimatedLength;\r
4124   orientAngle: SVGAnimatedAngle;\r
4125   refY: SVGAnimatedLength;\r
4126   refX: SVGAnimatedLength;\r
4127   setOrientToAngle(angle: SVGAngle): void;\r
4128   setOrientToAuto(): void;\r
4129   SVG_MARKER_ORIENT_UNKNOWN: number;\r
4130   SVG_MARKER_ORIENT_ANGLE: number;\r
4131   SVG_MARKERUNITS_UNKNOWN: number;\r
4132   SVG_MARKERUNITS_STROKEWIDTH: number;\r
4133   SVG_MARKER_ORIENT_AUTO: number;\r
4134   SVG_MARKERUNITS_USERSPACEONUSE: number;\r
4136 declare var SVGMarkerElement: {\r
4137   prototype: SVGMarkerElement;\r
4138   new(): SVGMarkerElement;\r
4139   SVG_MARKER_ORIENT_UNKNOWN: number;\r
4140   SVG_MARKER_ORIENT_ANGLE: number;\r
4141   SVG_MARKERUNITS_UNKNOWN: number;\r
4142   SVG_MARKERUNITS_STROKEWIDTH: number;\r
4143   SVG_MARKER_ORIENT_AUTO: number;\r
4144   SVG_MARKERUNITS_USERSPACEONUSE: number;\r
4147 interface CSSStyleDeclaration {\r
4148   backgroundAttachment: string;\r
4149   visibility: string;\r
4150   textAlignLast: string;\r
4151   borderRightStyle: string;\r
4152   counterIncrement: string;\r
4153   orphans: string;\r
4154   cssText: string;\r
4155   borderStyle: string;\r
4156   pointerEvents: string;\r
4157   borderTopColor: string;\r
4158   markerEnd: string;\r
4159   textIndent: string;\r
4160   listStyleImage: string;\r
4161   cursor: string;\r
4162   listStylePosition: string;\r
4163   wordWrap: string;\r
4164   borderTopStyle: string;\r
4165   alignmentBaseline: string;\r
4166   opacity: string;\r
4167   direction: string;\r
4168   strokeMiterlimit: string;\r
4169   maxWidth: string;\r
4170   color: string;\r
4171   clip: string;\r
4172   borderRightWidth: string;\r
4173   verticalAlign: string;\r
4174   overflow: string;\r
4175   mask: string;\r
4176   borderLeftStyle: string;\r
4177   emptyCells: string;\r
4178   stopOpacity: string;\r
4179   paddingRight: string;\r
4180   parentRule: CSSRule;\r
4181   background: string;\r
4182   boxSizing: string;\r
4183   textJustify: string;\r
4184   height: string;\r
4185   paddingTop: string;\r
4186   length: number;\r
4187   right: string;\r
4188   baselineShift: string;\r
4189   borderLeft: string;\r
4190   widows: string;\r
4191   lineHeight: string;\r
4192   left: string;\r
4193   textUnderlinePosition: string;\r
4194   glyphOrientationHorizontal: string;\r
4195   display: string;\r
4196   textAnchor: string;\r
4197   cssFloat: string;\r
4198   strokeDasharray: string;\r
4199   rubyAlign: string;\r
4200   fontSizeAdjust: string;\r
4201   borderLeftColor: string;\r
4202   backgroundImage: string;\r
4203   listStyleType: string;\r
4204   strokeWidth: string;\r
4205   textOverflow: string;\r
4206   fillRule: string;\r
4207   borderBottomColor: string;\r
4208   zIndex: string;\r
4209   position: string;\r
4210   listStyle: string;\r
4211   msTransformOrigin: string;\r
4212   dominantBaseline: string;\r
4213   overflowY: string;\r
4214   fill: string;\r
4215   captionSide: string;\r
4216   borderCollapse: string;\r
4217   boxShadow: string;\r
4218   quotes: string;\r
4219   tableLayout: string;\r
4220   unicodeBidi: string;\r
4221   borderBottomWidth: string;\r
4222   backgroundSize: string;\r
4223   textDecoration: string;\r
4224   strokeDashoffset: string;\r
4225   fontSize: string;\r
4226   border: string;\r
4227   pageBreakBefore: string;\r
4228   borderTopRightRadius: string;\r
4229   msTransform: string;\r
4230   borderBottomLeftRadius: string;\r
4231   textTransform: string;\r
4232   rubyPosition: string;\r
4233   strokeLinejoin: string;\r
4234   clipPath: string;\r
4235   borderRightColor: string;\r
4236   fontFamily: string;\r
4237   clear: string;\r
4238   content: string;\r
4239   backgroundClip: string;\r
4240   marginBottom: string;\r
4241   counterReset: string;\r
4242   outlineWidth: string;\r
4243   marginRight: string;\r
4244   paddingLeft: string;\r
4245   borderBottom: string;\r
4246   wordBreak: string;\r
4247   marginTop: string;\r
4248   top: string;\r
4249   fontWeight: string;\r
4250   borderRight: string;\r
4251   width: string;\r
4252   kerning: string;\r
4253   pageBreakAfter: string;\r
4254   borderBottomStyle: string;\r
4255   fontStretch: string;\r
4256   padding: string;\r
4257   strokeOpacity: string;\r
4258   markerStart: string;\r
4259   bottom: string;\r
4260   borderLeftWidth: string;\r
4261   clipRule: string;\r
4262   backgroundPosition: string;\r
4263   backgroundColor: string;\r
4264   pageBreakInside: string;\r
4265   backgroundOrigin: string;\r
4266   strokeLinecap: string;\r
4267   borderTopWidth: string;\r
4268   outlineStyle: string;\r
4269   borderTop: string;\r
4270   outlineColor: string;\r
4271   paddingBottom: string;\r
4272   marginLeft: string;\r
4273   font: string;\r
4274   outline: string;\r
4275   wordSpacing: string;\r
4276   maxHeight: string;\r
4277   fillOpacity: string;\r
4278   letterSpacing: string;\r
4279   borderSpacing: string;\r
4280   backgroundRepeat: string;\r
4281   borderRadius: string;\r
4282   borderWidth: string;\r
4283   borderBottomRightRadius: string;\r
4284   whiteSpace: string;\r
4285   fontStyle: string;\r
4286   minWidth: string;\r
4287   stopColor: string;\r
4288   borderTopLeftRadius: string;\r
4289   borderColor: string;\r
4290   marker: string;\r
4291   glyphOrientationVertical: string;\r
4292   markerMid: string;\r
4293   fontVariant: string;\r
4294   minHeight: string;\r
4295   stroke: string;\r
4296   rubyOverhang: string;\r
4297   overflowX: string;\r
4298   textAlign: string;\r
4299   margin: string;\r
4300   animationFillMode: string;\r
4301   floodColor: string;\r
4302   animationIterationCount: string;\r
4303   textShadow: string;\r
4304   backfaceVisibility: string;\r
4305   msAnimationIterationCount: string;\r
4306   animationDelay: string;\r
4307   animationTimingFunction: string;\r
4308   columnWidth: any;\r
4309   msScrollSnapX: string;\r
4310   columnRuleColor: any;\r
4311   columnRuleWidth: any;\r
4312   transitionDelay: string;\r
4313   transition: string;\r
4314   msFlowFrom: string;\r
4315   msScrollSnapType: string;\r
4316   msContentZoomSnapType: string;\r
4317   msGridColumns: string;\r
4318   msAnimationName: string;\r
4319   msGridRowAlign: string;\r
4320   msContentZoomChaining: string;\r
4321   msGridColumn: any;\r
4322   msHyphenateLimitZone: any;\r
4323   msScrollRails: string;\r
4324   msAnimationDelay: string;\r
4325   enableBackground: string;\r
4326   msWrapThrough: string;\r
4327   columnRuleStyle: string;\r
4328   msAnimation: string;\r
4329   msFlexFlow: string;\r
4330   msScrollSnapY: string;\r
4331   msHyphenateLimitLines: any;\r
4332   msTouchAction: string;\r
4333   msScrollLimit: string;\r
4334   animation: string;\r
4335   transform: string;\r
4336   filter: string;\r
4337   colorInterpolationFilters: string;\r
4338   transitionTimingFunction: string;\r
4339   msBackfaceVisibility: string;\r
4340   animationPlayState: string;\r
4341   transformOrigin: string;\r
4342   msScrollLimitYMin: any;\r
4343   msFontFeatureSettings: string;\r
4344   msContentZoomLimitMin: any;\r
4345   columnGap: any;\r
4346   transitionProperty: string;\r
4347   msAnimationDuration: string;\r
4348   msAnimationFillMode: string;\r
4349   msFlexDirection: string;\r
4350   msTransitionDuration: string;\r
4351   fontFeatureSettings: string;\r
4352   breakBefore: string;\r
4353   msFlexWrap: string;\r
4354   perspective: string;\r
4355   msFlowInto: string;\r
4356   msTransformStyle: string;\r
4357   msScrollTranslation: string;\r
4358   msTransitionProperty: string;\r
4359   msUserSelect: string;\r
4360   msOverflowStyle: string;\r
4361   msScrollSnapPointsY: string;\r
4362   animationDirection: string;\r
4363   animationDuration: string;\r
4364   msFlex: string;\r
4365   msTransitionTimingFunction: string;\r
4366   animationName: string;\r
4367   columnRule: string;\r
4368   msGridColumnSpan: any;\r
4369   msFlexNegative: string;\r
4370   columnFill: string;\r
4371   msGridRow: any;\r
4372   msFlexOrder: string;\r
4373   msFlexItemAlign: string;\r
4374   msFlexPositive: string;\r
4375   msContentZoomLimitMax: any;\r
4376   msScrollLimitYMax: any;\r
4377   msGridColumnAlign: string;\r
4378   perspectiveOrigin: string;\r
4379   lightingColor: string;\r
4380   columns: string;\r
4381   msScrollChaining: string;\r
4382   msHyphenateLimitChars: string;\r
4383   msTouchSelect: string;\r
4384   floodOpacity: string;\r
4385   msAnimationDirection: string;\r
4386   msAnimationPlayState: string;\r
4387   columnSpan: string;\r
4388   msContentZooming: string;\r
4389   msPerspective: string;\r
4390   msFlexPack: string;\r
4391   msScrollSnapPointsX: string;\r
4392   msContentZoomSnapPoints: string;\r
4393   msGridRowSpan: any;\r
4394   msContentZoomSnap: string;\r
4395   msScrollLimitXMin: any;\r
4396   breakInside: string;\r
4397   msHighContrastAdjust: string;\r
4398   msFlexLinePack: string;\r
4399   msGridRows: string;\r
4400   transitionDuration: string;\r
4401   msHyphens: string;\r
4402   breakAfter: string;\r
4403   msTransition: string;\r
4404   msPerspectiveOrigin: string;\r
4405   msContentZoomLimit: string;\r
4406   msScrollLimitXMax: any;\r
4407   msFlexAlign: string;\r
4408   msWrapMargin: any;\r
4409   columnCount: any;\r
4410   msAnimationTimingFunction: string;\r
4411   msTransitionDelay: string;\r
4412   transformStyle: string;\r
4413   msWrapFlow: string;\r
4414   msFlexPreferredSize: string;\r
4415   alignItems: string;\r
4416   borderImageSource: string;\r
4417   flexBasis: string;\r
4418   borderImageWidth: string;\r
4419   borderImageRepeat: string;\r
4420   order: string;\r
4421   flex: string;\r
4422   alignContent: string;\r
4423   msImeAlign: string;\r
4424   flexShrink: string;\r
4425   flexGrow: string;\r
4426   borderImageSlice: string;\r
4427   flexWrap: string;\r
4428   borderImageOutset: string;\r
4429   flexDirection: string;\r
4430   touchAction: string;\r
4431   flexFlow: string;\r
4432   borderImage: string;\r
4433   justifyContent: string;\r
4434   alignSelf: string;\r
4435   msTextCombineHorizontal: string;\r
4436   getPropertyPriority(propertyName: string): string;\r
4437   getPropertyValue(propertyName: string): string;\r
4438   removeProperty(propertyName: string): string;\r
4439   item(index: number): string;\r
4440   [index: number]: string;\r
4441   setProperty(propertyName: string, value: string, priority?: string): void;\r
4443 declare var CSSStyleDeclaration: {\r
4444   prototype: CSSStyleDeclaration;\r
4445   new(): CSSStyleDeclaration;\r
4448 interface SVGGElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
4450 declare var SVGGElement: {\r
4451   prototype: SVGGElement;\r
4452   new(): SVGGElement;\r
4455 interface MSStyleCSSProperties extends MSCSSProperties {\r
4456   pixelWidth: number;\r
4457   posHeight: number;\r
4458   posLeft: number;\r
4459   pixelTop: number;\r
4460   pixelBottom: number;\r
4461   textDecorationNone: boolean;\r
4462   pixelLeft: number;\r
4463   posTop: number;\r
4464   posBottom: number;\r
4465   textDecorationOverline: boolean;\r
4466   posWidth: number;\r
4467   textDecorationLineThrough: boolean;\r
4468   pixelHeight: number;\r
4469   textDecorationBlink: boolean;\r
4470   posRight: number;\r
4471   pixelRight: number;\r
4472   textDecorationUnderline: boolean;\r
4474 declare var MSStyleCSSProperties: {\r
4475   prototype: MSStyleCSSProperties;\r
4476   new(): MSStyleCSSProperties;\r
4479 interface Navigator extends NavigatorID, NavigatorOnLine, NavigatorContentUtils, MSNavigatorExtensions, NavigatorGeolocation, MSNavigatorDoNotTrack, NavigatorStorageUtils, MSFileSaver {\r
4480   msMaxTouchPoints: number;\r
4481   msPointerEnabled: boolean;\r
4482   msManipulationViewsEnabled: boolean;\r
4483   pointerEnabled: boolean;\r
4484   maxTouchPoints: number;\r
4485   msLaunchUri(uri: string, successCallback?: MSLaunchUriCallback, noHandlerCallback?: MSLaunchUriCallback): void;\r
4487 declare var Navigator: {\r
4488   prototype: Navigator;\r
4489   new(): Navigator;\r
4492 interface SVGPathSegCurvetoCubicSmoothAbs extends SVGPathSeg {\r
4493   y: number;\r
4494   x2: number;\r
4495   x: number;\r
4496   y2: number;\r
4498 declare var SVGPathSegCurvetoCubicSmoothAbs: {\r
4499   prototype: SVGPathSegCurvetoCubicSmoothAbs;\r
4500   new(): SVGPathSegCurvetoCubicSmoothAbs;\r
4503 interface SVGZoomEvent extends UIEvent {\r
4504   zoomRectScreen: SVGRect;\r
4505   previousScale: number;\r
4506   newScale: number;\r
4507   previousTranslate: SVGPoint;\r
4508   newTranslate: SVGPoint;\r
4510 declare var SVGZoomEvent: {\r
4511   prototype: SVGZoomEvent;\r
4512   new(): SVGZoomEvent;\r
4515 interface NodeSelector {\r
4516   querySelectorAll(selectors: string): NodeList;\r
4517   querySelector(selectors: string): Element;\r
4520 interface HTMLTableDataCellElement extends HTMLTableCellElement {\r
4522 declare var HTMLTableDataCellElement: {\r
4523   prototype: HTMLTableDataCellElement;\r
4524   new(): HTMLTableDataCellElement;\r
4527 interface HTMLBaseElement extends HTMLElement {\r
4528   /**\r
4529    * Sets or retrieves the window or frame at which to target content.\r
4530    */\r
4531   target: string;\r
4532   /**\r
4533    * Gets or sets the baseline URL on which relative links are based.\r
4534    */\r
4535   href: string;\r
4537 declare var HTMLBaseElement: {\r
4538   prototype: HTMLBaseElement;\r
4539   new(): HTMLBaseElement;\r
4542 interface ClientRect {\r
4543   left: number;\r
4544   width: number;\r
4545   right: number;\r
4546   top: number;\r
4547   bottom: number;\r
4548   height: number;\r
4550 declare var ClientRect: {\r
4551   prototype: ClientRect;\r
4552   new(): ClientRect;\r
4555 interface PositionErrorCallback {\r
4556   (error: PositionError): void;\r
4559 interface DOMImplementation {\r
4560   createDocumentType(qualifiedName: string, publicId: string, systemId: string): DocumentType;\r
4561   createDocument(namespaceURI: string, qualifiedName: string, doctype: DocumentType): Document;\r
4562   hasFeature(feature: string, version?: string): boolean;\r
4563   createHTMLDocument(title: string): Document;\r
4565 declare var DOMImplementation: {\r
4566   prototype: DOMImplementation;\r
4567   new(): DOMImplementation;\r
4570 interface SVGUnitTypes {\r
4571   SVG_UNIT_TYPE_UNKNOWN: number;\r
4572   SVG_UNIT_TYPE_OBJECTBOUNDINGBOX: number;\r
4573   SVG_UNIT_TYPE_USERSPACEONUSE: number;\r
4575 declare var SVGUnitTypes: SVGUnitTypes;\r
4577 interface Element extends Node, NodeSelector, ElementTraversal, GlobalEventHandlers {\r
4578   scrollTop: number;\r
4579   clientLeft: number;\r
4580   scrollLeft: number;\r
4581   tagName: string;\r
4582   clientWidth: number;\r
4583   scrollWidth: number;\r
4584   clientHeight: number;\r
4585   clientTop: number;\r
4586   scrollHeight: number;\r
4587   msRegionOverflow: string;\r
4588   onmspointerdown: (ev: any) => any;\r
4589   onmsgotpointercapture: (ev: any) => any;\r
4590   onmsgesturedoubletap: (ev: any) => any;\r
4591   onmspointerhover: (ev: any) => any;\r
4592   onmsgesturehold: (ev: any) => any;\r
4593   onmspointermove: (ev: any) => any;\r
4594   onmsgesturechange: (ev: any) => any;\r
4595   onmsgesturestart: (ev: any) => any;\r
4596   onmspointercancel: (ev: any) => any;\r
4597   onmsgestureend: (ev: any) => any;\r
4598   onmsgesturetap: (ev: any) => any;\r
4599   onmspointerout: (ev: any) => any;\r
4600   onmsinertiastart: (ev: any) => any;\r
4601   onmslostpointercapture: (ev: any) => any;\r
4602   onmspointerover: (ev: any) => any;\r
4603   msContentZoomFactor: number;\r
4604   onmspointerup: (ev: any) => any;\r
4605   onlostpointercapture: (ev: PointerEvent) => any;\r
4606   onmspointerenter: (ev: any) => any;\r
4607   ongotpointercapture: (ev: PointerEvent) => any;\r
4608   onmspointerleave: (ev: any) => any;\r
4609   getAttribute(name?: string): string;\r
4610   getElementsByTagNameNS(namespaceURI: string, localName: string): NodeList;\r
4611   hasAttributeNS(namespaceURI: string, localName: string): boolean;\r
4612   getBoundingClientRect(): ClientRect;\r
4613   getAttributeNS(namespaceURI: string, localName: string): string;\r
4614   getAttributeNodeNS(namespaceURI: string, localName: string): Attr;\r
4615   setAttributeNodeNS(newAttr: Attr): Attr;\r
4616   msMatchesSelector(selectors: string): boolean;\r
4617   hasAttribute(name: string): boolean;\r
4618   removeAttribute(name?: string): void;\r
4619   setAttributeNS(namespaceURI: string, qualifiedName: string, value: string): void;\r
4620   getAttributeNode(name: string): Attr;\r
4621   fireEvent(eventName: string, eventObj?: any): boolean;\r
4622   getElementsByTagName(name: "a"): NodeListOf<HTMLAnchorElement>;\r
4623   getElementsByTagName(name: "abbr"): NodeListOf<HTMLPhraseElement>;\r
4624   getElementsByTagName(name: "acronym"): NodeListOf<HTMLPhraseElement>;\r
4625   getElementsByTagName(name: "address"): NodeListOf<HTMLBlockElement>;\r
4626   getElementsByTagName(name: "applet"): NodeListOf<HTMLAppletElement>;\r
4627   getElementsByTagName(name: "area"): NodeListOf<HTMLAreaElement>;\r
4628   getElementsByTagName(name: "article"): NodeListOf<HTMLElement>;\r
4629   getElementsByTagName(name: "aside"): NodeListOf<HTMLElement>;\r
4630   getElementsByTagName(name: "audio"): NodeListOf<HTMLAudioElement>;\r
4631   getElementsByTagName(name: "b"): NodeListOf<HTMLPhraseElement>;\r
4632   getElementsByTagName(name: "base"): NodeListOf<HTMLBaseElement>;\r
4633   getElementsByTagName(name: "basefont"): NodeListOf<HTMLBaseFontElement>;\r
4634   getElementsByTagName(name: "bdo"): NodeListOf<HTMLPhraseElement>;\r
4635   getElementsByTagName(name: "bgsound"): NodeListOf<HTMLBGSoundElement>;\r
4636   getElementsByTagName(name: "big"): NodeListOf<HTMLPhraseElement>;\r
4637   getElementsByTagName(name: "blockquote"): NodeListOf<HTMLBlockElement>;\r
4638   getElementsByTagName(name: "body"): NodeListOf<HTMLBodyElement>;\r
4639   getElementsByTagName(name: "br"): NodeListOf<HTMLBRElement>;\r
4640   getElementsByTagName(name: "button"): NodeListOf<HTMLButtonElement>;\r
4641   getElementsByTagName(name: "canvas"): NodeListOf<HTMLCanvasElement>;\r
4642   getElementsByTagName(name: "caption"): NodeListOf<HTMLTableCaptionElement>;\r
4643   getElementsByTagName(name: "center"): NodeListOf<HTMLBlockElement>;\r
4644   getElementsByTagName(name: "cite"): NodeListOf<HTMLPhraseElement>;\r
4645   getElementsByTagName(name: "code"): NodeListOf<HTMLPhraseElement>;\r
4646   getElementsByTagName(name: "col"): NodeListOf<HTMLTableColElement>;\r
4647   getElementsByTagName(name: "colgroup"): NodeListOf<HTMLTableColElement>;\r
4648   getElementsByTagName(name: "datalist"): NodeListOf<HTMLDataListElement>;\r
4649   getElementsByTagName(name: "dd"): NodeListOf<HTMLDDElement>;\r
4650   getElementsByTagName(name: "del"): NodeListOf<HTMLModElement>;\r
4651   getElementsByTagName(name: "dfn"): NodeListOf<HTMLPhraseElement>;\r
4652   getElementsByTagName(name: "dir"): NodeListOf<HTMLDirectoryElement>;\r
4653   getElementsByTagName(name: "div"): NodeListOf<HTMLDivElement>;\r
4654   getElementsByTagName(name: "dl"): NodeListOf<HTMLDListElement>;\r
4655   getElementsByTagName(name: "dt"): NodeListOf<HTMLDTElement>;\r
4656   getElementsByTagName(name: "em"): NodeListOf<HTMLPhraseElement>;\r
4657   getElementsByTagName(name: "embed"): NodeListOf<HTMLEmbedElement>;\r
4658   getElementsByTagName(name: "fieldset"): NodeListOf<HTMLFieldSetElement>;\r
4659   getElementsByTagName(name: "figcaption"): NodeListOf<HTMLElement>;\r
4660   getElementsByTagName(name: "figure"): NodeListOf<HTMLElement>;\r
4661   getElementsByTagName(name: "font"): NodeListOf<HTMLFontElement>;\r
4662   getElementsByTagName(name: "footer"): NodeListOf<HTMLElement>;\r
4663   getElementsByTagName(name: "form"): NodeListOf<HTMLFormElement>;\r
4664   getElementsByTagName(name: "frame"): NodeListOf<HTMLFrameElement>;\r
4665   getElementsByTagName(name: "frameset"): NodeListOf<HTMLFrameSetElement>;\r
4666   getElementsByTagName(name: "h1"): NodeListOf<HTMLHeadingElement>;\r
4667   getElementsByTagName(name: "h2"): NodeListOf<HTMLHeadingElement>;\r
4668   getElementsByTagName(name: "h3"): NodeListOf<HTMLHeadingElement>;\r
4669   getElementsByTagName(name: "h4"): NodeListOf<HTMLHeadingElement>;\r
4670   getElementsByTagName(name: "h5"): NodeListOf<HTMLHeadingElement>;\r
4671   getElementsByTagName(name: "h6"): NodeListOf<HTMLHeadingElement>;\r
4672   getElementsByTagName(name: "head"): NodeListOf<HTMLHeadElement>;\r
4673   getElementsByTagName(name: "header"): NodeListOf<HTMLElement>;\r
4674   getElementsByTagName(name: "hgroup"): NodeListOf<HTMLElement>;\r
4675   getElementsByTagName(name: "hr"): NodeListOf<HTMLHRElement>;\r
4676   getElementsByTagName(name: "html"): NodeListOf<HTMLHtmlElement>;\r
4677   getElementsByTagName(name: "i"): NodeListOf<HTMLPhraseElement>;\r
4678   getElementsByTagName(name: "iframe"): NodeListOf<HTMLIFrameElement>;\r
4679   getElementsByTagName(name: "img"): NodeListOf<HTMLImageElement>;\r
4680   getElementsByTagName(name: "input"): NodeListOf<HTMLInputElement>;\r
4681   getElementsByTagName(name: "ins"): NodeListOf<HTMLModElement>;\r
4682   getElementsByTagName(name: "isindex"): NodeListOf<HTMLIsIndexElement>;\r
4683   getElementsByTagName(name: "kbd"): NodeListOf<HTMLPhraseElement>;\r
4684   getElementsByTagName(name: "keygen"): NodeListOf<HTMLBlockElement>;\r
4685   getElementsByTagName(name: "label"): NodeListOf<HTMLLabelElement>;\r
4686   getElementsByTagName(name: "legend"): NodeListOf<HTMLLegendElement>;\r
4687   getElementsByTagName(name: "li"): NodeListOf<HTMLLIElement>;\r
4688   getElementsByTagName(name: "link"): NodeListOf<HTMLLinkElement>;\r
4689   getElementsByTagName(name: "listing"): NodeListOf<HTMLBlockElement>;\r
4690   getElementsByTagName(name: "map"): NodeListOf<HTMLMapElement>;\r
4691   getElementsByTagName(name: "mark"): NodeListOf<HTMLElement>;\r
4692   getElementsByTagName(name: "marquee"): NodeListOf<HTMLMarqueeElement>;\r
4693   getElementsByTagName(name: "menu"): NodeListOf<HTMLMenuElement>;\r
4694   getElementsByTagName(name: "meta"): NodeListOf<HTMLMetaElement>;\r
4695   getElementsByTagName(name: "nav"): NodeListOf<HTMLElement>;\r
4696   getElementsByTagName(name: "nextid"): NodeListOf<HTMLNextIdElement>;\r
4697   getElementsByTagName(name: "nobr"): NodeListOf<HTMLPhraseElement>;\r
4698   getElementsByTagName(name: "noframes"): NodeListOf<HTMLElement>;\r
4699   getElementsByTagName(name: "noscript"): NodeListOf<HTMLElement>;\r
4700   getElementsByTagName(name: "object"): NodeListOf<HTMLObjectElement>;\r
4701   getElementsByTagName(name: "ol"): NodeListOf<HTMLOListElement>;\r
4702   getElementsByTagName(name: "optgroup"): NodeListOf<HTMLOptGroupElement>;\r
4703   getElementsByTagName(name: "option"): NodeListOf<HTMLOptionElement>;\r
4704   getElementsByTagName(name: "p"): NodeListOf<HTMLParagraphElement>;\r
4705   getElementsByTagName(name: "param"): NodeListOf<HTMLParamElement>;\r
4706   getElementsByTagName(name: "plaintext"): NodeListOf<HTMLBlockElement>;\r
4707   getElementsByTagName(name: "pre"): NodeListOf<HTMLPreElement>;\r
4708   getElementsByTagName(name: "progress"): NodeListOf<HTMLProgressElement>;\r
4709   getElementsByTagName(name: "q"): NodeListOf<HTMLQuoteElement>;\r
4710   getElementsByTagName(name: "rt"): NodeListOf<HTMLPhraseElement>;\r
4711   getElementsByTagName(name: "ruby"): NodeListOf<HTMLPhraseElement>;\r
4712   getElementsByTagName(name: "s"): NodeListOf<HTMLPhraseElement>;\r
4713   getElementsByTagName(name: "samp"): NodeListOf<HTMLPhraseElement>;\r
4714   getElementsByTagName(name: "script"): NodeListOf<HTMLScriptElement>;\r
4715   getElementsByTagName(name: "section"): NodeListOf<HTMLElement>;\r
4716   getElementsByTagName(name: "select"): NodeListOf<HTMLSelectElement>;\r
4717   getElementsByTagName(name: "small"): NodeListOf<HTMLPhraseElement>;\r
4718   getElementsByTagName(name: "SOURCE"): NodeListOf<HTMLSourceElement>;\r
4719   getElementsByTagName(name: "span"): NodeListOf<HTMLSpanElement>;\r
4720   getElementsByTagName(name: "strike"): NodeListOf<HTMLPhraseElement>;\r
4721   getElementsByTagName(name: "strong"): NodeListOf<HTMLPhraseElement>;\r
4722   getElementsByTagName(name: "style"): NodeListOf<HTMLStyleElement>;\r
4723   getElementsByTagName(name: "sub"): NodeListOf<HTMLPhraseElement>;\r
4724   getElementsByTagName(name: "sup"): NodeListOf<HTMLPhraseElement>;\r
4725   getElementsByTagName(name: "table"): NodeListOf<HTMLTableElement>;\r
4726   getElementsByTagName(name: "tbody"): NodeListOf<HTMLTableSectionElement>;\r
4727   getElementsByTagName(name: "td"): NodeListOf<HTMLTableDataCellElement>;\r
4728   getElementsByTagName(name: "textarea"): NodeListOf<HTMLTextAreaElement>;\r
4729   getElementsByTagName(name: "tfoot"): NodeListOf<HTMLTableSectionElement>;\r
4730   getElementsByTagName(name: "th"): NodeListOf<HTMLTableHeaderCellElement>;\r
4731   getElementsByTagName(name: "thead"): NodeListOf<HTMLTableSectionElement>;\r
4732   getElementsByTagName(name: "title"): NodeListOf<HTMLTitleElement>;\r
4733   getElementsByTagName(name: "tr"): NodeListOf<HTMLTableRowElement>;\r
4734   getElementsByTagName(name: "track"): NodeListOf<HTMLTrackElement>;\r
4735   getElementsByTagName(name: "tt"): NodeListOf<HTMLPhraseElement>;\r
4736   getElementsByTagName(name: "u"): NodeListOf<HTMLPhraseElement>;\r
4737   getElementsByTagName(name: "ul"): NodeListOf<HTMLUListElement>;\r
4738   getElementsByTagName(name: "var"): NodeListOf<HTMLPhraseElement>;\r
4739   getElementsByTagName(name: "video"): NodeListOf<HTMLVideoElement>;\r
4740   getElementsByTagName(name: "wbr"): NodeListOf<HTMLElement>;\r
4741   getElementsByTagName(name: "x-ms-webview"): NodeListOf<MSHTMLWebViewElement>;\r
4742   getElementsByTagName(name: "xmp"): NodeListOf<HTMLBlockElement>;\r
4743   getElementsByTagName(name: string): NodeList;\r
4744   getClientRects(): ClientRectList;\r
4745   setAttributeNode(newAttr: Attr): Attr;\r
4746   removeAttributeNode(oldAttr: Attr): Attr;\r
4747   setAttribute(name?: string, value?: string): void;\r
4748   removeAttributeNS(namespaceURI: string, localName: string): void;\r
4749   msGetRegionContent(): MSRangeCollection;\r
4750   msReleasePointerCapture(pointerId: number): void;\r
4751   msSetPointerCapture(pointerId: number): void;\r
4752   msZoomTo(args: MsZoomToOptions): void;\r
4753   setPointerCapture(pointerId: number): void;\r
4754   msGetUntransformedBounds(): ClientRect;\r
4755   releasePointerCapture(pointerId: number): void;\r
4756   msRequestFullscreen(): void;\r
4757   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4758   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4759   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4760   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4761   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4762   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4763   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4764   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4765   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
4766   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
4767   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
4768   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
4769   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
4770   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
4771   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
4772   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
4773   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
4774   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
4775   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
4776   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
4777   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
4778   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
4779   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
4780   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
4781   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4782   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
4783   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
4784   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
4785   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
4787 declare var Element: {\r
4788   prototype: Element;\r
4789   new(): Element;\r
4792 interface HTMLNextIdElement extends HTMLElement {\r
4793   n: string;\r
4795 declare var HTMLNextIdElement: {\r
4796   prototype: HTMLNextIdElement;\r
4797   new(): HTMLNextIdElement;\r
4800 interface SVGPathSegMovetoRel extends SVGPathSeg {\r
4801   y: number;\r
4802   x: number;\r
4804 declare var SVGPathSegMovetoRel: {\r
4805   prototype: SVGPathSegMovetoRel;\r
4806   new(): SVGPathSegMovetoRel;\r
4809 interface SVGLineElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
4810   y1: SVGAnimatedLength;\r
4811   x2: SVGAnimatedLength;\r
4812   x1: SVGAnimatedLength;\r
4813   y2: SVGAnimatedLength;\r
4815 declare var SVGLineElement: {\r
4816   prototype: SVGLineElement;\r
4817   new(): SVGLineElement;\r
4820 interface HTMLParagraphElement extends HTMLElement, DOML2DeprecatedTextFlowControl {\r
4821   /**\r
4822    * Sets or retrieves how the object is aligned with adjacent text.\r
4823    */\r
4824   align: string;\r
4826 declare var HTMLParagraphElement: {\r
4827   prototype: HTMLParagraphElement;\r
4828   new(): HTMLParagraphElement;\r
4831 interface HTMLAreasCollection extends HTMLCollection {\r
4832   /**\r
4833    * Removes an element from the collection.\r
4834    */\r
4835   remove(index?: number): void;\r
4836   /**\r
4837    * Adds an element to the areas, controlRange, or options collection.\r
4838    */\r
4839   add(element: HTMLElement, before?: any): void;\r
4841 declare var HTMLAreasCollection: {\r
4842   prototype: HTMLAreasCollection;\r
4843   new(): HTMLAreasCollection;\r
4846 interface SVGDescElement extends SVGElement, SVGStylable, SVGLangSpace {\r
4848 declare var SVGDescElement: {\r
4849   prototype: SVGDescElement;\r
4850   new(): SVGDescElement;\r
4853 interface Node extends EventTarget {\r
4854   nodeType: number;\r
4855   previousSibling: Node;\r
4856   localName: string;\r
4857   namespaceURI: string;\r
4858   textContent: string;\r
4859   parentNode: Node;\r
4860   nextSibling: Node;\r
4861   nodeValue: string;\r
4862   lastChild: Node;\r
4863   childNodes: NodeList;\r
4864   nodeName: string;\r
4865   ownerDocument: Document;\r
4866   attributes: NamedNodeMap;\r
4867   firstChild: Node;\r
4868   prefix: string;\r
4869   removeChild(oldChild: Node): Node;\r
4870   appendChild(newChild: Node): Node;\r
4871   isSupported(feature: string, version: string): boolean;\r
4872   isEqualNode(arg: Node): boolean;\r
4873   lookupPrefix(namespaceURI: string): string;\r
4874   isDefaultNamespace(namespaceURI: string): boolean;\r
4875   compareDocumentPosition(other: Node): number;\r
4876   normalize(): void;\r
4877   isSameNode(other: Node): boolean;\r
4878   hasAttributes(): boolean;\r
4879   lookupNamespaceURI(prefix: string): string;\r
4880   cloneNode(deep?: boolean): Node;\r
4881   hasChildNodes(): boolean;\r
4882   replaceChild(newChild: Node, oldChild: Node): Node;\r
4883   insertBefore(newChild: Node, refChild?: Node): Node;\r
4884   ENTITY_REFERENCE_NODE: number;\r
4885   ATTRIBUTE_NODE: number;\r
4886   DOCUMENT_FRAGMENT_NODE: number;\r
4887   TEXT_NODE: number;\r
4888   ELEMENT_NODE: number;\r
4889   COMMENT_NODE: number;\r
4890   DOCUMENT_POSITION_DISCONNECTED: number;\r
4891   DOCUMENT_POSITION_CONTAINED_BY: number;\r
4892   DOCUMENT_POSITION_CONTAINS: number;\r
4893   DOCUMENT_TYPE_NODE: number;\r
4894   DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;\r
4895   DOCUMENT_NODE: number;\r
4896   ENTITY_NODE: number;\r
4897   PROCESSING_INSTRUCTION_NODE: number;\r
4898   CDATA_SECTION_NODE: number;\r
4899   NOTATION_NODE: number;\r
4900   DOCUMENT_POSITION_FOLLOWING: number;\r
4901   DOCUMENT_POSITION_PRECEDING: number;\r
4903 declare var Node: {\r
4904   prototype: Node;\r
4905   new(): Node;\r
4906   ENTITY_REFERENCE_NODE: number;\r
4907   ATTRIBUTE_NODE: number;\r
4908   DOCUMENT_FRAGMENT_NODE: number;\r
4909   TEXT_NODE: number;\r
4910   ELEMENT_NODE: number;\r
4911   COMMENT_NODE: number;\r
4912   DOCUMENT_POSITION_DISCONNECTED: number;\r
4913   DOCUMENT_POSITION_CONTAINED_BY: number;\r
4914   DOCUMENT_POSITION_CONTAINS: number;\r
4915   DOCUMENT_TYPE_NODE: number;\r
4916   DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: number;\r
4917   DOCUMENT_NODE: number;\r
4918   ENTITY_NODE: number;\r
4919   PROCESSING_INSTRUCTION_NODE: number;\r
4920   CDATA_SECTION_NODE: number;\r
4921   NOTATION_NODE: number;\r
4922   DOCUMENT_POSITION_FOLLOWING: number;\r
4923   DOCUMENT_POSITION_PRECEDING: number;\r
4926 interface SVGPathSegCurvetoQuadraticSmoothRel extends SVGPathSeg {\r
4927   y: number;\r
4928   x: number;\r
4930 declare var SVGPathSegCurvetoQuadraticSmoothRel: {\r
4931   prototype: SVGPathSegCurvetoQuadraticSmoothRel;\r
4932   new(): SVGPathSegCurvetoQuadraticSmoothRel;\r
4935 interface DOML2DeprecatedListSpaceReduction {\r
4936   compact: boolean;\r
4939 interface MSScriptHost {\r
4941 declare var MSScriptHost: {\r
4942   prototype: MSScriptHost;\r
4943   new(): MSScriptHost;\r
4946 interface SVGClipPathElement extends SVGElement, SVGUnitTypes, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
4947   clipPathUnits: SVGAnimatedEnumeration;\r
4949 declare var SVGClipPathElement: {\r
4950   prototype: SVGClipPathElement;\r
4951   new(): SVGClipPathElement;\r
4954 interface MouseEvent extends UIEvent {\r
4955   toElement: Element;\r
4956   layerY: number;\r
4957   fromElement: Element;\r
4958   which: number;\r
4959   pageX: number;\r
4960   offsetY: number;\r
4961   x: number;\r
4962   y: number;\r
4963   metaKey: boolean;\r
4964   altKey: boolean;\r
4965   ctrlKey: boolean;\r
4966   offsetX: number;\r
4967   screenX: number;\r
4968   clientY: number;\r
4969   shiftKey: boolean;\r
4970   layerX: number;\r
4971   screenY: number;\r
4972   relatedTarget: EventTarget;\r
4973   button: number;\r
4974   pageY: number;\r
4975   buttons: number;\r
4976   clientX: number;\r
4977   initMouseEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: EventTarget): void;\r
4978   getModifierState(keyArg: string): boolean;\r
4980 declare var MouseEvent: {\r
4981   prototype: MouseEvent;\r
4982   new(): MouseEvent;\r
4985 interface RangeException {\r
4986   code: number;\r
4987   message: string;\r
4988   name: string;\r
4989   toString(): string;\r
4990   INVALID_NODE_TYPE_ERR: number;\r
4991   BAD_BOUNDARYPOINTS_ERR: number;\r
4993 declare var RangeException: {\r
4994   prototype: RangeException;\r
4995   new(): RangeException;\r
4996   INVALID_NODE_TYPE_ERR: number;\r
4997   BAD_BOUNDARYPOINTS_ERR: number;\r
5000 interface SVGTextPositioningElement extends SVGTextContentElement {\r
5001   y: SVGAnimatedLengthList;\r
5002   rotate: SVGAnimatedNumberList;\r
5003   dy: SVGAnimatedLengthList;\r
5004   x: SVGAnimatedLengthList;\r
5005   dx: SVGAnimatedLengthList;\r
5007 declare var SVGTextPositioningElement: {\r
5008   prototype: SVGTextPositioningElement;\r
5009   new(): SVGTextPositioningElement;\r
5012 interface HTMLAppletElement extends HTMLElement, DOML2DeprecatedMarginStyle, DOML2DeprecatedBorderStyle, DOML2DeprecatedAlignmentStyle, MSDataBindingExtensions, MSDataBindingRecordSetExtensions {\r
5013   width: number;\r
5014   /**\r
5015    * Sets or retrieves the Internet media type for the code associated with the object.\r
5016    */\r
5017   codeType: string;\r
5018   object: string;\r
5019   form: HTMLFormElement;\r
5020   code: string;\r
5021   /**\r
5022    * Sets or retrieves a character string that can be used to implement your own archive functionality for the object.\r
5023    */\r
5024   archive: string;\r
5025   /**\r
5026    * Sets or retrieves a text alternative to the graphic.\r
5027    */\r
5028   alt: string;\r
5029   /**\r
5030    * Sets or retrieves a message to be displayed while an object is loading.\r
5031    */\r
5032   standby: string;\r
5033   /**\r
5034    * Sets or retrieves the class identifier for the object.\r
5035    */\r
5036   classid: string;\r
5037   /**\r
5038    * Sets or retrieves the shape of the object.\r
5039    */\r
5040   name: string;\r
5041   /**\r
5042    * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.\r
5043    */\r
5044   useMap: string;\r
5045   /**\r
5046    * Sets or retrieves the URL that references the data of the object.\r
5047    */\r
5048   data: string;\r
5049   /**\r
5050    * Sets or retrieves the height of the object.\r
5051    */\r
5052   height: string;\r
5053   /**\r
5054    * Gets or sets the optional alternative HTML script to execute if the object fails to load.\r
5055    */\r
5056   altHtml: string;\r
5057   /**\r
5058    * Address of a pointer to the document this page or frame contains. If there is no document, then null will be returned.\r
5059    */\r
5060   contentDocument: Document;\r
5061   /**\r
5062    * Sets or retrieves the URL of the component.\r
5063    */\r
5064   codeBase: string;\r
5065   /**\r
5066    * Sets or retrieves a character string that can be used to implement your own declare functionality for the object.\r
5067    */\r
5068     declare: boolean;\r
5069   /**\r
5070    * Returns the content type of the object.\r
5071    */\r
5072   type: string;\r
5073   /**\r
5074    * Retrieves a string of the URL where the object tag can be found. This is often the href of the document that the object is in, or the value set by a base element.\r
5075    */\r
5076   BaseHref: string;\r
5078 declare var HTMLAppletElement: {\r
5079   prototype: HTMLAppletElement;\r
5080   new(): HTMLAppletElement;\r
5083 interface TextMetrics {\r
5084   width: number;\r
5086 declare var TextMetrics: {\r
5087   prototype: TextMetrics;\r
5088   new(): TextMetrics;\r
5091 interface DocumentEvent {\r
5092   createEvent(eventInterface: "AnimationEvent"): AnimationEvent;\r
5093   createEvent(eventInterface: "CloseEvent"): CloseEvent;\r
5094   createEvent(eventInterface: "CompositionEvent"): CompositionEvent;\r
5095   createEvent(eventInterface: "CustomEvent"): CustomEvent;\r
5096   createEvent(eventInterface: "DeviceMotionEvent"): DeviceMotionEvent;\r
5097   createEvent(eventInterface: "DeviceOrientationEvent"): DeviceOrientationEvent;\r
5098   createEvent(eventInterface: "DragEvent"): DragEvent;\r
5099   createEvent(eventInterface: "ErrorEvent"): ErrorEvent;\r
5100   createEvent(eventInterface: "Event"): Event;\r
5101   createEvent(eventInterface: "Events"): Event;\r
5102   createEvent(eventInterface: "FocusEvent"): FocusEvent;\r
5103   createEvent(eventInterface: "HTMLEvents"): Event;\r
5104   createEvent(eventInterface: "IDBVersionChangeEvent"): IDBVersionChangeEvent;\r
5105   createEvent(eventInterface: "KeyboardEvent"): KeyboardEvent;\r
5106   createEvent(eventInterface: "LongRunningScriptDetectedEvent"): LongRunningScriptDetectedEvent;\r
5107   createEvent(eventInterface: "MessageEvent"): MessageEvent;\r
5108   createEvent(eventInterface: "MouseEvent"): MouseEvent;\r
5109   createEvent(eventInterface: "MouseEvents"): MouseEvent;\r
5110   createEvent(eventInterface: "MouseWheelEvent"): MouseWheelEvent;\r
5111   createEvent(eventInterface: "MSGestureEvent"): MSGestureEvent;\r
5112   createEvent(eventInterface: "MSPointerEvent"): MSPointerEvent;\r
5113   createEvent(eventInterface: "MutationEvent"): MutationEvent;\r
5114   createEvent(eventInterface: "MutationEvents"): MutationEvent;\r
5115   createEvent(eventInterface: "NavigationCompletedEvent"): NavigationCompletedEvent;\r
5116   createEvent(eventInterface: "NavigationEvent"): NavigationEvent;\r
5117   createEvent(eventInterface: "PageTransitionEvent"): PageTransitionEvent;\r
5118   createEvent(eventInterface: "PointerEvent"): MSPointerEvent;\r
5119   createEvent(eventInterface: "PopStateEvent"): PopStateEvent;\r
5120   createEvent(eventInterface: "ProgressEvent"): ProgressEvent;\r
5121   createEvent(eventInterface: "StorageEvent"): StorageEvent;\r
5122   createEvent(eventInterface: "SVGZoomEvents"): SVGZoomEvent;\r
5123   createEvent(eventInterface: "TextEvent"): TextEvent;\r
5124   createEvent(eventInterface: "TrackEvent"): TrackEvent;\r
5125   createEvent(eventInterface: "TransitionEvent"): TransitionEvent;\r
5126   createEvent(eventInterface: "UIEvent"): UIEvent;\r
5127   createEvent(eventInterface: "UIEvents"): UIEvent;\r
5128   createEvent(eventInterface: "UnviewableContentIdentifiedEvent"): UnviewableContentIdentifiedEvent;\r
5129   createEvent(eventInterface: "WebGLContextEvent"): WebGLContextEvent;\r
5130   createEvent(eventInterface: "WheelEvent"): WheelEvent;\r
5131   createEvent(eventInterface: string): Event;\r
5134 interface HTMLOListElement extends HTMLElement, DOML2DeprecatedListSpaceReduction, DOML2DeprecatedListNumberingAndBulletStyle {\r
5135   /**\r
5136    * The starting number.\r
5137    */\r
5138   start: number;\r
5140 declare var HTMLOListElement: {\r
5141   prototype: HTMLOListElement;\r
5142   new(): HTMLOListElement;\r
5145 interface SVGPathSegLinetoVerticalRel extends SVGPathSeg {\r
5146   y: number;\r
5148 declare var SVGPathSegLinetoVerticalRel: {\r
5149   prototype: SVGPathSegLinetoVerticalRel;\r
5150   new(): SVGPathSegLinetoVerticalRel;\r
5153 interface SVGAnimatedString {\r
5154   animVal: string;\r
5155   baseVal: string;\r
5157 declare var SVGAnimatedString: {\r
5158   prototype: SVGAnimatedString;\r
5159   new(): SVGAnimatedString;\r
5162 interface CDATASection extends Text {\r
5164 declare var CDATASection: {\r
5165   prototype: CDATASection;\r
5166   new(): CDATASection;\r
5169 interface StyleMedia {\r
5170   type: string;\r
5171   matchMedium(mediaquery: string): boolean;\r
5173 declare var StyleMedia: {\r
5174   prototype: StyleMedia;\r
5175   new(): StyleMedia;\r
5178 interface HTMLSelectElement extends HTMLElement, MSHTMLCollectionExtensions, MSDataBindingExtensions {\r
5179   options: HTMLSelectElement;\r
5180   /**\r
5181    * Sets or retrieves the value which is returned to the server when the form control is submitted.\r
5182    */\r
5183   value: string;\r
5184   /**\r
5185    * Retrieves a reference to the form that the object is embedded in.\r
5186    */\r
5187   form: HTMLFormElement;\r
5188   /**\r
5189    * Sets or retrieves the name of the object.\r
5190    */\r
5191   name: string;\r
5192   /**\r
5193    * Sets or retrieves the number of rows in the list box.\r
5194    */\r
5195   size: number;\r
5196   /**\r
5197    * Sets or retrieves the number of objects in a collection.\r
5198    */\r
5199   length: number;\r
5200   /**\r
5201    * Sets or retrieves the index of the selected option in a select object.\r
5202    */\r
5203   selectedIndex: number;\r
5204   /**\r
5205    * Sets or retrieves the Boolean value indicating whether multiple items can be selected from a list.\r
5206    */\r
5207   multiple: boolean;\r
5208   /**\r
5209    * Retrieves the type of select control based on the value of the MULTIPLE attribute.\r
5210    */\r
5211   type: string;\r
5212   /**\r
5213    * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.\r
5214    */\r
5215   validationMessage: string;\r
5216   /**\r
5217    * Provides a way to direct a user to a specific field when a document loads. This can provide both direction and convenience for a user, reducing the need to click or tab to a field when a page opens. This attribute is true when present on an element, and false when missing.\r
5218    */\r
5219   autofocus: boolean;\r
5220   /**\r
5221    * Returns a  ValidityState object that represents the validity states of an element.\r
5222    */\r
5223   validity: ValidityState;\r
5224   /**\r
5225    * When present, marks an element that can't be submitted without a value.\r
5226    */\r
5227   required: boolean;\r
5228   /**\r
5229    * Returns whether an element will successfully validate based on forms validation rules and constraints.\r
5230    */\r
5231   willValidate: boolean;\r
5232   /**\r
5233    * Removes an element from the collection.\r
5234    * @param index Number that specifies the zero-based index of the element to remove from the collection.\r
5235    */\r
5236   remove(index?: number): void;\r
5237   /**\r
5238    * Adds an element to the areas, controlRange, or options collection.\r
5239    * @param element Variant of type Number that specifies the index position in the collection where the element is placed. If no value is given, the method places the element at the end of the collection.\r
5240    * @param before Variant of type Object that specifies an element to insert before, or null to append the object to the collection.\r
5241    */\r
5242   add(element: HTMLElement, before?: any): void;\r
5243   /**\r
5244    * Retrieves a select object or an object from an options collection.\r
5245    * @param name Variant of type Number or String that specifies the object or collection to retrieve. If this parameter is an integer, it is the zero-based index of the object. If this parameter is a string, all objects with matching name or id properties are retrieved, and a collection is returned if more than one match is made.\r
5246    * @param index Variant of type Number that specifies the zero-based index of the object to retrieve when a collection is returned.\r
5247    */\r
5248   item(name?: any, index?: any): any;\r
5249   /**\r
5250    * Retrieves a select object or an object from an options collection.\r
5251    * @param namedItem A String that specifies the name or id property of the object to retrieve. A collection is returned if more than one match is made.\r
5252    */\r
5253   namedItem(name: string): any;\r
5254   [name: string]: any;\r
5255   /**\r
5256    * Returns whether a form will validate when it is submitted, without having to submit it.\r
5257    */\r
5258   checkValidity(): boolean;\r
5259   /**\r
5260    * Sets a custom error message that is displayed when a form is submitted.\r
5261    * @param error Sets a custom error message that is displayed when a form is submitted.\r
5262    */\r
5263   setCustomValidity(error: string): void;\r
5265 declare var HTMLSelectElement: {\r
5266   prototype: HTMLSelectElement;\r
5267   new(): HTMLSelectElement;\r
5270 interface TextRange {\r
5271   boundingLeft: number;\r
5272   htmlText: string;\r
5273   offsetLeft: number;\r
5274   boundingWidth: number;\r
5275   boundingHeight: number;\r
5276   boundingTop: number;\r
5277   text: string;\r
5278   offsetTop: number;\r
5279   moveToPoint(x: number, y: number): void;\r
5280   queryCommandValue(cmdID: string): any;\r
5281   getBookmark(): string;\r
5282   move(unit: string, count?: number): number;\r
5283   queryCommandIndeterm(cmdID: string): boolean;\r
5284   scrollIntoView(fStart?: boolean): void;\r
5285   findText(string: string, count?: number, flags?: number): boolean;\r
5286   execCommand(cmdID: string, showUI?: boolean, value?: any): boolean;\r
5287   getBoundingClientRect(): ClientRect;\r
5288   moveToBookmark(bookmark: string): boolean;\r
5289   isEqual(range: TextRange): boolean;\r
5290   duplicate(): TextRange;\r
5291   collapse(start?: boolean): void;\r
5292   queryCommandText(cmdID: string): string;\r
5293   select(): void;\r
5294   pasteHTML(html: string): void;\r
5295   inRange(range: TextRange): boolean;\r
5296   moveEnd(unit: string, count?: number): number;\r
5297   getClientRects(): ClientRectList;\r
5298   moveStart(unit: string, count?: number): number;\r
5299   parentElement(): Element;\r
5300   queryCommandState(cmdID: string): boolean;\r
5301   compareEndPoints(how: string, sourceRange: TextRange): number;\r
5302   execCommandShowHelp(cmdID: string): boolean;\r
5303   moveToElementText(element: Element): void;\r
5304   expand(Unit: string): boolean;\r
5305   queryCommandSupported(cmdID: string): boolean;\r
5306   setEndPoint(how: string, SourceRange: TextRange): void;\r
5307   queryCommandEnabled(cmdID: string): boolean;\r
5309 declare var TextRange: {\r
5310   prototype: TextRange;\r
5311   new(): TextRange;\r
5314 interface SVGTests {\r
5315   requiredFeatures: SVGStringList;\r
5316   requiredExtensions: SVGStringList;\r
5317   systemLanguage: SVGStringList;\r
5318   hasExtension(extension: string): boolean;\r
5321 interface HTMLBlockElement extends HTMLElement, DOML2DeprecatedTextFlowControl {\r
5322   /**\r
5323    * Sets or retrieves the width of the object.\r
5324    */\r
5325   width: number;\r
5326   /**\r
5327    * Sets or retrieves reference information about the object.\r
5328    */\r
5329   cite: string;\r
5331 declare var HTMLBlockElement: {\r
5332   prototype: HTMLBlockElement;\r
5333   new(): HTMLBlockElement;\r
5336 interface CSSStyleSheet extends StyleSheet {\r
5337   owningElement: Element;\r
5338   imports: StyleSheetList;\r
5339   isAlternate: boolean;\r
5340   rules: MSCSSRuleList;\r
5341   isPrefAlternate: boolean;\r
5342   readOnly: boolean;\r
5343   cssText: string;\r
5344   ownerRule: CSSRule;\r
5345   href: string;\r
5346   cssRules: CSSRuleList;\r
5347   id: string;\r
5348   pages: StyleSheetPageList;\r
5349   addImport(bstrURL: string, lIndex?: number): number;\r
5350   addPageRule(bstrSelector: string, bstrStyle: string, lIndex?: number): number;\r
5351   insertRule(rule: string, index?: number): number;\r
5352   removeRule(lIndex: number): void;\r
5353   deleteRule(index?: number): void;\r
5354   addRule(bstrSelector: string, bstrStyle?: string, lIndex?: number): number;\r
5355   removeImport(lIndex: number): void;\r
5357 declare var CSSStyleSheet: {\r
5358   prototype: CSSStyleSheet;\r
5359   new(): CSSStyleSheet;\r
5362 interface MSSelection {\r
5363   type: string;\r
5364   typeDetail: string;\r
5365   createRange(): TextRange;\r
5366   clear(): void;\r
5367   createRangeCollection(): TextRangeCollection;\r
5368   empty(): void;\r
5370 declare var MSSelection: {\r
5371   prototype: MSSelection;\r
5372   new(): MSSelection;\r
5375 interface HTMLMetaElement extends HTMLElement {\r
5376   /**\r
5377    * Gets or sets information used to bind the value of a content attribute of a meta element to an HTTP response header.\r
5378    */\r
5379   httpEquiv: string;\r
5380   /**\r
5381    * Sets or retrieves the value specified in the content attribute of the meta object.\r
5382    */\r
5383   name: string;\r
5384   /**\r
5385    * Gets or sets meta-information to associate with httpEquiv or name.\r
5386    */\r
5387   content: string;\r
5388   /**\r
5389    * Sets or retrieves the URL property that will be loaded after the specified time has elapsed.\r
5390    */\r
5391   url: string;\r
5392   /**\r
5393    * Sets or retrieves a scheme to be used in interpreting the value of a property specified for the object.\r
5394    */\r
5395   scheme: string;\r
5396   /**\r
5397    * Sets or retrieves the character set used to encode the object.\r
5398    */\r
5399   charset: string;\r
5401 declare var HTMLMetaElement: {\r
5402   prototype: HTMLMetaElement;\r
5403   new(): HTMLMetaElement;\r
5406 interface SVGPatternElement extends SVGElement, SVGUnitTypes, SVGStylable, SVGLangSpace, SVGTests, SVGFitToViewBox, SVGExternalResourcesRequired, SVGURIReference {\r
5407   patternUnits: SVGAnimatedEnumeration;\r
5408   y: SVGAnimatedLength;\r
5409   width: SVGAnimatedLength;\r
5410   x: SVGAnimatedLength;\r
5411   patternContentUnits: SVGAnimatedEnumeration;\r
5412   patternTransform: SVGAnimatedTransformList;\r
5413   height: SVGAnimatedLength;\r
5415 declare var SVGPatternElement: {\r
5416   prototype: SVGPatternElement;\r
5417   new(): SVGPatternElement;\r
5420 interface SVGAnimatedAngle {\r
5421   animVal: SVGAngle;\r
5422   baseVal: SVGAngle;\r
5424 declare var SVGAnimatedAngle: {\r
5425   prototype: SVGAnimatedAngle;\r
5426   new(): SVGAnimatedAngle;\r
5429 interface Selection {\r
5430   isCollapsed: boolean;\r
5431   anchorNode: Node;\r
5432   focusNode: Node;\r
5433   anchorOffset: number;\r
5434   focusOffset: number;\r
5435   rangeCount: number;\r
5436   addRange(range: Range): void;\r
5437   collapseToEnd(): void;\r
5438   toString(): string;\r
5439   selectAllChildren(parentNode: Node): void;\r
5440   getRangeAt(index: number): Range;\r
5441   collapse(parentNode: Node, offset: number): void;\r
5442   removeAllRanges(): void;\r
5443   collapseToStart(): void;\r
5444   deleteFromDocument(): void;\r
5445   removeRange(range: Range): void;\r
5447 declare var Selection: {\r
5448   prototype: Selection;\r
5449   new(): Selection;\r
5452 interface SVGScriptElement extends SVGElement, SVGExternalResourcesRequired, SVGURIReference {\r
5453   type: string;\r
5455 declare var SVGScriptElement: {\r
5456   prototype: SVGScriptElement;\r
5457   new(): SVGScriptElement;\r
5460 interface HTMLDDElement extends HTMLElement {\r
5461   /**\r
5462    * Sets or retrieves whether the browser automatically performs wordwrap.\r
5463    */\r
5464   noWrap: boolean;\r
5466 declare var HTMLDDElement: {\r
5467   prototype: HTMLDDElement;\r
5468   new(): HTMLDDElement;\r
5471 interface MSDataBindingRecordSetReadonlyExtensions {\r
5472   recordset: any;\r
5473   namedRecordset(dataMember: string, hierarchy?: any): any;\r
5476 interface CSSStyleRule extends CSSRule {\r
5477   selectorText: string;\r
5478   style: MSStyleCSSProperties;\r
5479   readOnly: boolean;\r
5481 declare var CSSStyleRule: {\r
5482   prototype: CSSStyleRule;\r
5483   new(): CSSStyleRule;\r
5486 interface NodeIterator {\r
5487   whatToShow: number;\r
5488   filter: NodeFilter;\r
5489   root: Node;\r
5490   expandEntityReferences: boolean;\r
5491   nextNode(): Node;\r
5492   detach(): void;\r
5493   previousNode(): Node;\r
5495 declare var NodeIterator: {\r
5496   prototype: NodeIterator;\r
5497   new(): NodeIterator;\r
5500 interface SVGViewElement extends SVGElement, SVGZoomAndPan, SVGFitToViewBox, SVGExternalResourcesRequired {\r
5501   viewTarget: SVGStringList;\r
5503 declare var SVGViewElement: {\r
5504   prototype: SVGViewElement;\r
5505   new(): SVGViewElement;\r
5508 interface HTMLLinkElement extends HTMLElement, LinkStyle {\r
5509   /**\r
5510    * Sets or retrieves the relationship between the object and the destination of the link.\r
5511    */\r
5512   rel: string;\r
5513   /**\r
5514    * Sets or retrieves the window or frame at which to target content.\r
5515    */\r
5516   target: string;\r
5517   /**\r
5518    * Sets or retrieves a destination URL or an anchor point.\r
5519    */\r
5520   href: string;\r
5521   /**\r
5522    * Sets or retrieves the media type.\r
5523    */\r
5524   media: string;\r
5525   /**\r
5526    * Sets or retrieves the relationship between the object and the destination of the link.\r
5527    */\r
5528   rev: string;\r
5529   /**\r
5530    * Sets or retrieves the MIME type of the object.\r
5531    */\r
5532   type: string;\r
5533   /**\r
5534    * Sets or retrieves the character set used to encode the object.\r
5535    */\r
5536   charset: string;\r
5537   /**\r
5538    * Sets or retrieves the language code of the object.\r
5539    */\r
5540   hreflang: string;\r
5542 declare var HTMLLinkElement: {\r
5543   prototype: HTMLLinkElement;\r
5544   new(): HTMLLinkElement;\r
5547 interface SVGLocatable {\r
5548   farthestViewportElement: SVGElement;\r
5549   nearestViewportElement: SVGElement;\r
5550   getBBox(): SVGRect;\r
5551   getTransformToElement(element: SVGElement): SVGMatrix;\r
5552   getCTM(): SVGMatrix;\r
5553   getScreenCTM(): SVGMatrix;\r
5556 interface HTMLFontElement extends HTMLElement, DOML2DeprecatedColorProperty, DOML2DeprecatedSizeProperty {\r
5557   /**\r
5558    * Sets or retrieves the current typeface family.\r
5559    */\r
5560   face: string;\r
5562 declare var HTMLFontElement: {\r
5563   prototype: HTMLFontElement;\r
5564   new(): HTMLFontElement;\r
5567 interface SVGTitleElement extends SVGElement, SVGStylable, SVGLangSpace {\r
5569 declare var SVGTitleElement: {\r
5570   prototype: SVGTitleElement;\r
5571   new(): SVGTitleElement;\r
5574 interface ControlRangeCollection {\r
5575   length: number;\r
5576   queryCommandValue(cmdID: string): any;\r
5577   remove(index: number): void;\r
5578   add(item: Element): void;\r
5579   queryCommandIndeterm(cmdID: string): boolean;\r
5580   scrollIntoView(varargStart?: any): void;\r
5581   item(index: number): Element;\r
5582   [index: number]: Element;\r
5583   execCommand(cmdID: string, showUI?: boolean, value?: any): boolean;\r
5584   addElement(item: Element): void;\r
5585   queryCommandState(cmdID: string): boolean;\r
5586   queryCommandSupported(cmdID: string): boolean;\r
5587   queryCommandEnabled(cmdID: string): boolean;\r
5588   queryCommandText(cmdID: string): string;\r
5589   select(): void;\r
5591 declare var ControlRangeCollection: {\r
5592   prototype: ControlRangeCollection;\r
5593   new(): ControlRangeCollection;\r
5596 interface MSNamespaceInfo extends MSEventAttachmentTarget {\r
5597   urn: string;\r
5598   onreadystatechange: (ev: Event) => any;\r
5599   name: string;\r
5600   readyState: string;\r
5601   doImport(implementationUrl: string): void;\r
5602   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
5603   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
5605 declare var MSNamespaceInfo: {\r
5606   prototype: MSNamespaceInfo;\r
5607   new(): MSNamespaceInfo;\r
5610 interface WindowSessionStorage {\r
5611   sessionStorage: Storage;\r
5614 interface SVGAnimatedTransformList {\r
5615   animVal: SVGTransformList;\r
5616   baseVal: SVGTransformList;\r
5618 declare var SVGAnimatedTransformList: {\r
5619   prototype: SVGAnimatedTransformList;\r
5620   new(): SVGAnimatedTransformList;\r
5623 interface HTMLTableCaptionElement extends HTMLElement {\r
5624   /**\r
5625    * Sets or retrieves the alignment of the caption or legend.\r
5626    */\r
5627   align: string;\r
5628   /**\r
5629    * Sets or retrieves whether the caption appears at the top or bottom of the table.\r
5630    */\r
5631   vAlign: string;\r
5633 declare var HTMLTableCaptionElement: {\r
5634   prototype: HTMLTableCaptionElement;\r
5635   new(): HTMLTableCaptionElement;\r
5638 interface HTMLOptionElement extends HTMLElement, MSDataBindingExtensions {\r
5639   /**\r
5640    * Sets or retrieves the ordinal position of an option in a list box.\r
5641    */\r
5642   index: number;\r
5643   /**\r
5644    * Sets or retrieves the status of an option.\r
5645    */\r
5646   defaultSelected: boolean;\r
5647   /**\r
5648    * Sets or retrieves the value which is returned to the server when the form control is submitted.\r
5649    */\r
5650   value: string;\r
5651   /**\r
5652    * Sets or retrieves the text string specified by the option tag.\r
5653    */\r
5654   text: string;\r
5655   /**\r
5656    * Retrieves a reference to the form that the object is embedded in.\r
5657    */\r
5658   form: HTMLFormElement;\r
5659   /**\r
5660    * Sets or retrieves a value that you can use to implement your own label functionality for the object.\r
5661    */\r
5662   label: string;\r
5663   /**\r
5664    * Sets or retrieves whether the option in the list box is the default item.\r
5665    */\r
5666   selected: boolean;\r
5668 declare var HTMLOptionElement: {\r
5669   prototype: HTMLOptionElement;\r
5670   new(): HTMLOptionElement;\r
5671   create(): HTMLOptionElement;\r
5674 interface HTMLMapElement extends HTMLElement {\r
5675   /**\r
5676    * Sets or retrieves the name of the object.\r
5677    */\r
5678   name: string;\r
5679   /**\r
5680    * Retrieves a collection of the area objects defined for the given map object.\r
5681    */\r
5682   areas: HTMLAreasCollection;\r
5684 declare var HTMLMapElement: {\r
5685   prototype: HTMLMapElement;\r
5686   new(): HTMLMapElement;\r
5689 interface HTMLMenuElement extends HTMLElement, DOML2DeprecatedListSpaceReduction {\r
5690   type: string;\r
5692 declare var HTMLMenuElement: {\r
5693   prototype: HTMLMenuElement;\r
5694   new(): HTMLMenuElement;\r
5697 interface MouseWheelEvent extends MouseEvent {\r
5698   wheelDelta: number;\r
5699   initMouseWheelEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, buttonArg: number, relatedTargetArg: EventTarget, modifiersListArg: string, wheelDeltaArg: number): void;\r
5701 declare var MouseWheelEvent: {\r
5702   prototype: MouseWheelEvent;\r
5703   new(): MouseWheelEvent;\r
5706 interface SVGFitToViewBox {\r
5707   viewBox: SVGAnimatedRect;\r
5708   preserveAspectRatio: SVGAnimatedPreserveAspectRatio;\r
5711 interface SVGPointList {\r
5712   numberOfItems: number;\r
5713   replaceItem(newItem: SVGPoint, index: number): SVGPoint;\r
5714   getItem(index: number): SVGPoint;\r
5715   clear(): void;\r
5716   appendItem(newItem: SVGPoint): SVGPoint;\r
5717   initialize(newItem: SVGPoint): SVGPoint;\r
5718   removeItem(index: number): SVGPoint;\r
5719   insertItemBefore(newItem: SVGPoint, index: number): SVGPoint;\r
5721 declare var SVGPointList: {\r
5722   prototype: SVGPointList;\r
5723   new(): SVGPointList;\r
5726 interface SVGAnimatedLengthList {\r
5727   animVal: SVGLengthList;\r
5728   baseVal: SVGLengthList;\r
5730 declare var SVGAnimatedLengthList: {\r
5731   prototype: SVGAnimatedLengthList;\r
5732   new(): SVGAnimatedLengthList;\r
5735 interface SVGAnimatedPreserveAspectRatio {\r
5736   animVal: SVGPreserveAspectRatio;\r
5737   baseVal: SVGPreserveAspectRatio;\r
5739 declare var SVGAnimatedPreserveAspectRatio: {\r
5740   prototype: SVGAnimatedPreserveAspectRatio;\r
5741   new(): SVGAnimatedPreserveAspectRatio;\r
5744 interface MSSiteModeEvent extends Event {\r
5745   buttonID: number;\r
5746   actionURL: string;\r
5748 declare var MSSiteModeEvent: {\r
5749   prototype: MSSiteModeEvent;\r
5750   new(): MSSiteModeEvent;\r
5753 interface DOML2DeprecatedTextFlowControl {\r
5754   clear: string;\r
5757 interface StyleSheetPageList {\r
5758   length: number;\r
5759   item(index: number): CSSPageRule;\r
5760   [index: number]: CSSPageRule;\r
5762 declare var StyleSheetPageList: {\r
5763   prototype: StyleSheetPageList;\r
5764   new(): StyleSheetPageList;\r
5767 interface MSCSSProperties extends CSSStyleDeclaration {\r
5768   scrollbarShadowColor: string;\r
5769   scrollbarHighlightColor: string;\r
5770   layoutGridChar: string;\r
5771   layoutGridType: string;\r
5772   textAutospace: string;\r
5773   textKashidaSpace: string;\r
5774   writingMode: string;\r
5775   scrollbarFaceColor: string;\r
5776   backgroundPositionY: string;\r
5777   lineBreak: string;\r
5778   imeMode: string;\r
5779   msBlockProgression: string;\r
5780   layoutGridLine: string;\r
5781   scrollbarBaseColor: string;\r
5782   layoutGrid: string;\r
5783   layoutFlow: string;\r
5784   textKashida: string;\r
5785   filter: string;\r
5786   zoom: string;\r
5787   scrollbarArrowColor: string;\r
5788   behavior: string;\r
5789   backgroundPositionX: string;\r
5790   accelerator: string;\r
5791   layoutGridMode: string;\r
5792   textJustifyTrim: string;\r
5793   scrollbar3dLightColor: string;\r
5794   msInterpolationMode: string;\r
5795   scrollbarTrackColor: string;\r
5796   scrollbarDarkShadowColor: string;\r
5797   styleFloat: string;\r
5798   getAttribute(attributeName: string, flags?: number): any;\r
5799   setAttribute(attributeName: string, AttributeValue: any, flags?: number): void;\r
5800   removeAttribute(attributeName: string, flags?: number): boolean;\r
5802 declare var MSCSSProperties: {\r
5803   prototype: MSCSSProperties;\r
5804   new(): MSCSSProperties;\r
5807 interface SVGExternalResourcesRequired {\r
5808   externalResourcesRequired: SVGAnimatedBoolean;\r
5811 interface HTMLImageElement extends HTMLElement, MSImageResourceExtensions, MSDataBindingExtensions, MSResourceMetadata {\r
5812   /**\r
5813    * Sets or retrieves the width of the object.\r
5814    */\r
5815   width: number;\r
5816   /**\r
5817    * Sets or retrieves the vertical margin for the object.\r
5818    */\r
5819   vspace: number;\r
5820   /**\r
5821    * The original height of the image resource before sizing.\r
5822    */\r
5823   naturalHeight: number;\r
5824   /**\r
5825    * Sets or retrieves a text alternative to the graphic.\r
5826    */\r
5827   alt: string;\r
5828   /**\r
5829    * Sets or retrieves how the object is aligned with adjacent text.\r
5830    */\r
5831   align: string;\r
5832   /**\r
5833    * The address or URL of the a media resource that is to be considered.\r
5834    */\r
5835   src: string;\r
5836   /**\r
5837    * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.\r
5838    */\r
5839   useMap: string;\r
5840   /**\r
5841    * The original width of the image resource before sizing.\r
5842    */\r
5843   naturalWidth: number;\r
5844   /**\r
5845    * Sets or retrieves the name of the object.\r
5846    */\r
5847   name: string;\r
5848   /**\r
5849    * Sets or retrieves the height of the object.\r
5850    */\r
5851   height: number;\r
5852   /**\r
5853    * Specifies the properties of a border drawn around an object.\r
5854    */\r
5855   border: string;\r
5856   /**\r
5857    * Sets or retrieves the width of the border to draw around the object.\r
5858    */\r
5859   hspace: number;\r
5860   /**\r
5861    * Sets or retrieves a Uniform Resource Identifier (URI) to a long description of the object.\r
5862    */\r
5863   longDesc: string;\r
5864   /**\r
5865    * Contains the hypertext reference (HREF) of the URL.\r
5866    */\r
5867   href: string;\r
5868   /**\r
5869    * Sets or retrieves whether the image is a server-side image map.\r
5870    */\r
5871   isMap: boolean;\r
5872   /**\r
5873    * Retrieves whether the object is fully loaded.\r
5874    */\r
5875   complete: boolean;\r
5876   /**\r
5877    * Gets or sets the primary DLNA PlayTo device.\r
5878    */\r
5879   msPlayToPrimary: boolean;\r
5880   /**\r
5881    * Gets or sets whether the DLNA PlayTo device is available.\r
5882    */\r
5883   msPlayToDisabled: boolean;\r
5884   /**\r
5885    * Gets the source associated with the media element for use by the PlayToManager.\r
5886    */\r
5887   msPlayToSource: any;\r
5888   crossOrigin: string;\r
5889   msPlayToPreferredSourceUri: string;\r
5891 declare var HTMLImageElement: {\r
5892   prototype: HTMLImageElement;\r
5893   new(): HTMLImageElement;\r
5894   create(): HTMLImageElement;\r
5897 interface HTMLAreaElement extends HTMLElement {\r
5898   /**\r
5899    * Sets or retrieves the protocol portion of a URL.\r
5900    */\r
5901   protocol: string;\r
5902   /**\r
5903    * Sets or retrieves the substring of the href property that follows the question mark.\r
5904    */\r
5905   search: string;\r
5906   /**\r
5907    * Sets or retrieves a text alternative to the graphic.\r
5908    */\r
5909   alt: string;\r
5910   /**\r
5911    * Sets or retrieves the coordinates of the object.\r
5912    */\r
5913   coords: string;\r
5914   /**\r
5915    * Sets or retrieves the host name part of the location or URL.\r
5916    */\r
5917   hostname: string;\r
5918   /**\r
5919    * Sets or retrieves the port number associated with a URL.\r
5920    */\r
5921   port: string;\r
5922   /**\r
5923    * Sets or retrieves the file name or path specified by the object.\r
5924    */\r
5925   pathname: string;\r
5926   /**\r
5927    * Sets or retrieves the hostname and port number of the location or URL.\r
5928    */\r
5929   host: string;\r
5930   /**\r
5931    * Sets or retrieves the subsection of the href property that follows the number sign (#).\r
5932    */\r
5933   hash: string;\r
5934   /**\r
5935    * Sets or retrieves the window or frame at which to target content.\r
5936    */\r
5937   target: string;\r
5938   /**\r
5939    * Sets or retrieves a destination URL or an anchor point.\r
5940    */\r
5941   href: string;\r
5942   /**\r
5943    * Sets or gets whether clicks in this region cause action.\r
5944    */\r
5945   noHref: boolean;\r
5946   /**\r
5947    * Sets or retrieves the shape of the object.\r
5948    */\r
5949   shape: string;\r
5950   /**\r
5951    * Returns a string representation of an object.\r
5952    */\r
5953   toString(): string;\r
5955 declare var HTMLAreaElement: {\r
5956   prototype: HTMLAreaElement;\r
5957   new(): HTMLAreaElement;\r
5960 interface EventTarget {\r
5961   removeEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
5962   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
5963   dispatchEvent(evt: Event): boolean;\r
5966 interface SVGAngle {\r
5967   valueAsString: string;\r
5968   valueInSpecifiedUnits: number;\r
5969   value: number;\r
5970   unitType: number;\r
5971   newValueSpecifiedUnits(unitType: number, valueInSpecifiedUnits: number): void;\r
5972   convertToSpecifiedUnits(unitType: number): void;\r
5973   SVG_ANGLETYPE_RAD: number;\r
5974   SVG_ANGLETYPE_UNKNOWN: number;\r
5975   SVG_ANGLETYPE_UNSPECIFIED: number;\r
5976   SVG_ANGLETYPE_DEG: number;\r
5977   SVG_ANGLETYPE_GRAD: number;\r
5979 declare var SVGAngle: {\r
5980   prototype: SVGAngle;\r
5981   new(): SVGAngle;\r
5982   SVG_ANGLETYPE_RAD: number;\r
5983   SVG_ANGLETYPE_UNKNOWN: number;\r
5984   SVG_ANGLETYPE_UNSPECIFIED: number;\r
5985   SVG_ANGLETYPE_DEG: number;\r
5986   SVG_ANGLETYPE_GRAD: number;\r
5989 interface HTMLButtonElement extends HTMLElement, MSDataBindingExtensions {\r
5990   /**\r
5991    * Sets or retrieves the default or selected value of the control.\r
5992    */\r
5993   value: string;\r
5994   status: any;\r
5995   /**\r
5996    * Retrieves a reference to the form that the object is embedded in.\r
5997    */\r
5998   form: HTMLFormElement;\r
5999   /**\r
6000    * Sets or retrieves the name of the object.\r
6001    */\r
6002   name: string;\r
6003   /**\r
6004    * Gets the classification and default behavior of the button.\r
6005    */\r
6006   type: string;\r
6007   /**\r
6008    * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.\r
6009    */\r
6010   validationMessage: string;\r
6011   /**\r
6012    * Overrides the target attribute on a form element.\r
6013    */\r
6014   formTarget: string;\r
6015   /**\r
6016    * Returns whether an element will successfully validate based on forms validation rules and constraints.\r
6017    */\r
6018   willValidate: boolean;\r
6019   /**\r
6020    * Overrides the action attribute (where the data on a form is sent) on the parent form element.\r
6021    */\r
6022   formAction: string;\r
6023   /**\r
6024    * Provides a way to direct a user to a specific field when a document loads. This can provide both direction and convenience for a user, reducing the need to click or tab to a field when a page opens. This attribute is true when present on an element, and false when missing.\r
6025    */\r
6026   autofocus: boolean;\r
6027   /**\r
6028    * Returns a  ValidityState object that represents the validity states of an element.\r
6029    */\r
6030   validity: ValidityState;\r
6031   /**\r
6032    * Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a "save draft"-type submit option.\r
6033    */\r
6034   formNoValidate: string;\r
6035   /**\r
6036    * Used to override the encoding (formEnctype attribute) specified on the form element.\r
6037    */\r
6038   formEnctype: string;\r
6039   /**\r
6040    * Overrides the submit method attribute previously specified on a form element.\r
6041    */\r
6042   formMethod: string;\r
6043   /**\r
6044    * Creates a TextRange object for the element.\r
6045    */\r
6046   createTextRange(): TextRange;\r
6047   /**\r
6048    * Returns whether a form will validate when it is submitted, without having to submit it.\r
6049    */\r
6050   checkValidity(): boolean;\r
6051   /**\r
6052    * Sets a custom error message that is displayed when a form is submitted.\r
6053    * @param error Sets a custom error message that is displayed when a form is submitted.\r
6054    */\r
6055   setCustomValidity(error: string): void;\r
6057 declare var HTMLButtonElement: {\r
6058   prototype: HTMLButtonElement;\r
6059   new(): HTMLButtonElement;\r
6062 interface HTMLSourceElement extends HTMLElement {\r
6063   /**\r
6064    * The address or URL of the a media resource that is to be considered.\r
6065    */\r
6066   src: string;\r
6067   /**\r
6068    * Gets or sets the intended media type of the media source.\r
6069    */\r
6070   media: string;\r
6071   /**\r
6072    * Gets or sets the MIME type of a media resource.\r
6073    */\r
6074   type: string;\r
6075   msKeySystem: string;\r
6077 declare var HTMLSourceElement: {\r
6078   prototype: HTMLSourceElement;\r
6079   new(): HTMLSourceElement;\r
6082 interface CanvasGradient {\r
6083   addColorStop(offset: number, color: string): void;\r
6085 declare var CanvasGradient: {\r
6086   prototype: CanvasGradient;\r
6087   new(): CanvasGradient;\r
6090 interface KeyboardEvent extends UIEvent {\r
6091   location: number;\r
6092   keyCode: number;\r
6093   shiftKey: boolean;\r
6094   which: number;\r
6095   locale: string;\r
6096   key: string;\r
6097   altKey: boolean;\r
6098   metaKey: boolean;\r
6099   char: string;\r
6100   ctrlKey: boolean;\r
6101   repeat: boolean;\r
6102   charCode: number;\r
6103   getModifierState(keyArg: string): boolean;\r
6104   initKeyboardEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, keyArg: string, locationArg: number, modifiersListArg: string, repeat: boolean, locale: string): void;\r
6105   DOM_KEY_LOCATION_RIGHT: number;\r
6106   DOM_KEY_LOCATION_STANDARD: number;\r
6107   DOM_KEY_LOCATION_LEFT: number;\r
6108   DOM_KEY_LOCATION_NUMPAD: number;\r
6109   DOM_KEY_LOCATION_JOYSTICK: number;\r
6110   DOM_KEY_LOCATION_MOBILE: number;\r
6112 declare var KeyboardEvent: {\r
6113   prototype: KeyboardEvent;\r
6114   new(): KeyboardEvent;\r
6115   DOM_KEY_LOCATION_RIGHT: number;\r
6116   DOM_KEY_LOCATION_STANDARD: number;\r
6117   DOM_KEY_LOCATION_LEFT: number;\r
6118   DOM_KEY_LOCATION_NUMPAD: number;\r
6119   DOM_KEY_LOCATION_JOYSTICK: number;\r
6120   DOM_KEY_LOCATION_MOBILE: number;\r
6123 interface MessageEvent extends Event {\r
6124   source: Window;\r
6125   origin: string;\r
6126   data: any;\r
6127   ports: any;\r
6128   initMessageEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, dataArg: any, originArg: string, lastEventIdArg: string, sourceArg: Window): void;\r
6130 declare var MessageEvent: {\r
6131   prototype: MessageEvent;\r
6132   new(): MessageEvent;\r
6135 interface SVGElement extends Element {\r
6136   onmouseover: (ev: MouseEvent) => any;\r
6137   viewportElement: SVGElement;\r
6138   onmousemove: (ev: MouseEvent) => any;\r
6139   onmouseout: (ev: MouseEvent) => any;\r
6140   ondblclick: (ev: MouseEvent) => any;\r
6141   onfocusout: (ev: FocusEvent) => any;\r
6142   onfocusin: (ev: FocusEvent) => any;\r
6143   xmlbase: string;\r
6144   onmousedown: (ev: MouseEvent) => any;\r
6145   onload: (ev: Event) => any;\r
6146   onmouseup: (ev: MouseEvent) => any;\r
6147   onclick: (ev: MouseEvent) => any;\r
6148   ownerSVGElement: SVGSVGElement;\r
6149   id: string;\r
6150   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6151   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6152   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6153   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6154   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6155   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6156   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6157   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6158   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
6159   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
6160   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
6161   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
6162   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
6163   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
6164   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
6165   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
6166   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
6167   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
6168   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
6169   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
6170   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
6171   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
6172   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
6173   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
6174   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6175   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
6176   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6177   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
6178   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6179   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6180   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6181   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6182   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6183   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6184   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6185   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6186   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6187   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6188   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
6190 declare var SVGElement: {\r
6191   prototype: SVGElement;\r
6192   new(): SVGElement;\r
6195 interface HTMLScriptElement extends HTMLElement {\r
6196   /**\r
6197    * Sets or retrieves the status of the script.\r
6198    */\r
6199   defer: boolean;\r
6200   /**\r
6201    * Retrieves or sets the text of the object as a string.\r
6202    */\r
6203   text: string;\r
6204   /**\r
6205    * Retrieves the URL to an external file that contains the source code or data.\r
6206    */\r
6207   src: string;\r
6208   /**\r
6209    * Sets or retrieves the object that is bound to the event script.\r
6210    */\r
6211   htmlFor: string;\r
6212   /**\r
6213    * Sets or retrieves the character set used to encode the object.\r
6214    */\r
6215   charset: string;\r
6216   /**\r
6217    * Sets or retrieves the MIME type for the associated scripting engine.\r
6218    */\r
6219   type: string;\r
6220   /**\r
6221    * Sets or retrieves the event for which the script is written.\r
6222    */\r
6223   event: string;\r
6224   async: boolean;\r
6226 declare var HTMLScriptElement: {\r
6227   prototype: HTMLScriptElement;\r
6228   new(): HTMLScriptElement;\r
6231 interface HTMLTableRowElement extends HTMLElement, HTMLTableAlignment, DOML2DeprecatedBackgroundColorStyle {\r
6232   /**\r
6233    * Retrieves the position of the object in the rows collection for the table.\r
6234    */\r
6235   rowIndex: number;\r
6236   /**\r
6237    * Retrieves a collection of all cells in the table row.\r
6238    */\r
6239   cells: HTMLCollection;\r
6240   /**\r
6241    * Sets or retrieves how the object is aligned with adjacent text.\r
6242    */\r
6243   align: string;\r
6244   /**\r
6245    * Sets or retrieves the color for one of the two colors used to draw the 3-D border of the object.\r
6246    */\r
6247   borderColorLight: any;\r
6248   /**\r
6249    * Retrieves the position of the object in the collection.\r
6250    */\r
6251   sectionRowIndex: number;\r
6252   /**\r
6253    * Sets or retrieves the border color of the object.\r
6254    */\r
6255   borderColor: any;\r
6256   /**\r
6257    * Sets or retrieves the height of the object.\r
6258    */\r
6259   height: any;\r
6260   /**\r
6261    * Sets or retrieves the color for one of the two colors used to draw the 3-D border of the object.\r
6262    */\r
6263   borderColorDark: any;\r
6264   /**\r
6265    * Removes the specified cell from the table row, as well as from the cells collection.\r
6266    * @param index Number that specifies the zero-based position of the cell to remove from the table row. If no value is provided, the last cell in the cells collection is deleted.\r
6267    */\r
6268   deleteCell(index?: number): void;\r
6269   /**\r
6270    * Creates a new cell in the table row, and adds the cell to the cells collection.\r
6271    * @param index Number that specifies where to insert the cell in the tr. The default value is -1, which appends the new cell to the end of the cells collection.\r
6272    */\r
6273   insertCell(index?: number): HTMLElement;\r
6275 declare var HTMLTableRowElement: {\r
6276   prototype: HTMLTableRowElement;\r
6277   new(): HTMLTableRowElement;\r
6280 interface CanvasRenderingContext2D {\r
6281   miterLimit: number;\r
6282   font: string;\r
6283   globalCompositeOperation: string;\r
6284   msFillRule: string;\r
6285   lineCap: string;\r
6286   msImageSmoothingEnabled: boolean;\r
6287   lineDashOffset: number;\r
6288   shadowColor: string;\r
6289   lineJoin: string;\r
6290   shadowOffsetX: number;\r
6291   lineWidth: number;\r
6292   canvas: HTMLCanvasElement;\r
6293   strokeStyle: any;\r
6294   globalAlpha: number;\r
6295   shadowOffsetY: number;\r
6296   fillStyle: any;\r
6297   shadowBlur: number;\r
6298   textAlign: string;\r
6299   textBaseline: string;\r
6300   restore(): void;\r
6301   setTransform(m11: number, m12: number, m21: number, m22: number, dx: number, dy: number): void;\r
6302   save(): void;\r
6303   arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, anticlockwise?: boolean): void;\r
6304   measureText(text: string): TextMetrics;\r
6305   isPointInPath(x: number, y: number, fillRule?: string): boolean;\r
6306   quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;\r
6307   putImageData(imagedata: ImageData, dx: number, dy: number, dirtyX?: number, dirtyY?: number, dirtyWidth?: number, dirtyHeight?: number): void;\r
6308   rotate(angle: number): void;\r
6309   fillText(text: string, x: number, y: number, maxWidth?: number): void;\r
6310   translate(x: number, y: number): void;\r
6311   scale(x: number, y: number): void;\r
6312   createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;\r
6313   lineTo(x: number, y: number): void;\r
6314   getLineDash(): number[];\r
6315   fill(fillRule?: string): void;\r
6316   createImageData(imageDataOrSw: any, sh?: number): ImageData;\r
6317   createPattern(image: HTMLElement, repetition: string): CanvasPattern;\r
6318   closePath(): void;\r
6319   rect(x: number, y: number, w: number, h: number): void;\r
6320   clip(fillRule?: string): void;\r
6321   clearRect(x: number, y: number, w: number, h: number): void;\r
6322   moveTo(x: number, y: number): void;\r
6323   getImageData(sx: number, sy: number, sw: number, sh: number): ImageData;\r
6324   fillRect(x: number, y: number, w: number, h: number): void;\r
6325   bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;\r
6326   drawImage(image: HTMLElement, offsetX: number, offsetY: number, width?: number, height?: number, canvasOffsetX?: number, canvasOffsetY?: number, canvasImageWidth?: number, canvasImageHeight?: number): void;\r
6327   transform(m11: number, m12: number, m21: number, m22: number, dx: number, dy: number): void;\r
6328   stroke(): void;\r
6329   strokeRect(x: number, y: number, w: number, h: number): void;\r
6330   setLineDash(segments: number[]): void;\r
6331   strokeText(text: string, x: number, y: number, maxWidth?: number): void;\r
6332   beginPath(): void;\r
6333   arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;\r
6334   createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;\r
6336 declare var CanvasRenderingContext2D: {\r
6337   prototype: CanvasRenderingContext2D;\r
6338   new(): CanvasRenderingContext2D;\r
6341 interface MSCSSRuleList {\r
6342   length: number;\r
6343   item(index?: number): CSSStyleRule;\r
6344   [index: number]: CSSStyleRule;\r
6346 declare var MSCSSRuleList: {\r
6347   prototype: MSCSSRuleList;\r
6348   new(): MSCSSRuleList;\r
6351 interface SVGPathSegLinetoHorizontalAbs extends SVGPathSeg {\r
6352   x: number;\r
6354 declare var SVGPathSegLinetoHorizontalAbs: {\r
6355   prototype: SVGPathSegLinetoHorizontalAbs;\r
6356   new(): SVGPathSegLinetoHorizontalAbs;\r
6359 interface SVGPathSegArcAbs extends SVGPathSeg {\r
6360   y: number;\r
6361   sweepFlag: boolean;\r
6362   r2: number;\r
6363   x: number;\r
6364   angle: number;\r
6365   r1: number;\r
6366   largeArcFlag: boolean;\r
6368 declare var SVGPathSegArcAbs: {\r
6369   prototype: SVGPathSegArcAbs;\r
6370   new(): SVGPathSegArcAbs;\r
6373 interface SVGTransformList {\r
6374   numberOfItems: number;\r
6375   getItem(index: number): SVGTransform;\r
6376   consolidate(): SVGTransform;\r
6377   clear(): void;\r
6378   appendItem(newItem: SVGTransform): SVGTransform;\r
6379   initialize(newItem: SVGTransform): SVGTransform;\r
6380   removeItem(index: number): SVGTransform;\r
6381   insertItemBefore(newItem: SVGTransform, index: number): SVGTransform;\r
6382   replaceItem(newItem: SVGTransform, index: number): SVGTransform;\r
6383   createSVGTransformFromMatrix(matrix: SVGMatrix): SVGTransform;\r
6385 declare var SVGTransformList: {\r
6386   prototype: SVGTransformList;\r
6387   new(): SVGTransformList;\r
6390 interface HTMLHtmlElement extends HTMLElement {\r
6391   /**\r
6392    * Sets or retrieves the DTD version that governs the current document.\r
6393    */\r
6394   version: string;\r
6396 declare var HTMLHtmlElement: {\r
6397   prototype: HTMLHtmlElement;\r
6398   new(): HTMLHtmlElement;\r
6401 interface SVGPathSegClosePath extends SVGPathSeg {\r
6403 declare var SVGPathSegClosePath: {\r
6404   prototype: SVGPathSegClosePath;\r
6405   new(): SVGPathSegClosePath;\r
6408 interface HTMLFrameElement extends HTMLElement, GetSVGDocument, MSDataBindingExtensions {\r
6409   /**\r
6410    * Sets or retrieves the width of the object.\r
6411    */\r
6412   width: any;\r
6413   /**\r
6414    * Sets or retrieves whether the frame can be scrolled.\r
6415    */\r
6416   scrolling: string;\r
6417   /**\r
6418    * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.\r
6419    */\r
6420   marginHeight: string;\r
6421   /**\r
6422    * Sets or retrieves the left and right margin widths before displaying the text in a frame.\r
6423    */\r
6424   marginWidth: string;\r
6425   /**\r
6426    * Sets or retrieves the border color of the object.\r
6427    */\r
6428   borderColor: any;\r
6429   /**\r
6430    * Sets or retrieves the amount of additional space between the frames.\r
6431    */\r
6432   frameSpacing: any;\r
6433   /**\r
6434    * Sets or retrieves whether to display a border for the frame.\r
6435    */\r
6436   frameBorder: string;\r
6437   /**\r
6438    * Sets or retrieves whether the user can resize the frame.\r
6439    */\r
6440   noResize: boolean;\r
6441   /**\r
6442    * Retrieves the object of the specified.\r
6443    */\r
6444   contentWindow: Window;\r
6445   /**\r
6446    * Sets or retrieves a URL to be loaded by the object.\r
6447    */\r
6448   src: string;\r
6449   /**\r
6450    * Sets or retrieves the frame name.\r
6451    */\r
6452   name: string;\r
6453   /**\r
6454    * Sets or retrieves the height of the object.\r
6455    */\r
6456   height: any;\r
6457   /**\r
6458    * Retrieves the document object of the page or frame.\r
6459    */\r
6460   contentDocument: Document;\r
6461   /**\r
6462    * Specifies the properties of a border drawn around an object.\r
6463    */\r
6464   border: string;\r
6465   /**\r
6466    * Sets or retrieves a URI to a long description of the object.\r
6467    */\r
6468   longDesc: string;\r
6469   /**\r
6470    * Raised when the object has been completely received from the server.\r
6471    */\r
6472   onload: (ev: Event) => any;\r
6473   /**\r
6474    * Sets the value indicating whether the source file of a frame or iframe has specific security restrictions applied.\r
6475    */\r
6476   security: any;\r
6477   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6478   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6479   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6480   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6481   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6482   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6483   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6484   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6485   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
6486   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
6487   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
6488   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
6489   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
6490   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
6491   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
6492   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
6493   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
6494   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
6495   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
6496   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
6497   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
6498   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
6499   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
6500   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
6501   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6502   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
6503   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6504   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
6505   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6506   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6507   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
6508   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6509   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
6510   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6511   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6512   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6513   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6514   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6515   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6516   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6517   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6518   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6519   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6520   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6521   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6522   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6523   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6524   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6525   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6526   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6527   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6528   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6529   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6530   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6531   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6532   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6533   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6534   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6535   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6536   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6537   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6538   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6539   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
6540   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6541   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6542   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6543   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6544   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6545   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6546   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6547   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6548   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6549   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6550   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6551   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6552   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6553   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6554   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6555   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6556   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6557   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6558   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6559   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6560   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6561   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6562   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6563   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6564   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
6565   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6566   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6567   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6568   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6569   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
6570   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6571   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6572   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6573   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6574   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6575   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6576   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6577   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
6578   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6579   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6580   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6581   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6582   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6583   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6584   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6585   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6586   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6587   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6588   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6589   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6590   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6591   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6592   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6593   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6594   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6595   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6596   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6597   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
6598   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
6600 declare var HTMLFrameElement: {\r
6601   prototype: HTMLFrameElement;\r
6602   new(): HTMLFrameElement;\r
6605 interface SVGAnimatedLength {\r
6606   animVal: SVGLength;\r
6607   baseVal: SVGLength;\r
6609 declare var SVGAnimatedLength: {\r
6610   prototype: SVGAnimatedLength;\r
6611   new(): SVGAnimatedLength;\r
6614 interface SVGAnimatedPoints {\r
6615   points: SVGPointList;\r
6616   animatedPoints: SVGPointList;\r
6619 interface SVGDefsElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
6621 declare var SVGDefsElement: {\r
6622   prototype: SVGDefsElement;\r
6623   new(): SVGDefsElement;\r
6626 interface HTMLQuoteElement extends HTMLElement {\r
6627   /**\r
6628    * Sets or retrieves the date and time of a modification to the object.\r
6629    */\r
6630   dateTime: string;\r
6631   /**\r
6632    * Sets or retrieves reference information about the object.\r
6633    */\r
6634   cite: string;\r
6636 declare var HTMLQuoteElement: {\r
6637   prototype: HTMLQuoteElement;\r
6638   new(): HTMLQuoteElement;\r
6641 interface CSSMediaRule extends CSSRule {\r
6642   media: MediaList;\r
6643   cssRules: CSSRuleList;\r
6644   insertRule(rule: string, index?: number): number;\r
6645   deleteRule(index?: number): void;\r
6647 declare var CSSMediaRule: {\r
6648   prototype: CSSMediaRule;\r
6649   new(): CSSMediaRule;\r
6652 interface WindowModal {\r
6653   dialogArguments: any;\r
6654   returnValue: any;\r
6657 interface XMLHttpRequest extends EventTarget {\r
6658   responseBody: any;\r
6659   status: number;\r
6660   readyState: number;\r
6661   responseText: string;\r
6662   responseXML: any;\r
6663   ontimeout: (ev: Event) => any;\r
6664   statusText: string;\r
6665   onreadystatechange: (ev: Event) => any;\r
6666   timeout: number;\r
6667   onload: (ev: Event) => any;\r
6668   response: any;\r
6669   withCredentials: boolean;\r
6670   onprogress: (ev: ProgressEvent) => any;\r
6671   onabort: (ev: UIEvent) => any;\r
6672   responseType: string;\r
6673   onloadend: (ev: ProgressEvent) => any;\r
6674   upload: XMLHttpRequestEventTarget;\r
6675   onerror: (ev: ErrorEvent) => any;\r
6676   onloadstart: (ev: Event) => any;\r
6677   msCaching: string;\r
6678   open(method: string, url: string, async?: boolean, user?: string, password?: string): void;\r
6679   send(data?: any): void;\r
6680   abort(): void;\r
6681   getAllResponseHeaders(): string;\r
6682   setRequestHeader(header: string, value: string): void;\r
6683   getResponseHeader(header: string): string;\r
6684   msCachingEnabled(): boolean;\r
6685   overrideMimeType(mime: string): void;\r
6686   LOADING: number;\r
6687   DONE: number;\r
6688   UNSENT: number;\r
6689   OPENED: number;\r
6690   HEADERS_RECEIVED: number;\r
6691   addEventListener(type: "timeout", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6692   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6693   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6694   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
6695   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6696   addEventListener(type: "loadend", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
6697   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
6698   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6699   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
6701 declare var XMLHttpRequest: {\r
6702   prototype: XMLHttpRequest;\r
6703   new(): XMLHttpRequest;\r
6704   LOADING: number;\r
6705   DONE: number;\r
6706   UNSENT: number;\r
6707   OPENED: number;\r
6708   HEADERS_RECEIVED: number;\r
6709   create(): XMLHttpRequest;\r
6712 interface HTMLTableHeaderCellElement extends HTMLTableCellElement {\r
6713   /**\r
6714    * Sets or retrieves the group of cells in a table to which the object's information applies.\r
6715    */\r
6716   scope: string;\r
6718 declare var HTMLTableHeaderCellElement: {\r
6719   prototype: HTMLTableHeaderCellElement;\r
6720   new(): HTMLTableHeaderCellElement;\r
6723 interface HTMLDListElement extends HTMLElement, DOML2DeprecatedListSpaceReduction {\r
6725 declare var HTMLDListElement: {\r
6726   prototype: HTMLDListElement;\r
6727   new(): HTMLDListElement;\r
6730 interface MSDataBindingExtensions {\r
6731   dataSrc: string;\r
6732   dataFormatAs: string;\r
6733   dataFld: string;\r
6736 interface SVGPathSegLinetoHorizontalRel extends SVGPathSeg {\r
6737   x: number;\r
6739 declare var SVGPathSegLinetoHorizontalRel: {\r
6740   prototype: SVGPathSegLinetoHorizontalRel;\r
6741   new(): SVGPathSegLinetoHorizontalRel;\r
6744 interface SVGEllipseElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
6745   ry: SVGAnimatedLength;\r
6746   cx: SVGAnimatedLength;\r
6747   rx: SVGAnimatedLength;\r
6748   cy: SVGAnimatedLength;\r
6750 declare var SVGEllipseElement: {\r
6751   prototype: SVGEllipseElement;\r
6752   new(): SVGEllipseElement;\r
6755 interface SVGAElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired, SVGURIReference {\r
6756   target: SVGAnimatedString;\r
6758 declare var SVGAElement: {\r
6759   prototype: SVGAElement;\r
6760   new(): SVGAElement;\r
6763 interface SVGStylable {\r
6764   className: SVGAnimatedString;\r
6765   style: CSSStyleDeclaration;\r
6768 interface SVGTransformable extends SVGLocatable {\r
6769   transform: SVGAnimatedTransformList;\r
6772 interface HTMLFrameSetElement extends HTMLElement {\r
6773   ononline: (ev: Event) => any;\r
6774   /**\r
6775    * Sets or retrieves the border color of the object.\r
6776    */\r
6777   borderColor: any;\r
6778   /**\r
6779    * Sets or retrieves the frame heights of the object.\r
6780    */\r
6781   rows: string;\r
6782   /**\r
6783    * Sets or retrieves the frame widths of the object.\r
6784    */\r
6785   cols: string;\r
6786   /**\r
6787    * Fires when the object loses the input focus.\r
6788    */\r
6789   onblur: (ev: FocusEvent) => any;\r
6790   /**\r
6791    * Sets or retrieves the amount of additional space between the frames.\r
6792    */\r
6793   frameSpacing: any;\r
6794   /**\r
6795    * Fires when the object receives focus.\r
6796    */\r
6797   onfocus: (ev: FocusEvent) => any;\r
6798   onmessage: (ev: MessageEvent) => any;\r
6799   onerror: (ev: ErrorEvent) => any;\r
6800   /**\r
6801    * Sets or retrieves whether to display a border for the frame.\r
6802    */\r
6803   frameBorder: string;\r
6804   onresize: (ev: UIEvent) => any;\r
6805   name: string;\r
6806   onafterprint: (ev: Event) => any;\r
6807   onbeforeprint: (ev: Event) => any;\r
6808   onoffline: (ev: Event) => any;\r
6809   border: string;\r
6810   onunload: (ev: Event) => any;\r
6811   onhashchange: (ev: Event) => any;\r
6812   onload: (ev: Event) => any;\r
6813   onbeforeunload: (ev: BeforeUnloadEvent) => any;\r
6814   onstorage: (ev: StorageEvent) => any;\r
6815   onpageshow: (ev: PageTransitionEvent) => any;\r
6816   onpagehide: (ev: PageTransitionEvent) => any;\r
6817   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6818   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6819   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6820   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6821   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6822   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6823   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6824   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6825   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
6826   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
6827   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
6828   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
6829   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
6830   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
6831   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
6832   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
6833   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
6834   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
6835   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
6836   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
6837   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
6838   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
6839   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
6840   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
6841   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6842   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
6843   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
6844   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
6845   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6846   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6847   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
6848   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6849   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
6850   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6851   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6852   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6853   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6854   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6855   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6856   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6857   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6858   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6859   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6860   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6861   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6862   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6863   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6864   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6865   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6866   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6867   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6868   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6869   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6870   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6871   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6872   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6873   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6874   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6875   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6876   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6877   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6878   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6879   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
6880   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6881   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6882   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6883   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6884   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6885   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6886   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6887   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6888   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6889   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6890   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6891   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6892   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6893   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6894   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6895   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6896   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6897   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6898   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6899   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6900   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6901   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6902   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6903   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6904   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
6905   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6906   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
6907   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6908   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6909   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
6910   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6911   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6912   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6913   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6914   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6915   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6916   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6917   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
6918   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6919   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6920   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6921   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6922   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6923   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
6924   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6925   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6926   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6927   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6928   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6929   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
6930   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6931   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
6932   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6933   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6934   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6935   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
6936   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6937   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
6938   addEventListener(type: "online", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6939   addEventListener(type: "message", listener: (ev: MessageEvent) => any, useCapture?: boolean): void;\r
6940   addEventListener(type: "afterprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6941   addEventListener(type: "beforeprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6942   addEventListener(type: "offline", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6943   addEventListener(type: "unload", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6944   addEventListener(type: "hashchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
6945   addEventListener(type: "beforeunload", listener: (ev: BeforeUnloadEvent) => any, useCapture?: boolean): void;\r
6946   addEventListener(type: "storage", listener: (ev: StorageEvent) => any, useCapture?: boolean): void;\r
6947   addEventListener(type: "pageshow", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
6948   addEventListener(type: "pagehide", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
6949   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
6951 declare var HTMLFrameSetElement: {\r
6952   prototype: HTMLFrameSetElement;\r
6953   new(): HTMLFrameSetElement;\r
6956 interface Screen extends EventTarget {\r
6957   width: number;\r
6958   deviceXDPI: number;\r
6959   fontSmoothingEnabled: boolean;\r
6960   bufferDepth: number;\r
6961   logicalXDPI: number;\r
6962   systemXDPI: number;\r
6963   availHeight: number;\r
6964   height: number;\r
6965   logicalYDPI: number;\r
6966   systemYDPI: number;\r
6967   updateInterval: number;\r
6968   colorDepth: number;\r
6969   availWidth: number;\r
6970   deviceYDPI: number;\r
6971   pixelDepth: number;\r
6972   msOrientation: string;\r
6973   onmsorientationchange: (ev: any) => any;\r
6974   msLockOrientation(orientation: string): boolean;\r
6975   msLockOrientation(orientations: string[]): boolean;\r
6976   msUnlockOrientation(): void;\r
6977   addEventListener(type: "msorientationchange", listener: (ev: any) => any, useCapture?: boolean): void;\r
6978   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
6980 declare var Screen: {\r
6981   prototype: Screen;\r
6982   new(): Screen;\r
6985 interface Coordinates {\r
6986   altitudeAccuracy: number;\r
6987   longitude: number;\r
6988   latitude: number;\r
6989   speed: number;\r
6990   heading: number;\r
6991   altitude: number;\r
6992   accuracy: number;\r
6994 declare var Coordinates: {\r
6995   prototype: Coordinates;\r
6996   new(): Coordinates;\r
6999 interface NavigatorGeolocation {\r
7000   geolocation: Geolocation;\r
7003 interface NavigatorContentUtils {\r
7006 interface EventListener {\r
7007   (evt: Event): void;\r
7010 interface SVGLangSpace {\r
7011   xmllang: string;\r
7012   xmlspace: string;\r
7015 interface DataTransfer {\r
7016   effectAllowed: string;\r
7017   dropEffect: string;\r
7018   types: DOMStringList;\r
7019   files: FileList;\r
7020   clearData(format?: string): boolean;\r
7021   setData(format: string, data: string): boolean;\r
7022   getData(format: string): string;\r
7024 declare var DataTransfer: {\r
7025   prototype: DataTransfer;\r
7026   new(): DataTransfer;\r
7029 interface FocusEvent extends UIEvent {\r
7030   relatedTarget: EventTarget;\r
7031   initFocusEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, relatedTargetArg: EventTarget): void;\r
7033 declare var FocusEvent: {\r
7034   prototype: FocusEvent;\r
7035   new(): FocusEvent;\r
7038 interface Range {\r
7039   startOffset: number;\r
7040   collapsed: boolean;\r
7041   endOffset: number;\r
7042   startContainer: Node;\r
7043   endContainer: Node;\r
7044   commonAncestorContainer: Node;\r
7045   setStart(refNode: Node, offset: number): void;\r
7046   setEndBefore(refNode: Node): void;\r
7047   setStartBefore(refNode: Node): void;\r
7048   selectNode(refNode: Node): void;\r
7049   detach(): void;\r
7050   getBoundingClientRect(): ClientRect;\r
7051   toString(): string;\r
7052   compareBoundaryPoints(how: number, sourceRange: Range): number;\r
7053   insertNode(newNode: Node): void;\r
7054   collapse(toStart: boolean): void;\r
7055   selectNodeContents(refNode: Node): void;\r
7056   cloneContents(): DocumentFragment;\r
7057   setEnd(refNode: Node, offset: number): void;\r
7058   cloneRange(): Range;\r
7059   getClientRects(): ClientRectList;\r
7060   surroundContents(newParent: Node): void;\r
7061   deleteContents(): void;\r
7062   setStartAfter(refNode: Node): void;\r
7063   extractContents(): DocumentFragment;\r
7064   setEndAfter(refNode: Node): void;\r
7065   createContextualFragment(fragment: string): DocumentFragment;\r
7066   END_TO_END: number;\r
7067   START_TO_START: number;\r
7068   START_TO_END: number;\r
7069   END_TO_START: number;\r
7071 declare var Range: {\r
7072   prototype: Range;\r
7073   new(): Range;\r
7074   END_TO_END: number;\r
7075   START_TO_START: number;\r
7076   START_TO_END: number;\r
7077   END_TO_START: number;\r
7080 interface SVGPoint {\r
7081   y: number;\r
7082   x: number;\r
7083   matrixTransform(matrix: SVGMatrix): SVGPoint;\r
7085 declare var SVGPoint: {\r
7086   prototype: SVGPoint;\r
7087   new(): SVGPoint;\r
7090 interface MSPluginsCollection {\r
7091   length: number;\r
7092   refresh(reload?: boolean): void;\r
7094 declare var MSPluginsCollection: {\r
7095   prototype: MSPluginsCollection;\r
7096   new(): MSPluginsCollection;\r
7099 interface SVGAnimatedNumberList {\r
7100   animVal: SVGNumberList;\r
7101   baseVal: SVGNumberList;\r
7103 declare var SVGAnimatedNumberList: {\r
7104   prototype: SVGAnimatedNumberList;\r
7105   new(): SVGAnimatedNumberList;\r
7108 interface SVGSVGElement extends SVGElement, SVGStylable, SVGZoomAndPan, DocumentEvent, SVGLangSpace, SVGLocatable, SVGTests, SVGFitToViewBox, SVGExternalResourcesRequired {\r
7109   width: SVGAnimatedLength;\r
7110   x: SVGAnimatedLength;\r
7111   contentStyleType: string;\r
7112   onzoom: (ev: any) => any;\r
7113   y: SVGAnimatedLength;\r
7114   viewport: SVGRect;\r
7115   onerror: (ev: ErrorEvent) => any;\r
7116   pixelUnitToMillimeterY: number;\r
7117   onresize: (ev: UIEvent) => any;\r
7118   screenPixelToMillimeterY: number;\r
7119   height: SVGAnimatedLength;\r
7120   onabort: (ev: UIEvent) => any;\r
7121   contentScriptType: string;\r
7122   pixelUnitToMillimeterX: number;\r
7123   currentTranslate: SVGPoint;\r
7124   onunload: (ev: Event) => any;\r
7125   currentScale: number;\r
7126   onscroll: (ev: UIEvent) => any;\r
7127   screenPixelToMillimeterX: number;\r
7128   setCurrentTime(seconds: number): void;\r
7129   createSVGLength(): SVGLength;\r
7130   getIntersectionList(rect: SVGRect, referenceElement: SVGElement): NodeList;\r
7131   unpauseAnimations(): void;\r
7132   createSVGRect(): SVGRect;\r
7133   checkIntersection(element: SVGElement, rect: SVGRect): boolean;\r
7134   unsuspendRedrawAll(): void;\r
7135   pauseAnimations(): void;\r
7136   suspendRedraw(maxWaitMilliseconds: number): number;\r
7137   deselectAll(): void;\r
7138   createSVGAngle(): SVGAngle;\r
7139   getEnclosureList(rect: SVGRect, referenceElement: SVGElement): NodeList;\r
7140   createSVGTransform(): SVGTransform;\r
7141   unsuspendRedraw(suspendHandleID: number): void;\r
7142   forceRedraw(): void;\r
7143   getCurrentTime(): number;\r
7144   checkEnclosure(element: SVGElement, rect: SVGRect): boolean;\r
7145   createSVGMatrix(): SVGMatrix;\r
7146   createSVGPoint(): SVGPoint;\r
7147   createSVGNumber(): SVGNumber;\r
7148   createSVGTransformFromMatrix(matrix: SVGMatrix): SVGTransform;\r
7149   getComputedStyle(elt: Element, pseudoElt?: string): CSSStyleDeclaration;\r
7150   getElementById(elementId: string): Element;\r
7151   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7152   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7153   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7154   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7155   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7156   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7157   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7158   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7159   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
7160   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
7161   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
7162   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
7163   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
7164   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
7165   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
7166   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
7167   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
7168   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
7169   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
7170   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
7171   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
7172   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
7173   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
7174   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
7175   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7176   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
7177   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7178   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
7179   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7180   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7181   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7182   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7183   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7184   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7185   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7186   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7187   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7188   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7189   addEventListener(type: "zoom", listener: (ev: any) => any, useCapture?: boolean): void;\r
7190   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
7191   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7192   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7193   addEventListener(type: "unload", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7194   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7195   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
7197 declare var SVGSVGElement: {\r
7198   prototype: SVGSVGElement;\r
7199   new(): SVGSVGElement;\r
7202 interface HTMLLabelElement extends HTMLElement, MSDataBindingExtensions {\r
7203   /**\r
7204    * Sets or retrieves the object to which the given label object is assigned.\r
7205    */\r
7206   htmlFor: string;\r
7207   /**\r
7208    * Retrieves a reference to the form that the object is embedded in.\r
7209    */\r
7210   form: HTMLFormElement;\r
7212 declare var HTMLLabelElement: {\r
7213   prototype: HTMLLabelElement;\r
7214   new(): HTMLLabelElement;\r
7217 interface MSResourceMetadata {\r
7218   protocol: string;\r
7219   fileSize: string;\r
7220   fileUpdatedDate: string;\r
7221   nameProp: string;\r
7222   fileCreatedDate: string;\r
7223   fileModifiedDate: string;\r
7224   mimeType: string;\r
7227 interface HTMLLegendElement extends HTMLElement, MSDataBindingExtensions {\r
7228   /**\r
7229    * Retrieves a reference to the form that the object is embedded in.\r
7230    */\r
7231   align: string;\r
7232   /**\r
7233    * Retrieves a reference to the form that the object is embedded in.\r
7234    */\r
7235   form: HTMLFormElement;\r
7237 declare var HTMLLegendElement: {\r
7238   prototype: HTMLLegendElement;\r
7239   new(): HTMLLegendElement;\r
7242 interface HTMLDirectoryElement extends HTMLElement, DOML2DeprecatedListSpaceReduction, DOML2DeprecatedListNumberingAndBulletStyle {\r
7244 declare var HTMLDirectoryElement: {\r
7245   prototype: HTMLDirectoryElement;\r
7246   new(): HTMLDirectoryElement;\r
7249 interface SVGAnimatedInteger {\r
7250   animVal: number;\r
7251   baseVal: number;\r
7253 declare var SVGAnimatedInteger: {\r
7254   prototype: SVGAnimatedInteger;\r
7255   new(): SVGAnimatedInteger;\r
7258 interface SVGTextElement extends SVGTextPositioningElement, SVGTransformable {\r
7260 declare var SVGTextElement: {\r
7261   prototype: SVGTextElement;\r
7262   new(): SVGTextElement;\r
7265 interface SVGTSpanElement extends SVGTextPositioningElement {\r
7267 declare var SVGTSpanElement: {\r
7268   prototype: SVGTSpanElement;\r
7269   new(): SVGTSpanElement;\r
7272 interface HTMLLIElement extends HTMLElement, DOML2DeprecatedListNumberingAndBulletStyle {\r
7273   /**\r
7274    * Sets or retrieves the value of a list item.\r
7275    */\r
7276   value: number;\r
7278 declare var HTMLLIElement: {\r
7279   prototype: HTMLLIElement;\r
7280   new(): HTMLLIElement;\r
7283 interface SVGPathSegLinetoVerticalAbs extends SVGPathSeg {\r
7284   y: number;\r
7286 declare var SVGPathSegLinetoVerticalAbs: {\r
7287   prototype: SVGPathSegLinetoVerticalAbs;\r
7288   new(): SVGPathSegLinetoVerticalAbs;\r
7291 interface MSStorageExtensions {\r
7292   remainingSpace: number;\r
7295 interface SVGStyleElement extends SVGElement, SVGLangSpace {\r
7296   media: string;\r
7297   type: string;\r
7298   title: string;\r
7300 declare var SVGStyleElement: {\r
7301   prototype: SVGStyleElement;\r
7302   new(): SVGStyleElement;\r
7305 interface MSCurrentStyleCSSProperties extends MSCSSProperties {\r
7306   blockDirection: string;\r
7307   clipBottom: string;\r
7308   clipLeft: string;\r
7309   clipRight: string;\r
7310   clipTop: string;\r
7311   hasLayout: string;\r
7313 declare var MSCurrentStyleCSSProperties: {\r
7314   prototype: MSCurrentStyleCSSProperties;\r
7315   new(): MSCurrentStyleCSSProperties;\r
7318 interface MSHTMLCollectionExtensions {\r
7319   urns(urn: any): any;\r
7320   tags(tagName: any): any;\r
7323 interface Storage extends MSStorageExtensions {\r
7324   length: number;\r
7325   getItem(key: string): any;\r
7326   [key: string]: any;\r
7327   setItem(key: string, data: string): void;\r
7328   clear(): void;\r
7329   removeItem(key: string): void;\r
7330   key(index: number): string;\r
7331   [index: number]: string;\r
7333 declare var Storage: {\r
7334   prototype: Storage;\r
7335   new(): Storage;\r
7338 interface HTMLIFrameElement extends HTMLElement, GetSVGDocument, MSDataBindingExtensions {\r
7339   /**\r
7340    * Sets or retrieves the width of the object.\r
7341    */\r
7342   width: string;\r
7343   /**\r
7344    * Sets or retrieves whether the frame can be scrolled.\r
7345    */\r
7346   scrolling: string;\r
7347   /**\r
7348    * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.\r
7349    */\r
7350   marginHeight: string;\r
7351   /**\r
7352    * Sets or retrieves the left and right margin widths before displaying the text in a frame.\r
7353    */\r
7354   marginWidth: string;\r
7355   /**\r
7356    * Sets or retrieves the amount of additional space between the frames.\r
7357    */\r
7358   frameSpacing: any;\r
7359   /**\r
7360    * Sets or retrieves whether to display a border for the frame.\r
7361    */\r
7362   frameBorder: string;\r
7363   /**\r
7364    * Sets or retrieves whether the user can resize the frame.\r
7365    */\r
7366   noResize: boolean;\r
7367   /**\r
7368    * Sets or retrieves the vertical margin for the object.\r
7369    */\r
7370   vspace: number;\r
7371   /**\r
7372    * Retrieves the object of the specified.\r
7373    */\r
7374   contentWindow: Window;\r
7375   /**\r
7376    * Sets or retrieves how the object is aligned with adjacent text.\r
7377    */\r
7378   align: string;\r
7379   /**\r
7380    * Sets or retrieves a URL to be loaded by the object.\r
7381    */\r
7382   src: string;\r
7383   /**\r
7384    * Sets or retrieves the frame name.\r
7385    */\r
7386   name: string;\r
7387   /**\r
7388    * Sets or retrieves the height of the object.\r
7389    */\r
7390   height: string;\r
7391   /**\r
7392    * Specifies the properties of a border drawn around an object.\r
7393    */\r
7394   border: string;\r
7395   /**\r
7396    * Retrieves the document object of the page or frame.\r
7397    */\r
7398   contentDocument: Document;\r
7399   /**\r
7400    * Sets or retrieves the horizontal margin for the object.\r
7401    */\r
7402   hspace: number;\r
7403   /**\r
7404    * Sets or retrieves a URI to a long description of the object.\r
7405    */\r
7406   longDesc: string;\r
7407   /**\r
7408    * Sets the value indicating whether the source file of a frame or iframe has specific security restrictions applied.\r
7409    */\r
7410   security: any;\r
7411   /**\r
7412    * Raised when the object has been completely received from the server.\r
7413    */\r
7414   onload: (ev: Event) => any;\r
7415   sandbox: DOMSettableTokenList;\r
7416   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7417   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7418   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7419   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7420   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7421   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7422   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7423   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7424   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
7425   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
7426   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
7427   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
7428   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
7429   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
7430   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
7431   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
7432   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
7433   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
7434   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
7435   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
7436   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
7437   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
7438   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
7439   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
7440   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7441   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
7442   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7443   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
7444   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7445   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7446   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
7447   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7448   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
7449   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7450   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7451   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7452   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7453   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7454   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7455   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7456   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7457   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7458   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7459   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7460   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7461   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7462   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7463   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7464   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7465   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7466   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7467   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7468   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7469   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7470   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7471   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7472   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7473   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7474   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7475   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7476   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7477   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7478   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
7479   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7480   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7481   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7482   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7483   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7484   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7485   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7486   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7487   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7488   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7489   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7490   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7491   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7492   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7493   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7494   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7495   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7496   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7497   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7498   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7499   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7500   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7501   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7502   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7503   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
7504   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7505   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7506   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7507   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7508   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
7509   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7510   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7511   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7512   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7513   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7514   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7515   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7516   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
7517   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7518   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7519   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7520   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7521   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7522   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7523   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7524   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7525   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7526   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7527   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7528   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7529   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7530   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7531   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7532   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7533   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7534   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7535   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7536   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
7537   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
7539 declare var HTMLIFrameElement: {\r
7540   prototype: HTMLIFrameElement;\r
7541   new(): HTMLIFrameElement;\r
7544 interface TextRangeCollection {\r
7545   length: number;\r
7546   item(index: number): TextRange;\r
7547   [index: number]: TextRange;\r
7549 declare var TextRangeCollection: {\r
7550   prototype: TextRangeCollection;\r
7551   new(): TextRangeCollection;\r
7554 interface HTMLBodyElement extends HTMLElement, DOML2DeprecatedBackgroundStyle, DOML2DeprecatedBackgroundColorStyle {\r
7555   scroll: string;\r
7556   ononline: (ev: Event) => any;\r
7557   onblur: (ev: FocusEvent) => any;\r
7558   noWrap: boolean;\r
7559   onfocus: (ev: FocusEvent) => any;\r
7560   onmessage: (ev: MessageEvent) => any;\r
7561   text: any;\r
7562   onerror: (ev: ErrorEvent) => any;\r
7563   bgProperties: string;\r
7564   onresize: (ev: UIEvent) => any;\r
7565   link: any;\r
7566   aLink: any;\r
7567   bottomMargin: any;\r
7568   topMargin: any;\r
7569   onafterprint: (ev: Event) => any;\r
7570   vLink: any;\r
7571   onbeforeprint: (ev: Event) => any;\r
7572   onoffline: (ev: Event) => any;\r
7573   onunload: (ev: Event) => any;\r
7574   onhashchange: (ev: Event) => any;\r
7575   onload: (ev: Event) => any;\r
7576   rightMargin: any;\r
7577   onbeforeunload: (ev: BeforeUnloadEvent) => any;\r
7578   leftMargin: any;\r
7579   onstorage: (ev: StorageEvent) => any;\r
7580   onpopstate: (ev: PopStateEvent) => any;\r
7581   onpageshow: (ev: PageTransitionEvent) => any;\r
7582   onpagehide: (ev: PageTransitionEvent) => any;\r
7583   createTextRange(): TextRange;\r
7584   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7585   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7586   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7587   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7588   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7589   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7590   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7591   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7592   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
7593   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
7594   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
7595   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
7596   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
7597   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
7598   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
7599   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
7600   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
7601   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
7602   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
7603   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
7604   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
7605   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
7606   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
7607   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
7608   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7609   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
7610   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
7611   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
7612   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7613   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7614   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
7615   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7616   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
7617   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7618   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7619   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7620   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7621   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7622   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7623   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7624   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7625   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7626   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7627   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7628   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7629   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7630   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7631   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7632   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7633   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7634   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7635   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7636   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7637   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7638   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7639   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7640   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7641   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7642   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7643   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7644   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7645   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7646   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
7647   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7648   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7649   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7650   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7651   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7652   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7653   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7654   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7655   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7656   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7657   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7658   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7659   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7660   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7661   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7662   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7663   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7664   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7665   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7666   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7667   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7668   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7669   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7670   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7671   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
7672   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7673   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
7674   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7675   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7676   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
7677   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7678   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7679   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7680   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7681   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7682   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7683   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7684   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
7685   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7686   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7687   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7688   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7689   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7690   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
7691   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7692   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7693   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7694   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7695   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7696   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
7697   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7698   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
7699   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7700   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7701   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7702   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
7703   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7704   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
7705   addEventListener(type: "online", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7706   addEventListener(type: "message", listener: (ev: MessageEvent) => any, useCapture?: boolean): void;\r
7707   addEventListener(type: "afterprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7708   addEventListener(type: "beforeprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7709   addEventListener(type: "offline", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7710   addEventListener(type: "unload", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7711   addEventListener(type: "hashchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
7712   addEventListener(type: "beforeunload", listener: (ev: BeforeUnloadEvent) => any, useCapture?: boolean): void;\r
7713   addEventListener(type: "storage", listener: (ev: StorageEvent) => any, useCapture?: boolean): void;\r
7714   addEventListener(type: "popstate", listener: (ev: PopStateEvent) => any, useCapture?: boolean): void;\r
7715   addEventListener(type: "pageshow", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
7716   addEventListener(type: "pagehide", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
7717   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
7719 declare var HTMLBodyElement: {\r
7720   prototype: HTMLBodyElement;\r
7721   new(): HTMLBodyElement;\r
7724 interface DocumentType extends Node {\r
7725   name: string;\r
7726   notations: NamedNodeMap;\r
7727   systemId: string;\r
7728   internalSubset: string;\r
7729   entities: NamedNodeMap;\r
7730   publicId: string;\r
7732 declare var DocumentType: {\r
7733   prototype: DocumentType;\r
7734   new(): DocumentType;\r
7737 interface SVGRadialGradientElement extends SVGGradientElement {\r
7738   cx: SVGAnimatedLength;\r
7739   r: SVGAnimatedLength;\r
7740   cy: SVGAnimatedLength;\r
7741   fx: SVGAnimatedLength;\r
7742   fy: SVGAnimatedLength;\r
7744 declare var SVGRadialGradientElement: {\r
7745   prototype: SVGRadialGradientElement;\r
7746   new(): SVGRadialGradientElement;\r
7749 interface MutationEvent extends Event {\r
7750   newValue: string;\r
7751   attrChange: number;\r
7752   attrName: string;\r
7753   prevValue: string;\r
7754   relatedNode: Node;\r
7755   initMutationEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, relatedNodeArg: Node, prevValueArg: string, newValueArg: string, attrNameArg: string, attrChangeArg: number): void;\r
7756   MODIFICATION: number;\r
7757   REMOVAL: number;\r
7758   ADDITION: number;\r
7760 declare var MutationEvent: {\r
7761   prototype: MutationEvent;\r
7762   new(): MutationEvent;\r
7763   MODIFICATION: number;\r
7764   REMOVAL: number;\r
7765   ADDITION: number;\r
7768 interface DragEvent extends MouseEvent {\r
7769   dataTransfer: DataTransfer;\r
7770   initDragEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: EventTarget, dataTransferArg: DataTransfer): void;\r
7771   msConvertURL(file: File, targetType: string, targetURL?: string): void;\r
7773 declare var DragEvent: {\r
7774   prototype: DragEvent;\r
7775   new(): DragEvent;\r
7778 interface HTMLTableSectionElement extends HTMLElement, HTMLTableAlignment, DOML2DeprecatedBackgroundColorStyle {\r
7779   /**\r
7780    * Sets or retrieves a value that indicates the table alignment.\r
7781    */\r
7782   align: string;\r
7783   /**\r
7784    * Sets or retrieves the number of horizontal rows contained in the object.\r
7785    */\r
7786   rows: HTMLCollection;\r
7787   /**\r
7788    * Removes the specified row (tr) from the element and from the rows collection.\r
7789    * @param index Number that specifies the zero-based position in the rows collection of the row to remove.\r
7790    */\r
7791   deleteRow(index?: number): void;\r
7792   /**\r
7793    * Moves a table row to a new position.\r
7794    * @param indexFrom Number that specifies the index in the rows collection of the table row that is moved.\r
7795    * @param indexTo Number that specifies where the row is moved within the rows collection.\r
7796    */\r
7797   moveRow(indexFrom?: number, indexTo?: number): any;\r
7798   /**\r
7799    * Creates a new row (tr) in the table, and adds the row to the rows collection.\r
7800    * @param index Number that specifies where to insert the row in the rows collection. The default value is -1, which appends the new row to the end of the rows collection.\r
7801    */\r
7802   insertRow(index?: number): HTMLElement;\r
7804 declare var HTMLTableSectionElement: {\r
7805   prototype: HTMLTableSectionElement;\r
7806   new(): HTMLTableSectionElement;\r
7809 interface DOML2DeprecatedListNumberingAndBulletStyle {\r
7810   type: string;\r
7813 interface HTMLInputElement extends HTMLElement, MSDataBindingExtensions {\r
7814   /**\r
7815    * Sets or retrieves the width of the object.\r
7816    */\r
7817   width: string;\r
7818   status: boolean;\r
7819   /**\r
7820    * Retrieves a reference to the form that the object is embedded in.\r
7821    */\r
7822   form: HTMLFormElement;\r
7823   /**\r
7824    * Gets or sets the starting position or offset of a text selection.\r
7825    */\r
7826   selectionStart: number;\r
7827   indeterminate: boolean;\r
7828   readOnly: boolean;\r
7829   size: number;\r
7830   loop: number;\r
7831   /**\r
7832    * Gets or sets the end position or offset of a text selection.\r
7833    */\r
7834   selectionEnd: number;\r
7835   /**\r
7836    * Sets or retrieves the URL of the virtual reality modeling language (VRML) world to be displayed in the window.\r
7837    */\r
7838   vrml: string;\r
7839   /**\r
7840    * Sets or retrieves a lower resolution image to display.\r
7841    */\r
7842   lowsrc: string;\r
7843   /**\r
7844    * Sets or retrieves the vertical margin for the object.\r
7845    */\r
7846   vspace: number;\r
7847   /**\r
7848    * Sets or retrieves a comma-separated list of content types.\r
7849    */\r
7850   accept: string;\r
7851   /**\r
7852    * Sets or retrieves a text alternative to the graphic.\r
7853    */\r
7854   alt: string;\r
7855   /**\r
7856    * Sets or retrieves the state of the check box or radio button.\r
7857    */\r
7858   defaultChecked: boolean;\r
7859   /**\r
7860    * Sets or retrieves how the object is aligned with adjacent text.\r
7861    */\r
7862   align: string;\r
7863   /**\r
7864    * Returns the value of the data at the cursor's current position.\r
7865    */\r
7866   value: string;\r
7867   /**\r
7868    * The address or URL of the a media resource that is to be considered.\r
7869    */\r
7870   src: string;\r
7871   /**\r
7872    * Sets or retrieves the name of the object.\r
7873    */\r
7874   name: string;\r
7875   /**\r
7876    * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.\r
7877    */\r
7878   useMap: string;\r
7879   /**\r
7880    * Sets or retrieves the height of the object.\r
7881    */\r
7882   height: string;\r
7883   /**\r
7884    * Sets or retrieves the width of the border to draw around the object.\r
7885    */\r
7886   border: string;\r
7887   dynsrc: string;\r
7888   /**\r
7889    * Sets or retrieves the state of the check box or radio button.\r
7890    */\r
7891   checked: boolean;\r
7892   /**\r
7893    * Sets or retrieves the width of the border to draw around the object.\r
7894    */\r
7895   hspace: number;\r
7896   /**\r
7897    * Sets or retrieves the maximum number of characters that the user can enter in a text control.\r
7898    */\r
7899   maxLength: number;\r
7900   /**\r
7901    * Returns the content type of the object.\r
7902    */\r
7903   type: string;\r
7904   /**\r
7905    * Sets or retrieves the initial contents of the object.\r
7906    */\r
7907   defaultValue: string;\r
7908   /**\r
7909    * Retrieves whether the object is fully loaded.\r
7910    */\r
7911   complete: boolean;\r
7912   start: string;\r
7913   /**\r
7914    * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.\r
7915    */\r
7916   validationMessage: string;\r
7917   /**\r
7918    * Returns a FileList object on a file type input object.\r
7919    */\r
7920   files: FileList;\r
7921   /**\r
7922    * Defines the maximum acceptable value for an input element with type="number".When used with the min and step attributes, lets you control the range and increment (such as only even numbers) that the user can enter into an input field.\r
7923    */\r
7924   max: string;\r
7925   /**\r
7926    * Overrides the target attribute on a form element.\r
7927    */\r
7928   formTarget: string;\r
7929   /**\r
7930    * Returns whether an element will successfully validate based on forms validation rules and constraints.\r
7931    */\r
7932   willValidate: boolean;\r
7933   /**\r
7934    * Defines an increment or jump between values that you want to allow the user to enter. When used with the max and min attributes, lets you control the range and increment (for example, allow only even numbers) that the user can enter into an input field.\r
7935    */\r
7936   step: string;\r
7937   /**\r
7938    * Provides a way to direct a user to a specific field when a document loads. This can provide both direction and convenience for a user, reducing the need to click or tab to a field when a page opens. This attribute is true when present on an element, and false when missing.\r
7939    */\r
7940   autofocus: boolean;\r
7941   /**\r
7942    * When present, marks an element that can't be submitted without a value.\r
7943    */\r
7944   required: boolean;\r
7945   /**\r
7946    * Used to override the encoding (formEnctype attribute) specified on the form element.\r
7947    */\r
7948   formEnctype: string;\r
7949   /**\r
7950    * Returns the input field value as a number.\r
7951    */\r
7952   valueAsNumber: number;\r
7953   /**\r
7954    * Gets or sets a text string that is displayed in an input field as a hint or prompt to users as the format or type of information they need to enter.The text appears in an input field until the user puts focus on the field.\r
7955    */\r
7956   placeholder: string;\r
7957   /**\r
7958    * Overrides the submit method attribute previously specified on a form element.\r
7959    */\r
7960   formMethod: string;\r
7961   /**\r
7962    * Specifies the ID of a pre-defined datalist of options for an input element.\r
7963    */\r
7964   list: HTMLElement;\r
7965   /**\r
7966    * Specifies whether autocomplete is applied to an editable text field.\r
7967    */\r
7968   autocomplete: string;\r
7969   /**\r
7970    * Defines the minimum acceptable value for an input element with type="number". When used with the max and step attributes, lets you control the range and increment (such as even numbers only) that the user can enter into an input field.\r
7971    */\r
7972   min: string;\r
7973   /**\r
7974    * Overrides the action attribute (where the data on a form is sent) on the parent form element.\r
7975    */\r
7976   formAction: string;\r
7977   /**\r
7978    * Gets or sets a string containing a regular expression that the user's input must match.\r
7979    */\r
7980   pattern: string;\r
7981   /**\r
7982    * Returns a  ValidityState object that represents the validity states of an element.\r
7983    */\r
7984   validity: ValidityState;\r
7985   /**\r
7986    * Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a "save draft"-type submit option.\r
7987    */\r
7988   formNoValidate: string;\r
7989   /**\r
7990    * Sets or retrieves the Boolean value indicating whether multiple items can be selected from a list.\r
7991    */\r
7992   multiple: boolean;\r
7993   /**\r
7994    * Creates a TextRange object for the element.\r
7995    */\r
7996   createTextRange(): TextRange;\r
7997   /**\r
7998    * Sets the start and end positions of a selection in a text field.\r
7999    * @param start The offset into the text field for the start of the selection.\r
8000    * @param end The offset into the text field for the end of the selection.\r
8001    */\r
8002   setSelectionRange(start: number, end: number): void;\r
8003   /**\r
8004    * Makes the selection equal to the current object.\r
8005    */\r
8006   select(): void;\r
8007   /**\r
8008    * Returns whether a form will validate when it is submitted, without having to submit it.\r
8009    */\r
8010   checkValidity(): boolean;\r
8011   /**\r
8012    * Decrements a range input control's value by the value given by the Step attribute. If the optional parameter is used, it will decrement the input control's step value multiplied by the parameter's value.\r
8013    * @param n Value to decrement the value by.\r
8014    */\r
8015   stepDown(n?: number): void;\r
8016   /**\r
8017    * Increments a range input control's value by the value given by the Step attribute. If the optional parameter is used, will increment the input control's value by that value.\r
8018    * @param n Value to increment the value by.\r
8019    */\r
8020   stepUp(n?: number): void;\r
8021   /**\r
8022    * Sets a custom error message that is displayed when a form is submitted.\r
8023    * @param error Sets a custom error message that is displayed when a form is submitted.\r
8024    */\r
8025   setCustomValidity(error: string): void;\r
8027 declare var HTMLInputElement: {\r
8028   prototype: HTMLInputElement;\r
8029   new(): HTMLInputElement;\r
8032 interface HTMLAnchorElement extends HTMLElement, MSDataBindingExtensions {\r
8033   /**\r
8034    * Sets or retrieves the relationship between the object and the destination of the link.\r
8035    */\r
8036   rel: string;\r
8037   /**\r
8038    * Contains the protocol of the URL.\r
8039    */\r
8040   protocol: string;\r
8041   /**\r
8042    * Sets or retrieves the substring of the href property that follows the question mark.\r
8043    */\r
8044   search: string;\r
8045   /**\r
8046    * Sets or retrieves the coordinates of the object.\r
8047    */\r
8048   coords: string;\r
8049   /**\r
8050    * Contains the hostname of a URL.\r
8051    */\r
8052   hostname: string;\r
8053   /**\r
8054    * Contains the pathname of the URL.\r
8055    */\r
8056   pathname: string;\r
8057   Methods: string;\r
8058   /**\r
8059    * Sets or retrieves the window or frame at which to target content.\r
8060    */\r
8061   target: string;\r
8062   protocolLong: string;\r
8063   /**\r
8064    * Sets or retrieves a destination URL or an anchor point.\r
8065    */\r
8066   href: string;\r
8067   /**\r
8068    * Sets or retrieves the shape of the object.\r
8069    */\r
8070   name: string;\r
8071   /**\r
8072    * Sets or retrieves the character set used to encode the object.\r
8073    */\r
8074   charset: string;\r
8075   /**\r
8076    * Sets or retrieves the language code of the object.\r
8077    */\r
8078   hreflang: string;\r
8079   /**\r
8080    * Sets or retrieves the port number associated with a URL.\r
8081    */\r
8082   port: string;\r
8083   /**\r
8084    * Contains the hostname and port values of the URL.\r
8085    */\r
8086   host: string;\r
8087   /**\r
8088    * Contains the anchor portion of the URL including the hash sign (#).\r
8089    */\r
8090   hash: string;\r
8091   nameProp: string;\r
8092   urn: string;\r
8093   /**\r
8094    * Sets or retrieves the relationship between the object and the destination of the link.\r
8095    */\r
8096   rev: string;\r
8097   /**\r
8098    * Sets or retrieves the shape of the object.\r
8099    */\r
8100   shape: string;\r
8101   type: string;\r
8102   mimeType: string;\r
8103   /**\r
8104    * Retrieves or sets the text of the object as a string.\r
8105    */\r
8106   text: string;\r
8107   /**\r
8108    * Returns a string representation of an object.\r
8109    */\r
8110   toString(): string;\r
8112 declare var HTMLAnchorElement: {\r
8113   prototype: HTMLAnchorElement;\r
8114   new(): HTMLAnchorElement;\r
8117 interface HTMLParamElement extends HTMLElement {\r
8118   /**\r
8119    * Sets or retrieves the value of an input parameter for an element.\r
8120    */\r
8121   value: string;\r
8122   /**\r
8123    * Sets or retrieves the name of an input parameter for an element.\r
8124    */\r
8125   name: string;\r
8126   /**\r
8127    * Sets or retrieves the content type of the resource designated by the value attribute.\r
8128    */\r
8129   type: string;\r
8130   /**\r
8131    * Sets or retrieves the data type of the value attribute.\r
8132    */\r
8133   valueType: string;\r
8135 declare var HTMLParamElement: {\r
8136   prototype: HTMLParamElement;\r
8137   new(): HTMLParamElement;\r
8140 interface SVGImageElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired, SVGURIReference {\r
8141   y: SVGAnimatedLength;\r
8142   width: SVGAnimatedLength;\r
8143   preserveAspectRatio: SVGAnimatedPreserveAspectRatio;\r
8144   x: SVGAnimatedLength;\r
8145   height: SVGAnimatedLength;\r
8147 declare var SVGImageElement: {\r
8148   prototype: SVGImageElement;\r
8149   new(): SVGImageElement;\r
8152 interface SVGAnimatedNumber {\r
8153   animVal: number;\r
8154   baseVal: number;\r
8156 declare var SVGAnimatedNumber: {\r
8157   prototype: SVGAnimatedNumber;\r
8158   new(): SVGAnimatedNumber;\r
8161 interface PerformanceTiming {\r
8162   redirectStart: number;\r
8163   domainLookupEnd: number;\r
8164   responseStart: number;\r
8165   domComplete: number;\r
8166   domainLookupStart: number;\r
8167   loadEventStart: number;\r
8168   msFirstPaint: number;\r
8169   unloadEventEnd: number;\r
8170   fetchStart: number;\r
8171   requestStart: number;\r
8172   domInteractive: number;\r
8173   navigationStart: number;\r
8174   connectEnd: number;\r
8175   loadEventEnd: number;\r
8176   connectStart: number;\r
8177   responseEnd: number;\r
8178   domLoading: number;\r
8179   redirectEnd: number;\r
8180   unloadEventStart: number;\r
8181   domContentLoadedEventStart: number;\r
8182   domContentLoadedEventEnd: number;\r
8183   toJSON(): any;\r
8185 declare var PerformanceTiming: {\r
8186   prototype: PerformanceTiming;\r
8187   new(): PerformanceTiming;\r
8190 interface HTMLPreElement extends HTMLElement, DOML2DeprecatedTextFlowControl {\r
8191   /**\r
8192    * Sets or gets a value that you can use to implement your own width functionality for the object.\r
8193    */\r
8194   width: number;\r
8195   /**\r
8196    * Indicates a citation by rendering text in italic type.\r
8197    */\r
8198   cite: string;\r
8200 declare var HTMLPreElement: {\r
8201   prototype: HTMLPreElement;\r
8202   new(): HTMLPreElement;\r
8205 interface EventException {\r
8206   code: number;\r
8207   message: string;\r
8208   name: string;\r
8209   toString(): string;\r
8210   DISPATCH_REQUEST_ERR: number;\r
8211   UNSPECIFIED_EVENT_TYPE_ERR: number;\r
8213 declare var EventException: {\r
8214   prototype: EventException;\r
8215   new(): EventException;\r
8216   DISPATCH_REQUEST_ERR: number;\r
8217   UNSPECIFIED_EVENT_TYPE_ERR: number;\r
8220 interface MSNavigatorDoNotTrack {\r
8221   msDoNotTrack: string;\r
8222   removeSiteSpecificTrackingException(args: ExceptionInformation): void;\r
8223   removeWebWideTrackingException(args: ExceptionInformation): void;\r
8224   storeWebWideTrackingException(args: StoreExceptionsInformation): void;\r
8225   storeSiteSpecificTrackingException(args: StoreSiteSpecificExceptionsInformation): void;\r
8226   confirmSiteSpecificTrackingException(args: ConfirmSiteSpecificExceptionsInformation): boolean;\r
8227   confirmWebWideTrackingException(args: ExceptionInformation): boolean;\r
8230 interface NavigatorOnLine {\r
8231   onLine: boolean;\r
8234 interface WindowLocalStorage {\r
8235   localStorage: Storage;\r
8238 interface SVGMetadataElement extends SVGElement {\r
8240 declare var SVGMetadataElement: {\r
8241   prototype: SVGMetadataElement;\r
8242   new(): SVGMetadataElement;\r
8245 interface SVGPathSegArcRel extends SVGPathSeg {\r
8246   y: number;\r
8247   sweepFlag: boolean;\r
8248   r2: number;\r
8249   x: number;\r
8250   angle: number;\r
8251   r1: number;\r
8252   largeArcFlag: boolean;\r
8254 declare var SVGPathSegArcRel: {\r
8255   prototype: SVGPathSegArcRel;\r
8256   new(): SVGPathSegArcRel;\r
8259 interface SVGPathSegMovetoAbs extends SVGPathSeg {\r
8260   y: number;\r
8261   x: number;\r
8263 declare var SVGPathSegMovetoAbs: {\r
8264   prototype: SVGPathSegMovetoAbs;\r
8265   new(): SVGPathSegMovetoAbs;\r
8268 interface SVGStringList {\r
8269   numberOfItems: number;\r
8270   replaceItem(newItem: string, index: number): string;\r
8271   getItem(index: number): string;\r
8272   clear(): void;\r
8273   appendItem(newItem: string): string;\r
8274   initialize(newItem: string): string;\r
8275   removeItem(index: number): string;\r
8276   insertItemBefore(newItem: string, index: number): string;\r
8278 declare var SVGStringList: {\r
8279   prototype: SVGStringList;\r
8280   new(): SVGStringList;\r
8283 interface XDomainRequest {\r
8284   timeout: number;\r
8285   onerror: (ev: ErrorEvent) => any;\r
8286   onload: (ev: Event) => any;\r
8287   onprogress: (ev: ProgressEvent) => any;\r
8288   ontimeout: (ev: Event) => any;\r
8289   responseText: string;\r
8290   contentType: string;\r
8291   open(method: string, url: string): void;\r
8292   abort(): void;\r
8293   send(data?: any): void;\r
8294   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
8295   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
8296   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
8297   addEventListener(type: "timeout", listener: (ev: Event) => any, useCapture?: boolean): void;\r
8298   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
8300 declare var XDomainRequest: {\r
8301   prototype: XDomainRequest;\r
8302   new(): XDomainRequest;\r
8303   create(): XDomainRequest;\r
8306 interface DOML2DeprecatedBackgroundColorStyle {\r
8307   bgColor: any;\r
8310 interface ElementTraversal {\r
8311   childElementCount: number;\r
8312   previousElementSibling: Element;\r
8313   lastElementChild: Element;\r
8314   nextElementSibling: Element;\r
8315   firstElementChild: Element;\r
8318 interface SVGLength {\r
8319   valueAsString: string;\r
8320   valueInSpecifiedUnits: number;\r
8321   value: number;\r
8322   unitType: number;\r
8323   newValueSpecifiedUnits(unitType: number, valueInSpecifiedUnits: number): void;\r
8324   convertToSpecifiedUnits(unitType: number): void;\r
8325   SVG_LENGTHTYPE_NUMBER: number;\r
8326   SVG_LENGTHTYPE_CM: number;\r
8327   SVG_LENGTHTYPE_PC: number;\r
8328   SVG_LENGTHTYPE_PERCENTAGE: number;\r
8329   SVG_LENGTHTYPE_MM: number;\r
8330   SVG_LENGTHTYPE_PT: number;\r
8331   SVG_LENGTHTYPE_IN: number;\r
8332   SVG_LENGTHTYPE_EMS: number;\r
8333   SVG_LENGTHTYPE_PX: number;\r
8334   SVG_LENGTHTYPE_UNKNOWN: number;\r
8335   SVG_LENGTHTYPE_EXS: number;\r
8337 declare var SVGLength: {\r
8338   prototype: SVGLength;\r
8339   new(): SVGLength;\r
8340   SVG_LENGTHTYPE_NUMBER: number;\r
8341   SVG_LENGTHTYPE_CM: number;\r
8342   SVG_LENGTHTYPE_PC: number;\r
8343   SVG_LENGTHTYPE_PERCENTAGE: number;\r
8344   SVG_LENGTHTYPE_MM: number;\r
8345   SVG_LENGTHTYPE_PT: number;\r
8346   SVG_LENGTHTYPE_IN: number;\r
8347   SVG_LENGTHTYPE_EMS: number;\r
8348   SVG_LENGTHTYPE_PX: number;\r
8349   SVG_LENGTHTYPE_UNKNOWN: number;\r
8350   SVG_LENGTHTYPE_EXS: number;\r
8353 interface SVGPolygonElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGAnimatedPoints, SVGTests, SVGExternalResourcesRequired {\r
8355 declare var SVGPolygonElement: {\r
8356   prototype: SVGPolygonElement;\r
8357   new(): SVGPolygonElement;\r
8360 interface HTMLPhraseElement extends HTMLElement {\r
8361   /**\r
8362    * Sets or retrieves the date and time of a modification to the object.\r
8363    */\r
8364   dateTime: string;\r
8365   /**\r
8366    * Sets or retrieves reference information about the object.\r
8367    */\r
8368   cite: string;\r
8370 declare var HTMLPhraseElement: {\r
8371   prototype: HTMLPhraseElement;\r
8372   new(): HTMLPhraseElement;\r
8375 interface NavigatorStorageUtils {\r
8378 interface SVGPathSegCurvetoCubicRel extends SVGPathSeg {\r
8379   y: number;\r
8380   y1: number;\r
8381   x2: number;\r
8382   x: number;\r
8383   x1: number;\r
8384   y2: number;\r
8386 declare var SVGPathSegCurvetoCubicRel: {\r
8387   prototype: SVGPathSegCurvetoCubicRel;\r
8388   new(): SVGPathSegCurvetoCubicRel;\r
8391 interface SVGTextContentElement extends SVGElement, SVGStylable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
8392   textLength: SVGAnimatedLength;\r
8393   lengthAdjust: SVGAnimatedEnumeration;\r
8394   getCharNumAtPosition(point: SVGPoint): number;\r
8395   getStartPositionOfChar(charnum: number): SVGPoint;\r
8396   getExtentOfChar(charnum: number): SVGRect;\r
8397   getComputedTextLength(): number;\r
8398   getSubStringLength(charnum: number, nchars: number): number;\r
8399   selectSubString(charnum: number, nchars: number): void;\r
8400   getNumberOfChars(): number;\r
8401   getRotationOfChar(charnum: number): number;\r
8402   getEndPositionOfChar(charnum: number): SVGPoint;\r
8403   LENGTHADJUST_SPACING: number;\r
8404   LENGTHADJUST_SPACINGANDGLYPHS: number;\r
8405   LENGTHADJUST_UNKNOWN: number;\r
8407 declare var SVGTextContentElement: {\r
8408   prototype: SVGTextContentElement;\r
8409   new(): SVGTextContentElement;\r
8410   LENGTHADJUST_SPACING: number;\r
8411   LENGTHADJUST_SPACINGANDGLYPHS: number;\r
8412   LENGTHADJUST_UNKNOWN: number;\r
8415 interface DOML2DeprecatedColorProperty {\r
8416   color: string;\r
8419 interface Location {\r
8420   hash: string;\r
8421   protocol: string;\r
8422   search: string;\r
8423   href: string;\r
8424   hostname: string;\r
8425   port: string;\r
8426   pathname: string;\r
8427   host: string;\r
8428   reload(flag?: boolean): void;\r
8429   replace(url: string): void;\r
8430   assign(url: string): void;\r
8431   toString(): string;\r
8433 declare var Location: {\r
8434   prototype: Location;\r
8435   new(): Location;\r
8438 interface HTMLTitleElement extends HTMLElement {\r
8439   /**\r
8440    * Retrieves or sets the text of the object as a string.\r
8441    */\r
8442   text: string;\r
8444 declare var HTMLTitleElement: {\r
8445   prototype: HTMLTitleElement;\r
8446   new(): HTMLTitleElement;\r
8449 interface HTMLStyleElement extends HTMLElement, LinkStyle {\r
8450   /**\r
8451    * Sets or retrieves the media type.\r
8452    */\r
8453   media: string;\r
8454   /**\r
8455    * Retrieves the CSS language in which the style sheet is written.\r
8456    */\r
8457   type: string;\r
8459 declare var HTMLStyleElement: {\r
8460   prototype: HTMLStyleElement;\r
8461   new(): HTMLStyleElement;\r
8464 interface PerformanceEntry {\r
8465   name: string;\r
8466   startTime: number;\r
8467   duration: number;\r
8468   entryType: string;\r
8470 declare var PerformanceEntry: {\r
8471   prototype: PerformanceEntry;\r
8472   new(): PerformanceEntry;\r
8475 interface SVGTransform {\r
8476   type: number;\r
8477   angle: number;\r
8478   matrix: SVGMatrix;\r
8479   setTranslate(tx: number, ty: number): void;\r
8480   setScale(sx: number, sy: number): void;\r
8481   setMatrix(matrix: SVGMatrix): void;\r
8482   setSkewY(angle: number): void;\r
8483   setRotate(angle: number, cx: number, cy: number): void;\r
8484   setSkewX(angle: number): void;\r
8485   SVG_TRANSFORM_SKEWX: number;\r
8486   SVG_TRANSFORM_UNKNOWN: number;\r
8487   SVG_TRANSFORM_SCALE: number;\r
8488   SVG_TRANSFORM_TRANSLATE: number;\r
8489   SVG_TRANSFORM_MATRIX: number;\r
8490   SVG_TRANSFORM_ROTATE: number;\r
8491   SVG_TRANSFORM_SKEWY: number;\r
8493 declare var SVGTransform: {\r
8494   prototype: SVGTransform;\r
8495   new(): SVGTransform;\r
8496   SVG_TRANSFORM_SKEWX: number;\r
8497   SVG_TRANSFORM_UNKNOWN: number;\r
8498   SVG_TRANSFORM_SCALE: number;\r
8499   SVG_TRANSFORM_TRANSLATE: number;\r
8500   SVG_TRANSFORM_MATRIX: number;\r
8501   SVG_TRANSFORM_ROTATE: number;\r
8502   SVG_TRANSFORM_SKEWY: number;\r
8505 interface UIEvent extends Event {\r
8506   detail: number;\r
8507   view: Window;\r
8508   initUIEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number): void;\r
8510 declare var UIEvent: {\r
8511   prototype: UIEvent;\r
8512   new(): UIEvent;\r
8515 interface SVGURIReference {\r
8516   href: SVGAnimatedString;\r
8519 interface SVGPathSeg {\r
8520   pathSegType: number;\r
8521   pathSegTypeAsLetter: string;\r
8522   PATHSEG_MOVETO_REL: number;\r
8523   PATHSEG_LINETO_VERTICAL_REL: number;\r
8524   PATHSEG_CURVETO_CUBIC_SMOOTH_ABS: number;\r
8525   PATHSEG_CURVETO_QUADRATIC_REL: number;\r
8526   PATHSEG_CURVETO_CUBIC_ABS: number;\r
8527   PATHSEG_LINETO_HORIZONTAL_ABS: number;\r
8528   PATHSEG_CURVETO_QUADRATIC_ABS: number;\r
8529   PATHSEG_LINETO_ABS: number;\r
8530   PATHSEG_CLOSEPATH: number;\r
8531   PATHSEG_LINETO_HORIZONTAL_REL: number;\r
8532   PATHSEG_CURVETO_CUBIC_SMOOTH_REL: number;\r
8533   PATHSEG_LINETO_REL: number;\r
8534   PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS: number;\r
8535   PATHSEG_ARC_REL: number;\r
8536   PATHSEG_CURVETO_CUBIC_REL: number;\r
8537   PATHSEG_UNKNOWN: number;\r
8538   PATHSEG_LINETO_VERTICAL_ABS: number;\r
8539   PATHSEG_ARC_ABS: number;\r
8540   PATHSEG_MOVETO_ABS: number;\r
8541   PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL: number;\r
8543 declare var SVGPathSeg: {\r
8544   prototype: SVGPathSeg;\r
8545   new(): SVGPathSeg;\r
8546   PATHSEG_MOVETO_REL: number;\r
8547   PATHSEG_LINETO_VERTICAL_REL: number;\r
8548   PATHSEG_CURVETO_CUBIC_SMOOTH_ABS: number;\r
8549   PATHSEG_CURVETO_QUADRATIC_REL: number;\r
8550   PATHSEG_CURVETO_CUBIC_ABS: number;\r
8551   PATHSEG_LINETO_HORIZONTAL_ABS: number;\r
8552   PATHSEG_CURVETO_QUADRATIC_ABS: number;\r
8553   PATHSEG_LINETO_ABS: number;\r
8554   PATHSEG_CLOSEPATH: number;\r
8555   PATHSEG_LINETO_HORIZONTAL_REL: number;\r
8556   PATHSEG_CURVETO_CUBIC_SMOOTH_REL: number;\r
8557   PATHSEG_LINETO_REL: number;\r
8558   PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS: number;\r
8559   PATHSEG_ARC_REL: number;\r
8560   PATHSEG_CURVETO_CUBIC_REL: number;\r
8561   PATHSEG_UNKNOWN: number;\r
8562   PATHSEG_LINETO_VERTICAL_ABS: number;\r
8563   PATHSEG_ARC_ABS: number;\r
8564   PATHSEG_MOVETO_ABS: number;\r
8565   PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL: number;\r
8568 interface WheelEvent extends MouseEvent {\r
8569   deltaZ: number;\r
8570   deltaX: number;\r
8571   deltaMode: number;\r
8572   deltaY: number;\r
8573   initWheelEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, buttonArg: number, relatedTargetArg: EventTarget, modifiersListArg: string, deltaXArg: number, deltaYArg: number, deltaZArg: number, deltaMode: number): void;\r
8574   getCurrentPoint(element: Element): void;\r
8575   DOM_DELTA_PIXEL: number;\r
8576   DOM_DELTA_LINE: number;\r
8577   DOM_DELTA_PAGE: number;\r
8579 declare var WheelEvent: {\r
8580   prototype: WheelEvent;\r
8581   new(): WheelEvent;\r
8582   DOM_DELTA_PIXEL: number;\r
8583   DOM_DELTA_LINE: number;\r
8584   DOM_DELTA_PAGE: number;\r
8587 interface MSEventAttachmentTarget {\r
8588   attachEvent(event: string, listener: EventListener): boolean;\r
8589   detachEvent(event: string, listener: EventListener): void;\r
8592 interface SVGNumber {\r
8593   value: number;\r
8595 declare var SVGNumber: {\r
8596   prototype: SVGNumber;\r
8597   new(): SVGNumber;\r
8600 interface SVGPathElement extends SVGElement, SVGStylable, SVGAnimatedPathData, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
8601   getPathSegAtLength(distance: number): number;\r
8602   getPointAtLength(distance: number): SVGPoint;\r
8603   createSVGPathSegCurvetoQuadraticAbs(x: number, y: number, x1: number, y1: number): SVGPathSegCurvetoQuadraticAbs;\r
8604   createSVGPathSegLinetoRel(x: number, y: number): SVGPathSegLinetoRel;\r
8605   createSVGPathSegCurvetoQuadraticRel(x: number, y: number, x1: number, y1: number): SVGPathSegCurvetoQuadraticRel;\r
8606   createSVGPathSegCurvetoCubicAbs(x: number, y: number, x1: number, y1: number, x2: number, y2: number): SVGPathSegCurvetoCubicAbs;\r
8607   createSVGPathSegLinetoAbs(x: number, y: number): SVGPathSegLinetoAbs;\r
8608   createSVGPathSegClosePath(): SVGPathSegClosePath;\r
8609   createSVGPathSegCurvetoCubicRel(x: number, y: number, x1: number, y1: number, x2: number, y2: number): SVGPathSegCurvetoCubicRel;\r
8610   createSVGPathSegCurvetoQuadraticSmoothRel(x: number, y: number): SVGPathSegCurvetoQuadraticSmoothRel;\r
8611   createSVGPathSegMovetoRel(x: number, y: number): SVGPathSegMovetoRel;\r
8612   createSVGPathSegCurvetoCubicSmoothAbs(x: number, y: number, x2: number, y2: number): SVGPathSegCurvetoCubicSmoothAbs;\r
8613   createSVGPathSegMovetoAbs(x: number, y: number): SVGPathSegMovetoAbs;\r
8614   createSVGPathSegLinetoVerticalRel(y: number): SVGPathSegLinetoVerticalRel;\r
8615   createSVGPathSegArcRel(x: number, y: number, r1: number, r2: number, angle: number, largeArcFlag: boolean, sweepFlag: boolean): SVGPathSegArcRel;\r
8616   createSVGPathSegCurvetoQuadraticSmoothAbs(x: number, y: number): SVGPathSegCurvetoQuadraticSmoothAbs;\r
8617   createSVGPathSegLinetoHorizontalRel(x: number): SVGPathSegLinetoHorizontalRel;\r
8618   getTotalLength(): number;\r
8619   createSVGPathSegCurvetoCubicSmoothRel(x: number, y: number, x2: number, y2: number): SVGPathSegCurvetoCubicSmoothRel;\r
8620   createSVGPathSegLinetoHorizontalAbs(x: number): SVGPathSegLinetoHorizontalAbs;\r
8621   createSVGPathSegLinetoVerticalAbs(y: number): SVGPathSegLinetoVerticalAbs;\r
8622   createSVGPathSegArcAbs(x: number, y: number, r1: number, r2: number, angle: number, largeArcFlag: boolean, sweepFlag: boolean): SVGPathSegArcAbs;\r
8624 declare var SVGPathElement: {\r
8625   prototype: SVGPathElement;\r
8626   new(): SVGPathElement;\r
8629 interface MSCompatibleInfo {\r
8630   version: string;\r
8631   userAgent: string;\r
8633 declare var MSCompatibleInfo: {\r
8634   prototype: MSCompatibleInfo;\r
8635   new(): MSCompatibleInfo;\r
8638 interface Text extends CharacterData, MSNodeExtensions {\r
8639   wholeText: string;\r
8640   splitText(offset: number): Text;\r
8641   replaceWholeText(content: string): Text;\r
8643 declare var Text: {\r
8644   prototype: Text;\r
8645   new(): Text;\r
8648 interface SVGAnimatedRect {\r
8649   animVal: SVGRect;\r
8650   baseVal: SVGRect;\r
8652 declare var SVGAnimatedRect: {\r
8653   prototype: SVGAnimatedRect;\r
8654   new(): SVGAnimatedRect;\r
8657 interface CSSNamespaceRule extends CSSRule {\r
8658   namespaceURI: string;\r
8659   prefix: string;\r
8661 declare var CSSNamespaceRule: {\r
8662   prototype: CSSNamespaceRule;\r
8663   new(): CSSNamespaceRule;\r
8666 interface SVGPathSegList {\r
8667   numberOfItems: number;\r
8668   replaceItem(newItem: SVGPathSeg, index: number): SVGPathSeg;\r
8669   getItem(index: number): SVGPathSeg;\r
8670   clear(): void;\r
8671   appendItem(newItem: SVGPathSeg): SVGPathSeg;\r
8672   initialize(newItem: SVGPathSeg): SVGPathSeg;\r
8673   removeItem(index: number): SVGPathSeg;\r
8674   insertItemBefore(newItem: SVGPathSeg, index: number): SVGPathSeg;\r
8676 declare var SVGPathSegList: {\r
8677   prototype: SVGPathSegList;\r
8678   new(): SVGPathSegList;\r
8681 interface HTMLUnknownElement extends HTMLElement, MSDataBindingRecordSetReadonlyExtensions {\r
8683 declare var HTMLUnknownElement: {\r
8684   prototype: HTMLUnknownElement;\r
8685   new(): HTMLUnknownElement;\r
8688 interface HTMLAudioElement extends HTMLMediaElement {\r
8690 declare var HTMLAudioElement: {\r
8691   prototype: HTMLAudioElement;\r
8692   new(): HTMLAudioElement;\r
8695 interface MSImageResourceExtensions {\r
8696   dynsrc: string;\r
8697   vrml: string;\r
8698   lowsrc: string;\r
8699   start: string;\r
8700   loop: number;\r
8703 interface PositionError {\r
8704   code: number;\r
8705   message: string;\r
8706   toString(): string;\r
8707   POSITION_UNAVAILABLE: number;\r
8708   PERMISSION_DENIED: number;\r
8709   TIMEOUT: number;\r
8711 declare var PositionError: {\r
8712   prototype: PositionError;\r
8713   new(): PositionError;\r
8714   POSITION_UNAVAILABLE: number;\r
8715   PERMISSION_DENIED: number;\r
8716   TIMEOUT: number;\r
8719 interface HTMLTableCellElement extends HTMLElement, HTMLTableAlignment, DOML2DeprecatedBackgroundStyle, DOML2DeprecatedBackgroundColorStyle {\r
8720   /**\r
8721    * Sets or retrieves the width of the object.\r
8722    */\r
8723   width: number;\r
8724   /**\r
8725    * Sets or retrieves a list of header cells that provide information for the object.\r
8726    */\r
8727   headers: string;\r
8728   /**\r
8729    * Retrieves the position of the object in the cells collection of a row.\r
8730    */\r
8731   cellIndex: number;\r
8732   /**\r
8733    * Sets or retrieves how the object is aligned with adjacent text.\r
8734    */\r
8735   align: string;\r
8736   /**\r
8737    * Sets or retrieves the color for one of the two colors used to draw the 3-D border of the object.\r
8738    */\r
8739   borderColorLight: any;\r
8740   /**\r
8741    * Sets or retrieves the number columns in the table that the object should span.\r
8742    */\r
8743   colSpan: number;\r
8744   /**\r
8745    * Sets or retrieves the border color of the object.\r
8746    */\r
8747   borderColor: any;\r
8748   /**\r
8749    * Sets or retrieves a comma-delimited list of conceptual categories associated with the object.\r
8750    */\r
8751   axis: string;\r
8752   /**\r
8753    * Sets or retrieves the height of the object.\r
8754    */\r
8755   height: any;\r
8756   /**\r
8757    * Sets or retrieves whether the browser automatically performs wordwrap.\r
8758    */\r
8759   noWrap: boolean;\r
8760   /**\r
8761    * Sets or retrieves abbreviated text for the object.\r
8762    */\r
8763   abbr: string;\r
8764   /**\r
8765    * Sets or retrieves how many rows in a table the cell should span.\r
8766    */\r
8767   rowSpan: number;\r
8768   /**\r
8769    * Sets or retrieves the group of cells in a table to which the object's information applies.\r
8770    */\r
8771   scope: string;\r
8772   /**\r
8773    * Sets or retrieves the color for one of the two colors used to draw the 3-D border of the object.\r
8774    */\r
8775   borderColorDark: any;\r
8777 declare var HTMLTableCellElement: {\r
8778   prototype: HTMLTableCellElement;\r
8779   new(): HTMLTableCellElement;\r
8782 interface SVGElementInstance extends EventTarget {\r
8783   previousSibling: SVGElementInstance;\r
8784   parentNode: SVGElementInstance;\r
8785   lastChild: SVGElementInstance;\r
8786   nextSibling: SVGElementInstance;\r
8787   childNodes: SVGElementInstanceList;\r
8788   correspondingUseElement: SVGUseElement;\r
8789   correspondingElement: SVGElement;\r
8790   firstChild: SVGElementInstance;\r
8792 declare var SVGElementInstance: {\r
8793   prototype: SVGElementInstance;\r
8794   new(): SVGElementInstance;\r
8797 interface MSNamespaceInfoCollection {\r
8798   length: number;\r
8799   add(namespace?: string, urn?: string, implementationUrl?: any): any;\r
8800   item(index: any): any;\r
8801   // [index: any]: any;\r
8803 declare var MSNamespaceInfoCollection: {\r
8804   prototype: MSNamespaceInfoCollection;\r
8805   new(): MSNamespaceInfoCollection;\r
8808 interface SVGCircleElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
8809   cx: SVGAnimatedLength;\r
8810   r: SVGAnimatedLength;\r
8811   cy: SVGAnimatedLength;\r
8813 declare var SVGCircleElement: {\r
8814   prototype: SVGCircleElement;\r
8815   new(): SVGCircleElement;\r
8818 interface StyleSheetList {\r
8819   length: number;\r
8820   item(index?: number): StyleSheet;\r
8821   [index: number]: StyleSheet;\r
8823 declare var StyleSheetList: {\r
8824   prototype: StyleSheetList;\r
8825   new(): StyleSheetList;\r
8828 interface CSSImportRule extends CSSRule {\r
8829   styleSheet: CSSStyleSheet;\r
8830   href: string;\r
8831   media: MediaList;\r
8833 declare var CSSImportRule: {\r
8834   prototype: CSSImportRule;\r
8835   new(): CSSImportRule;\r
8838 interface CustomEvent extends Event {\r
8839   detail: any;\r
8840   initCustomEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, detailArg: any): void;\r
8842 declare var CustomEvent: {\r
8843   prototype: CustomEvent;\r
8844   new(): CustomEvent;\r
8847 interface HTMLBaseFontElement extends HTMLElement, DOML2DeprecatedColorProperty {\r
8848   /**\r
8849    * Sets or retrieves the current typeface family.\r
8850    */\r
8851   face: string;\r
8852   /**\r
8853    * Sets or retrieves the font size of the object.\r
8854    */\r
8855   size: number;\r
8857 declare var HTMLBaseFontElement: {\r
8858   prototype: HTMLBaseFontElement;\r
8859   new(): HTMLBaseFontElement;\r
8862 interface HTMLTextAreaElement extends HTMLElement, MSDataBindingExtensions {\r
8863   /**\r
8864    * Retrieves or sets the text in the entry field of the textArea element.\r
8865    */\r
8866   value: string;\r
8867   /**\r
8868    * Sets or retrieves the value indicating whether the control is selected.\r
8869    */\r
8870   status: any;\r
8871   /**\r
8872    * Retrieves a reference to the form that the object is embedded in.\r
8873    */\r
8874   form: HTMLFormElement;\r
8875   /**\r
8876    * Sets or retrieves the name of the object.\r
8877    */\r
8878   name: string;\r
8879   /**\r
8880    * Gets or sets the starting position or offset of a text selection.\r
8881    */\r
8882   selectionStart: number;\r
8883   /**\r
8884    * Sets or retrieves the number of horizontal rows contained in the object.\r
8885    */\r
8886   rows: number;\r
8887   /**\r
8888    * Sets or retrieves the width of the object.\r
8889    */\r
8890   cols: number;\r
8891   /**\r
8892    * Sets or retrieves the value indicated whether the content of the object is read-only.\r
8893    */\r
8894   readOnly: boolean;\r
8895   /**\r
8896    * Sets or retrieves how to handle wordwrapping in the object.\r
8897    */\r
8898   wrap: string;\r
8899   /**\r
8900    * Gets or sets the end position or offset of a text selection.\r
8901    */\r
8902   selectionEnd: number;\r
8903   /**\r
8904    * Retrieves the type of control.\r
8905    */\r
8906   type: string;\r
8907   /**\r
8908    * Sets or retrieves the initial contents of the object.\r
8909    */\r
8910   defaultValue: string;\r
8911   /**\r
8912    * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.\r
8913    */\r
8914   validationMessage: string;\r
8915   /**\r
8916    * Provides a way to direct a user to a specific field when a document loads. This can provide both direction and convenience for a user, reducing the need to click or tab to a field when a page opens. This attribute is true when present on an element, and false when missing.\r
8917    */\r
8918   autofocus: boolean;\r
8919   /**\r
8920    * Returns a  ValidityState object that represents the validity states of an element.\r
8921    */\r
8922   validity: ValidityState;\r
8923   /**\r
8924    * When present, marks an element that can't be submitted without a value.\r
8925    */\r
8926   required: boolean;\r
8927   /**\r
8928    * Sets or retrieves the maximum number of characters that the user can enter in a text control.\r
8929    */\r
8930   maxLength: number;\r
8931   /**\r
8932    * Returns whether an element will successfully validate based on forms validation rules and constraints.\r
8933    */\r
8934   willValidate: boolean;\r
8935   /**\r
8936    * Gets or sets a text string that is displayed in an input field as a hint or prompt to users as the format or type of information they need to enter.The text appears in an input field until the user puts focus on the field.\r
8937    */\r
8938   placeholder: string;\r
8939   /**\r
8940    * Creates a TextRange object for the element.\r
8941    */\r
8942   createTextRange(): TextRange;\r
8943   /**\r
8944    * Sets the start and end positions of a selection in a text field.\r
8945    * @param start The offset into the text field for the start of the selection.\r
8946    * @param end The offset into the text field for the end of the selection.\r
8947    */\r
8948   setSelectionRange(start: number, end: number): void;\r
8949   /**\r
8950    * Highlights the input area of a form element.\r
8951    */\r
8952   select(): void;\r
8953   /**\r
8954    * Returns whether a form will validate when it is submitted, without having to submit it.\r
8955    */\r
8956   checkValidity(): boolean;\r
8957   /**\r
8958    * Sets a custom error message that is displayed when a form is submitted.\r
8959    * @param error Sets a custom error message that is displayed when a form is submitted.\r
8960    */\r
8961   setCustomValidity(error: string): void;\r
8963 declare var HTMLTextAreaElement: {\r
8964   prototype: HTMLTextAreaElement;\r
8965   new(): HTMLTextAreaElement;\r
8968 interface Geolocation {\r
8969   clearWatch(watchId: number): void;\r
8970   getCurrentPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback, options?: PositionOptions): void;\r
8971   watchPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback, options?: PositionOptions): number;\r
8973 declare var Geolocation: {\r
8974   prototype: Geolocation;\r
8975   new(): Geolocation;\r
8978 interface DOML2DeprecatedMarginStyle {\r
8979   vspace: number;\r
8980   hspace: number;\r
8983 interface MSWindowModeless {\r
8984   dialogTop: any;\r
8985   dialogLeft: any;\r
8986   dialogWidth: any;\r
8987   dialogHeight: any;\r
8988   menuArguments: any;\r
8991 interface DOML2DeprecatedAlignmentStyle {\r
8992   align: string;\r
8995 interface HTMLMarqueeElement extends HTMLElement, MSDataBindingExtensions, DOML2DeprecatedBackgroundColorStyle {\r
8996   width: string;\r
8997   onbounce: (ev: Event) => any;\r
8998   vspace: number;\r
8999   trueSpeed: boolean;\r
9000   scrollAmount: number;\r
9001   scrollDelay: number;\r
9002   behavior: string;\r
9003   height: string;\r
9004   loop: number;\r
9005   direction: string;\r
9006   hspace: number;\r
9007   onstart: (ev: Event) => any;\r
9008   onfinish: (ev: Event) => any;\r
9009   stop(): void;\r
9010   start(): void;\r
9011   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9012   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9013   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9014   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9015   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9016   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9017   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9018   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9019   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
9020   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
9021   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
9022   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
9023   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
9024   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
9025   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
9026   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
9027   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
9028   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
9029   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
9030   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
9031   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
9032   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
9033   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
9034   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
9035   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9036   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
9037   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
9038   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
9039   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9040   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9041   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
9042   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9043   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
9044   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9045   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9046   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9047   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
9048   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9049   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9050   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
9051   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9052   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9053   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9054   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9055   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9056   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9057   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9058   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9059   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9060   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9061   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9062   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9063   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9064   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9065   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9066   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9067   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9068   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9069   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9070   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9071   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9072   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9073   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
9074   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9075   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9076   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9077   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9078   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9079   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9080   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9081   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9082   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9083   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9084   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9085   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9086   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9087   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9088   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9089   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9090   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9091   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9092   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9093   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9094   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9095   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9096   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9097   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9098   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
9099   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9100   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9101   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9102   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9103   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
9104   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9105   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9106   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9107   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
9108   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9109   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9110   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9111   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
9112   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9113   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9114   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9115   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9116   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9117   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
9118   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9119   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9120   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9121   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9122   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9123   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
9124   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9125   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
9126   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9127   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9128   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9129   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
9130   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9131   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
9132   addEventListener(type: "bounce", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9133   addEventListener(type: "start", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9134   addEventListener(type: "finish", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9135   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
9137 declare var HTMLMarqueeElement: {\r
9138   prototype: HTMLMarqueeElement;\r
9139   new(): HTMLMarqueeElement;\r
9142 interface SVGRect {\r
9143   y: number;\r
9144   width: number;\r
9145   x: number;\r
9146   height: number;\r
9148 declare var SVGRect: {\r
9149   prototype: SVGRect;\r
9150   new(): SVGRect;\r
9153 interface MSNodeExtensions {\r
9154   swapNode(otherNode: Node): Node;\r
9155   removeNode(deep?: boolean): Node;\r
9156   replaceNode(replacement: Node): Node;\r
9159 interface History {\r
9160   length: number;\r
9161   state: any;\r
9162   back(distance?: any): void;\r
9163   forward(distance?: any): void;\r
9164   go(delta?: any): void;\r
9165   replaceState(statedata: any, title: string, url?: string): void;\r
9166   pushState(statedata: any, title: string, url?: string): void;\r
9168 declare var History: {\r
9169   prototype: History;\r
9170   new(): History;\r
9173 interface SVGPathSegCurvetoCubicAbs extends SVGPathSeg {\r
9174   y: number;\r
9175   y1: number;\r
9176   x2: number;\r
9177   x: number;\r
9178   x1: number;\r
9179   y2: number;\r
9181 declare var SVGPathSegCurvetoCubicAbs: {\r
9182   prototype: SVGPathSegCurvetoCubicAbs;\r
9183   new(): SVGPathSegCurvetoCubicAbs;\r
9186 interface SVGPathSegCurvetoQuadraticAbs extends SVGPathSeg {\r
9187   y: number;\r
9188   y1: number;\r
9189   x: number;\r
9190   x1: number;\r
9192 declare var SVGPathSegCurvetoQuadraticAbs: {\r
9193   prototype: SVGPathSegCurvetoQuadraticAbs;\r
9194   new(): SVGPathSegCurvetoQuadraticAbs;\r
9197 interface TimeRanges {\r
9198   length: number;\r
9199   start(index: number): number;\r
9200   end(index: number): number;\r
9202 declare var TimeRanges: {\r
9203   prototype: TimeRanges;\r
9204   new(): TimeRanges;\r
9207 interface CSSRule {\r
9208   cssText: string;\r
9209   parentStyleSheet: CSSStyleSheet;\r
9210   parentRule: CSSRule;\r
9211   type: number;\r
9212   IMPORT_RULE: number;\r
9213   MEDIA_RULE: number;\r
9214   STYLE_RULE: number;\r
9215   NAMESPACE_RULE: number;\r
9216   PAGE_RULE: number;\r
9217   UNKNOWN_RULE: number;\r
9218   FONT_FACE_RULE: number;\r
9219   CHARSET_RULE: number;\r
9220   KEYFRAMES_RULE: number;\r
9221   KEYFRAME_RULE: number;\r
9222   VIEWPORT_RULE: number;\r
9224 declare var CSSRule: {\r
9225   prototype: CSSRule;\r
9226   new(): CSSRule;\r
9227   IMPORT_RULE: number;\r
9228   MEDIA_RULE: number;\r
9229   STYLE_RULE: number;\r
9230   NAMESPACE_RULE: number;\r
9231   PAGE_RULE: number;\r
9232   UNKNOWN_RULE: number;\r
9233   FONT_FACE_RULE: number;\r
9234   CHARSET_RULE: number;\r
9235   KEYFRAMES_RULE: number;\r
9236   KEYFRAME_RULE: number;\r
9237   VIEWPORT_RULE: number;\r
9240 interface SVGPathSegLinetoAbs extends SVGPathSeg {\r
9241   y: number;\r
9242   x: number;\r
9244 declare var SVGPathSegLinetoAbs: {\r
9245   prototype: SVGPathSegLinetoAbs;\r
9246   new(): SVGPathSegLinetoAbs;\r
9249 interface HTMLModElement extends HTMLElement {\r
9250   /**\r
9251    * Sets or retrieves the date and time of a modification to the object.\r
9252    */\r
9253   dateTime: string;\r
9254   /**\r
9255    * Sets or retrieves reference information about the object.\r
9256    */\r
9257   cite: string;\r
9259 declare var HTMLModElement: {\r
9260   prototype: HTMLModElement;\r
9261   new(): HTMLModElement;\r
9264 interface SVGMatrix {\r
9265   e: number;\r
9266   c: number;\r
9267   a: number;\r
9268   b: number;\r
9269   d: number;\r
9270   f: number;\r
9271   multiply(secondMatrix: SVGMatrix): SVGMatrix;\r
9272   flipY(): SVGMatrix;\r
9273   skewY(angle: number): SVGMatrix;\r
9274   inverse(): SVGMatrix;\r
9275   scaleNonUniform(scaleFactorX: number, scaleFactorY: number): SVGMatrix;\r
9276   rotate(angle: number): SVGMatrix;\r
9277   flipX(): SVGMatrix;\r
9278   translate(x: number, y: number): SVGMatrix;\r
9279   scale(scaleFactor: number): SVGMatrix;\r
9280   rotateFromVector(x: number, y: number): SVGMatrix;\r
9281   skewX(angle: number): SVGMatrix;\r
9283 declare var SVGMatrix: {\r
9284   prototype: SVGMatrix;\r
9285   new(): SVGMatrix;\r
9288 interface MSPopupWindow {\r
9289   document: Document;\r
9290   isOpen: boolean;\r
9291   show(x: number, y: number, w: number, h: number, element?: any): void;\r
9292   hide(): void;\r
9294 declare var MSPopupWindow: {\r
9295   prototype: MSPopupWindow;\r
9296   new(): MSPopupWindow;\r
9299 interface BeforeUnloadEvent extends Event {\r
9300   returnValue: string;\r
9302 declare var BeforeUnloadEvent: {\r
9303   prototype: BeforeUnloadEvent;\r
9304   new(): BeforeUnloadEvent;\r
9307 interface SVGUseElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired, SVGURIReference {\r
9308   y: SVGAnimatedLength;\r
9309   width: SVGAnimatedLength;\r
9310   animatedInstanceRoot: SVGElementInstance;\r
9311   instanceRoot: SVGElementInstance;\r
9312   x: SVGAnimatedLength;\r
9313   height: SVGAnimatedLength;\r
9315 declare var SVGUseElement: {\r
9316   prototype: SVGUseElement;\r
9317   new(): SVGUseElement;\r
9320 interface Event {\r
9321   timeStamp: number;\r
9322   defaultPrevented: boolean;\r
9323   isTrusted: boolean;\r
9324   currentTarget: EventTarget;\r
9325   cancelBubble: boolean;\r
9326   target: EventTarget;\r
9327   eventPhase: number;\r
9328   cancelable: boolean;\r
9329   type: string;\r
9330   srcElement: Element;\r
9331   bubbles: boolean;\r
9332   initEvent(eventTypeArg: string, canBubbleArg: boolean, cancelableArg: boolean): void;\r
9333   stopPropagation(): void;\r
9334   stopImmediatePropagation(): void;\r
9335   preventDefault(): void;\r
9336   CAPTURING_PHASE: number;\r
9337   AT_TARGET: number;\r
9338   BUBBLING_PHASE: number;\r
9340 declare var Event: {\r
9341   prototype: Event;\r
9342   new(): Event;\r
9343   CAPTURING_PHASE: number;\r
9344   AT_TARGET: number;\r
9345   BUBBLING_PHASE: number;\r
9348 interface ImageData {\r
9349   width: number;\r
9350   data: Uint8Array;\r
9351   height: number;\r
9353 declare var ImageData: {\r
9354   prototype: ImageData;\r
9355   new(): ImageData;\r
9358 interface HTMLTableColElement extends HTMLElement, HTMLTableAlignment {\r
9359   /**\r
9360    * Sets or retrieves the width of the object.\r
9361    */\r
9362   width: any;\r
9363   /**\r
9364    * Sets or retrieves the alignment of the object relative to the display or table.\r
9365    */\r
9366   align: string;\r
9367   /**\r
9368    * Sets or retrieves the number of columns in the group.\r
9369    */\r
9370   span: number;\r
9372 declare var HTMLTableColElement: {\r
9373   prototype: HTMLTableColElement;\r
9374   new(): HTMLTableColElement;\r
9377 interface SVGException {\r
9378   code: number;\r
9379   message: string;\r
9380   name: string;\r
9381   toString(): string;\r
9382   SVG_MATRIX_NOT_INVERTABLE: number;\r
9383   SVG_WRONG_TYPE_ERR: number;\r
9384   SVG_INVALID_VALUE_ERR: number;\r
9386 declare var SVGException: {\r
9387   prototype: SVGException;\r
9388   new(): SVGException;\r
9389   SVG_MATRIX_NOT_INVERTABLE: number;\r
9390   SVG_WRONG_TYPE_ERR: number;\r
9391   SVG_INVALID_VALUE_ERR: number;\r
9394 interface SVGLinearGradientElement extends SVGGradientElement {\r
9395   y1: SVGAnimatedLength;\r
9396   x2: SVGAnimatedLength;\r
9397   x1: SVGAnimatedLength;\r
9398   y2: SVGAnimatedLength;\r
9400 declare var SVGLinearGradientElement: {\r
9401   prototype: SVGLinearGradientElement;\r
9402   new(): SVGLinearGradientElement;\r
9405 interface HTMLTableAlignment {\r
9406   /**\r
9407    * Sets or retrieves a value that you can use to implement your own ch functionality for the object.\r
9408    */\r
9409   ch: string;\r
9410   /**\r
9411    * Sets or retrieves how text and other content are vertically aligned within the object that contains them.\r
9412    */\r
9413   vAlign: string;\r
9414   /**\r
9415    * Sets or retrieves a value that you can use to implement your own chOff functionality for the object.\r
9416    */\r
9417   chOff: string;\r
9420 interface SVGAnimatedEnumeration {\r
9421   animVal: number;\r
9422   baseVal: number;\r
9424 declare var SVGAnimatedEnumeration: {\r
9425   prototype: SVGAnimatedEnumeration;\r
9426   new(): SVGAnimatedEnumeration;\r
9429 interface DOML2DeprecatedSizeProperty {\r
9430   size: number;\r
9433 interface HTMLUListElement extends HTMLElement, DOML2DeprecatedListSpaceReduction, DOML2DeprecatedListNumberingAndBulletStyle {\r
9435 declare var HTMLUListElement: {\r
9436   prototype: HTMLUListElement;\r
9437   new(): HTMLUListElement;\r
9440 interface SVGRectElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
9441   y: SVGAnimatedLength;\r
9442   width: SVGAnimatedLength;\r
9443   ry: SVGAnimatedLength;\r
9444   rx: SVGAnimatedLength;\r
9445   x: SVGAnimatedLength;\r
9446   height: SVGAnimatedLength;\r
9448 declare var SVGRectElement: {\r
9449   prototype: SVGRectElement;\r
9450   new(): SVGRectElement;\r
9453 interface ErrorEventHandler {\r
9454   (event: Event, source: string, fileno: number, columnNumber: number): void;\r
9457 interface HTMLDivElement extends HTMLElement, MSDataBindingExtensions {\r
9458   /**\r
9459    * Sets or retrieves how the object is aligned with adjacent text.\r
9460    */\r
9461   align: string;\r
9462   /**\r
9463    * Sets or retrieves whether the browser automatically performs wordwrap.\r
9464    */\r
9465   noWrap: boolean;\r
9467 declare var HTMLDivElement: {\r
9468   prototype: HTMLDivElement;\r
9469   new(): HTMLDivElement;\r
9472 interface DOML2DeprecatedBorderStyle {\r
9473   border: string;\r
9476 interface NamedNodeMap {\r
9477   length: number;\r
9478   removeNamedItemNS(namespaceURI: string, localName: string): Attr;\r
9479   item(index: number): Attr;\r
9480   [index: number]: Attr;\r
9481   removeNamedItem(name: string): Attr;\r
9482   getNamedItem(name: string): Attr;\r
9483   // [name: string]: Attr;\r
9484   setNamedItem(arg: Attr): Attr;\r
9485   getNamedItemNS(namespaceURI: string, localName: string): Attr;\r
9486   setNamedItemNS(arg: Attr): Attr;\r
9488 declare var NamedNodeMap: {\r
9489   prototype: NamedNodeMap;\r
9490   new(): NamedNodeMap;\r
9493 interface MediaList {\r
9494   length: number;\r
9495   mediaText: string;\r
9496   deleteMedium(oldMedium: string): void;\r
9497   appendMedium(newMedium: string): void;\r
9498   item(index: number): string;\r
9499   [index: number]: string;\r
9500   toString(): string;\r
9502 declare var MediaList: {\r
9503   prototype: MediaList;\r
9504   new(): MediaList;\r
9507 interface SVGPathSegCurvetoQuadraticSmoothAbs extends SVGPathSeg {\r
9508   y: number;\r
9509   x: number;\r
9511 declare var SVGPathSegCurvetoQuadraticSmoothAbs: {\r
9512   prototype: SVGPathSegCurvetoQuadraticSmoothAbs;\r
9513   new(): SVGPathSegCurvetoQuadraticSmoothAbs;\r
9516 interface SVGPathSegCurvetoCubicSmoothRel extends SVGPathSeg {\r
9517   y: number;\r
9518   x2: number;\r
9519   x: number;\r
9520   y2: number;\r
9522 declare var SVGPathSegCurvetoCubicSmoothRel: {\r
9523   prototype: SVGPathSegCurvetoCubicSmoothRel;\r
9524   new(): SVGPathSegCurvetoCubicSmoothRel;\r
9527 interface SVGLengthList {\r
9528   numberOfItems: number;\r
9529   replaceItem(newItem: SVGLength, index: number): SVGLength;\r
9530   getItem(index: number): SVGLength;\r
9531   clear(): void;\r
9532   appendItem(newItem: SVGLength): SVGLength;\r
9533   initialize(newItem: SVGLength): SVGLength;\r
9534   removeItem(index: number): SVGLength;\r
9535   insertItemBefore(newItem: SVGLength, index: number): SVGLength;\r
9537 declare var SVGLengthList: {\r
9538   prototype: SVGLengthList;\r
9539   new(): SVGLengthList;\r
9542 interface ProcessingInstruction extends Node {\r
9543   target: string;\r
9544   data: string;\r
9546 declare var ProcessingInstruction: {\r
9547   prototype: ProcessingInstruction;\r
9548   new(): ProcessingInstruction;\r
9551 interface MSWindowExtensions {\r
9552   status: string;\r
9553   onmouseleave: (ev: MouseEvent) => any;\r
9554   screenLeft: number;\r
9555   offscreenBuffering: any;\r
9556   maxConnectionsPerServer: number;\r
9557   onmouseenter: (ev: MouseEvent) => any;\r
9558   clipboardData: DataTransfer;\r
9559   defaultStatus: string;\r
9560   clientInformation: Navigator;\r
9561   closed: boolean;\r
9562   onhelp: (ev: Event) => any;\r
9563   external: External;\r
9564   event: MSEventObj;\r
9565   onfocusout: (ev: FocusEvent) => any;\r
9566   screenTop: number;\r
9567   onfocusin: (ev: FocusEvent) => any;\r
9568   showModelessDialog(url?: string, argument?: any, options?: any): Window;\r
9569   navigate(url: string): void;\r
9570   resizeBy(x?: number, y?: number): void;\r
9571   item(index: any): any;\r
9572   resizeTo(x?: number, y?: number): void;\r
9573   createPopup(arguments?: any): MSPopupWindow;\r
9574   toStaticHTML(html: string): string;\r
9575   execScript(code: string, language?: string): any;\r
9576   msWriteProfilerMark(profilerMarkName: string): void;\r
9577   moveTo(x?: number, y?: number): void;\r
9578   moveBy(x?: number, y?: number): void;\r
9579   showHelp(url: string, helpArg?: any, features?: string): void;\r
9580   captureEvents(): void;\r
9581   releaseEvents(): void;\r
9582   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9583   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
9584   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
9585   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
9586   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
9587   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
9590 interface MSBehaviorUrnsCollection {\r
9591   length: number;\r
9592   item(index: number): string;\r
9594 declare var MSBehaviorUrnsCollection: {\r
9595   prototype: MSBehaviorUrnsCollection;\r
9596   new(): MSBehaviorUrnsCollection;\r
9599 interface CSSFontFaceRule extends CSSRule {\r
9600   style: CSSStyleDeclaration;\r
9602 declare var CSSFontFaceRule: {\r
9603   prototype: CSSFontFaceRule;\r
9604   new(): CSSFontFaceRule;\r
9607 interface DOML2DeprecatedBackgroundStyle {\r
9608   background: string;\r
9611 interface TextEvent extends UIEvent {\r
9612   inputMethod: number;\r
9613   data: string;\r
9614   locale: string;\r
9615   initTextEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, dataArg: string, inputMethod: number, locale: string): void;\r
9616   DOM_INPUT_METHOD_KEYBOARD: number;\r
9617   DOM_INPUT_METHOD_DROP: number;\r
9618   DOM_INPUT_METHOD_IME: number;\r
9619   DOM_INPUT_METHOD_SCRIPT: number;\r
9620   DOM_INPUT_METHOD_VOICE: number;\r
9621   DOM_INPUT_METHOD_UNKNOWN: number;\r
9622   DOM_INPUT_METHOD_PASTE: number;\r
9623   DOM_INPUT_METHOD_HANDWRITING: number;\r
9624   DOM_INPUT_METHOD_OPTION: number;\r
9625   DOM_INPUT_METHOD_MULTIMODAL: number;\r
9627 declare var TextEvent: {\r
9628   prototype: TextEvent;\r
9629   new(): TextEvent;\r
9630   DOM_INPUT_METHOD_KEYBOARD: number;\r
9631   DOM_INPUT_METHOD_DROP: number;\r
9632   DOM_INPUT_METHOD_IME: number;\r
9633   DOM_INPUT_METHOD_SCRIPT: number;\r
9634   DOM_INPUT_METHOD_VOICE: number;\r
9635   DOM_INPUT_METHOD_UNKNOWN: number;\r
9636   DOM_INPUT_METHOD_PASTE: number;\r
9637   DOM_INPUT_METHOD_HANDWRITING: number;\r
9638   DOM_INPUT_METHOD_OPTION: number;\r
9639   DOM_INPUT_METHOD_MULTIMODAL: number;\r
9642 interface DocumentFragment extends Node, NodeSelector, MSEventAttachmentTarget, MSNodeExtensions {\r
9644 declare var DocumentFragment: {\r
9645   prototype: DocumentFragment;\r
9646   new(): DocumentFragment;\r
9649 interface SVGPolylineElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGAnimatedPoints, SVGTests, SVGExternalResourcesRequired {\r
9651 declare var SVGPolylineElement: {\r
9652   prototype: SVGPolylineElement;\r
9653   new(): SVGPolylineElement;\r
9656 interface SVGAnimatedPathData {\r
9657   pathSegList: SVGPathSegList;\r
9660 interface Position {\r
9661   timestamp: Date;\r
9662   coords: Coordinates;\r
9664 declare var Position: {\r
9665   prototype: Position;\r
9666   new(): Position;\r
9669 interface BookmarkCollection {\r
9670   length: number;\r
9671   item(index: number): any;\r
9672   [index: number]: any;\r
9674 declare var BookmarkCollection: {\r
9675   prototype: BookmarkCollection;\r
9676   new(): BookmarkCollection;\r
9679 interface PerformanceMark extends PerformanceEntry {\r
9681 declare var PerformanceMark: {\r
9682   prototype: PerformanceMark;\r
9683   new(): PerformanceMark;\r
9686 interface CSSPageRule extends CSSRule {\r
9687   pseudoClass: string;\r
9688   selectorText: string;\r
9689   selector: string;\r
9690   style: CSSStyleDeclaration;\r
9692 declare var CSSPageRule: {\r
9693   prototype: CSSPageRule;\r
9694   new(): CSSPageRule;\r
9697 interface HTMLBRElement extends HTMLElement {\r
9698   /**\r
9699    * Sets or retrieves the side on which floating objects are not to be positioned when any IHTMLBlockElement is inserted into the document.\r
9700    */\r
9701   clear: string;\r
9703 declare var HTMLBRElement: {\r
9704   prototype: HTMLBRElement;\r
9705   new(): HTMLBRElement;\r
9708 interface MSNavigatorExtensions {\r
9709   userLanguage: string;\r
9710   plugins: MSPluginsCollection;\r
9711   cookieEnabled: boolean;\r
9712   appCodeName: string;\r
9713   cpuClass: string;\r
9714   appMinorVersion: string;\r
9715   connectionSpeed: number;\r
9716   browserLanguage: string;\r
9717   mimeTypes: MSMimeTypesCollection;\r
9718   systemLanguage: string;\r
9719   language: string;\r
9720   javaEnabled(): boolean;\r
9721   taintEnabled(): boolean;\r
9724 interface HTMLSpanElement extends HTMLElement, MSDataBindingExtensions {\r
9726 declare var HTMLSpanElement: {\r
9727   prototype: HTMLSpanElement;\r
9728   new(): HTMLSpanElement;\r
9731 interface HTMLHeadElement extends HTMLElement {\r
9732   profile: string;\r
9734 declare var HTMLHeadElement: {\r
9735   prototype: HTMLHeadElement;\r
9736   new(): HTMLHeadElement;\r
9739 interface HTMLHeadingElement extends HTMLElement, DOML2DeprecatedTextFlowControl {\r
9740   /**\r
9741    * Sets or retrieves a value that indicates the table alignment.\r
9742    */\r
9743   align: string;\r
9745 declare var HTMLHeadingElement: {\r
9746   prototype: HTMLHeadingElement;\r
9747   new(): HTMLHeadingElement;\r
9750 interface HTMLFormElement extends HTMLElement, MSHTMLCollectionExtensions {\r
9751   /**\r
9752    * Sets or retrieves the number of objects in a collection.\r
9753    */\r
9754   length: number;\r
9755   /**\r
9756    * Sets or retrieves the window or frame at which to target content.\r
9757    */\r
9758   target: string;\r
9759   /**\r
9760    * Sets or retrieves a list of character encodings for input data that must be accepted by the server processing the form.\r
9761    */\r
9762   acceptCharset: string;\r
9763   /**\r
9764    * Sets or retrieves the encoding type for the form.\r
9765    */\r
9766   enctype: string;\r
9767   /**\r
9768    * Retrieves a collection, in source order, of all controls in a given form.\r
9769    */\r
9770   elements: HTMLCollection;\r
9771   /**\r
9772    * Sets or retrieves the URL to which the form content is sent for processing.\r
9773    */\r
9774   action: string;\r
9775   /**\r
9776    * Sets or retrieves the name of the object.\r
9777    */\r
9778   name: string;\r
9779   /**\r
9780    * Sets or retrieves how to send the form data to the server.\r
9781    */\r
9782   method: string;\r
9783   /**\r
9784    * Sets or retrieves the MIME encoding for the form.\r
9785    */\r
9786   encoding: string;\r
9787   /**\r
9788    * Specifies whether autocomplete is applied to an editable text field.\r
9789    */\r
9790   autocomplete: string;\r
9791   /**\r
9792    * Designates a form that is not validated when submitted.\r
9793    */\r
9794   noValidate: boolean;\r
9795   /**\r
9796    * Fires when the user resets a form.\r
9797    */\r
9798   reset(): void;\r
9799   /**\r
9800    * Retrieves a form object or an object from an elements collection.\r
9801    * @param name Variant of type Number or String that specifies the object or collection to retrieve. If this parameter is a Number, it is the zero-based index of the object. If this parameter is a string, all objects with matching name or id properties are retrieved, and a collection is returned if more than one match is made.\r
9802    * @param index Variant of type Number that specifies the zero-based index of the object to retrieve when a collection is returned.\r
9803    */\r
9804   item(name?: any, index?: any): any;\r
9805   /**\r
9806    * Fires when a FORM is about to be submitted.\r
9807    */\r
9808   submit(): void;\r
9809   /**\r
9810    * Retrieves a form object or an object from an elements collection.\r
9811    */\r
9812   namedItem(name: string): any;\r
9813   [name: string]: any;\r
9814   /**\r
9815    * Returns whether a form will validate when it is submitted, without having to submit it.\r
9816    */\r
9817   checkValidity(): boolean;\r
9819 declare var HTMLFormElement: {\r
9820   prototype: HTMLFormElement;\r
9821   new(): HTMLFormElement;\r
9824 interface SVGZoomAndPan {\r
9825   zoomAndPan: number;\r
9826   SVG_ZOOMANDPAN_MAGNIFY: number;\r
9827   SVG_ZOOMANDPAN_UNKNOWN: number;\r
9828   SVG_ZOOMANDPAN_DISABLE: number;\r
9830 declare var SVGZoomAndPan: SVGZoomAndPan;\r
9832 interface HTMLMediaElement extends HTMLElement {\r
9833   /**\r
9834    * Gets the earliest possible position, in seconds, that the playback can begin.\r
9835    */\r
9836   initialTime: number;\r
9837   /**\r
9838    * Gets TimeRanges for the current media resource that has been played.\r
9839    */\r
9840   played: TimeRanges;\r
9841   /**\r
9842    * Gets the address or URL of the current media resource that is selected by IHTMLMediaElement.\r
9843    */\r
9844   currentSrc: string;\r
9845   readyState: any;\r
9846   /**\r
9847    * The autobuffer element is not supported by Internet Explorer 9. Use the preload element instead.\r
9848    */\r
9849   autobuffer: boolean;\r
9850   /**\r
9851    * Gets or sets a flag to specify whether playback should restart after it completes.\r
9852    */\r
9853   loop: boolean;\r
9854   /**\r
9855    * Gets information about whether the playback has ended or not.\r
9856    */\r
9857   ended: boolean;\r
9858   /**\r
9859    * Gets a collection of buffered time ranges.\r
9860    */\r
9861   buffered: TimeRanges;\r
9862   /**\r
9863    * Returns an object representing the current error state of the audio or video element.\r
9864    */\r
9865   error: MediaError;\r
9866   /**\r
9867    * Returns a TimeRanges object that represents the ranges of the current media resource that can be seeked.\r
9868    */\r
9869   seekable: TimeRanges;\r
9870   /**\r
9871    * Gets or sets a value that indicates whether to start playing the media automatically.\r
9872    */\r
9873   autoplay: boolean;\r
9874   /**\r
9875    * Gets or sets a flag that indicates whether the client provides a set of controls for the media (in case the developer does not include controls for the player).\r
9876    */\r
9877   controls: boolean;\r
9878   /**\r
9879    * Gets or sets the volume level for audio portions of the media element.\r
9880    */\r
9881   volume: number;\r
9882   /**\r
9883    * The address or URL of the a media resource that is to be considered.\r
9884    */\r
9885   src: string;\r
9886   /**\r
9887    * Gets or sets the current rate of speed for the media resource to play. This speed is expressed as a multiple of the normal speed of the media resource.\r
9888    */\r
9889   playbackRate: number;\r
9890   /**\r
9891    * Returns the duration in seconds of the current media resource. A NaN value is returned if duration is not available, or Infinity if the media resource is streaming.\r
9892    */\r
9893   duration: number;\r
9894   /**\r
9895    * Gets or sets a flag that indicates whether the audio (either audio or the audio track on video media) is muted.\r
9896    */\r
9897   muted: boolean;\r
9898   /**\r
9899    * Gets or sets the default playback rate when the user is not using fast forward or reverse for a video or audio resource.\r
9900    */\r
9901   defaultPlaybackRate: number;\r
9902   /**\r
9903    * Gets a flag that specifies whether playback is paused.\r
9904    */\r
9905   paused: boolean;\r
9906   /**\r
9907    * Gets a flag that indicates whether the the client is currently moving to a new playback position in the media resource.\r
9908    */\r
9909   seeking: boolean;\r
9910   /**\r
9911    * Gets or sets the current playback position, in seconds.\r
9912    */\r
9913   currentTime: number;\r
9914   /**\r
9915    * Gets or sets the current playback position, in seconds.\r
9916    */\r
9917   preload: string;\r
9918   /**\r
9919    * Gets the current network activity for the element.\r
9920    */\r
9921   networkState: number;\r
9922   /**\r
9923    * Specifies the purpose of the audio or video media, such as background audio or alerts.\r
9924    */\r
9925   msAudioCategory: string;\r
9926   /**\r
9927    * Specifies whether or not to enable low-latency playback on the media element.\r
9928    */\r
9929   msRealTime: boolean;\r
9930   /**\r
9931    * Gets or sets the primary DLNA PlayTo device.\r
9932    */\r
9933   msPlayToPrimary: boolean;\r
9934   textTracks: TextTrackList;\r
9935   /**\r
9936    * Gets or sets whether the DLNA PlayTo device is available.\r
9937    */\r
9938   msPlayToDisabled: boolean;\r
9939   /**\r
9940    * Returns an AudioTrackList object with the audio tracks for a given video element.\r
9941    */\r
9942   audioTracks: AudioTrackList;\r
9943   /**\r
9944    * Gets the source associated with the media element for use by the PlayToManager.\r
9945    */\r
9946   msPlayToSource: any;\r
9947   /**\r
9948    * Specifies the output device id that the audio will be sent to.\r
9949    */\r
9950   msAudioDeviceType: string;\r
9951   /**\r
9952    * Gets or sets the path to the preferred media source. This enables the Play To target device to stream the media content, which can be DRM protected, from a different location, such as a cloud media server.\r
9953    */\r
9954   msPlayToPreferredSourceUri: string;\r
9955   onmsneedkey: (ev: MSMediaKeyNeededEvent) => any;\r
9956   /**\r
9957    * Gets the MSMediaKeys object, which is used for decrypting media data, that is associated with this media element.\r
9958    */\r
9959   msKeys: MSMediaKeys;\r
9960   msGraphicsTrustStatus: MSGraphicsTrust;\r
9961   /**\r
9962    * Pauses the current playback and sets paused to TRUE. This can be used to test whether the media is playing or paused. You can also use the pause or play events to tell whether the media is playing or not.\r
9963    */\r
9964   pause(): void;\r
9965   /**\r
9966    * Loads and starts playback of a media resource.\r
9967    */\r
9968   play(): void;\r
9969   /**\r
9970    * Fires immediately after the client loads the object.\r
9971    */\r
9972   load(): void;\r
9973   /**\r
9974    * Returns a string that specifies whether the client can play a given media resource type.\r
9975    */\r
9976   canPlayType(type: string): string;\r
9977   /**\r
9978    * Clears all effects from the media pipeline.\r
9979    */\r
9980   msClearEffects(): void;\r
9981   /**\r
9982    * Specifies the media protection manager for a given media pipeline.\r
9983    */\r
9984   msSetMediaProtectionManager(mediaProtectionManager?: any): void;\r
9985   /**\r
9986    * Inserts the specified audio effect into media pipeline.\r
9987    */\r
9988   msInsertAudioEffect(activatableClassId: string, effectRequired: boolean, config?: any): void;\r
9989   msSetMediaKeys(mediaKeys: MSMediaKeys): void;\r
9990   addTextTrack(kind: string, label?: string, language?: string): TextTrack;\r
9991   HAVE_METADATA: number;\r
9992   HAVE_CURRENT_DATA: number;\r
9993   HAVE_NOTHING: number;\r
9994   NETWORK_NO_SOURCE: number;\r
9995   HAVE_ENOUGH_DATA: number;\r
9996   NETWORK_EMPTY: number;\r
9997   NETWORK_LOADING: number;\r
9998   NETWORK_IDLE: number;\r
9999   HAVE_FUTURE_DATA: number;\r
10000   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10001   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10002   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10003   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10004   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10005   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10006   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10007   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10008   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
10009   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
10010   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
10011   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
10012   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
10013   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
10014   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
10015   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
10016   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
10017   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
10018   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
10019   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
10020   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
10021   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
10022   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
10023   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
10024   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10025   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
10026   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10027   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
10028   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10029   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10030   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
10031   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10032   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
10033   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10034   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10035   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10036   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
10037   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10038   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10039   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
10040   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10041   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10042   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10043   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10044   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10045   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10046   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10047   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10048   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10049   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10050   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10051   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10052   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10053   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10054   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10055   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10056   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10057   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10058   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10059   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10060   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10061   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10062   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
10063   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10064   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10065   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10066   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10067   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10068   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10069   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10070   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10071   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10072   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10073   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10074   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10075   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10076   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10077   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10078   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10079   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10080   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10081   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10082   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10083   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10084   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10085   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10086   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10087   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
10088   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10089   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10090   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10091   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10092   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
10093   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10094   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10095   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10096   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
10097   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10098   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10099   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10100   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
10101   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10102   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10103   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10104   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10105   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10106   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
10107   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10108   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10109   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10110   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10111   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10112   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10113   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10114   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10115   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10116   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10117   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10118   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10119   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10120   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
10121   addEventListener(type: "msneedkey", listener: (ev: MSMediaKeyNeededEvent) => any, useCapture?: boolean): void;\r
10122   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
10124 declare var HTMLMediaElement: {\r
10125   prototype: HTMLMediaElement;\r
10126   new(): HTMLMediaElement;\r
10127   HAVE_METADATA: number;\r
10128   HAVE_CURRENT_DATA: number;\r
10129   HAVE_NOTHING: number;\r
10130   NETWORK_NO_SOURCE: number;\r
10131   HAVE_ENOUGH_DATA: number;\r
10132   NETWORK_EMPTY: number;\r
10133   NETWORK_LOADING: number;\r
10134   NETWORK_IDLE: number;\r
10135   HAVE_FUTURE_DATA: number;\r
10138 interface ElementCSSInlineStyle {\r
10139   runtimeStyle: MSStyleCSSProperties;\r
10140   currentStyle: MSCurrentStyleCSSProperties;\r
10141   doScroll(component?: any): void;\r
10142   componentFromPoint(x: number, y: number): string;\r
10145 interface DOMParser {\r
10146   parseFromString(source: string, mimeType: string): Document;\r
10148 declare var DOMParser: {\r
10149   prototype: DOMParser;\r
10150   new(): DOMParser;\r
10153 interface MSMimeTypesCollection {\r
10154   length: number;\r
10156 declare var MSMimeTypesCollection: {\r
10157   prototype: MSMimeTypesCollection;\r
10158   new(): MSMimeTypesCollection;\r
10161 interface StyleSheet {\r
10162   disabled: boolean;\r
10163   ownerNode: Node;\r
10164   parentStyleSheet: StyleSheet;\r
10165   href: string;\r
10166   media: MediaList;\r
10167   type: string;\r
10168   title: string;\r
10170 declare var StyleSheet: {\r
10171   prototype: StyleSheet;\r
10172   new(): StyleSheet;\r
10175 interface SVGTextPathElement extends SVGTextContentElement, SVGURIReference {\r
10176   startOffset: SVGAnimatedLength;\r
10177   method: SVGAnimatedEnumeration;\r
10178   spacing: SVGAnimatedEnumeration;\r
10179   TEXTPATH_SPACINGTYPE_EXACT: number;\r
10180   TEXTPATH_METHODTYPE_STRETCH: number;\r
10181   TEXTPATH_SPACINGTYPE_AUTO: number;\r
10182   TEXTPATH_SPACINGTYPE_UNKNOWN: number;\r
10183   TEXTPATH_METHODTYPE_UNKNOWN: number;\r
10184   TEXTPATH_METHODTYPE_ALIGN: number;\r
10186 declare var SVGTextPathElement: {\r
10187   prototype: SVGTextPathElement;\r
10188   new(): SVGTextPathElement;\r
10189   TEXTPATH_SPACINGTYPE_EXACT: number;\r
10190   TEXTPATH_METHODTYPE_STRETCH: number;\r
10191   TEXTPATH_SPACINGTYPE_AUTO: number;\r
10192   TEXTPATH_SPACINGTYPE_UNKNOWN: number;\r
10193   TEXTPATH_METHODTYPE_UNKNOWN: number;\r
10194   TEXTPATH_METHODTYPE_ALIGN: number;\r
10197 interface HTMLDTElement extends HTMLElement {\r
10198   /**\r
10199    * Sets or retrieves whether the browser automatically performs wordwrap.\r
10200    */\r
10201   noWrap: boolean;\r
10203 declare var HTMLDTElement: {\r
10204   prototype: HTMLDTElement;\r
10205   new(): HTMLDTElement;\r
10208 interface NodeList {\r
10209   length: number;\r
10210   item(index: number): Node;\r
10211   [index: number]: Node;\r
10213 declare var NodeList: {\r
10214   prototype: NodeList;\r
10215   new(): NodeList;\r
10218 interface XMLSerializer {\r
10219   serializeToString(target: Node): string;\r
10221 declare var XMLSerializer: {\r
10222   prototype: XMLSerializer;\r
10223   new(): XMLSerializer;\r
10226 interface PerformanceMeasure extends PerformanceEntry {\r
10228 declare var PerformanceMeasure: {\r
10229   prototype: PerformanceMeasure;\r
10230   new(): PerformanceMeasure;\r
10233 interface SVGGradientElement extends SVGElement, SVGUnitTypes, SVGStylable, SVGExternalResourcesRequired, SVGURIReference {\r
10234   spreadMethod: SVGAnimatedEnumeration;\r
10235   gradientTransform: SVGAnimatedTransformList;\r
10236   gradientUnits: SVGAnimatedEnumeration;\r
10237   SVG_SPREADMETHOD_REFLECT: number;\r
10238   SVG_SPREADMETHOD_PAD: number;\r
10239   SVG_SPREADMETHOD_UNKNOWN: number;\r
10240   SVG_SPREADMETHOD_REPEAT: number;\r
10242 declare var SVGGradientElement: {\r
10243   prototype: SVGGradientElement;\r
10244   new(): SVGGradientElement;\r
10245   SVG_SPREADMETHOD_REFLECT: number;\r
10246   SVG_SPREADMETHOD_PAD: number;\r
10247   SVG_SPREADMETHOD_UNKNOWN: number;\r
10248   SVG_SPREADMETHOD_REPEAT: number;\r
10251 interface NodeFilter {\r
10252   acceptNode(n: Node): number;\r
10253   SHOW_ENTITY_REFERENCE: number;\r
10254   SHOW_NOTATION: number;\r
10255   SHOW_ENTITY: number;\r
10256   SHOW_DOCUMENT: number;\r
10257   SHOW_PROCESSING_INSTRUCTION: number;\r
10258   FILTER_REJECT: number;\r
10259   SHOW_CDATA_SECTION: number;\r
10260   FILTER_ACCEPT: number;\r
10261   SHOW_ALL: number;\r
10262   SHOW_DOCUMENT_TYPE: number;\r
10263   SHOW_TEXT: number;\r
10264   SHOW_ELEMENT: number;\r
10265   SHOW_COMMENT: number;\r
10266   FILTER_SKIP: number;\r
10267   SHOW_ATTRIBUTE: number;\r
10268   SHOW_DOCUMENT_FRAGMENT: number;\r
10270 declare var NodeFilter: NodeFilter;\r
10272 interface SVGNumberList {\r
10273   numberOfItems: number;\r
10274   replaceItem(newItem: SVGNumber, index: number): SVGNumber;\r
10275   getItem(index: number): SVGNumber;\r
10276   clear(): void;\r
10277   appendItem(newItem: SVGNumber): SVGNumber;\r
10278   initialize(newItem: SVGNumber): SVGNumber;\r
10279   removeItem(index: number): SVGNumber;\r
10280   insertItemBefore(newItem: SVGNumber, index: number): SVGNumber;\r
10282 declare var SVGNumberList: {\r
10283   prototype: SVGNumberList;\r
10284   new(): SVGNumberList;\r
10287 interface MediaError {\r
10288   code: number;\r
10289   msExtendedCode: number;\r
10290   MEDIA_ERR_ABORTED: number;\r
10291   MEDIA_ERR_NETWORK: number;\r
10292   MEDIA_ERR_SRC_NOT_SUPPORTED: number;\r
10293   MEDIA_ERR_DECODE: number;\r
10294   MS_MEDIA_ERR_ENCRYPTED: number;\r
10296 declare var MediaError: {\r
10297   prototype: MediaError;\r
10298   new(): MediaError;\r
10299   MEDIA_ERR_ABORTED: number;\r
10300   MEDIA_ERR_NETWORK: number;\r
10301   MEDIA_ERR_SRC_NOT_SUPPORTED: number;\r
10302   MEDIA_ERR_DECODE: number;\r
10303   MS_MEDIA_ERR_ENCRYPTED: number;\r
10306 interface HTMLFieldSetElement extends HTMLElement {\r
10307   /**\r
10308    * Sets or retrieves how the object is aligned with adjacent text.\r
10309    */\r
10310   align: string;\r
10311   /**\r
10312    * Retrieves a reference to the form that the object is embedded in.\r
10313    */\r
10314   form: HTMLFormElement;\r
10315   /**\r
10316    * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.\r
10317    */\r
10318   validationMessage: string;\r
10319   /**\r
10320    * Returns a  ValidityState object that represents the validity states of an element.\r
10321    */\r
10322   validity: ValidityState;\r
10323   /**\r
10324    * Returns whether an element will successfully validate based on forms validation rules and constraints.\r
10325    */\r
10326   willValidate: boolean;\r
10327   /**\r
10328    * Returns whether a form will validate when it is submitted, without having to submit it.\r
10329    */\r
10330   checkValidity(): boolean;\r
10331   /**\r
10332    * Sets a custom error message that is displayed when a form is submitted.\r
10333    * @param error Sets a custom error message that is displayed when a form is submitted.\r
10334    */\r
10335   setCustomValidity(error: string): void;\r
10337 declare var HTMLFieldSetElement: {\r
10338   prototype: HTMLFieldSetElement;\r
10339   new(): HTMLFieldSetElement;\r
10342 interface HTMLBGSoundElement extends HTMLElement {\r
10343   /**\r
10344    * Sets or gets the value indicating how the volume of the background sound is divided between the left speaker and the right speaker.\r
10345    */\r
10346   balance: any;\r
10347   /**\r
10348    * Sets or gets the volume setting for the sound.\r
10349    */\r
10350   volume: any;\r
10351   /**\r
10352    * Sets or gets the URL of a sound to play.\r
10353    */\r
10354   src: string;\r
10355   /**\r
10356    * Sets or retrieves the number of times a sound or video clip will loop when activated.\r
10357    */\r
10358   loop: number;\r
10360 declare var HTMLBGSoundElement: {\r
10361   prototype: HTMLBGSoundElement;\r
10362   new(): HTMLBGSoundElement;\r
10365 interface Comment extends CharacterData {\r
10366   text: string;\r
10368 declare var Comment: {\r
10369   prototype: Comment;\r
10370   new(): Comment;\r
10373 interface PerformanceResourceTiming extends PerformanceEntry {\r
10374   redirectStart: number;\r
10375   redirectEnd: number;\r
10376   domainLookupEnd: number;\r
10377   responseStart: number;\r
10378   domainLookupStart: number;\r
10379   fetchStart: number;\r
10380   requestStart: number;\r
10381   connectEnd: number;\r
10382   connectStart: number;\r
10383   initiatorType: string;\r
10384   responseEnd: number;\r
10386 declare var PerformanceResourceTiming: {\r
10387   prototype: PerformanceResourceTiming;\r
10388   new(): PerformanceResourceTiming;\r
10391 interface CanvasPattern {\r
10393 declare var CanvasPattern: {\r
10394   prototype: CanvasPattern;\r
10395   new(): CanvasPattern;\r
10398 interface HTMLHRElement extends HTMLElement, DOML2DeprecatedColorProperty, DOML2DeprecatedSizeProperty {\r
10399   /**\r
10400    * Sets or retrieves the width of the object.\r
10401    */\r
10402   width: number;\r
10403   /**\r
10404    * Sets or retrieves how the object is aligned with adjacent text.\r
10405    */\r
10406   align: string;\r
10407   /**\r
10408    * Sets or retrieves whether the horizontal rule is drawn with 3-D shading.\r
10409    */\r
10410   noShade: boolean;\r
10412 declare var HTMLHRElement: {\r
10413   prototype: HTMLHRElement;\r
10414   new(): HTMLHRElement;\r
10417 interface HTMLObjectElement extends HTMLElement, GetSVGDocument, DOML2DeprecatedMarginStyle, DOML2DeprecatedBorderStyle, DOML2DeprecatedAlignmentStyle, MSDataBindingExtensions, MSDataBindingRecordSetExtensions {\r
10418   /**\r
10419    * Sets or retrieves the width of the object.\r
10420    */\r
10421   width: string;\r
10422   /**\r
10423    * Sets or retrieves the Internet media type for the code associated with the object.\r
10424    */\r
10425   codeType: string;\r
10426   /**\r
10427    * Retrieves the contained object.\r
10428    */\r
10429   object: any;\r
10430   /**\r
10431    * Retrieves a reference to the form that the object is embedded in.\r
10432    */\r
10433   form: HTMLFormElement;\r
10434   /**\r
10435    * Sets or retrieves the URL of the file containing the compiled Java class.\r
10436    */\r
10437   code: string;\r
10438   /**\r
10439    * Sets or retrieves a character string that can be used to implement your own archive functionality for the object.\r
10440    */\r
10441   archive: string;\r
10442   /**\r
10443    * Sets or retrieves a message to be displayed while an object is loading.\r
10444    */\r
10445   standby: string;\r
10446   /**\r
10447    * Sets or retrieves a text alternative to the graphic.\r
10448    */\r
10449   alt: string;\r
10450   /**\r
10451    * Sets or retrieves the class identifier for the object.\r
10452    */\r
10453   classid: string;\r
10454   /**\r
10455    * Sets or retrieves the name of the object.\r
10456    */\r
10457   name: string;\r
10458   /**\r
10459    * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.\r
10460    */\r
10461   useMap: string;\r
10462   /**\r
10463    * Sets or retrieves the URL that references the data of the object.\r
10464    */\r
10465   data: string;\r
10466   /**\r
10467    * Sets or retrieves the height of the object.\r
10468    */\r
10469   height: string;\r
10470   /**\r
10471    * Retrieves the document object of the page or frame.\r
10472    */\r
10473   contentDocument: Document;\r
10474   /**\r
10475    * Gets or sets the optional alternative HTML script to execute if the object fails to load.\r
10476    */\r
10477   altHtml: string;\r
10478   /**\r
10479    * Sets or retrieves the URL of the component.\r
10480    */\r
10481   codeBase: string;\r
10482   declare: boolean;\r
10483   /**\r
10484    * Sets or retrieves the MIME type of the object.\r
10485    */\r
10486   type: string;\r
10487   /**\r
10488    * Retrieves a string of the URL where the object tag can be found. This is often the href of the document that the object is in, or the value set by a base element.\r
10489    */\r
10490   BaseHref: string;\r
10491   /**\r
10492    * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.\r
10493    */\r
10494   validationMessage: string;\r
10495   /**\r
10496    * Returns a  ValidityState object that represents the validity states of an element.\r
10497    */\r
10498   validity: ValidityState;\r
10499   /**\r
10500    * Returns whether an element will successfully validate based on forms validation rules and constraints.\r
10501    */\r
10502   willValidate: boolean;\r
10503   /**\r
10504    * Gets or sets the path to the preferred media source. This enables the Play To target device to stream the media content, which can be DRM protected, from a different location, such as a cloud media server.\r
10505    */\r
10506   msPlayToPreferredSourceUri: string;\r
10507   /**\r
10508    * Gets or sets the primary DLNA PlayTo device.\r
10509    */\r
10510   msPlayToPrimary: boolean;\r
10511   /**\r
10512    * Gets or sets whether the DLNA PlayTo device is available.\r
10513    */\r
10514   msPlayToDisabled: boolean;\r
10515   readyState: number;\r
10516   /**\r
10517    * Gets the source associated with the media element for use by the PlayToManager.\r
10518    */\r
10519   msPlayToSource: any;\r
10520   /**\r
10521    * Returns whether a form will validate when it is submitted, without having to submit it.\r
10522    */\r
10523   checkValidity(): boolean;\r
10524   /**\r
10525    * Sets a custom error message that is displayed when a form is submitted.\r
10526    * @param error Sets a custom error message that is displayed when a form is submitted.\r
10527    */\r
10528   setCustomValidity(error: string): void;\r
10530 declare var HTMLObjectElement: {\r
10531   prototype: HTMLObjectElement;\r
10532   new(): HTMLObjectElement;\r
10535 interface HTMLEmbedElement extends HTMLElement, GetSVGDocument {\r
10536   /**\r
10537    * Sets or retrieves the width of the object.\r
10538    */\r
10539   width: string;\r
10540   /**\r
10541    * Retrieves the palette used for the embedded document.\r
10542    */\r
10543   palette: string;\r
10544   /**\r
10545    * Sets or retrieves a URL to be loaded by the object.\r
10546    */\r
10547   src: string;\r
10548   /**\r
10549    * Sets or retrieves the name of the object.\r
10550    */\r
10551   name: string;\r
10552   hidden: string;\r
10553   /**\r
10554    * Retrieves the URL of the plug-in used to view an embedded document.\r
10555    */\r
10556   pluginspage: string;\r
10557   /**\r
10558    * Sets or retrieves the height of the object.\r
10559    */\r
10560   height: string;\r
10561   /**\r
10562    * Sets or retrieves the height and width units of the embed object.\r
10563    */\r
10564   units: string;\r
10565   /**\r
10566    * Gets or sets the path to the preferred media source. This enables the Play To target device to stream the media content, which can be DRM protected, from a different location, such as a cloud media server.\r
10567    */\r
10568   msPlayToPreferredSourceUri: string;\r
10569   /**\r
10570    * Gets or sets the primary DLNA PlayTo device.\r
10571    */\r
10572   msPlayToPrimary: boolean;\r
10573   /**\r
10574    * Gets or sets whether the DLNA PlayTo device is available.\r
10575    */\r
10576   msPlayToDisabled: boolean;\r
10577   readyState: string;\r
10578   /**\r
10579    * Gets the source associated with the media element for use by the PlayToManager.\r
10580    */\r
10581   msPlayToSource: any;\r
10583 declare var HTMLEmbedElement: {\r
10584   prototype: HTMLEmbedElement;\r
10585   new(): HTMLEmbedElement;\r
10588 interface StorageEvent extends Event {\r
10589   oldValue: any;\r
10590   newValue: any;\r
10591   url: string;\r
10592   storageArea: Storage;\r
10593   key: string;\r
10594   initStorageEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, keyArg: string, oldValueArg: any, newValueArg: any, urlArg: string, storageAreaArg: Storage): void;\r
10596 declare var StorageEvent: {\r
10597   prototype: StorageEvent;\r
10598   new(): StorageEvent;\r
10601 interface CharacterData extends Node {\r
10602   length: number;\r
10603   data: string;\r
10604   deleteData(offset: number, count: number): void;\r
10605   replaceData(offset: number, count: number, arg: string): void;\r
10606   appendData(arg: string): void;\r
10607   insertData(offset: number, arg: string): void;\r
10608   substringData(offset: number, count: number): string;\r
10610 declare var CharacterData: {\r
10611   prototype: CharacterData;\r
10612   new(): CharacterData;\r
10615 interface HTMLOptGroupElement extends HTMLElement, MSDataBindingExtensions {\r
10616   /**\r
10617    * Sets or retrieves the ordinal position of an option in a list box.\r
10618    */\r
10619   index: number;\r
10620   /**\r
10621    * Sets or retrieves the status of an option.\r
10622    */\r
10623   defaultSelected: boolean;\r
10624   /**\r
10625    * Sets or retrieves the text string specified by the option tag.\r
10626    */\r
10627   text: string;\r
10628   /**\r
10629    * Sets or retrieves the value which is returned to the server when the form control is submitted.\r
10630    */\r
10631   value: string;\r
10632   /**\r
10633    * Retrieves a reference to the form that the object is embedded in.\r
10634    */\r
10635   form: HTMLFormElement;\r
10636   /**\r
10637    * Sets or retrieves a value that you can use to implement your own label functionality for the object.\r
10638    */\r
10639   label: string;\r
10640   /**\r
10641    * Sets or retrieves whether the option in the list box is the default item.\r
10642    */\r
10643   selected: boolean;\r
10645 declare var HTMLOptGroupElement: {\r
10646   prototype: HTMLOptGroupElement;\r
10647   new(): HTMLOptGroupElement;\r
10650 interface HTMLIsIndexElement extends HTMLElement {\r
10651   /**\r
10652    * Retrieves a reference to the form that the object is embedded in.\r
10653    */\r
10654   form: HTMLFormElement;\r
10655   /**\r
10656    * Sets or retrieves the URL to which the form content is sent for processing.\r
10657    */\r
10658   action: string;\r
10659   prompt: string;\r
10661 declare var HTMLIsIndexElement: {\r
10662   prototype: HTMLIsIndexElement;\r
10663   new(): HTMLIsIndexElement;\r
10666 interface SVGPathSegLinetoRel extends SVGPathSeg {\r
10667   y: number;\r
10668   x: number;\r
10670 declare var SVGPathSegLinetoRel: {\r
10671   prototype: SVGPathSegLinetoRel;\r
10672   new(): SVGPathSegLinetoRel;\r
10675 interface DOMException {\r
10676   code: number;\r
10677   message: string;\r
10678   name: string;\r
10679   toString(): string;\r
10680   HIERARCHY_REQUEST_ERR: number;\r
10681   NO_MODIFICATION_ALLOWED_ERR: number;\r
10682   INVALID_MODIFICATION_ERR: number;\r
10683   NAMESPACE_ERR: number;\r
10684   INVALID_CHARACTER_ERR: number;\r
10685   TYPE_MISMATCH_ERR: number;\r
10686   ABORT_ERR: number;\r
10687   INVALID_STATE_ERR: number;\r
10688   SECURITY_ERR: number;\r
10689   NETWORK_ERR: number;\r
10690   WRONG_DOCUMENT_ERR: number;\r
10691   QUOTA_EXCEEDED_ERR: number;\r
10692   INDEX_SIZE_ERR: number;\r
10693   DOMSTRING_SIZE_ERR: number;\r
10694   SYNTAX_ERR: number;\r
10695   SERIALIZE_ERR: number;\r
10696   VALIDATION_ERR: number;\r
10697   NOT_FOUND_ERR: number;\r
10698   URL_MISMATCH_ERR: number;\r
10699   PARSE_ERR: number;\r
10700   NO_DATA_ALLOWED_ERR: number;\r
10701   NOT_SUPPORTED_ERR: number;\r
10702   INVALID_ACCESS_ERR: number;\r
10703   INUSE_ATTRIBUTE_ERR: number;\r
10704   INVALID_NODE_TYPE_ERR: number;\r
10705   DATA_CLONE_ERR: number;\r
10706   TIMEOUT_ERR: number;\r
10708 declare var DOMException: {\r
10709   prototype: DOMException;\r
10710   new(): DOMException;\r
10711   HIERARCHY_REQUEST_ERR: number;\r
10712   NO_MODIFICATION_ALLOWED_ERR: number;\r
10713   INVALID_MODIFICATION_ERR: number;\r
10714   NAMESPACE_ERR: number;\r
10715   INVALID_CHARACTER_ERR: number;\r
10716   TYPE_MISMATCH_ERR: number;\r
10717   ABORT_ERR: number;\r
10718   INVALID_STATE_ERR: number;\r
10719   SECURITY_ERR: number;\r
10720   NETWORK_ERR: number;\r
10721   WRONG_DOCUMENT_ERR: number;\r
10722   QUOTA_EXCEEDED_ERR: number;\r
10723   INDEX_SIZE_ERR: number;\r
10724   DOMSTRING_SIZE_ERR: number;\r
10725   SYNTAX_ERR: number;\r
10726   SERIALIZE_ERR: number;\r
10727   VALIDATION_ERR: number;\r
10728   NOT_FOUND_ERR: number;\r
10729   URL_MISMATCH_ERR: number;\r
10730   PARSE_ERR: number;\r
10731   NO_DATA_ALLOWED_ERR: number;\r
10732   NOT_SUPPORTED_ERR: number;\r
10733   INVALID_ACCESS_ERR: number;\r
10734   INUSE_ATTRIBUTE_ERR: number;\r
10735   INVALID_NODE_TYPE_ERR: number;\r
10736   DATA_CLONE_ERR: number;\r
10737   TIMEOUT_ERR: number;\r
10740 interface SVGAnimatedBoolean {\r
10741   animVal: boolean;\r
10742   baseVal: boolean;\r
10744 declare var SVGAnimatedBoolean: {\r
10745   prototype: SVGAnimatedBoolean;\r
10746   new(): SVGAnimatedBoolean;\r
10749 interface MSCompatibleInfoCollection {\r
10750   length: number;\r
10751   item(index: number): MSCompatibleInfo;\r
10753 declare var MSCompatibleInfoCollection: {\r
10754   prototype: MSCompatibleInfoCollection;\r
10755   new(): MSCompatibleInfoCollection;\r
10758 interface SVGSwitchElement extends SVGElement, SVGStylable, SVGTransformable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
10760 declare var SVGSwitchElement: {\r
10761   prototype: SVGSwitchElement;\r
10762   new(): SVGSwitchElement;\r
10765 interface SVGPreserveAspectRatio {\r
10766   align: number;\r
10767   meetOrSlice: number;\r
10768   SVG_PRESERVEASPECTRATIO_NONE: number;\r
10769   SVG_PRESERVEASPECTRATIO_XMINYMID: number;\r
10770   SVG_PRESERVEASPECTRATIO_XMAXYMIN: number;\r
10771   SVG_PRESERVEASPECTRATIO_XMINYMAX: number;\r
10772   SVG_PRESERVEASPECTRATIO_XMAXYMAX: number;\r
10773   SVG_MEETORSLICE_UNKNOWN: number;\r
10774   SVG_PRESERVEASPECTRATIO_XMAXYMID: number;\r
10775   SVG_PRESERVEASPECTRATIO_XMIDYMAX: number;\r
10776   SVG_PRESERVEASPECTRATIO_XMINYMIN: number;\r
10777   SVG_MEETORSLICE_MEET: number;\r
10778   SVG_PRESERVEASPECTRATIO_XMIDYMID: number;\r
10779   SVG_PRESERVEASPECTRATIO_XMIDYMIN: number;\r
10780   SVG_MEETORSLICE_SLICE: number;\r
10781   SVG_PRESERVEASPECTRATIO_UNKNOWN: number;\r
10783 declare var SVGPreserveAspectRatio: {\r
10784   prototype: SVGPreserveAspectRatio;\r
10785   new(): SVGPreserveAspectRatio;\r
10786   SVG_PRESERVEASPECTRATIO_NONE: number;\r
10787   SVG_PRESERVEASPECTRATIO_XMINYMID: number;\r
10788   SVG_PRESERVEASPECTRATIO_XMAXYMIN: number;\r
10789   SVG_PRESERVEASPECTRATIO_XMINYMAX: number;\r
10790   SVG_PRESERVEASPECTRATIO_XMAXYMAX: number;\r
10791   SVG_MEETORSLICE_UNKNOWN: number;\r
10792   SVG_PRESERVEASPECTRATIO_XMAXYMID: number;\r
10793   SVG_PRESERVEASPECTRATIO_XMIDYMAX: number;\r
10794   SVG_PRESERVEASPECTRATIO_XMINYMIN: number;\r
10795   SVG_MEETORSLICE_MEET: number;\r
10796   SVG_PRESERVEASPECTRATIO_XMIDYMID: number;\r
10797   SVG_PRESERVEASPECTRATIO_XMIDYMIN: number;\r
10798   SVG_MEETORSLICE_SLICE: number;\r
10799   SVG_PRESERVEASPECTRATIO_UNKNOWN: number;\r
10802 interface Attr extends Node {\r
10803   expando: boolean;\r
10804   specified: boolean;\r
10805   ownerElement: Element;\r
10806   value: string;\r
10807   name: string;\r
10809 declare var Attr: {\r
10810   prototype: Attr;\r
10811   new(): Attr;\r
10814 interface PerformanceNavigation {\r
10815   redirectCount: number;\r
10816   type: number;\r
10817   toJSON(): any;\r
10818   TYPE_RELOAD: number;\r
10819   TYPE_RESERVED: number;\r
10820   TYPE_BACK_FORWARD: number;\r
10821   TYPE_NAVIGATE: number;\r
10823 declare var PerformanceNavigation: {\r
10824   prototype: PerformanceNavigation;\r
10825   new(): PerformanceNavigation;\r
10826   TYPE_RELOAD: number;\r
10827   TYPE_RESERVED: number;\r
10828   TYPE_BACK_FORWARD: number;\r
10829   TYPE_NAVIGATE: number;\r
10832 interface SVGStopElement extends SVGElement, SVGStylable {\r
10833   offset: SVGAnimatedNumber;\r
10835 declare var SVGStopElement: {\r
10836   prototype: SVGStopElement;\r
10837   new(): SVGStopElement;\r
10840 interface PositionCallback {\r
10841   (position: Position): void;\r
10844 interface SVGSymbolElement extends SVGElement, SVGStylable, SVGLangSpace, SVGFitToViewBox, SVGExternalResourcesRequired {\r
10846 declare var SVGSymbolElement: {\r
10847   prototype: SVGSymbolElement;\r
10848   new(): SVGSymbolElement;\r
10851 interface SVGElementInstanceList {\r
10852   length: number;\r
10853   item(index: number): SVGElementInstance;\r
10855 declare var SVGElementInstanceList: {\r
10856   prototype: SVGElementInstanceList;\r
10857   new(): SVGElementInstanceList;\r
10860 interface CSSRuleList {\r
10861   length: number;\r
10862   item(index: number): CSSRule;\r
10863   [index: number]: CSSRule;\r
10865 declare var CSSRuleList: {\r
10866   prototype: CSSRuleList;\r
10867   new(): CSSRuleList;\r
10870 interface MSDataBindingRecordSetExtensions {\r
10871   recordset: any;\r
10872   namedRecordset(dataMember: string, hierarchy?: any): any;\r
10875 interface LinkStyle {\r
10876   styleSheet: StyleSheet;\r
10877   sheet: StyleSheet;\r
10880 interface HTMLVideoElement extends HTMLMediaElement {\r
10881   /**\r
10882    * Gets or sets the width of the video element.\r
10883    */\r
10884   width: number;\r
10885   /**\r
10886    * Gets the intrinsic width of a video in CSS pixels, or zero if the dimensions are not known.\r
10887    */\r
10888   videoWidth: number;\r
10889   /**\r
10890    * Gets the intrinsic height of a video in CSS pixels, or zero if the dimensions are not known.\r
10891    */\r
10892   videoHeight: number;\r
10893   /**\r
10894    * Gets or sets the height of the video element.\r
10895    */\r
10896   height: number;\r
10897   /**\r
10898    * Gets or sets a URL of an image to display, for example, like a movie poster. This can be a still frame from the video, or another image if no video data is available.\r
10899    */\r
10900   poster: string;\r
10901   msIsStereo3D: boolean;\r
10902   msStereo3DPackingMode: string;\r
10903   onMSVideoOptimalLayoutChanged: (ev: any) => any;\r
10904   onMSVideoFrameStepCompleted: (ev: any) => any;\r
10905   msStereo3DRenderMode: string;\r
10906   msIsLayoutOptimalForPlayback: boolean;\r
10907   msHorizontalMirror: boolean;\r
10908   onMSVideoFormatChanged: (ev: any) => any;\r
10909   msZoom: boolean;\r
10910   msInsertVideoEffect(activatableClassId: string, effectRequired: boolean, config?: any): void;\r
10911   msSetVideoRectangle(left: number, top: number, right: number, bottom: number): void;\r
10912   msFrameStep(forward: boolean): void;\r
10913   getVideoPlaybackQuality(): VideoPlaybackQuality;\r
10914   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10915   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10916   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10917   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10918   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10919   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10920   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10921   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10922   addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
10923   addEventListener(type: "msgotpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
10924   addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
10925   addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
10926   addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
10927   addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
10928   addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
10929   addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
10930   addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
10931   addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
10932   addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
10933   addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
10934   addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
10935   addEventListener(type: "mslostpointercapture", listener: (ev: any) => any, useCapture?: boolean): void;\r
10936   addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
10937   addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
10938   addEventListener(type: "lostpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10939   addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
10940   addEventListener(type: "gotpointercapture", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
10941   addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
10942   addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10943   addEventListener(type: "beforecut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10944   addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
10945   addEventListener(type: "move", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10946   addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
10947   addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10948   addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10949   addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10950   addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
10951   addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10952   addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10953   addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
10954   addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10955   addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10956   addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10957   addEventListener(type: "deactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10958   addEventListener(type: "datasetchanged", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10959   addEventListener(type: "rowsdelete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10960   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10961   addEventListener(type: "losecapture", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10962   addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10963   addEventListener(type: "controlselect", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10964   addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10965   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10966   addEventListener(type: "layoutcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10967   addEventListener(type: "beforeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
10968   addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10969   addEventListener(type: "beforeupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10970   addEventListener(type: "filterchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10971   addEventListener(type: "datasetcomplete", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10972   addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10973   addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10974   addEventListener(type: "errorupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10975   addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10976   addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
10977   addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10978   addEventListener(type: "cellchange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10979   addEventListener(type: "rowexit", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10980   addEventListener(type: "rowsinserted", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10981   addEventListener(type: "propertychange", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10982   addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10983   addEventListener(type: "beforepaste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10984   addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10985   addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10986   addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10987   addEventListener(type: "beforecopy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10988   addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10989   addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10990   addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10991   addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10992   addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10993   addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10994   addEventListener(type: "resizestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10995   addEventListener(type: "paste", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
10996   addEventListener(type: "moveend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
10997   addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
10998   addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
10999   addEventListener(type: "beforeeditfocus", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
11000   addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11001   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
11002   addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
11003   addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
11004   addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11005   addEventListener(type: "afterupdate", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
11006   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11007   addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11008   addEventListener(type: "resizeend", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
11009   addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11010   addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
11011   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11012   addEventListener(type: "dataavailable", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
11013   addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11014   addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
11015   addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11016   addEventListener(type: "beforedeactivate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11017   addEventListener(type: "activate", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11018   addEventListener(type: "movestart", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
11019   addEventListener(type: "selectstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11020   addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
11021   addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11022   addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11023   addEventListener(type: "cut", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
11024   addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11025   addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
11026   addEventListener(type: "copy", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
11027   addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11028   addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11029   addEventListener(type: "rowenter", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
11030   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11031   addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11032   addEventListener(type: "mscontentzoom", listener: (ev: MSEventObj) => any, useCapture?: boolean): void;\r
11033   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11034   addEventListener(type: "msmanipulationstatechanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
11035   addEventListener(type: "msneedkey", listener: (ev: MSMediaKeyNeededEvent) => any, useCapture?: boolean): void;\r
11036   addEventListener(type: "MSVideoOptimalLayoutChanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
11037   addEventListener(type: "MSVideoFrameStepCompleted", listener: (ev: any) => any, useCapture?: boolean): void;\r
11038   addEventListener(type: "MSVideoFormatChanged", listener: (ev: any) => any, useCapture?: boolean): void;\r
11039   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11041 declare var HTMLVideoElement: {\r
11042   prototype: HTMLVideoElement;\r
11043   new(): HTMLVideoElement;\r
11046 interface ClientRectList {\r
11047   length: number;\r
11048   item(index: number): ClientRect;\r
11049   [index: number]: ClientRect;\r
11051 declare var ClientRectList: {\r
11052   prototype: ClientRectList;\r
11053   new(): ClientRectList;\r
11056 interface SVGMaskElement extends SVGElement, SVGUnitTypes, SVGStylable, SVGLangSpace, SVGTests, SVGExternalResourcesRequired {\r
11057   y: SVGAnimatedLength;\r
11058   width: SVGAnimatedLength;\r
11059   maskUnits: SVGAnimatedEnumeration;\r
11060   maskContentUnits: SVGAnimatedEnumeration;\r
11061   x: SVGAnimatedLength;\r
11062   height: SVGAnimatedLength;\r
11064 declare var SVGMaskElement: {\r
11065   prototype: SVGMaskElement;\r
11066   new(): SVGMaskElement;\r
11069 interface External {\r
11071 declare var External: {\r
11072   prototype: External;\r
11073   new(): External;\r
11076 interface MSGestureEvent extends UIEvent {\r
11077   offsetY: number;\r
11078   translationY: number;\r
11079   velocityExpansion: number;\r
11080   velocityY: number;\r
11081   velocityAngular: number;\r
11082   translationX: number;\r
11083   velocityX: number;\r
11084   hwTimestamp: number;\r
11085   offsetX: number;\r
11086   screenX: number;\r
11087   rotation: number;\r
11088   expansion: number;\r
11089   clientY: number;\r
11090   screenY: number;\r
11091   scale: number;\r
11092   gestureObject: any;\r
11093   clientX: number;\r
11094   initGestureEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, offsetXArg: number, offsetYArg: number, translationXArg: number, translationYArg: number, scaleArg: number, expansionArg: number, rotationArg: number, velocityXArg: number, velocityYArg: number, velocityExpansionArg: number, velocityAngularArg: number, hwTimestampArg: number): void;\r
11095   MSGESTURE_FLAG_BEGIN: number;\r
11096   MSGESTURE_FLAG_END: number;\r
11097   MSGESTURE_FLAG_CANCEL: number;\r
11098   MSGESTURE_FLAG_INERTIA: number;\r
11099   MSGESTURE_FLAG_NONE: number;\r
11101 declare var MSGestureEvent: {\r
11102   prototype: MSGestureEvent;\r
11103   new(): MSGestureEvent;\r
11104   MSGESTURE_FLAG_BEGIN: number;\r
11105   MSGESTURE_FLAG_END: number;\r
11106   MSGESTURE_FLAG_CANCEL: number;\r
11107   MSGESTURE_FLAG_INERTIA: number;\r
11108   MSGESTURE_FLAG_NONE: number;\r
11111 interface ErrorEvent extends Event {\r
11112   colno: number;\r
11113   filename: string;\r
11114   error: any;\r
11115   lineno: number;\r
11116   message: string;\r
11117   initErrorEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, messageArg: string, filenameArg: string, linenoArg: number): void;\r
11119 declare var ErrorEvent: {\r
11120   prototype: ErrorEvent;\r
11121   new(): ErrorEvent;\r
11124 interface SVGFilterElement extends SVGElement, SVGUnitTypes, SVGStylable, SVGLangSpace, SVGURIReference, SVGExternalResourcesRequired {\r
11125   y: SVGAnimatedLength;\r
11126   width: SVGAnimatedLength;\r
11127   filterResX: SVGAnimatedInteger;\r
11128   filterUnits: SVGAnimatedEnumeration;\r
11129   primitiveUnits: SVGAnimatedEnumeration;\r
11130   x: SVGAnimatedLength;\r
11131   height: SVGAnimatedLength;\r
11132   filterResY: SVGAnimatedInteger;\r
11133   setFilterRes(filterResX: number, filterResY: number): void;\r
11135 declare var SVGFilterElement: {\r
11136   prototype: SVGFilterElement;\r
11137   new(): SVGFilterElement;\r
11140 interface TrackEvent extends Event {\r
11141   track: any;\r
11143 declare var TrackEvent: {\r
11144   prototype: TrackEvent;\r
11145   new(): TrackEvent;\r
11148 interface SVGFEMergeNodeElement extends SVGElement {\r
11149   in1: SVGAnimatedString;\r
11151 declare var SVGFEMergeNodeElement: {\r
11152   prototype: SVGFEMergeNodeElement;\r
11153   new(): SVGFEMergeNodeElement;\r
11156 interface SVGFEFloodElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11158 declare var SVGFEFloodElement: {\r
11159   prototype: SVGFEFloodElement;\r
11160   new(): SVGFEFloodElement;\r
11163 interface MSGesture {\r
11164   target: Element;\r
11165   addPointer(pointerId: number): void;\r
11166   stop(): void;\r
11168 declare var MSGesture: {\r
11169   prototype: MSGesture;\r
11170   new(): MSGesture;\r
11173 interface TextTrackCue extends EventTarget {\r
11174   onenter: (ev: Event) => any;\r
11175   track: TextTrack;\r
11176   endTime: number;\r
11177   text: string;\r
11178   pauseOnExit: boolean;\r
11179   id: string;\r
11180   startTime: number;\r
11181   onexit: (ev: Event) => any;\r
11182   getCueAsHTML(): DocumentFragment;\r
11183   addEventListener(type: "enter", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11184   addEventListener(type: "exit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11185   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11187 declare var TextTrackCue: {\r
11188   prototype: TextTrackCue;\r
11189   new(startTime: number, endTime: number, text: string): TextTrackCue;\r
11192 interface MSStreamReader extends MSBaseReader {\r
11193   error: DOMError;\r
11194   readAsArrayBuffer(stream: MSStream, size?: number): void;\r
11195   readAsBlob(stream: MSStream, size?: number): void;\r
11196   readAsDataURL(stream: MSStream, size?: number): void;\r
11197   readAsText(stream: MSStream, encoding?: string, size?: number): void;\r
11199 declare var MSStreamReader: {\r
11200   prototype: MSStreamReader;\r
11201   new(): MSStreamReader;\r
11204 interface DOMTokenList {\r
11205   length: number;\r
11206   contains(token: string): boolean;\r
11207   remove(token: string): void;\r
11208   toggle(token: string): boolean;\r
11209   add(token: string): void;\r
11210   item(index: number): string;\r
11211   [index: number]: string;\r
11212   toString(): string;\r
11214 declare var DOMTokenList: {\r
11215   prototype: DOMTokenList;\r
11216   new(): DOMTokenList;\r
11219 interface SVGFEFuncAElement extends SVGComponentTransferFunctionElement {\r
11221 declare var SVGFEFuncAElement: {\r
11222   prototype: SVGFEFuncAElement;\r
11223   new(): SVGFEFuncAElement;\r
11226 interface SVGFETileElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11227   in1: SVGAnimatedString;\r
11229 declare var SVGFETileElement: {\r
11230   prototype: SVGFETileElement;\r
11231   new(): SVGFETileElement;\r
11234 interface SVGFEBlendElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11235   in2: SVGAnimatedString;\r
11236   mode: SVGAnimatedEnumeration;\r
11237   in1: SVGAnimatedString;\r
11238   SVG_FEBLEND_MODE_DARKEN: number;\r
11239   SVG_FEBLEND_MODE_UNKNOWN: number;\r
11240   SVG_FEBLEND_MODE_MULTIPLY: number;\r
11241   SVG_FEBLEND_MODE_NORMAL: number;\r
11242   SVG_FEBLEND_MODE_SCREEN: number;\r
11243   SVG_FEBLEND_MODE_LIGHTEN: number;\r
11245 declare var SVGFEBlendElement: {\r
11246   prototype: SVGFEBlendElement;\r
11247   new(): SVGFEBlendElement;\r
11248   SVG_FEBLEND_MODE_DARKEN: number;\r
11249   SVG_FEBLEND_MODE_UNKNOWN: number;\r
11250   SVG_FEBLEND_MODE_MULTIPLY: number;\r
11251   SVG_FEBLEND_MODE_NORMAL: number;\r
11252   SVG_FEBLEND_MODE_SCREEN: number;\r
11253   SVG_FEBLEND_MODE_LIGHTEN: number;\r
11256 interface MessageChannel {\r
11257   port2: MessagePort;\r
11258   port1: MessagePort;\r
11260 declare var MessageChannel: {\r
11261   prototype: MessageChannel;\r
11262   new(): MessageChannel;\r
11265 interface SVGFEMergeElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11267 declare var SVGFEMergeElement: {\r
11268   prototype: SVGFEMergeElement;\r
11269   new(): SVGFEMergeElement;\r
11272 interface TransitionEvent extends Event {\r
11273   propertyName: string;\r
11274   elapsedTime: number;\r
11275   initTransitionEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, propertyNameArg: string, elapsedTimeArg: number): void;\r
11277 declare var TransitionEvent: {\r
11278   prototype: TransitionEvent;\r
11279   new(): TransitionEvent;\r
11282 interface MediaQueryList {\r
11283   matches: boolean;\r
11284   media: string;\r
11285   addListener(listener: MediaQueryListListener): void;\r
11286   removeListener(listener: MediaQueryListListener): void;\r
11288 declare var MediaQueryList: {\r
11289   prototype: MediaQueryList;\r
11290   new(): MediaQueryList;\r
11293 interface DOMError {\r
11294   name: string;\r
11295   toString(): string;\r
11297 declare var DOMError: {\r
11298   prototype: DOMError;\r
11299   new(): DOMError;\r
11302 interface CloseEvent extends Event {\r
11303   wasClean: boolean;\r
11304   reason: string;\r
11305   code: number;\r
11306   initCloseEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, wasCleanArg: boolean, codeArg: number, reasonArg: string): void;\r
11308 declare var CloseEvent: {\r
11309   prototype: CloseEvent;\r
11310   new(): CloseEvent;\r
11313 interface WebSocket extends EventTarget {\r
11314   protocol: string;\r
11315   readyState: number;\r
11316   bufferedAmount: number;\r
11317   onopen: (ev: Event) => any;\r
11318   extensions: string;\r
11319   onmessage: (ev: MessageEvent) => any;\r
11320   onclose: (ev: CloseEvent) => any;\r
11321   onerror: (ev: ErrorEvent) => any;\r
11322   binaryType: string;\r
11323   url: string;\r
11324   close(code?: number, reason?: string): void;\r
11325   send(data: any): void;\r
11326   OPEN: number;\r
11327   CLOSING: number;\r
11328   CONNECTING: number;\r
11329   CLOSED: number;\r
11330   addEventListener(type: "open", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11331   addEventListener(type: "message", listener: (ev: MessageEvent) => any, useCapture?: boolean): void;\r
11332   addEventListener(type: "close", listener: (ev: CloseEvent) => any, useCapture?: boolean): void;\r
11333   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11334   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11336 declare var WebSocket: {\r
11337   prototype: WebSocket;\r
11338   new(url: string, protocols?: string): WebSocket;\r
11339   new(url: string, protocols?: string[]): WebSocket;\r
11340   OPEN: number;\r
11341   CLOSING: number;\r
11342   CONNECTING: number;\r
11343   CLOSED: number;\r
11346 interface SVGFEPointLightElement extends SVGElement {\r
11347   y: SVGAnimatedNumber;\r
11348   x: SVGAnimatedNumber;\r
11349   z: SVGAnimatedNumber;\r
11351 declare var SVGFEPointLightElement: {\r
11352   prototype: SVGFEPointLightElement;\r
11353   new(): SVGFEPointLightElement;\r
11356 interface ProgressEvent extends Event {\r
11357   loaded: number;\r
11358   lengthComputable: boolean;\r
11359   total: number;\r
11360   initProgressEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, lengthComputableArg: boolean, loadedArg: number, totalArg: number): void;\r
11362 declare var ProgressEvent: {\r
11363   prototype: ProgressEvent;\r
11364   new(): ProgressEvent;\r
11367 interface IDBObjectStore {\r
11368   indexNames: DOMStringList;\r
11369   name: string;\r
11370   transaction: IDBTransaction;\r
11371   keyPath: string;\r
11372   count(key?: any): IDBRequest;\r
11373   add(value: any, key?: any): IDBRequest;\r
11374   clear(): IDBRequest;\r
11375   createIndex(name: string, keyPath: string, optionalParameters?: any): IDBIndex;\r
11376   put(value: any, key?: any): IDBRequest;\r
11377   openCursor(range?: any, direction?: string): IDBRequest;\r
11378   deleteIndex(indexName: string): void;\r
11379   index(name: string): IDBIndex;\r
11380   get(key: any): IDBRequest;\r
11381   delete(key: any): IDBRequest;\r
11383 declare var IDBObjectStore: {\r
11384   prototype: IDBObjectStore;\r
11385   new(): IDBObjectStore;\r
11388 interface SVGFEGaussianBlurElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11389   stdDeviationX: SVGAnimatedNumber;\r
11390   in1: SVGAnimatedString;\r
11391   stdDeviationY: SVGAnimatedNumber;\r
11392   setStdDeviation(stdDeviationX: number, stdDeviationY: number): void;\r
11394 declare var SVGFEGaussianBlurElement: {\r
11395   prototype: SVGFEGaussianBlurElement;\r
11396   new(): SVGFEGaussianBlurElement;\r
11399 interface SVGFilterPrimitiveStandardAttributes extends SVGStylable {\r
11400   y: SVGAnimatedLength;\r
11401   width: SVGAnimatedLength;\r
11402   x: SVGAnimatedLength;\r
11403   height: SVGAnimatedLength;\r
11404   result: SVGAnimatedString;\r
11407 interface IDBVersionChangeEvent extends Event {\r
11408   newVersion: number;\r
11409   oldVersion: number;\r
11411 declare var IDBVersionChangeEvent: {\r
11412   prototype: IDBVersionChangeEvent;\r
11413   new(): IDBVersionChangeEvent;\r
11416 interface IDBIndex {\r
11417   unique: boolean;\r
11418   name: string;\r
11419   keyPath: string;\r
11420   objectStore: IDBObjectStore;\r
11421   count(key?: any): IDBRequest;\r
11422   getKey(key: any): IDBRequest;\r
11423   openKeyCursor(range?: IDBKeyRange, direction?: string): IDBRequest;\r
11424   get(key: any): IDBRequest;\r
11425   openCursor(range?: IDBKeyRange, direction?: string): IDBRequest;\r
11427 declare var IDBIndex: {\r
11428   prototype: IDBIndex;\r
11429   new(): IDBIndex;\r
11432 interface FileList {\r
11433   length: number;\r
11434   item(index: number): File;\r
11435   [index: number]: File;\r
11437 declare var FileList: {\r
11438   prototype: FileList;\r
11439   new(): FileList;\r
11442 interface IDBCursor {\r
11443   source: any;\r
11444   direction: string;\r
11445   key: any;\r
11446   primaryKey: any;\r
11447   advance(count: number): void;\r
11448   delete(): IDBRequest;\r
11449   continue(key?: any): void;\r
11450   update(value: any): IDBRequest;\r
11451   PREV: string;\r
11452   PREV_NO_DUPLICATE: string;\r
11453   NEXT: string;\r
11454   NEXT_NO_DUPLICATE: string;\r
11456 declare var IDBCursor: {\r
11457   prototype: IDBCursor;\r
11458   new(): IDBCursor;\r
11459   PREV: string;\r
11460   PREV_NO_DUPLICATE: string;\r
11461   NEXT: string;\r
11462   NEXT_NO_DUPLICATE: string;\r
11465 interface SVGFESpecularLightingElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11466   kernelUnitLengthY: SVGAnimatedNumber;\r
11467   surfaceScale: SVGAnimatedNumber;\r
11468   specularExponent: SVGAnimatedNumber;\r
11469   in1: SVGAnimatedString;\r
11470   kernelUnitLengthX: SVGAnimatedNumber;\r
11471   specularConstant: SVGAnimatedNumber;\r
11473 declare var SVGFESpecularLightingElement: {\r
11474   prototype: SVGFESpecularLightingElement;\r
11475   new(): SVGFESpecularLightingElement;\r
11478 interface File extends Blob {\r
11479   lastModifiedDate: any;\r
11480   name: string;\r
11482 declare var File: {\r
11483   prototype: File;\r
11484   new(): File;\r
11487 interface URL {\r
11488   revokeObjectURL(url: string): void;\r
11489   createObjectURL(object: any, options?: ObjectURLOptions): string;\r
11491 declare var URL: URL;\r
11493 interface IDBCursorWithValue extends IDBCursor {\r
11494   value: any;\r
11496 declare var IDBCursorWithValue: {\r
11497   prototype: IDBCursorWithValue;\r
11498   new(): IDBCursorWithValue;\r
11501 interface XMLHttpRequestEventTarget extends EventTarget {\r
11502   onprogress: (ev: ProgressEvent) => any;\r
11503   onerror: (ev: ErrorEvent) => any;\r
11504   onload: (ev: Event) => any;\r
11505   ontimeout: (ev: Event) => any;\r
11506   onabort: (ev: UIEvent) => any;\r
11507   onloadstart: (ev: Event) => any;\r
11508   onloadend: (ev: ProgressEvent) => any;\r
11509   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
11510   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11511   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11512   addEventListener(type: "timeout", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11513   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11514   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11515   addEventListener(type: "loadend", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
11516   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11518 declare var XMLHttpRequestEventTarget: {\r
11519   prototype: XMLHttpRequestEventTarget;\r
11520   new(): XMLHttpRequestEventTarget;\r
11523 interface IDBEnvironment {\r
11524   msIndexedDB: IDBFactory;\r
11525   indexedDB: IDBFactory;\r
11528 interface AudioTrackList extends EventTarget {\r
11529   length: number;\r
11530   onchange: (ev: Event) => any;\r
11531   onaddtrack: (ev: TrackEvent) => any;\r
11532   onremovetrack: (ev: any /*PluginArray*/) => any;\r
11533   getTrackById(id: string): AudioTrack;\r
11534   item(index: number): AudioTrack;\r
11535   [index: number]: AudioTrack;\r
11536   addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11537   addEventListener(type: "addtrack", listener: (ev: TrackEvent) => any, useCapture?: boolean): void;\r
11538   addEventListener(type: "removetrack", listener: (ev: any /*PluginArray*/) => any, useCapture?: boolean): void;\r
11539   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11541 declare var AudioTrackList: {\r
11542   prototype: AudioTrackList;\r
11543   new(): AudioTrackList;\r
11546 interface MSBaseReader extends EventTarget {\r
11547   onprogress: (ev: ProgressEvent) => any;\r
11548   readyState: number;\r
11549   onabort: (ev: UIEvent) => any;\r
11550   onloadend: (ev: ProgressEvent) => any;\r
11551   onerror: (ev: ErrorEvent) => any;\r
11552   onload: (ev: Event) => any;\r
11553   onloadstart: (ev: Event) => any;\r
11554   result: any;\r
11555   abort(): void;\r
11556   LOADING: number;\r
11557   EMPTY: number;\r
11558   DONE: number;\r
11559   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
11560   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11561   addEventListener(type: "loadend", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
11562   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11563   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11564   addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11565   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11568 interface SVGFEMorphologyElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11569   operator: SVGAnimatedEnumeration;\r
11570   radiusX: SVGAnimatedNumber;\r
11571   radiusY: SVGAnimatedNumber;\r
11572   in1: SVGAnimatedString;\r
11573   SVG_MORPHOLOGY_OPERATOR_UNKNOWN: number;\r
11574   SVG_MORPHOLOGY_OPERATOR_ERODE: number;\r
11575   SVG_MORPHOLOGY_OPERATOR_DILATE: number;\r
11577 declare var SVGFEMorphologyElement: {\r
11578   prototype: SVGFEMorphologyElement;\r
11579   new(): SVGFEMorphologyElement;\r
11580   SVG_MORPHOLOGY_OPERATOR_UNKNOWN: number;\r
11581   SVG_MORPHOLOGY_OPERATOR_ERODE: number;\r
11582   SVG_MORPHOLOGY_OPERATOR_DILATE: number;\r
11585 interface SVGFEFuncRElement extends SVGComponentTransferFunctionElement {\r
11587 declare var SVGFEFuncRElement: {\r
11588   prototype: SVGFEFuncRElement;\r
11589   new(): SVGFEFuncRElement;\r
11592 interface WindowTimersExtension {\r
11593   msSetImmediate(expression: any, ...args: any[]): number;\r
11594   clearImmediate(handle: number): void;\r
11595   msClearImmediate(handle: number): void;\r
11596   setImmediate(expression: any, ...args: any[]): number;\r
11599 interface SVGFEDisplacementMapElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11600   in2: SVGAnimatedString;\r
11601   xChannelSelector: SVGAnimatedEnumeration;\r
11602   yChannelSelector: SVGAnimatedEnumeration;\r
11603   scale: SVGAnimatedNumber;\r
11604   in1: SVGAnimatedString;\r
11605   SVG_CHANNEL_B: number;\r
11606   SVG_CHANNEL_R: number;\r
11607   SVG_CHANNEL_G: number;\r
11608   SVG_CHANNEL_UNKNOWN: number;\r
11609   SVG_CHANNEL_A: number;\r
11611 declare var SVGFEDisplacementMapElement: {\r
11612   prototype: SVGFEDisplacementMapElement;\r
11613   new(): SVGFEDisplacementMapElement;\r
11614   SVG_CHANNEL_B: number;\r
11615   SVG_CHANNEL_R: number;\r
11616   SVG_CHANNEL_G: number;\r
11617   SVG_CHANNEL_UNKNOWN: number;\r
11618   SVG_CHANNEL_A: number;\r
11621 interface AnimationEvent extends Event {\r
11622   animationName: string;\r
11623   elapsedTime: number;\r
11624   initAnimationEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, animationNameArg: string, elapsedTimeArg: number): void;\r
11626 declare var AnimationEvent: {\r
11627   prototype: AnimationEvent;\r
11628   new(): AnimationEvent;\r
11631 interface SVGComponentTransferFunctionElement extends SVGElement {\r
11632   tableValues: SVGAnimatedNumberList;\r
11633   slope: SVGAnimatedNumber;\r
11634   type: SVGAnimatedEnumeration;\r
11635   exponent: SVGAnimatedNumber;\r
11636   amplitude: SVGAnimatedNumber;\r
11637   intercept: SVGAnimatedNumber;\r
11638   offset: SVGAnimatedNumber;\r
11639   SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN: number;\r
11640   SVG_FECOMPONENTTRANSFER_TYPE_TABLE: number;\r
11641   SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY: number;\r
11642   SVG_FECOMPONENTTRANSFER_TYPE_GAMMA: number;\r
11643   SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE: number;\r
11644   SVG_FECOMPONENTTRANSFER_TYPE_LINEAR: number;\r
11646 declare var SVGComponentTransferFunctionElement: {\r
11647   prototype: SVGComponentTransferFunctionElement;\r
11648   new(): SVGComponentTransferFunctionElement;\r
11649   SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN: number;\r
11650   SVG_FECOMPONENTTRANSFER_TYPE_TABLE: number;\r
11651   SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY: number;\r
11652   SVG_FECOMPONENTTRANSFER_TYPE_GAMMA: number;\r
11653   SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE: number;\r
11654   SVG_FECOMPONENTTRANSFER_TYPE_LINEAR: number;\r
11657 interface MSRangeCollection {\r
11658   length: number;\r
11659   item(index: number): Range;\r
11660   [index: number]: Range;\r
11662 declare var MSRangeCollection: {\r
11663   prototype: MSRangeCollection;\r
11664   new(): MSRangeCollection;\r
11667 interface SVGFEDistantLightElement extends SVGElement {\r
11668   azimuth: SVGAnimatedNumber;\r
11669   elevation: SVGAnimatedNumber;\r
11671 declare var SVGFEDistantLightElement: {\r
11672   prototype: SVGFEDistantLightElement;\r
11673   new(): SVGFEDistantLightElement;\r
11676 interface SVGFEFuncBElement extends SVGComponentTransferFunctionElement {\r
11678 declare var SVGFEFuncBElement: {\r
11679   prototype: SVGFEFuncBElement;\r
11680   new(): SVGFEFuncBElement;\r
11683 interface IDBKeyRange {\r
11684   upper: any;\r
11685   upperOpen: boolean;\r
11686   lower: any;\r
11687   lowerOpen: boolean;\r
11689 declare var IDBKeyRange: {\r
11690   prototype: IDBKeyRange;\r
11691   new(): IDBKeyRange;\r
11692   bound(lower: any, upper: any, lowerOpen?: boolean, upperOpen?: boolean): IDBKeyRange;\r
11693   only(value: any): IDBKeyRange;\r
11694   lowerBound(bound: any, open?: boolean): IDBKeyRange;\r
11695   upperBound(bound: any, open?: boolean): IDBKeyRange;\r
11698 interface WindowConsole {\r
11699   console: Console;\r
11702 interface IDBTransaction extends EventTarget {\r
11703   oncomplete: (ev: Event) => any;\r
11704   db: IDBDatabase;\r
11705   mode: string;\r
11706   error: DOMError;\r
11707   onerror: (ev: ErrorEvent) => any;\r
11708   onabort: (ev: UIEvent) => any;\r
11709   abort(): void;\r
11710   objectStore(name: string): IDBObjectStore;\r
11711   READ_ONLY: string;\r
11712   VERSION_CHANGE: string;\r
11713   READ_WRITE: string;\r
11714   addEventListener(type: "complete", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11715   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11716   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11717   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11719 declare var IDBTransaction: {\r
11720   prototype: IDBTransaction;\r
11721   new(): IDBTransaction;\r
11722   READ_ONLY: string;\r
11723   VERSION_CHANGE: string;\r
11724   READ_WRITE: string;\r
11727 interface AudioTrack {\r
11728   kind: string;\r
11729   language: string;\r
11730   id: string;\r
11731   label: string;\r
11732   enabled: boolean;\r
11733   sourceBuffer: SourceBuffer;\r
11735 declare var AudioTrack: {\r
11736   prototype: AudioTrack;\r
11737   new(): AudioTrack;\r
11740 interface SVGFEConvolveMatrixElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11741   orderY: SVGAnimatedInteger;\r
11742   kernelUnitLengthY: SVGAnimatedNumber;\r
11743   orderX: SVGAnimatedInteger;\r
11744   preserveAlpha: SVGAnimatedBoolean;\r
11745   kernelMatrix: SVGAnimatedNumberList;\r
11746   edgeMode: SVGAnimatedEnumeration;\r
11747   kernelUnitLengthX: SVGAnimatedNumber;\r
11748   bias: SVGAnimatedNumber;\r
11749   targetX: SVGAnimatedInteger;\r
11750   targetY: SVGAnimatedInteger;\r
11751   divisor: SVGAnimatedNumber;\r
11752   in1: SVGAnimatedString;\r
11753   SVG_EDGEMODE_WRAP: number;\r
11754   SVG_EDGEMODE_DUPLICATE: number;\r
11755   SVG_EDGEMODE_UNKNOWN: number;\r
11756   SVG_EDGEMODE_NONE: number;\r
11758 declare var SVGFEConvolveMatrixElement: {\r
11759   prototype: SVGFEConvolveMatrixElement;\r
11760   new(): SVGFEConvolveMatrixElement;\r
11761   SVG_EDGEMODE_WRAP: number;\r
11762   SVG_EDGEMODE_DUPLICATE: number;\r
11763   SVG_EDGEMODE_UNKNOWN: number;\r
11764   SVG_EDGEMODE_NONE: number;\r
11767 interface TextTrackCueList {\r
11768   length: number;\r
11769   item(index: number): TextTrackCue;\r
11770   [index: number]: TextTrackCue;\r
11771   getCueById(id: string): TextTrackCue;\r
11773 declare var TextTrackCueList: {\r
11774   prototype: TextTrackCueList;\r
11775   new(): TextTrackCueList;\r
11778 interface CSSKeyframesRule extends CSSRule {\r
11779   name: string;\r
11780   cssRules: CSSRuleList;\r
11781   findRule(rule: string): CSSKeyframeRule;\r
11782   deleteRule(rule: string): void;\r
11783   appendRule(rule: string): void;\r
11785 declare var CSSKeyframesRule: {\r
11786   prototype: CSSKeyframesRule;\r
11787   new(): CSSKeyframesRule;\r
11790 interface SVGFETurbulenceElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11791   baseFrequencyX: SVGAnimatedNumber;\r
11792   numOctaves: SVGAnimatedInteger;\r
11793   type: SVGAnimatedEnumeration;\r
11794   baseFrequencyY: SVGAnimatedNumber;\r
11795   stitchTiles: SVGAnimatedEnumeration;\r
11796   seed: SVGAnimatedNumber;\r
11797   SVG_STITCHTYPE_UNKNOWN: number;\r
11798   SVG_STITCHTYPE_NOSTITCH: number;\r
11799   SVG_TURBULENCE_TYPE_UNKNOWN: number;\r
11800   SVG_TURBULENCE_TYPE_TURBULENCE: number;\r
11801   SVG_TURBULENCE_TYPE_FRACTALNOISE: number;\r
11802   SVG_STITCHTYPE_STITCH: number;\r
11804 declare var SVGFETurbulenceElement: {\r
11805   prototype: SVGFETurbulenceElement;\r
11806   new(): SVGFETurbulenceElement;\r
11807   SVG_STITCHTYPE_UNKNOWN: number;\r
11808   SVG_STITCHTYPE_NOSTITCH: number;\r
11809   SVG_TURBULENCE_TYPE_UNKNOWN: number;\r
11810   SVG_TURBULENCE_TYPE_TURBULENCE: number;\r
11811   SVG_TURBULENCE_TYPE_FRACTALNOISE: number;\r
11812   SVG_STITCHTYPE_STITCH: number;\r
11815 interface TextTrackList extends EventTarget {\r
11816   length: number;\r
11817   onaddtrack: (ev: TrackEvent) => any;\r
11818   item(index: number): TextTrack;\r
11819   [index: number]: TextTrack;\r
11820   addEventListener(type: "addtrack", listener: (ev: TrackEvent) => any, useCapture?: boolean): void;\r
11821   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11823 declare var TextTrackList: {\r
11824   prototype: TextTrackList;\r
11825   new(): TextTrackList;\r
11828 interface SVGFEFuncGElement extends SVGComponentTransferFunctionElement {\r
11830 declare var SVGFEFuncGElement: {\r
11831   prototype: SVGFEFuncGElement;\r
11832   new(): SVGFEFuncGElement;\r
11835 interface SVGFEColorMatrixElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11836   in1: SVGAnimatedString;\r
11837   type: SVGAnimatedEnumeration;\r
11838   values: SVGAnimatedNumberList;\r
11839   SVG_FECOLORMATRIX_TYPE_SATURATE: number;\r
11840   SVG_FECOLORMATRIX_TYPE_UNKNOWN: number;\r
11841   SVG_FECOLORMATRIX_TYPE_MATRIX: number;\r
11842   SVG_FECOLORMATRIX_TYPE_HUEROTATE: number;\r
11843   SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA: number;\r
11845 declare var SVGFEColorMatrixElement: {\r
11846   prototype: SVGFEColorMatrixElement;\r
11847   new(): SVGFEColorMatrixElement;\r
11848   SVG_FECOLORMATRIX_TYPE_SATURATE: number;\r
11849   SVG_FECOLORMATRIX_TYPE_UNKNOWN: number;\r
11850   SVG_FECOLORMATRIX_TYPE_MATRIX: number;\r
11851   SVG_FECOLORMATRIX_TYPE_HUEROTATE: number;\r
11852   SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA: number;\r
11855 interface SVGFESpotLightElement extends SVGElement {\r
11856   pointsAtY: SVGAnimatedNumber;\r
11857   y: SVGAnimatedNumber;\r
11858   limitingConeAngle: SVGAnimatedNumber;\r
11859   specularExponent: SVGAnimatedNumber;\r
11860   x: SVGAnimatedNumber;\r
11861   pointsAtZ: SVGAnimatedNumber;\r
11862   z: SVGAnimatedNumber;\r
11863   pointsAtX: SVGAnimatedNumber;\r
11865 declare var SVGFESpotLightElement: {\r
11866   prototype: SVGFESpotLightElement;\r
11867   new(): SVGFESpotLightElement;\r
11870 interface WindowBase64 {\r
11871   btoa(rawString: string): string;\r
11872   atob(encodedString: string): string;\r
11875 interface IDBDatabase extends EventTarget {\r
11876   version: string;\r
11877   name: string;\r
11878   objectStoreNames: DOMStringList;\r
11879   onerror: (ev: ErrorEvent) => any;\r
11880   onabort: (ev: UIEvent) => any;\r
11881   createObjectStore(name: string, optionalParameters?: any): IDBObjectStore;\r
11882   close(): void;\r
11883   transaction(storeNames: any, mode?: string): IDBTransaction;\r
11884   deleteObjectStore(name: string): void;\r
11885   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11886   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
11887   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11889 declare var IDBDatabase: {\r
11890   prototype: IDBDatabase;\r
11891   new(): IDBDatabase;\r
11894 interface DOMStringList {\r
11895   length: number;\r
11896   contains(str: string): boolean;\r
11897   item(index: number): string;\r
11898   [index: number]: string;\r
11900 declare var DOMStringList: {\r
11901   prototype: DOMStringList;\r
11902   new(): DOMStringList;\r
11905 interface IDBOpenDBRequest extends IDBRequest {\r
11906   onupgradeneeded: (ev: IDBVersionChangeEvent) => any;\r
11907   onblocked: (ev: Event) => any;\r
11908   addEventListener(type: "success", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11909   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11910   addEventListener(type: "upgradeneeded", listener: (ev: IDBVersionChangeEvent) => any, useCapture?: boolean): void;\r
11911   addEventListener(type: "blocked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11912   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11914 declare var IDBOpenDBRequest: {\r
11915   prototype: IDBOpenDBRequest;\r
11916   new(): IDBOpenDBRequest;\r
11919 interface HTMLProgressElement extends HTMLElement {\r
11920   /**\r
11921    * Sets or gets the current value of a progress element. The value must be a non-negative number between 0 and the max value.\r
11922    */\r
11923   value: number;\r
11924   /**\r
11925    * Defines the maximum, or "done" value for a progress element.\r
11926    */\r
11927   max: number;\r
11928   /**\r
11929    * Returns the quotient of value/max when the value attribute is set (determinate progress bar), or -1 when the value attribute is missing (indeterminate progress bar).\r
11930    */\r
11931   position: number;\r
11932   /**\r
11933    * Retrieves a reference to the form that the object is embedded in.\r
11934    */\r
11935   form: HTMLFormElement;\r
11937 declare var HTMLProgressElement: {\r
11938   prototype: HTMLProgressElement;\r
11939   new(): HTMLProgressElement;\r
11942 interface MSLaunchUriCallback {\r
11943   (): void;\r
11946 interface SVGFEOffsetElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
11947   dy: SVGAnimatedNumber;\r
11948   in1: SVGAnimatedString;\r
11949   dx: SVGAnimatedNumber;\r
11951 declare var SVGFEOffsetElement: {\r
11952   prototype: SVGFEOffsetElement;\r
11953   new(): SVGFEOffsetElement;\r
11956 interface MSUnsafeFunctionCallback {\r
11957   (): any;\r
11960 interface TextTrack extends EventTarget {\r
11961   language: string;\r
11962   mode: any;\r
11963   readyState: number;\r
11964   activeCues: TextTrackCueList;\r
11965   cues: TextTrackCueList;\r
11966   oncuechange: (ev: Event) => any;\r
11967   kind: string;\r
11968   onload: (ev: Event) => any;\r
11969   onerror: (ev: ErrorEvent) => any;\r
11970   label: string;\r
11971   addCue(cue: TextTrackCue): void;\r
11972   removeCue(cue: TextTrackCue): void;\r
11973   ERROR: number;\r
11974   SHOWING: number;\r
11975   LOADING: number;\r
11976   LOADED: number;\r
11977   NONE: number;\r
11978   HIDDEN: number;\r
11979   DISABLED: number;\r
11980   addEventListener(type: "cuechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11981   addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
11982   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
11983   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
11985 declare var TextTrack: {\r
11986   prototype: TextTrack;\r
11987   new(): TextTrack;\r
11988   ERROR: number;\r
11989   SHOWING: number;\r
11990   LOADING: number;\r
11991   LOADED: number;\r
11992   NONE: number;\r
11993   HIDDEN: number;\r
11994   DISABLED: number;\r
11997 interface MediaQueryListListener {\r
11998   (mql: MediaQueryList): void;\r
12001 interface IDBRequest extends EventTarget {\r
12002   source: any;\r
12003   onsuccess: (ev: Event) => any;\r
12004   error: DOMError;\r
12005   transaction: IDBTransaction;\r
12006   onerror: (ev: ErrorEvent) => any;\r
12007   readyState: string;\r
12008   result: any;\r
12009   addEventListener(type: "success", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12010   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
12011   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12013 declare var IDBRequest: {\r
12014   prototype: IDBRequest;\r
12015   new(): IDBRequest;\r
12018 interface MessagePort extends EventTarget {\r
12019   onmessage: (ev: MessageEvent) => any;\r
12020   close(): void;\r
12021   postMessage(message?: any, ports?: any): void;\r
12022   start(): void;\r
12023   addEventListener(type: "message", listener: (ev: MessageEvent) => any, useCapture?: boolean): void;\r
12024   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12026 declare var MessagePort: {\r
12027   prototype: MessagePort;\r
12028   new(): MessagePort;\r
12031 interface FileReader extends MSBaseReader {\r
12032   error: DOMError;\r
12033   readAsArrayBuffer(blob: Blob): void;\r
12034   readAsDataURL(blob: Blob): void;\r
12035   readAsText(blob: Blob, encoding?: string): void;\r
12037 declare var FileReader: {\r
12038   prototype: FileReader;\r
12039   new(): FileReader;\r
12042 interface ApplicationCache extends EventTarget {\r
12043   status: number;\r
12044   ondownloading: (ev: Event) => any;\r
12045   onprogress: (ev: ProgressEvent) => any;\r
12046   onupdateready: (ev: Event) => any;\r
12047   oncached: (ev: Event) => any;\r
12048   onobsolete: (ev: Event) => any;\r
12049   onerror: (ev: ErrorEvent) => any;\r
12050   onchecking: (ev: Event) => any;\r
12051   onnoupdate: (ev: Event) => any;\r
12052   swapCache(): void;\r
12053   abort(): void;\r
12054   update(): void;\r
12055   CHECKING: number;\r
12056   UNCACHED: number;\r
12057   UPDATEREADY: number;\r
12058   DOWNLOADING: number;\r
12059   IDLE: number;\r
12060   OBSOLETE: number;\r
12061   addEventListener(type: "downloading", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12062   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
12063   addEventListener(type: "updateready", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12064   addEventListener(type: "cached", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12065   addEventListener(type: "obsolete", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12066   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
12067   addEventListener(type: "checking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12068   addEventListener(type: "noupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12069   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12071 declare var ApplicationCache: {\r
12072   prototype: ApplicationCache;\r
12073   new(): ApplicationCache;\r
12074   CHECKING: number;\r
12075   UNCACHED: number;\r
12076   UPDATEREADY: number;\r
12077   DOWNLOADING: number;\r
12078   IDLE: number;\r
12079   OBSOLETE: number;\r
12082 interface FrameRequestCallback {\r
12083   (time: number): void;\r
12086 interface PopStateEvent extends Event {\r
12087   state: any;\r
12088   initPopStateEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, stateArg: any): void;\r
12090 declare var PopStateEvent: {\r
12091   prototype: PopStateEvent;\r
12092   new(): PopStateEvent;\r
12095 interface CSSKeyframeRule extends CSSRule {\r
12096   keyText: string;\r
12097   style: CSSStyleDeclaration;\r
12099 declare var CSSKeyframeRule: {\r
12100   prototype: CSSKeyframeRule;\r
12101   new(): CSSKeyframeRule;\r
12104 interface MSFileSaver {\r
12105   msSaveBlob(blob: any, defaultName?: string): boolean;\r
12106   msSaveOrOpenBlob(blob: any, defaultName?: string): boolean;\r
12109 interface MSStream {\r
12110   type: string;\r
12111   msDetachStream(): any;\r
12112   msClose(): void;\r
12114 declare var MSStream: {\r
12115   prototype: MSStream;\r
12116   new(): MSStream;\r
12119 interface MSBlobBuilder {\r
12120   append(data: any, endings?: string): void;\r
12121   getBlob(contentType?: string): Blob;\r
12123 declare var MSBlobBuilder: {\r
12124   prototype: MSBlobBuilder;\r
12125   new(): MSBlobBuilder;\r
12128 interface DOMSettableTokenList extends DOMTokenList {\r
12129   value: string;\r
12131 declare var DOMSettableTokenList: {\r
12132   prototype: DOMSettableTokenList;\r
12133   new(): DOMSettableTokenList;\r
12136 interface IDBFactory {\r
12137   open(name: string, version?: number): IDBOpenDBRequest;\r
12138   cmp(first: any, second: any): number;\r
12139   deleteDatabase(name: string): IDBOpenDBRequest;\r
12141 declare var IDBFactory: {\r
12142   prototype: IDBFactory;\r
12143   new(): IDBFactory;\r
12146 interface MSPointerEvent extends MouseEvent {\r
12147   width: number;\r
12148   rotation: number;\r
12149   pressure: number;\r
12150   pointerType: any;\r
12151   isPrimary: boolean;\r
12152   tiltY: number;\r
12153   height: number;\r
12154   intermediatePoints: any;\r
12155   currentPoint: any;\r
12156   tiltX: number;\r
12157   hwTimestamp: number;\r
12158   pointerId: number;\r
12159   initPointerEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: EventTarget, offsetXArg: number, offsetYArg: number, widthArg: number, heightArg: number, pressure: number, rotation: number, tiltX: number, tiltY: number, pointerIdArg: number, pointerType: any, hwTimestampArg: number, isPrimary: boolean): void;\r
12160   getCurrentPoint(element: Element): void;\r
12161   getIntermediatePoints(element: Element): void;\r
12162   MSPOINTER_TYPE_PEN: number;\r
12163   MSPOINTER_TYPE_MOUSE: number;\r
12164   MSPOINTER_TYPE_TOUCH: number;\r
12166 declare var MSPointerEvent: {\r
12167   prototype: MSPointerEvent;\r
12168   new(): MSPointerEvent;\r
12169   MSPOINTER_TYPE_PEN: number;\r
12170   MSPOINTER_TYPE_MOUSE: number;\r
12171   MSPOINTER_TYPE_TOUCH: number;\r
12174 interface MSManipulationEvent extends UIEvent {\r
12175   lastState: number;\r
12176   currentState: number;\r
12177   initMSManipulationEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, lastState: number, currentState: number): void;\r
12178   MS_MANIPULATION_STATE_STOPPED: number;\r
12179   MS_MANIPULATION_STATE_ACTIVE: number;\r
12180   MS_MANIPULATION_STATE_INERTIA: number;\r
12181   MS_MANIPULATION_STATE_SELECTING: number;\r
12182   MS_MANIPULATION_STATE_COMMITTED: number;\r
12183   MS_MANIPULATION_STATE_PRESELECT: number;\r
12184   MS_MANIPULATION_STATE_DRAGGING: number;\r
12185   MS_MANIPULATION_STATE_CANCELLED: number;\r
12187 declare var MSManipulationEvent: {\r
12188   prototype: MSManipulationEvent;\r
12189   new(): MSManipulationEvent;\r
12190   MS_MANIPULATION_STATE_STOPPED: number;\r
12191   MS_MANIPULATION_STATE_ACTIVE: number;\r
12192   MS_MANIPULATION_STATE_INERTIA: number;\r
12193   MS_MANIPULATION_STATE_SELECTING: number;\r
12194   MS_MANIPULATION_STATE_COMMITTED: number;\r
12195   MS_MANIPULATION_STATE_PRESELECT: number;\r
12196   MS_MANIPULATION_STATE_DRAGGING: number;\r
12197   MS_MANIPULATION_STATE_CANCELLED: number;\r
12200 interface FormData {\r
12201   append(name: any, value: any, blobName?: string): void;\r
12203 declare var FormData: {\r
12204   prototype: FormData;\r
12205   new(): FormData;\r
12208 interface HTMLDataListElement extends HTMLElement {\r
12209   options: HTMLCollection;\r
12211 declare var HTMLDataListElement: {\r
12212   prototype: HTMLDataListElement;\r
12213   new(): HTMLDataListElement;\r
12216 interface SVGFEImageElement extends SVGElement, SVGLangSpace, SVGFilterPrimitiveStandardAttributes, SVGURIReference, SVGExternalResourcesRequired {\r
12217   preserveAspectRatio: SVGAnimatedPreserveAspectRatio;\r
12219 declare var SVGFEImageElement: {\r
12220   prototype: SVGFEImageElement;\r
12221   new(): SVGFEImageElement;\r
12224 interface AbstractWorker extends EventTarget {\r
12225   onerror: (ev: ErrorEvent) => any;\r
12226   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
12227   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12230 interface SVGFECompositeElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
12231   operator: SVGAnimatedEnumeration;\r
12232   in2: SVGAnimatedString;\r
12233   k2: SVGAnimatedNumber;\r
12234   k1: SVGAnimatedNumber;\r
12235   k3: SVGAnimatedNumber;\r
12236   in1: SVGAnimatedString;\r
12237   k4: SVGAnimatedNumber;\r
12238   SVG_FECOMPOSITE_OPERATOR_OUT: number;\r
12239   SVG_FECOMPOSITE_OPERATOR_OVER: number;\r
12240   SVG_FECOMPOSITE_OPERATOR_XOR: number;\r
12241   SVG_FECOMPOSITE_OPERATOR_ARITHMETIC: number;\r
12242   SVG_FECOMPOSITE_OPERATOR_UNKNOWN: number;\r
12243   SVG_FECOMPOSITE_OPERATOR_IN: number;\r
12244   SVG_FECOMPOSITE_OPERATOR_ATOP: number;\r
12246 declare var SVGFECompositeElement: {\r
12247   prototype: SVGFECompositeElement;\r
12248   new(): SVGFECompositeElement;\r
12249   SVG_FECOMPOSITE_OPERATOR_OUT: number;\r
12250   SVG_FECOMPOSITE_OPERATOR_OVER: number;\r
12251   SVG_FECOMPOSITE_OPERATOR_XOR: number;\r
12252   SVG_FECOMPOSITE_OPERATOR_ARITHMETIC: number;\r
12253   SVG_FECOMPOSITE_OPERATOR_UNKNOWN: number;\r
12254   SVG_FECOMPOSITE_OPERATOR_IN: number;\r
12255   SVG_FECOMPOSITE_OPERATOR_ATOP: number;\r
12258 interface ValidityState {\r
12259   customError: boolean;\r
12260   valueMissing: boolean;\r
12261   stepMismatch: boolean;\r
12262   rangeUnderflow: boolean;\r
12263   rangeOverflow: boolean;\r
12264   typeMismatch: boolean;\r
12265   patternMismatch: boolean;\r
12266   tooLong: boolean;\r
12267   valid: boolean;\r
12269 declare var ValidityState: {\r
12270   prototype: ValidityState;\r
12271   new(): ValidityState;\r
12274 interface HTMLTrackElement extends HTMLElement {\r
12275   kind: string;\r
12276   src: string;\r
12277   srclang: string;\r
12278   track: TextTrack;\r
12279   label: string;\r
12280   default: boolean;\r
12281   readyState: number;\r
12282   ERROR: number;\r
12283   LOADING: number;\r
12284   LOADED: number;\r
12285   NONE: number;\r
12287 declare var HTMLTrackElement: {\r
12288   prototype: HTMLTrackElement;\r
12289   new(): HTMLTrackElement;\r
12290   ERROR: number;\r
12291   LOADING: number;\r
12292   LOADED: number;\r
12293   NONE: number;\r
12296 interface MSApp {\r
12297   createFileFromStorageFile(storageFile: any): File;\r
12298   createBlobFromRandomAccessStream(type: string, seeker: any): Blob;\r
12299   createStreamFromInputStream(type: string, inputStream: any): MSStream;\r
12300   terminateApp(exceptionObject: any): void;\r
12301   createDataPackage(object: any): any;\r
12302   execUnsafeLocalFunction(unsafeFunction: MSUnsafeFunctionCallback): any;\r
12303   getHtmlPrintDocumentSource(htmlDoc: any): any;\r
12304   addPublicLocalApplicationUri(uri: string): void;\r
12305   createDataPackageFromSelection(): any;\r
12306   getViewOpener(): MSAppView;\r
12307   suppressSubdownloadCredentialPrompts(suppress: boolean): void;\r
12308   execAsyncAtPriority(asynchronousCallback: MSExecAtPriorityFunctionCallback, priority: string, ...args: any[]): void;\r
12309   isTaskScheduledAtPriorityOrHigher(priority: string): boolean;\r
12310   execAtPriority(synchronousCallback: MSExecAtPriorityFunctionCallback, priority: string, ...args: any[]): any;\r
12311   createNewView(uri: string): MSAppView;\r
12312   getCurrentPriority(): string;\r
12313   NORMAL: string;\r
12314   HIGH: string;\r
12315   IDLE: string;\r
12316   CURRENT: string;\r
12318 declare var MSApp: MSApp;\r
12320 interface SVGFEComponentTransferElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
12321   in1: SVGAnimatedString;\r
12323 declare var SVGFEComponentTransferElement: {\r
12324   prototype: SVGFEComponentTransferElement;\r
12325   new(): SVGFEComponentTransferElement;\r
12328 interface SVGFEDiffuseLightingElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {\r
12329   kernelUnitLengthY: SVGAnimatedNumber;\r
12330   surfaceScale: SVGAnimatedNumber;\r
12331   in1: SVGAnimatedString;\r
12332   kernelUnitLengthX: SVGAnimatedNumber;\r
12333   diffuseConstant: SVGAnimatedNumber;\r
12335 declare var SVGFEDiffuseLightingElement: {\r
12336   prototype: SVGFEDiffuseLightingElement;\r
12337   new(): SVGFEDiffuseLightingElement;\r
12340 interface MSCSSMatrix {\r
12341   m24: number;\r
12342   m34: number;\r
12343   a: number;\r
12344   d: number;\r
12345   m32: number;\r
12346   m41: number;\r
12347   m11: number;\r
12348   f: number;\r
12349   e: number;\r
12350   m23: number;\r
12351   m14: number;\r
12352   m33: number;\r
12353   m22: number;\r
12354   m21: number;\r
12355   c: number;\r
12356   m12: number;\r
12357   b: number;\r
12358   m42: number;\r
12359   m31: number;\r
12360   m43: number;\r
12361   m13: number;\r
12362   m44: number;\r
12363   multiply(secondMatrix: MSCSSMatrix): MSCSSMatrix;\r
12364   skewY(angle: number): MSCSSMatrix;\r
12365   setMatrixValue(value: string): void;\r
12366   inverse(): MSCSSMatrix;\r
12367   rotateAxisAngle(x: number, y: number, z: number, angle: number): MSCSSMatrix;\r
12368   toString(): string;\r
12369   rotate(angleX: number, angleY?: number, angleZ?: number): MSCSSMatrix;\r
12370   translate(x: number, y: number, z?: number): MSCSSMatrix;\r
12371   scale(scaleX: number, scaleY?: number, scaleZ?: number): MSCSSMatrix;\r
12372   skewX(angle: number): MSCSSMatrix;\r
12374 declare var MSCSSMatrix: {\r
12375   prototype: MSCSSMatrix;\r
12376   new(text?: string): MSCSSMatrix;\r
12379 interface Worker extends AbstractWorker {\r
12380   onmessage: (ev: MessageEvent) => any;\r
12381   postMessage(message: any, ports?: any): void;\r
12382   terminate(): void;\r
12383   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
12384   addEventListener(type: "message", listener: (ev: MessageEvent) => any, useCapture?: boolean): void;\r
12385   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12387 declare var Worker: {\r
12388   prototype: Worker;\r
12389   new(stringUrl: string): Worker;\r
12392 interface MSExecAtPriorityFunctionCallback {\r
12393   (...args: any[]): any;\r
12396 interface MSGraphicsTrust {\r
12397   status: string;\r
12398   constrictionActive: boolean;\r
12400 declare var MSGraphicsTrust: {\r
12401   prototype: MSGraphicsTrust;\r
12402   new(): MSGraphicsTrust;\r
12405 interface SubtleCrypto {\r
12406   unwrapKey(wrappedKey: ArrayBufferView, keyAlgorithm: any, keyEncryptionKey: Key, extractable?: boolean, keyUsages?: string[]): KeyOperation;\r
12407   encrypt(algorithm: any, key: Key, buffer?: ArrayBufferView): CryptoOperation;\r
12408   importKey(format: string, keyData: ArrayBufferView, algorithm: any, extractable?: boolean, keyUsages?: string[]): KeyOperation;\r
12409   wrapKey(key: Key, keyEncryptionKey: Key, keyWrappingAlgorithm: any): KeyOperation;\r
12410   verify(algorithm: any, key: Key, signature: ArrayBufferView, buffer?: ArrayBufferView): CryptoOperation;\r
12411   deriveKey(algorithm: any, baseKey: Key, derivedKeyType: any, extractable?: boolean, keyUsages?: string[]): KeyOperation;\r
12412   digest(algorithm: any, buffer?: ArrayBufferView): CryptoOperation;\r
12413   exportKey(format: string, key: Key): KeyOperation;\r
12414   generateKey(algorithm: any, extractable?: boolean, keyUsages?: string[]): KeyOperation;\r
12415   sign(algorithm: any, key: Key, buffer?: ArrayBufferView): CryptoOperation;\r
12416   decrypt(algorithm: any, key: Key, buffer?: ArrayBufferView): CryptoOperation;\r
12418 declare var SubtleCrypto: {\r
12419   prototype: SubtleCrypto;\r
12420   new(): SubtleCrypto;\r
12423 interface Crypto extends RandomSource {\r
12424   subtle: SubtleCrypto;\r
12426 declare var Crypto: {\r
12427   prototype: Crypto;\r
12428   new(): Crypto;\r
12431 interface VideoPlaybackQuality {\r
12432   totalFrameDelay: number;\r
12433   creationTime: number;\r
12434   totalVideoFrames: number;\r
12435   droppedVideoFrames: number;\r
12437 declare var VideoPlaybackQuality: {\r
12438   prototype: VideoPlaybackQuality;\r
12439   new(): VideoPlaybackQuality;\r
12442 interface GlobalEventHandlers {\r
12443   onpointerenter: (ev: PointerEvent) => any;\r
12444   onpointerout: (ev: PointerEvent) => any;\r
12445   onpointerdown: (ev: PointerEvent) => any;\r
12446   onpointerup: (ev: PointerEvent) => any;\r
12447   onpointercancel: (ev: PointerEvent) => any;\r
12448   onpointerover: (ev: PointerEvent) => any;\r
12449   onpointermove: (ev: PointerEvent) => any;\r
12450   onpointerleave: (ev: PointerEvent) => any;\r
12451   addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12452   addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12453   addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12454   addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12455   addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12456   addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12457   addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12458   addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
12459   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12462 interface Key {\r
12463   algorithm: Algorithm;\r
12464   type: string;\r
12465   extractable: boolean;\r
12466   keyUsage: string[];\r
12468 declare var Key: {\r
12469   prototype: Key;\r
12470   new(): Key;\r
12473 interface DeviceAcceleration {\r
12474   y: number;\r
12475   x: number;\r
12476   z: number;\r
12478 declare var DeviceAcceleration: {\r
12479   prototype: DeviceAcceleration;\r
12480   new(): DeviceAcceleration;\r
12483 interface HTMLAllCollection extends HTMLCollection {\r
12484   namedItem(name: string): Element;\r
12485   // [name: string]: Element;\r
12487 declare var HTMLAllCollection: {\r
12488   prototype: HTMLAllCollection;\r
12489   new(): HTMLAllCollection;\r
12492 interface AesGcmEncryptResult {\r
12493   ciphertext: ArrayBuffer;\r
12494   tag: ArrayBuffer;\r
12496 declare var AesGcmEncryptResult: {\r
12497   prototype: AesGcmEncryptResult;\r
12498   new(): AesGcmEncryptResult;\r
12501 interface NavigationCompletedEvent extends NavigationEvent {\r
12502   webErrorStatus: number;\r
12503   isSuccess: boolean;\r
12505 declare var NavigationCompletedEvent: {\r
12506   prototype: NavigationCompletedEvent;\r
12507   new(): NavigationCompletedEvent;\r
12510 interface MutationRecord {\r
12511   oldValue: string;\r
12512   previousSibling: Node;\r
12513   addedNodes: NodeList;\r
12514   attributeName: string;\r
12515   removedNodes: NodeList;\r
12516   target: Node;\r
12517   nextSibling: Node;\r
12518   attributeNamespace: string;\r
12519   type: string;\r
12521 declare var MutationRecord: {\r
12522   prototype: MutationRecord;\r
12523   new(): MutationRecord;\r
12526 interface MimeTypeArray {\r
12527   length: number;\r
12528   item(index: number): Plugin;\r
12529   [index: number]: Plugin;\r
12530   namedItem(type: string): Plugin;\r
12531   // [type: string]: Plugin;\r
12533 declare var MimeTypeArray: {\r
12534   prototype: MimeTypeArray;\r
12535   new(): MimeTypeArray;\r
12538 interface KeyOperation extends EventTarget {\r
12539   oncomplete: (ev: Event) => any;\r
12540   onerror: (ev: ErrorEvent) => any;\r
12541   result: any;\r
12542   addEventListener(type: "complete", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12543   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
12544   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12546 declare var KeyOperation: {\r
12547   prototype: KeyOperation;\r
12548   new(): KeyOperation;\r
12551 interface DOMStringMap {\r
12553 declare var DOMStringMap: {\r
12554   prototype: DOMStringMap;\r
12555   new(): DOMStringMap;\r
12558 interface DeviceOrientationEvent extends Event {\r
12559   gamma: number;\r
12560   alpha: number;\r
12561   absolute: boolean;\r
12562   beta: number;\r
12563   initDeviceOrientationEvent(type: string, bubbles: boolean, cancelable: boolean, alpha: number, beta: number, gamma: number, absolute: boolean): void;\r
12565 declare var DeviceOrientationEvent: {\r
12566   prototype: DeviceOrientationEvent;\r
12567   new(): DeviceOrientationEvent;\r
12570 interface MSMediaKeys {\r
12571   keySystem: string;\r
12572   createSession(type: string, initData: Uint8Array, cdmData?: Uint8Array): MSMediaKeySession;\r
12574 declare var MSMediaKeys: {\r
12575   prototype: MSMediaKeys;\r
12576   new(keySystem: string): MSMediaKeys;\r
12577   isTypeSupported(keySystem: string, type?: string): boolean;\r
12580 interface MSMediaKeyMessageEvent extends Event {\r
12581   destinationURL: string;\r
12582   message: Uint8Array;\r
12584 declare var MSMediaKeyMessageEvent: {\r
12585   prototype: MSMediaKeyMessageEvent;\r
12586   new(): MSMediaKeyMessageEvent;\r
12589 interface MSHTMLWebViewElement extends HTMLElement {\r
12590   documentTitle: string;\r
12591   width: number;\r
12592   src: string;\r
12593   canGoForward: boolean;\r
12594   height: number;\r
12595   canGoBack: boolean;\r
12596   navigateWithHttpRequestMessage(requestMessage: any): void;\r
12597   goBack(): void;\r
12598   navigate(uri: string): void;\r
12599   stop(): void;\r
12600   navigateToString(contents: string): void;\r
12601   captureSelectedContentToDataPackageAsync(): MSWebViewAsyncOperation;\r
12602   capturePreviewToBlobAsync(): MSWebViewAsyncOperation;\r
12603   refresh(): void;\r
12604   goForward(): void;\r
12605   navigateToLocalStreamUri(source: string, streamResolver: any): void;\r
12606   invokeScriptAsync(scriptName: string, ...args: any[]): MSWebViewAsyncOperation;\r
12607   buildLocalStreamUri(contentIdentifier: string, relativePath: string): string;\r
12609 declare var MSHTMLWebViewElement: {\r
12610   prototype: MSHTMLWebViewElement;\r
12611   new(): MSHTMLWebViewElement;\r
12614 interface NavigationEvent extends Event {\r
12615   uri: string;\r
12617 declare var NavigationEvent: {\r
12618   prototype: NavigationEvent;\r
12619   new(): NavigationEvent;\r
12622 interface RandomSource {\r
12623   getRandomValues(array: ArrayBufferView): ArrayBufferView;\r
12626 interface SourceBuffer extends EventTarget {\r
12627   updating: boolean;\r
12628   appendWindowStart: number;\r
12629   appendWindowEnd: number;\r
12630   buffered: TimeRanges;\r
12631   timestampOffset: number;\r
12632   audioTracks: AudioTrackList;\r
12633   appendBuffer(data: ArrayBuffer): void;\r
12634   remove(start: number, end: number): void;\r
12635   abort(): void;\r
12636   appendStream(stream: MSStream, maxSize?: number): void;\r
12638 declare var SourceBuffer: {\r
12639   prototype: SourceBuffer;\r
12640   new(): SourceBuffer;\r
12643 interface MSInputMethodContext extends EventTarget {\r
12644   oncandidatewindowshow: (ev: any) => any;\r
12645   target: HTMLElement;\r
12646   compositionStartOffset: number;\r
12647   oncandidatewindowhide: (ev: any) => any;\r
12648   oncandidatewindowupdate: (ev: any) => any;\r
12649   compositionEndOffset: number;\r
12650   getCompositionAlternatives(): string[];\r
12651   getCandidateWindowClientRect(): ClientRect;\r
12652   hasComposition(): boolean;\r
12653   isCandidateWindowVisible(): boolean;\r
12654   addEventListener(type: "candidatewindowshow", listener: (ev: any) => any, useCapture?: boolean): void;\r
12655   addEventListener(type: "candidatewindowhide", listener: (ev: any) => any, useCapture?: boolean): void;\r
12656   addEventListener(type: "candidatewindowupdate", listener: (ev: any) => any, useCapture?: boolean): void;\r
12657   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12659 declare var MSInputMethodContext: {\r
12660   prototype: MSInputMethodContext;\r
12661   new(): MSInputMethodContext;\r
12664 interface DeviceRotationRate {\r
12665   gamma: number;\r
12666   alpha: number;\r
12667   beta: number;\r
12669 declare var DeviceRotationRate: {\r
12670   prototype: DeviceRotationRate;\r
12671   new(): DeviceRotationRate;\r
12674 interface PluginArray {\r
12675   length: number;\r
12676   refresh(reload?: boolean): void;\r
12677   item(index: number): Plugin;\r
12678   [index: number]: Plugin;\r
12679   namedItem(name: string): Plugin;\r
12680   // [name: string]: Plugin;\r
12682 declare var PluginArray: {\r
12683   prototype: PluginArray;\r
12684   new(): PluginArray;\r
12687 interface MSMediaKeyError {\r
12688   systemCode: number;\r
12689   code: number;\r
12690   MS_MEDIA_KEYERR_SERVICE: number;\r
12691   MS_MEDIA_KEYERR_HARDWARECHANGE: number;\r
12692   MS_MEDIA_KEYERR_OUTPUT: number;\r
12693   MS_MEDIA_KEYERR_DOMAIN: number;\r
12694   MS_MEDIA_KEYERR_UNKNOWN: number;\r
12695   MS_MEDIA_KEYERR_CLIENT: number;\r
12697 declare var MSMediaKeyError: {\r
12698   prototype: MSMediaKeyError;\r
12699   new(): MSMediaKeyError;\r
12700   MS_MEDIA_KEYERR_SERVICE: number;\r
12701   MS_MEDIA_KEYERR_HARDWARECHANGE: number;\r
12702   MS_MEDIA_KEYERR_OUTPUT: number;\r
12703   MS_MEDIA_KEYERR_DOMAIN: number;\r
12704   MS_MEDIA_KEYERR_UNKNOWN: number;\r
12705   MS_MEDIA_KEYERR_CLIENT: number;\r
12708 interface Plugin {\r
12709   length: number;\r
12710   filename: string;\r
12711   version: string;\r
12712   name: string;\r
12713   description: string;\r
12714   item(index: number): MimeType;\r
12715   [index: number]: MimeType;\r
12716   namedItem(type: string): MimeType;\r
12717   // [type: string]: MimeType;\r
12719 declare var Plugin: {\r
12720   prototype: Plugin;\r
12721   new(): Plugin;\r
12724 interface MediaSource extends EventTarget {\r
12725   sourceBuffers: SourceBufferList;\r
12726   duration: number;\r
12727   readyState: string;\r
12728   activeSourceBuffers: SourceBufferList;\r
12729   addSourceBuffer(type: string): SourceBuffer;\r
12730   endOfStream(error?: string): void;\r
12731   removeSourceBuffer(sourceBuffer: SourceBuffer): void;\r
12733 declare var MediaSource: {\r
12734   prototype: MediaSource;\r
12735   new(): MediaSource;\r
12736   isTypeSupported(type: string): boolean;\r
12739 interface SourceBufferList extends EventTarget {\r
12740   length: number;\r
12741   item(index: number): SourceBuffer;\r
12742   [index: number]: SourceBuffer;\r
12744 declare var SourceBufferList: {\r
12745   prototype: SourceBufferList;\r
12746   new(): SourceBufferList;\r
12749 interface XMLDocument extends Document {\r
12751 declare var XMLDocument: {\r
12752   prototype: XMLDocument;\r
12753   new(): XMLDocument;\r
12756 interface DeviceMotionEvent extends Event {\r
12757   rotationRate: DeviceRotationRate;\r
12758   acceleration: DeviceAcceleration;\r
12759   interval: number;\r
12760   accelerationIncludingGravity: DeviceAcceleration;\r
12761   initDeviceMotionEvent(type: string, bubbles: boolean, cancelable: boolean, acceleration: DeviceAccelerationDict, accelerationIncludingGravity: DeviceAccelerationDict, rotationRate: DeviceRotationRateDict, interval: number): void;\r
12763 declare var DeviceMotionEvent: {\r
12764   prototype: DeviceMotionEvent;\r
12765   new(): DeviceMotionEvent;\r
12768 interface MimeType {\r
12769   enabledPlugin: Plugin;\r
12770   suffixes: string;\r
12771   type: string;\r
12772   description: string;\r
12774 declare var MimeType: {\r
12775   prototype: MimeType;\r
12776   new(): MimeType;\r
12779 interface PointerEvent extends MouseEvent {\r
12780   width: number;\r
12781   rotation: number;\r
12782   pressure: number;\r
12783   pointerType: any;\r
12784   isPrimary: boolean;\r
12785   tiltY: number;\r
12786   height: number;\r
12787   intermediatePoints: any;\r
12788   currentPoint: any;\r
12789   tiltX: number;\r
12790   hwTimestamp: number;\r
12791   pointerId: number;\r
12792   initPointerEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: EventTarget, offsetXArg: number, offsetYArg: number, widthArg: number, heightArg: number, pressure: number, rotation: number, tiltX: number, tiltY: number, pointerIdArg: number, pointerType: any, hwTimestampArg: number, isPrimary: boolean): void;\r
12793   getCurrentPoint(element: Element): void;\r
12794   getIntermediatePoints(element: Element): void;\r
12796 declare var PointerEvent: {\r
12797   prototype: PointerEvent;\r
12798   new(): PointerEvent;\r
12801 interface MSDocumentExtensions {\r
12802   captureEvents(): void;\r
12803   releaseEvents(): void;\r
12806 interface MutationObserver {\r
12807   observe(target: Node, options: MutationObserverInit): void;\r
12808   takeRecords(): MutationRecord[];\r
12809   disconnect(): void;\r
12811 declare var MutationObserver: {\r
12812   prototype: MutationObserver;\r
12813   new (callback: (arr: MutationRecord[], observer: MutationObserver)=>any): MutationObserver;\r
12816 interface MSWebViewAsyncOperation extends EventTarget {\r
12817   target: MSHTMLWebViewElement;\r
12818   oncomplete: (ev: Event) => any;\r
12819   error: DOMError;\r
12820   onerror: (ev: ErrorEvent) => any;\r
12821   readyState: number;\r
12822   type: number;\r
12823   result: any;\r
12824   start(): void;\r
12825   ERROR: number;\r
12826   TYPE_CREATE_DATA_PACKAGE_FROM_SELECTION: number;\r
12827   TYPE_INVOKE_SCRIPT: number;\r
12828   COMPLETED: number;\r
12829   TYPE_CAPTURE_PREVIEW_TO_RANDOM_ACCESS_STREAM: number;\r
12830   STARTED: number;\r
12831   addEventListener(type: "complete", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12832   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
12833   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
12835 declare var MSWebViewAsyncOperation: {\r
12836   prototype: MSWebViewAsyncOperation;\r
12837   new(): MSWebViewAsyncOperation;\r
12838   ERROR: number;\r
12839   TYPE_CREATE_DATA_PACKAGE_FROM_SELECTION: number;\r
12840   TYPE_INVOKE_SCRIPT: number;\r
12841   COMPLETED: number;\r
12842   TYPE_CAPTURE_PREVIEW_TO_RANDOM_ACCESS_STREAM: number;\r
12843   STARTED: number;\r
12846 interface ScriptNotifyEvent extends Event {\r
12847   value: string;\r
12848   callingUri: string;\r
12850 declare var ScriptNotifyEvent: {\r
12851   prototype: ScriptNotifyEvent;\r
12852   new(): ScriptNotifyEvent;\r
12855 interface PerformanceNavigationTiming extends PerformanceEntry {\r
12856   redirectStart: number;\r
12857   domainLookupEnd: number;\r
12858   responseStart: number;\r
12859   domComplete: number;\r
12860   domainLookupStart: number;\r
12861   loadEventStart: number;\r
12862   unloadEventEnd: number;\r
12863   fetchStart: number;\r
12864   requestStart: number;\r
12865   domInteractive: number;\r
12866   navigationStart: number;\r
12867   connectEnd: number;\r
12868   loadEventEnd: number;\r
12869   connectStart: number;\r
12870   responseEnd: number;\r
12871   domLoading: number;\r
12872   redirectEnd: number;\r
12873   redirectCount: number;\r
12874   unloadEventStart: number;\r
12875   domContentLoadedEventStart: number;\r
12876   domContentLoadedEventEnd: number;\r
12877   type: string;\r
12879 declare var PerformanceNavigationTiming: {\r
12880   prototype: PerformanceNavigationTiming;\r
12881   new(): PerformanceNavigationTiming;\r
12884 interface MSMediaKeyNeededEvent extends Event {\r
12885   initData: Uint8Array;\r
12887 declare var MSMediaKeyNeededEvent: {\r
12888   prototype: MSMediaKeyNeededEvent;\r
12889   new(): MSMediaKeyNeededEvent;\r
12892 interface LongRunningScriptDetectedEvent extends Event {\r
12893   stopPageScriptExecution: boolean;\r
12894   executionTime: number;\r
12896 declare var LongRunningScriptDetectedEvent: {\r
12897   prototype: LongRunningScriptDetectedEvent;\r
12898   new(): LongRunningScriptDetectedEvent;\r
12901 interface MSAppView {\r
12902   viewId: number;\r
12903   close(): void;\r
12904   postMessage(message: any, targetOrigin: string, ports?: any): void;\r
12906 declare var MSAppView: {\r
12907   prototype: MSAppView;\r
12908   new(): MSAppView;\r
12911 interface PerfWidgetExternal {\r
12912   maxCpuSpeed: number;\r
12913   independentRenderingEnabled: boolean;\r
12914   irDisablingContentString: string;\r
12915   irStatusAvailable: boolean;\r
12916   performanceCounter: number;\r
12917   averagePaintTime: number;\r
12918   activeNetworkRequestCount: number;\r
12919   paintRequestsPerSecond: number;\r
12920   extraInformationEnabled: boolean;\r
12921   performanceCounterFrequency: number;\r
12922   averageFrameTime: number;\r
12923   repositionWindow(x: number, y: number): void;\r
12924   getRecentMemoryUsage(last: number): any;\r
12925   getMemoryUsage(): number;\r
12926   resizeWindow(width: number, height: number): void;\r
12927   getProcessCpuUsage(): number;\r
12928   removeEventListener(eventType: string, callback: (ev: any) => any): void;\r
12929   getRecentCpuUsage(last: number): any;\r
12930   addEventListener(eventType: string, callback: (ev: any) => any): void;\r
12931   getRecentFrames(last: number): any;\r
12932   getRecentPaintRequests(last: number): any;\r
12934 declare var PerfWidgetExternal: {\r
12935   prototype: PerfWidgetExternal;\r
12936   new(): PerfWidgetExternal;\r
12939 interface PageTransitionEvent extends Event {\r
12940   persisted: boolean;\r
12942 declare var PageTransitionEvent: {\r
12943   prototype: PageTransitionEvent;\r
12944   new(): PageTransitionEvent;\r
12947 interface MutationCallback {\r
12948   (mutations: MutationRecord[], observer: MutationObserver): void;\r
12951 interface HTMLDocument extends Document {\r
12953 declare var HTMLDocument: {\r
12954   prototype: HTMLDocument;\r
12955   new(): HTMLDocument;\r
12958 interface KeyPair {\r
12959   privateKey: Key;\r
12960   publicKey: Key;\r
12962 declare var KeyPair: {\r
12963   prototype: KeyPair;\r
12964   new(): KeyPair;\r
12967 interface MSMediaKeySession extends EventTarget {\r
12968   sessionId: string;\r
12969   error: MSMediaKeyError;\r
12970   keySystem: string;\r
12971   close(): void;\r
12972   update(key: Uint8Array): void;\r
12974 declare var MSMediaKeySession: {\r
12975   prototype: MSMediaKeySession;\r
12976   new(): MSMediaKeySession;\r
12979 interface UnviewableContentIdentifiedEvent extends NavigationEvent {\r
12980   referrer: string;\r
12982 declare var UnviewableContentIdentifiedEvent: {\r
12983   prototype: UnviewableContentIdentifiedEvent;\r
12984   new(): UnviewableContentIdentifiedEvent;\r
12987 interface CryptoOperation extends EventTarget {\r
12988   algorithm: Algorithm;\r
12989   oncomplete: (ev: Event) => any;\r
12990   onerror: (ev: ErrorEvent) => any;\r
12991   onprogress: (ev: ProgressEvent) => any;\r
12992   onabort: (ev: UIEvent) => any;\r
12993   key: Key;\r
12994   result: any;\r
12995   abort(): void;\r
12996   finish(): void;\r
12997   process(buffer: ArrayBufferView): void;\r
12998   addEventListener(type: "complete", listener: (ev: Event) => any, useCapture?: boolean): void;\r
12999   addEventListener(type: "error", listener: (ev: ErrorEvent) => any, useCapture?: boolean): void;\r
13000   addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
13001   addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
13002   addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
13004 declare var CryptoOperation: {\r
13005   prototype: CryptoOperation;\r
13006   new(): CryptoOperation;\r
13009 interface WebGLTexture extends WebGLObject {\r
13011 declare var WebGLTexture: {\r
13012   prototype: WebGLTexture;\r
13013   new(): WebGLTexture;\r
13016 interface OES_texture_float {\r
13018 declare var OES_texture_float: {\r
13019   prototype: OES_texture_float;\r
13020   new(): OES_texture_float;\r
13023 interface WebGLContextEvent extends Event {\r
13024   statusMessage: string;\r
13026 declare var WebGLContextEvent: {\r
13027   prototype: WebGLContextEvent;\r
13028   new(): WebGLContextEvent;\r
13031 interface WebGLRenderbuffer extends WebGLObject {\r
13033 declare var WebGLRenderbuffer: {\r
13034   prototype: WebGLRenderbuffer;\r
13035   new(): WebGLRenderbuffer;\r
13038 interface WebGLUniformLocation {\r
13040 declare var WebGLUniformLocation: {\r
13041   prototype: WebGLUniformLocation;\r
13042   new(): WebGLUniformLocation;\r
13045 interface WebGLActiveInfo {\r
13046   name: string;\r
13047   type: number;\r
13048   size: number;\r
13050 declare var WebGLActiveInfo: {\r
13051   prototype: WebGLActiveInfo;\r
13052   new(): WebGLActiveInfo;\r
13055 interface WEBGL_compressed_texture_s3tc {\r
13056   COMPRESSED_RGBA_S3TC_DXT1_EXT: number;\r
13057   COMPRESSED_RGBA_S3TC_DXT5_EXT: number;\r
13058   COMPRESSED_RGBA_S3TC_DXT3_EXT: number;\r
13059   COMPRESSED_RGB_S3TC_DXT1_EXT: number;\r
13061 declare var WEBGL_compressed_texture_s3tc: {\r
13062   prototype: WEBGL_compressed_texture_s3tc;\r
13063   new(): WEBGL_compressed_texture_s3tc;\r
13064   COMPRESSED_RGBA_S3TC_DXT1_EXT: number;\r
13065   COMPRESSED_RGBA_S3TC_DXT5_EXT: number;\r
13066   COMPRESSED_RGBA_S3TC_DXT3_EXT: number;\r
13067   COMPRESSED_RGB_S3TC_DXT1_EXT: number;\r
13070 interface WebGLRenderingContext {\r
13071   drawingBufferWidth: number;\r
13072   drawingBufferHeight: number;\r
13073   canvas: HTMLCanvasElement;\r
13074   getUniformLocation(program: WebGLProgram, name: string): WebGLUniformLocation;\r
13075   bindTexture(target: number, texture: WebGLTexture): void;\r
13076   bufferData(target: number, data: ArrayBufferView, usage: number): void;\r
13077   bufferData(target: number, data: ArrayBuffer, usage: number): void;\r
13078   bufferData(target: number, size: number, usage: number): void;\r
13079   depthMask(flag: boolean): void;\r
13080   getUniform(program: WebGLProgram, location: WebGLUniformLocation): any;\r
13081   vertexAttrib3fv(indx: number, values: number[]): void;\r
13082   vertexAttrib3fv(indx: number, values: Float32Array): void;\r
13083   linkProgram(program: WebGLProgram): void;\r
13084   getSupportedExtensions(): string[];\r
13085   bufferSubData(target: number, offset: number, data: ArrayBuffer): void;\r
13086   bufferSubData(target: number, offset: number, data: ArrayBufferView): void;\r
13087   vertexAttribPointer(indx: number, size: number, type: number, normalized: boolean, stride: number, offset: number): void;\r
13088   polygonOffset(factor: number, units: number): void;\r
13089   blendColor(red: number, green: number, blue: number, alpha: number): void;\r
13090   createTexture(): WebGLTexture;\r
13091   hint(target: number, mode: number): void;\r
13092   getVertexAttrib(index: number, pname: number): any;\r
13093   enableVertexAttribArray(index: number): void;\r
13094   depthRange(zNear: number, zFar: number): void;\r
13095   cullFace(mode: number): void;\r
13096   createFramebuffer(): WebGLFramebuffer;\r
13097   uniformMatrix4fv(location: WebGLUniformLocation, transpose: boolean, value: number[]): void;\r
13098   uniformMatrix4fv(location: WebGLUniformLocation, transpose: boolean, value: Float32Array): void;\r
13099   framebufferTexture2D(target: number, attachment: number, textarget: number, texture: WebGLTexture, level: number): void;\r
13100   deleteFramebuffer(framebuffer: WebGLFramebuffer): void;\r
13101   colorMask(red: boolean, green: boolean, blue: boolean, alpha: boolean): void;\r
13102   compressedTexImage2D(target: number, level: number, internalformat: number, width: number, height: number, border: number, data: ArrayBufferView): void;\r
13103   uniformMatrix2fv(location: WebGLUniformLocation, transpose: boolean, value: number[]): void;\r
13104   uniformMatrix2fv(location: WebGLUniformLocation, transpose: boolean, value: Float32Array): void;\r
13105   getExtension(name: string): any;\r
13106   createProgram(): WebGLProgram;\r
13107   deleteShader(shader: WebGLShader): void;\r
13108   getAttachedShaders(program: WebGLProgram): WebGLShader[];\r
13109   enable(cap: number): void;\r
13110   blendEquation(mode: number): void;\r
13111   texImage2D(target: number, level: number, internalformat: number, width: number, height: number, border: number, format: number, type: number, pixels: ArrayBufferView): void;\r
13112   texImage2D(target: number, level: number, internalformat: number, format: number, type: number, image: HTMLImageElement): void;\r
13113   texImage2D(target: number, level: number, internalformat: number, format: number, type: number, canvas: HTMLCanvasElement): void;\r
13114   texImage2D(target: number, level: number, internalformat: number, format: number, type: number, video: HTMLVideoElement): void;\r
13115   texImage2D(target: number, level: number, internalformat: number, format: number, type: number, pixels: ImageData): void;\r
13116   createBuffer(): WebGLBuffer;\r
13117   deleteTexture(texture: WebGLTexture): void;\r
13118   useProgram(program: WebGLProgram): void;\r
13119   vertexAttrib2fv(indx: number, values: number[]): void;\r
13120   vertexAttrib2fv(indx: number, values: Float32Array): void;\r
13121   checkFramebufferStatus(target: number): number;\r
13122   frontFace(mode: number): void;\r
13123   getBufferParameter(target: number, pname: number): any;\r
13124   texSubImage2D(target: number, level: number, xoffset: number, yoffset: number, width: number, height: number, format: number, type: number, pixels: ArrayBufferView): void;\r
13125   texSubImage2D(target: number, level: number, xoffset: number, yoffset: number, format: number, type: number, image: HTMLImageElement): void;\r
13126   texSubImage2D(target: number, level: number, xoffset: number, yoffset: number, format: number, type: number, canvas: HTMLCanvasElement): void;\r
13127   texSubImage2D(target: number, level: number, xoffset: number, yoffset: number, format: number, type: number, video: HTMLVideoElement): void;\r
13128   texSubImage2D(target: number, level: number, xoffset: number, yoffset: number, format: number, type: number, pixels: ImageData): void;\r
13129   copyTexImage2D(target: number, level: number, internalformat: number, x: number, y: number, width: number, height: number, border: number): void;\r
13130   getVertexAttribOffset(index: number, pname: number): number;\r
13131   disableVertexAttribArray(index: number): void;\r
13132   blendFunc(sfactor: number, dfactor: number): void;\r
13133   drawElements(mode: number, count: number, type: number, offset: number): void;\r
13134   isFramebuffer(framebuffer: WebGLFramebuffer): boolean;\r
13135   uniform3iv(location: WebGLUniformLocation, v: number[]): void;\r
13136   uniform3iv(location: WebGLUniformLocation, v: Int32Array): void;\r
13137   lineWidth(width: number): void;\r
13138   getShaderInfoLog(shader: WebGLShader): string;\r
13139   getTexParameter(target: number, pname: number): any;\r
13140   getParameter(pname: number): any;\r
13141   getShaderPrecisionFormat(shadertype: number, precisiontype: number): WebGLShaderPrecisionFormat;\r
13142   getContextAttributes(): WebGLContextAttributes;\r
13143   vertexAttrib1f(indx: number, x: number): void;\r
13144   bindFramebuffer(target: number, framebuffer: WebGLFramebuffer): void;\r
13145   compressedTexSubImage2D(target: number, level: number, xoffset: number, yoffset: number, width: number, height: number, format: number, data: ArrayBufferView): void;\r
13146   isContextLost(): boolean;\r
13147   uniform1iv(location: WebGLUniformLocation, v: number[]): void;\r
13148   uniform1iv(location: WebGLUniformLocation, v: Int32Array): void;\r
13149   getRenderbufferParameter(target: number, pname: number): any;\r
13150   uniform2fv(location: WebGLUniformLocation, v: number[]): void;\r
13151   uniform2fv(location: WebGLUniformLocation, v: Float32Array): void;\r
13152   isTexture(texture: WebGLTexture): boolean;\r
13153   getError(): number;\r
13154   shaderSource(shader: WebGLShader, source: string): void;\r
13155   deleteRenderbuffer(renderbuffer: WebGLRenderbuffer): void;\r
13156   stencilMask(mask: number): void;\r
13157   bindBuffer(target: number, buffer: WebGLBuffer): void;\r
13158   getAttribLocation(program: WebGLProgram, name: string): number;\r
13159   uniform3i(location: WebGLUniformLocation, x: number, y: number, z: number): void;\r
13160   blendEquationSeparate(modeRGB: number, modeAlpha: number): void;\r
13161   clear(mask: number): void;\r
13162   blendFuncSeparate(srcRGB: number, dstRGB: number, srcAlpha: number, dstAlpha: number): void;\r
13163   stencilFuncSeparate(face: number, func: number, ref: number, mask: number): void;\r
13164   readPixels(x: number, y: number, width: number, height: number, format: number, type: number, pixels: ArrayBufferView): void;\r
13165   scissor(x: number, y: number, width: number, height: number): void;\r
13166   uniform2i(location: WebGLUniformLocation, x: number, y: number): void;\r
13167   getActiveAttrib(program: WebGLProgram, index: number): WebGLActiveInfo;\r
13168   getShaderSource(shader: WebGLShader): string;\r
13169   generateMipmap(target: number): void;\r
13170   bindAttribLocation(program: WebGLProgram, index: number, name: string): void;\r
13171   uniform1fv(location: WebGLUniformLocation, v: number[]): void;\r
13172   uniform1fv(location: WebGLUniformLocation, v: Float32Array): void;\r
13173   uniform2iv(location: WebGLUniformLocation, v: number[]): void;\r
13174   uniform2iv(location: WebGLUniformLocation, v: Int32Array): void;\r
13175   stencilOp(fail: number, zfail: number, zpass: number): void;\r
13176   uniform4fv(location: WebGLUniformLocation, v: number[]): void;\r
13177   uniform4fv(location: WebGLUniformLocation, v: Float32Array): void;\r
13178   vertexAttrib1fv(indx: number, values: number[]): void;\r
13179   vertexAttrib1fv(indx: number, values: Float32Array): void;\r
13180   flush(): void;\r
13181   uniform4f(location: WebGLUniformLocation, x: number, y: number, z: number, w: number): void;\r
13182   deleteProgram(program: WebGLProgram): void;\r
13183   isRenderbuffer(renderbuffer: WebGLRenderbuffer): boolean;\r
13184   uniform1i(location: WebGLUniformLocation, x: number): void;\r
13185   getProgramParameter(program: WebGLProgram, pname: number): any;\r
13186   getActiveUniform(program: WebGLProgram, index: number): WebGLActiveInfo;\r
13187   stencilFunc(func: number, ref: number, mask: number): void;\r
13188   pixelStorei(pname: number, param: number): void;\r
13189   disable(cap: number): void;\r
13190   vertexAttrib4fv(indx: number, values: number[]): void;\r
13191   vertexAttrib4fv(indx: number, values: Float32Array): void;\r
13192   createRenderbuffer(): WebGLRenderbuffer;\r
13193   isBuffer(buffer: WebGLBuffer): boolean;\r
13194   stencilOpSeparate(face: number, fail: number, zfail: number, zpass: number): void;\r
13195   getFramebufferAttachmentParameter(target: number, attachment: number, pname: number): any;\r
13196   uniform4i(location: WebGLUniformLocation, x: number, y: number, z: number, w: number): void;\r
13197   sampleCoverage(value: number, invert: boolean): void;\r
13198   depthFunc(func: number): void;\r
13199   texParameterf(target: number, pname: number, param: number): void;\r
13200   vertexAttrib3f(indx: number, x: number, y: number, z: number): void;\r
13201   drawArrays(mode: number, first: number, count: number): void;\r
13202   texParameteri(target: number, pname: number, param: number): void;\r
13203   vertexAttrib4f(indx: number, x: number, y: number, z: number, w: number): void;\r
13204   getShaderParameter(shader: WebGLShader, pname: number): any;\r
13205   clearDepth(depth: number): void;\r
13206   activeTexture(texture: number): void;\r
13207   viewport(x: number, y: number, width: number, height: number): void;\r
13208   detachShader(program: WebGLProgram, shader: WebGLShader): void;\r
13209   uniform1f(location: WebGLUniformLocation, x: number): void;\r
13210   uniformMatrix3fv(location: WebGLUniformLocation, transpose: boolean, value: number[]): void;\r
13211   uniformMatrix3fv(location: WebGLUniformLocation, transpose: boolean, value: Float32Array): void;\r
13212   deleteBuffer(buffer: WebGLBuffer): void;\r
13213   copyTexSubImage2D(target: number, level: number, xoffset: number, yoffset: number, x: number, y: number, width: number, height: number): void;\r
13214   uniform3fv(location: WebGLUniformLocation, v: number[]): void;\r
13215   uniform3fv(location: WebGLUniformLocation, v: Float32Array): void;\r
13216   stencilMaskSeparate(face: number, mask: number): void;\r
13217   attachShader(program: WebGLProgram, shader: WebGLShader): void;\r
13218   compileShader(shader: WebGLShader): void;\r
13219   clearColor(red: number, green: number, blue: number, alpha: number): void;\r
13220   isShader(shader: WebGLShader): boolean;\r
13221   clearStencil(s: number): void;\r
13222   framebufferRenderbuffer(target: number, attachment: number, renderbuffertarget: number, renderbuffer: WebGLRenderbuffer): void;\r
13223   finish(): void;\r
13224   uniform2f(location: WebGLUniformLocation, x: number, y: number): void;\r
13225   renderbufferStorage(target: number, internalformat: number, width: number, height: number): void;\r
13226   uniform3f(location: WebGLUniformLocation, x: number, y: number, z: number): void;\r
13227   getProgramInfoLog(program: WebGLProgram): string;\r
13228   validateProgram(program: WebGLProgram): void;\r
13229   isEnabled(cap: number): boolean;\r
13230   vertexAttrib2f(indx: number, x: number, y: number): void;\r
13231   isProgram(program: WebGLProgram): boolean;\r
13232   createShader(type: number): WebGLShader;\r
13233   bindRenderbuffer(target: number, renderbuffer: WebGLRenderbuffer): void;\r
13234   uniform4iv(location: WebGLUniformLocation, v: number[]): void;\r
13235   uniform4iv(location: WebGLUniformLocation, v: Int32Array): void;\r
13236   DEPTH_FUNC: number;\r
13237   DEPTH_COMPONENT16: number;\r
13238   REPLACE: number;\r
13239   REPEAT: number;\r
13240   VERTEX_ATTRIB_ARRAY_ENABLED: number;\r
13241   FRAMEBUFFER_INCOMPLETE_DIMENSIONS: number;\r
13242   STENCIL_BUFFER_BIT: number;\r
13243   RENDERER: number;\r
13244   STENCIL_BACK_REF: number;\r
13245   TEXTURE26: number;\r
13246   RGB565: number;\r
13247   DITHER: number;\r
13248   CONSTANT_COLOR: number;\r
13249   GENERATE_MIPMAP_HINT: number;\r
13250   POINTS: number;\r
13251   DECR: number;\r
13252   INT_VEC3: number;\r
13253   TEXTURE28: number;\r
13254   ONE_MINUS_CONSTANT_ALPHA: number;\r
13255   BACK: number;\r
13256   RENDERBUFFER_STENCIL_SIZE: number;\r
13257   UNPACK_FLIP_Y_WEBGL: number;\r
13258   BLEND: number;\r
13259   TEXTURE9: number;\r
13260   ARRAY_BUFFER_BINDING: number;\r
13261   MAX_VIEWPORT_DIMS: number;\r
13262   INVALID_FRAMEBUFFER_OPERATION: number;\r
13263   TEXTURE: number;\r
13264   TEXTURE0: number;\r
13265   TEXTURE31: number;\r
13266   TEXTURE24: number;\r
13267   HIGH_INT: number;\r
13268   RENDERBUFFER_BINDING: number;\r
13269   BLEND_COLOR: number;\r
13270   FASTEST: number;\r
13271   STENCIL_WRITEMASK: number;\r
13272   ALIASED_POINT_SIZE_RANGE: number;\r
13273   TEXTURE12: number;\r
13274   DST_ALPHA: number;\r
13275   BLEND_EQUATION_RGB: number;\r
13276   FRAMEBUFFER_COMPLETE: number;\r
13277   NEAREST_MIPMAP_NEAREST: number;\r
13278   VERTEX_ATTRIB_ARRAY_SIZE: number;\r
13279   TEXTURE3: number;\r
13280   DEPTH_WRITEMASK: number;\r
13281   CONTEXT_LOST_WEBGL: number;\r
13282   INVALID_VALUE: number;\r
13283   TEXTURE_MAG_FILTER: number;\r
13284   ONE_MINUS_CONSTANT_COLOR: number;\r
13285   ONE_MINUS_SRC_ALPHA: number;\r
13286   TEXTURE_CUBE_MAP_POSITIVE_Z: number;\r
13287   NOTEQUAL: number;\r
13288   ALPHA: number;\r
13289   DEPTH_STENCIL: number;\r
13290   MAX_VERTEX_UNIFORM_VECTORS: number;\r
13291   DEPTH_COMPONENT: number;\r
13292   RENDERBUFFER_RED_SIZE: number;\r
13293   TEXTURE20: number;\r
13294   RED_BITS: number;\r
13295   RENDERBUFFER_BLUE_SIZE: number;\r
13296   SCISSOR_BOX: number;\r
13297   VENDOR: number;\r
13298   FRONT_AND_BACK: number;\r
13299   CONSTANT_ALPHA: number;\r
13300   VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: number;\r
13301   NEAREST: number;\r
13302   CULL_FACE: number;\r
13303   ALIASED_LINE_WIDTH_RANGE: number;\r
13304   TEXTURE19: number;\r
13305   FRONT: number;\r
13306   DEPTH_CLEAR_VALUE: number;\r
13307   GREEN_BITS: number;\r
13308   TEXTURE29: number;\r
13309   TEXTURE23: number;\r
13310   MAX_RENDERBUFFER_SIZE: number;\r
13311   STENCIL_ATTACHMENT: number;\r
13312   TEXTURE27: number;\r
13313   BOOL_VEC2: number;\r
13314   OUT_OF_MEMORY: number;\r
13315   MIRRORED_REPEAT: number;\r
13316   POLYGON_OFFSET_UNITS: number;\r
13317   TEXTURE_MIN_FILTER: number;\r
13318   STENCIL_BACK_PASS_DEPTH_PASS: number;\r
13319   LINE_LOOP: number;\r
13320   FLOAT_MAT3: number;\r
13321   TEXTURE14: number;\r
13322   LINEAR: number;\r
13323   RGB5_A1: number;\r
13324   ONE_MINUS_SRC_COLOR: number;\r
13325   SAMPLE_COVERAGE_INVERT: number;\r
13326   DONT_CARE: number;\r
13327   FRAMEBUFFER_BINDING: number;\r
13328   RENDERBUFFER_ALPHA_SIZE: number;\r
13329   STENCIL_REF: number;\r
13330   ZERO: number;\r
13331   DECR_WRAP: number;\r
13332   SAMPLE_COVERAGE: number;\r
13333   STENCIL_BACK_FUNC: number;\r
13334   TEXTURE30: number;\r
13335   VIEWPORT: number;\r
13336   STENCIL_BITS: number;\r
13337   FLOAT: number;\r
13338   COLOR_WRITEMASK: number;\r
13339   SAMPLE_COVERAGE_VALUE: number;\r
13340   TEXTURE_CUBE_MAP_NEGATIVE_Y: number;\r
13341   STENCIL_BACK_FAIL: number;\r
13342   FLOAT_MAT4: number;\r
13343   UNSIGNED_SHORT_4_4_4_4: number;\r
13344   TEXTURE6: number;\r
13345   RENDERBUFFER_WIDTH: number;\r
13346   RGBA4: number;\r
13347   ALWAYS: number;\r
13348   BLEND_EQUATION_ALPHA: number;\r
13349   COLOR_BUFFER_BIT: number;\r
13350   TEXTURE_CUBE_MAP: number;\r
13351   DEPTH_BUFFER_BIT: number;\r
13352   STENCIL_CLEAR_VALUE: number;\r
13353   BLEND_EQUATION: number;\r
13354   RENDERBUFFER_GREEN_SIZE: number;\r
13355   NEAREST_MIPMAP_LINEAR: number;\r
13356   VERTEX_ATTRIB_ARRAY_TYPE: number;\r
13357   INCR_WRAP: number;\r
13358   ONE_MINUS_DST_COLOR: number;\r
13359   HIGH_FLOAT: number;\r
13360   BYTE: number;\r
13361   FRONT_FACE: number;\r
13362   SAMPLE_ALPHA_TO_COVERAGE: number;\r
13363   CCW: number;\r
13364   TEXTURE13: number;\r
13365   MAX_VERTEX_ATTRIBS: number;\r
13366   MAX_VERTEX_TEXTURE_IMAGE_UNITS: number;\r
13367   TEXTURE_WRAP_T: number;\r
13368   UNPACK_PREMULTIPLY_ALPHA_WEBGL: number;\r
13369   FLOAT_VEC2: number;\r
13370   LUMINANCE: number;\r
13371   GREATER: number;\r
13372   INT_VEC2: number;\r
13373   VALIDATE_STATUS: number;\r
13374   FRAMEBUFFER: number;\r
13375   FRAMEBUFFER_UNSUPPORTED: number;\r
13376   TEXTURE5: number;\r
13377   FUNC_SUBTRACT: number;\r
13378   BLEND_DST_ALPHA: number;\r
13379   SAMPLER_CUBE: number;\r
13380   ONE_MINUS_DST_ALPHA: number;\r
13381   LESS: number;\r
13382   TEXTURE_CUBE_MAP_POSITIVE_X: number;\r
13383   BLUE_BITS: number;\r
13384   DEPTH_TEST: number;\r
13385   VERTEX_ATTRIB_ARRAY_STRIDE: number;\r
13386   DELETE_STATUS: number;\r
13387   TEXTURE18: number;\r
13388   POLYGON_OFFSET_FACTOR: number;\r
13389   UNSIGNED_INT: number;\r
13390   TEXTURE_2D: number;\r
13391   DST_COLOR: number;\r
13392   FLOAT_MAT2: number;\r
13393   COMPRESSED_TEXTURE_FORMATS: number;\r
13394   MAX_FRAGMENT_UNIFORM_VECTORS: number;\r
13395   DEPTH_STENCIL_ATTACHMENT: number;\r
13396   LUMINANCE_ALPHA: number;\r
13397   CW: number;\r
13398   VERTEX_ATTRIB_ARRAY_NORMALIZED: number;\r
13399   TEXTURE_CUBE_MAP_NEGATIVE_Z: number;\r
13400   LINEAR_MIPMAP_LINEAR: number;\r
13401   BUFFER_SIZE: number;\r
13402   SAMPLE_BUFFERS: number;\r
13403   TEXTURE15: number;\r
13404   ACTIVE_TEXTURE: number;\r
13405   VERTEX_SHADER: number;\r
13406   TEXTURE22: number;\r
13407   VERTEX_ATTRIB_ARRAY_POINTER: number;\r
13408   INCR: number;\r
13409   COMPILE_STATUS: number;\r
13410   MAX_COMBINED_TEXTURE_IMAGE_UNITS: number;\r
13411   TEXTURE7: number;\r
13412   UNSIGNED_SHORT_5_5_5_1: number;\r
13413   DEPTH_BITS: number;\r
13414   RGBA: number;\r
13415   TRIANGLE_STRIP: number;\r
13416   COLOR_CLEAR_VALUE: number;\r
13417   BROWSER_DEFAULT_WEBGL: number;\r
13418   INVALID_ENUM: number;\r
13419   SCISSOR_TEST: number;\r
13420   LINE_STRIP: number;\r
13421   FRAMEBUFFER_INCOMPLETE_ATTACHMENT: number;\r
13422   STENCIL_FUNC: number;\r
13423   FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: number;\r
13424   RENDERBUFFER_HEIGHT: number;\r
13425   TEXTURE8: number;\r
13426   TRIANGLES: number;\r
13427   FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: number;\r
13428   STENCIL_BACK_VALUE_MASK: number;\r
13429   TEXTURE25: number;\r
13430   RENDERBUFFER: number;\r
13431   LEQUAL: number;\r
13432   TEXTURE1: number;\r
13433   STENCIL_INDEX8: number;\r
13434   FUNC_ADD: number;\r
13435   STENCIL_FAIL: number;\r
13436   BLEND_SRC_ALPHA: number;\r
13437   BOOL: number;\r
13438   ALPHA_BITS: number;\r
13439   LOW_INT: number;\r
13440   TEXTURE10: number;\r
13441   SRC_COLOR: number;\r
13442   MAX_VARYING_VECTORS: number;\r
13443   BLEND_DST_RGB: number;\r
13444   TEXTURE_BINDING_CUBE_MAP: number;\r
13445   STENCIL_INDEX: number;\r
13446   TEXTURE_BINDING_2D: number;\r
13447   MEDIUM_INT: number;\r
13448   SHADER_TYPE: number;\r
13449   POLYGON_OFFSET_FILL: number;\r
13450   DYNAMIC_DRAW: number;\r
13451   TEXTURE4: number;\r
13452   STENCIL_BACK_PASS_DEPTH_FAIL: number;\r
13453   STREAM_DRAW: number;\r
13454   MAX_CUBE_MAP_TEXTURE_SIZE: number;\r
13455   TEXTURE17: number;\r
13456   TRIANGLE_FAN: number;\r
13457   UNPACK_ALIGNMENT: number;\r
13458   CURRENT_PROGRAM: number;\r
13459   LINES: number;\r
13460   INVALID_OPERATION: number;\r
13461   FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: number;\r
13462   LINEAR_MIPMAP_NEAREST: number;\r
13463   CLAMP_TO_EDGE: number;\r
13464   RENDERBUFFER_DEPTH_SIZE: number;\r
13465   TEXTURE_WRAP_S: number;\r
13466   ELEMENT_ARRAY_BUFFER: number;\r
13467   UNSIGNED_SHORT_5_6_5: number;\r
13468   ACTIVE_UNIFORMS: number;\r
13469   FLOAT_VEC3: number;\r
13470   NO_ERROR: number;\r
13471   ATTACHED_SHADERS: number;\r
13472   DEPTH_ATTACHMENT: number;\r
13473   TEXTURE11: number;\r
13474   STENCIL_TEST: number;\r
13475   ONE: number;\r
13476   FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: number;\r
13477   STATIC_DRAW: number;\r
13478   GEQUAL: number;\r
13479   BOOL_VEC4: number;\r
13480   COLOR_ATTACHMENT0: number;\r
13481   PACK_ALIGNMENT: number;\r
13482   MAX_TEXTURE_SIZE: number;\r
13483   STENCIL_PASS_DEPTH_FAIL: number;\r
13484   CULL_FACE_MODE: number;\r
13485   TEXTURE16: number;\r
13486   STENCIL_BACK_WRITEMASK: number;\r
13487   SRC_ALPHA: number;\r
13488   UNSIGNED_SHORT: number;\r
13489   TEXTURE21: number;\r
13490   FUNC_REVERSE_SUBTRACT: number;\r
13491   SHADING_LANGUAGE_VERSION: number;\r
13492   EQUAL: number;\r
13493   FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: number;\r
13494   BOOL_VEC3: number;\r
13495   SAMPLER_2D: number;\r
13496   TEXTURE_CUBE_MAP_NEGATIVE_X: number;\r
13497   MAX_TEXTURE_IMAGE_UNITS: number;\r
13498   TEXTURE_CUBE_MAP_POSITIVE_Y: number;\r
13499   RENDERBUFFER_INTERNAL_FORMAT: number;\r
13500   STENCIL_VALUE_MASK: number;\r
13501   ELEMENT_ARRAY_BUFFER_BINDING: number;\r
13502   ARRAY_BUFFER: number;\r
13503   DEPTH_RANGE: number;\r
13504   NICEST: number;\r
13505   ACTIVE_ATTRIBUTES: number;\r
13506   NEVER: number;\r
13507   FLOAT_VEC4: number;\r
13508   CURRENT_VERTEX_ATTRIB: number;\r
13509   STENCIL_PASS_DEPTH_PASS: number;\r
13510   INVERT: number;\r
13511   LINK_STATUS: number;\r
13512   RGB: number;\r
13513   INT_VEC4: number;\r
13514   TEXTURE2: number;\r
13515   UNPACK_COLORSPACE_CONVERSION_WEBGL: number;\r
13516   MEDIUM_FLOAT: number;\r
13517   SRC_ALPHA_SATURATE: number;\r
13518   BUFFER_USAGE: number;\r
13519   SHORT: number;\r
13520   NONE: number;\r
13521   UNSIGNED_BYTE: number;\r
13522   INT: number;\r
13523   SUBPIXEL_BITS: number;\r
13524   KEEP: number;\r
13525   SAMPLES: number;\r
13526   FRAGMENT_SHADER: number;\r
13527   LINE_WIDTH: number;\r
13528   BLEND_SRC_RGB: number;\r
13529   LOW_FLOAT: number;\r
13530   VERSION: number;\r
13532 declare var WebGLRenderingContext: {\r
13533   prototype: WebGLRenderingContext;\r
13534   new(): WebGLRenderingContext;\r
13535   DEPTH_FUNC: number;\r
13536   DEPTH_COMPONENT16: number;\r
13537   REPLACE: number;\r
13538   REPEAT: number;\r
13539   VERTEX_ATTRIB_ARRAY_ENABLED: number;\r
13540   FRAMEBUFFER_INCOMPLETE_DIMENSIONS: number;\r
13541   STENCIL_BUFFER_BIT: number;\r
13542   RENDERER: number;\r
13543   STENCIL_BACK_REF: number;\r
13544   TEXTURE26: number;\r
13545   RGB565: number;\r
13546   DITHER: number;\r
13547   CONSTANT_COLOR: number;\r
13548   GENERATE_MIPMAP_HINT: number;\r
13549   POINTS: number;\r
13550   DECR: number;\r
13551   INT_VEC3: number;\r
13552   TEXTURE28: number;\r
13553   ONE_MINUS_CONSTANT_ALPHA: number;\r
13554   BACK: number;\r
13555   RENDERBUFFER_STENCIL_SIZE: number;\r
13556   UNPACK_FLIP_Y_WEBGL: number;\r
13557   BLEND: number;\r
13558   TEXTURE9: number;\r
13559   ARRAY_BUFFER_BINDING: number;\r
13560   MAX_VIEWPORT_DIMS: number;\r
13561   INVALID_FRAMEBUFFER_OPERATION: number;\r
13562   TEXTURE: number;\r
13563   TEXTURE0: number;\r
13564   TEXTURE31: number;\r
13565   TEXTURE24: number;\r
13566   HIGH_INT: number;\r
13567   RENDERBUFFER_BINDING: number;\r
13568   BLEND_COLOR: number;\r
13569   FASTEST: number;\r
13570   STENCIL_WRITEMASK: number;\r
13571   ALIASED_POINT_SIZE_RANGE: number;\r
13572   TEXTURE12: number;\r
13573   DST_ALPHA: number;\r
13574   BLEND_EQUATION_RGB: number;\r
13575   FRAMEBUFFER_COMPLETE: number;\r
13576   NEAREST_MIPMAP_NEAREST: number;\r
13577   VERTEX_ATTRIB_ARRAY_SIZE: number;\r
13578   TEXTURE3: number;\r
13579   DEPTH_WRITEMASK: number;\r
13580   CONTEXT_LOST_WEBGL: number;\r
13581   INVALID_VALUE: number;\r
13582   TEXTURE_MAG_FILTER: number;\r
13583   ONE_MINUS_CONSTANT_COLOR: number;\r
13584   ONE_MINUS_SRC_ALPHA: number;\r
13585   TEXTURE_CUBE_MAP_POSITIVE_Z: number;\r
13586   NOTEQUAL: number;\r
13587   ALPHA: number;\r
13588   DEPTH_STENCIL: number;\r
13589   MAX_VERTEX_UNIFORM_VECTORS: number;\r
13590   DEPTH_COMPONENT: number;\r
13591   RENDERBUFFER_RED_SIZE: number;\r
13592   TEXTURE20: number;\r
13593   RED_BITS: number;\r
13594   RENDERBUFFER_BLUE_SIZE: number;\r
13595   SCISSOR_BOX: number;\r
13596   VENDOR: number;\r
13597   FRONT_AND_BACK: number;\r
13598   CONSTANT_ALPHA: number;\r
13599   VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: number;\r
13600   NEAREST: number;\r
13601   CULL_FACE: number;\r
13602   ALIASED_LINE_WIDTH_RANGE: number;\r
13603   TEXTURE19: number;\r
13604   FRONT: number;\r
13605   DEPTH_CLEAR_VALUE: number;\r
13606   GREEN_BITS: number;\r
13607   TEXTURE29: number;\r
13608   TEXTURE23: number;\r
13609   MAX_RENDERBUFFER_SIZE: number;\r
13610   STENCIL_ATTACHMENT: number;\r
13611   TEXTURE27: number;\r
13612   BOOL_VEC2: number;\r
13613   OUT_OF_MEMORY: number;\r
13614   MIRRORED_REPEAT: number;\r
13615   POLYGON_OFFSET_UNITS: number;\r
13616   TEXTURE_MIN_FILTER: number;\r
13617   STENCIL_BACK_PASS_DEPTH_PASS: number;\r
13618   LINE_LOOP: number;\r
13619   FLOAT_MAT3: number;\r
13620   TEXTURE14: number;\r
13621   LINEAR: number;\r
13622   RGB5_A1: number;\r
13623   ONE_MINUS_SRC_COLOR: number;\r
13624   SAMPLE_COVERAGE_INVERT: number;\r
13625   DONT_CARE: number;\r
13626   FRAMEBUFFER_BINDING: number;\r
13627   RENDERBUFFER_ALPHA_SIZE: number;\r
13628   STENCIL_REF: number;\r
13629   ZERO: number;\r
13630   DECR_WRAP: number;\r
13631   SAMPLE_COVERAGE: number;\r
13632   STENCIL_BACK_FUNC: number;\r
13633   TEXTURE30: number;\r
13634   VIEWPORT: number;\r
13635   STENCIL_BITS: number;\r
13636   FLOAT: number;\r
13637   COLOR_WRITEMASK: number;\r
13638   SAMPLE_COVERAGE_VALUE: number;\r
13639   TEXTURE_CUBE_MAP_NEGATIVE_Y: number;\r
13640   STENCIL_BACK_FAIL: number;\r
13641   FLOAT_MAT4: number;\r
13642   UNSIGNED_SHORT_4_4_4_4: number;\r
13643   TEXTURE6: number;\r
13644   RENDERBUFFER_WIDTH: number;\r
13645   RGBA4: number;\r
13646   ALWAYS: number;\r
13647   BLEND_EQUATION_ALPHA: number;\r
13648   COLOR_BUFFER_BIT: number;\r
13649   TEXTURE_CUBE_MAP: number;\r
13650   DEPTH_BUFFER_BIT: number;\r
13651   STENCIL_CLEAR_VALUE: number;\r
13652   BLEND_EQUATION: number;\r
13653   RENDERBUFFER_GREEN_SIZE: number;\r
13654   NEAREST_MIPMAP_LINEAR: number;\r
13655   VERTEX_ATTRIB_ARRAY_TYPE: number;\r
13656   INCR_WRAP: number;\r
13657   ONE_MINUS_DST_COLOR: number;\r
13658   HIGH_FLOAT: number;\r
13659   BYTE: number;\r
13660   FRONT_FACE: number;\r
13661   SAMPLE_ALPHA_TO_COVERAGE: number;\r
13662   CCW: number;\r
13663   TEXTURE13: number;\r
13664   MAX_VERTEX_ATTRIBS: number;\r
13665   MAX_VERTEX_TEXTURE_IMAGE_UNITS: number;\r
13666   TEXTURE_WRAP_T: number;\r
13667   UNPACK_PREMULTIPLY_ALPHA_WEBGL: number;\r
13668   FLOAT_VEC2: number;\r
13669   LUMINANCE: number;\r
13670   GREATER: number;\r
13671   INT_VEC2: number;\r
13672   VALIDATE_STATUS: number;\r
13673   FRAMEBUFFER: number;\r
13674   FRAMEBUFFER_UNSUPPORTED: number;\r
13675   TEXTURE5: number;\r
13676   FUNC_SUBTRACT: number;\r
13677   BLEND_DST_ALPHA: number;\r
13678   SAMPLER_CUBE: number;\r
13679   ONE_MINUS_DST_ALPHA: number;\r
13680   LESS: number;\r
13681   TEXTURE_CUBE_MAP_POSITIVE_X: number;\r
13682   BLUE_BITS: number;\r
13683   DEPTH_TEST: number;\r
13684   VERTEX_ATTRIB_ARRAY_STRIDE: number;\r
13685   DELETE_STATUS: number;\r
13686   TEXTURE18: number;\r
13687   POLYGON_OFFSET_FACTOR: number;\r
13688   UNSIGNED_INT: number;\r
13689   TEXTURE_2D: number;\r
13690   DST_COLOR: number;\r
13691   FLOAT_MAT2: number;\r
13692   COMPRESSED_TEXTURE_FORMATS: number;\r
13693   MAX_FRAGMENT_UNIFORM_VECTORS: number;\r
13694   DEPTH_STENCIL_ATTACHMENT: number;\r
13695   LUMINANCE_ALPHA: number;\r
13696   CW: number;\r
13697   VERTEX_ATTRIB_ARRAY_NORMALIZED: number;\r
13698   TEXTURE_CUBE_MAP_NEGATIVE_Z: number;\r
13699   LINEAR_MIPMAP_LINEAR: number;\r
13700   BUFFER_SIZE: number;\r
13701   SAMPLE_BUFFERS: number;\r
13702   TEXTURE15: number;\r
13703   ACTIVE_TEXTURE: number;\r
13704   VERTEX_SHADER: number;\r
13705   TEXTURE22: number;\r
13706   VERTEX_ATTRIB_ARRAY_POINTER: number;\r
13707   INCR: number;\r
13708   COMPILE_STATUS: number;\r
13709   MAX_COMBINED_TEXTURE_IMAGE_UNITS: number;\r
13710   TEXTURE7: number;\r
13711   UNSIGNED_SHORT_5_5_5_1: number;\r
13712   DEPTH_BITS: number;\r
13713   RGBA: number;\r
13714   TRIANGLE_STRIP: number;\r
13715   COLOR_CLEAR_VALUE: number;\r
13716   BROWSER_DEFAULT_WEBGL: number;\r
13717   INVALID_ENUM: number;\r
13718   SCISSOR_TEST: number;\r
13719   LINE_STRIP: number;\r
13720   FRAMEBUFFER_INCOMPLETE_ATTACHMENT: number;\r
13721   STENCIL_FUNC: number;\r
13722   FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: number;\r
13723   RENDERBUFFER_HEIGHT: number;\r
13724   TEXTURE8: number;\r
13725   TRIANGLES: number;\r
13726   FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: number;\r
13727   STENCIL_BACK_VALUE_MASK: number;\r
13728   TEXTURE25: number;\r
13729   RENDERBUFFER: number;\r
13730   LEQUAL: number;\r
13731   TEXTURE1: number;\r
13732   STENCIL_INDEX8: number;\r
13733   FUNC_ADD: number;\r
13734   STENCIL_FAIL: number;\r
13735   BLEND_SRC_ALPHA: number;\r
13736   BOOL: number;\r
13737   ALPHA_BITS: number;\r
13738   LOW_INT: number;\r
13739   TEXTURE10: number;\r
13740   SRC_COLOR: number;\r
13741   MAX_VARYING_VECTORS: number;\r
13742   BLEND_DST_RGB: number;\r
13743   TEXTURE_BINDING_CUBE_MAP: number;\r
13744   STENCIL_INDEX: number;\r
13745   TEXTURE_BINDING_2D: number;\r
13746   MEDIUM_INT: number;\r
13747   SHADER_TYPE: number;\r
13748   POLYGON_OFFSET_FILL: number;\r
13749   DYNAMIC_DRAW: number;\r
13750   TEXTURE4: number;\r
13751   STENCIL_BACK_PASS_DEPTH_FAIL: number;\r
13752   STREAM_DRAW: number;\r
13753   MAX_CUBE_MAP_TEXTURE_SIZE: number;\r
13754   TEXTURE17: number;\r
13755   TRIANGLE_FAN: number;\r
13756   UNPACK_ALIGNMENT: number;\r
13757   CURRENT_PROGRAM: number;\r
13758   LINES: number;\r
13759   INVALID_OPERATION: number;\r
13760   FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: number;\r
13761   LINEAR_MIPMAP_NEAREST: number;\r
13762   CLAMP_TO_EDGE: number;\r
13763   RENDERBUFFER_DEPTH_SIZE: number;\r
13764   TEXTURE_WRAP_S: number;\r
13765   ELEMENT_ARRAY_BUFFER: number;\r
13766   UNSIGNED_SHORT_5_6_5: number;\r
13767   ACTIVE_UNIFORMS: number;\r
13768   FLOAT_VEC3: number;\r
13769   NO_ERROR: number;\r
13770   ATTACHED_SHADERS: number;\r
13771   DEPTH_ATTACHMENT: number;\r
13772   TEXTURE11: number;\r
13773   STENCIL_TEST: number;\r
13774   ONE: number;\r
13775   FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: number;\r
13776   STATIC_DRAW: number;\r
13777   GEQUAL: number;\r
13778   BOOL_VEC4: number;\r
13779   COLOR_ATTACHMENT0: number;\r
13780   PACK_ALIGNMENT: number;\r
13781   MAX_TEXTURE_SIZE: number;\r
13782   STENCIL_PASS_DEPTH_FAIL: number;\r
13783   CULL_FACE_MODE: number;\r
13784   TEXTURE16: number;\r
13785   STENCIL_BACK_WRITEMASK: number;\r
13786   SRC_ALPHA: number;\r
13787   UNSIGNED_SHORT: number;\r
13788   TEXTURE21: number;\r
13789   FUNC_REVERSE_SUBTRACT: number;\r
13790   SHADING_LANGUAGE_VERSION: number;\r
13791   EQUAL: number;\r
13792   FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: number;\r
13793   BOOL_VEC3: number;\r
13794   SAMPLER_2D: number;\r
13795   TEXTURE_CUBE_MAP_NEGATIVE_X: number;\r
13796   MAX_TEXTURE_IMAGE_UNITS: number;\r
13797   TEXTURE_CUBE_MAP_POSITIVE_Y: number;\r
13798   RENDERBUFFER_INTERNAL_FORMAT: number;\r
13799   STENCIL_VALUE_MASK: number;\r
13800   ELEMENT_ARRAY_BUFFER_BINDING: number;\r
13801   ARRAY_BUFFER: number;\r
13802   DEPTH_RANGE: number;\r
13803   NICEST: number;\r
13804   ACTIVE_ATTRIBUTES: number;\r
13805   NEVER: number;\r
13806   FLOAT_VEC4: number;\r
13807   CURRENT_VERTEX_ATTRIB: number;\r
13808   STENCIL_PASS_DEPTH_PASS: number;\r
13809   INVERT: number;\r
13810   LINK_STATUS: number;\r
13811   RGB: number;\r
13812   INT_VEC4: number;\r
13813   TEXTURE2: number;\r
13814   UNPACK_COLORSPACE_CONVERSION_WEBGL: number;\r
13815   MEDIUM_FLOAT: number;\r
13816   SRC_ALPHA_SATURATE: number;\r
13817   BUFFER_USAGE: number;\r
13818   SHORT: number;\r
13819   NONE: number;\r
13820   UNSIGNED_BYTE: number;\r
13821   INT: number;\r
13822   SUBPIXEL_BITS: number;\r
13823   KEEP: number;\r
13824   SAMPLES: number;\r
13825   FRAGMENT_SHADER: number;\r
13826   LINE_WIDTH: number;\r
13827   BLEND_SRC_RGB: number;\r
13828   LOW_FLOAT: number;\r
13829   VERSION: number;\r
13832 interface WebGLProgram extends WebGLObject {\r
13834 declare var WebGLProgram: {\r
13835   prototype: WebGLProgram;\r
13836   new(): WebGLProgram;\r
13839 interface OES_standard_derivatives {\r
13840   FRAGMENT_SHADER_DERIVATIVE_HINT_OES: number;\r
13842 declare var OES_standard_derivatives: {\r
13843   prototype: OES_standard_derivatives;\r
13844   new(): OES_standard_derivatives;\r
13845   FRAGMENT_SHADER_DERIVATIVE_HINT_OES: number;\r
13848 interface WebGLFramebuffer extends WebGLObject {\r
13850 declare var WebGLFramebuffer: {\r
13851   prototype: WebGLFramebuffer;\r
13852   new(): WebGLFramebuffer;\r
13855 interface WebGLShader extends WebGLObject {\r
13857 declare var WebGLShader: {\r
13858   prototype: WebGLShader;\r
13859   new(): WebGLShader;\r
13862 interface OES_texture_float_linear {\r
13864 declare var OES_texture_float_linear: {\r
13865   prototype: OES_texture_float_linear;\r
13866   new(): OES_texture_float_linear;\r
13869 interface WebGLObject {\r
13871 declare var WebGLObject: {\r
13872   prototype: WebGLObject;\r
13873   new(): WebGLObject;\r
13876 interface WebGLBuffer extends WebGLObject {\r
13878 declare var WebGLBuffer: {\r
13879   prototype: WebGLBuffer;\r
13880   new(): WebGLBuffer;\r
13883 interface WebGLShaderPrecisionFormat {\r
13884   rangeMin: number;\r
13885   rangeMax: number;\r
13886   precision: number;\r
13888 declare var WebGLShaderPrecisionFormat: {\r
13889   prototype: WebGLShaderPrecisionFormat;\r
13890   new(): WebGLShaderPrecisionFormat;\r
13893 interface EXT_texture_filter_anisotropic {\r
13894   TEXTURE_MAX_ANISOTROPY_EXT: number;\r
13895   MAX_TEXTURE_MAX_ANISOTROPY_EXT: number;\r
13897 declare var EXT_texture_filter_anisotropic: {\r
13898   prototype: EXT_texture_filter_anisotropic;\r
13899   new(): EXT_texture_filter_anisotropic;\r
13900   TEXTURE_MAX_ANISOTROPY_EXT: number;\r
13901   MAX_TEXTURE_MAX_ANISOTROPY_EXT: number;\r
13904 declare var Option: { new(text?: string, value?: string, defaultSelected?: boolean, selected?:boolean): HTMLOptionElement; };\r
13905 declare var Image: { new(width?: number, height?: number): HTMLImageElement; };\r
13906 declare var Audio: { new(src?: string): HTMLAudioElement; };\r
13908 declare var ondragend: (ev: DragEvent) => any;\r
13909 declare var onkeydown: (ev: KeyboardEvent) => any;\r
13910 declare var ondragover: (ev: DragEvent) => any;\r
13911 declare var onkeyup: (ev: KeyboardEvent) => any;\r
13912 declare var onreset: (ev: Event) => any;\r
13913 declare var onmouseup: (ev: MouseEvent) => any;\r
13914 declare var ondragstart: (ev: DragEvent) => any;\r
13915 declare var ondrag: (ev: DragEvent) => any;\r
13916 declare var screenX: number;\r
13917 declare var onmouseover: (ev: MouseEvent) => any;\r
13918 declare var ondragleave: (ev: DragEvent) => any;\r
13919 declare var history: History;\r
13920 declare var pageXOffset: number;\r
13921 declare var name: string;\r
13922 declare var onafterprint: (ev: Event) => any;\r
13923 declare var onpause: (ev: Event) => any;\r
13924 declare var onbeforeprint: (ev: Event) => any;\r
13925 declare var top: Window;\r
13926 declare var onmousedown: (ev: MouseEvent) => any;\r
13927 declare var onseeked: (ev: Event) => any;\r
13928 declare var opener: Window;\r
13929 declare var onclick: (ev: MouseEvent) => any;\r
13930 declare var innerHeight: number;\r
13931 declare var onwaiting: (ev: Event) => any;\r
13932 declare var ononline: (ev: Event) => any;\r
13933 declare var ondurationchange: (ev: Event) => any;\r
13934 declare var frames: Window;\r
13935 declare var onblur: (ev: FocusEvent) => any;\r
13936 declare var onemptied: (ev: Event) => any;\r
13937 declare var onseeking: (ev: Event) => any;\r
13938 declare var oncanplay: (ev: Event) => any;\r
13939 declare var outerWidth: number;\r
13940 declare var onstalled: (ev: Event) => any;\r
13941 declare var onmousemove: (ev: MouseEvent) => any;\r
13942 declare var innerWidth: number;\r
13943 declare var onoffline: (ev: Event) => any;\r
13944 declare var length: number;\r
13945 declare var screen: Screen;\r
13946 declare var onbeforeunload: (ev: BeforeUnloadEvent) => any;\r
13947 declare var onratechange: (ev: Event) => any;\r
13948 declare var onstorage: (ev: StorageEvent) => any;\r
13949 declare var onloadstart: (ev: Event) => any;\r
13950 declare var ondragenter: (ev: DragEvent) => any;\r
13951 declare var onsubmit: (ev: Event) => any;\r
13952 declare var self: Window;\r
13953 declare var document: Document;\r
13954 declare var onprogress: (ev: ProgressEvent) => any;\r
13955 declare var ondblclick: (ev: MouseEvent) => any;\r
13956 declare var pageYOffset: number;\r
13957 declare var oncontextmenu: (ev: MouseEvent) => any;\r
13958 declare var onchange: (ev: Event) => any;\r
13959 declare var onloadedmetadata: (ev: Event) => any;\r
13960 declare var onplay: (ev: Event) => any;\r
13961 declare var onerror: ErrorEventHandler;\r
13962 declare var onplaying: (ev: Event) => any;\r
13963 declare var parent: Window;\r
13964 declare var location: Location;\r
13965 declare var oncanplaythrough: (ev: Event) => any;\r
13966 declare var onabort: (ev: UIEvent) => any;\r
13967 declare var onreadystatechange: (ev: Event) => any;\r
13968 declare var outerHeight: number;\r
13969 declare var onkeypress: (ev: KeyboardEvent) => any;\r
13970 declare var frameElement: Element;\r
13971 declare var onloadeddata: (ev: Event) => any;\r
13972 declare var onsuspend: (ev: Event) => any;\r
13973 declare var window: Window;\r
13974 declare var onfocus: (ev: FocusEvent) => any;\r
13975 declare var onmessage: (ev: MessageEvent) => any;\r
13976 declare var ontimeupdate: (ev: Event) => any;\r
13977 declare var onresize: (ev: UIEvent) => any;\r
13978 declare var onselect: (ev: UIEvent) => any;\r
13979 declare var navigator: Navigator;\r
13980 declare var styleMedia: StyleMedia;\r
13981 declare var ondrop: (ev: DragEvent) => any;\r
13982 declare var onmouseout: (ev: MouseEvent) => any;\r
13983 declare var onended: (ev: Event) => any;\r
13984 declare var onhashchange: (ev: Event) => any;\r
13985 declare var onunload: (ev: Event) => any;\r
13986 declare var onscroll: (ev: UIEvent) => any;\r
13987 declare var screenY: number;\r
13988 declare var onmousewheel: (ev: MouseWheelEvent) => any;\r
13989 declare var onload: (ev: Event) => any;\r
13990 declare var onvolumechange: (ev: Event) => any;\r
13991 declare var oninput: (ev: Event) => any;\r
13992 declare var performance: Performance;\r
13993 declare var onmspointerdown: (ev: any) => any;\r
13994 declare var animationStartTime: number;\r
13995 declare var onmsgesturedoubletap: (ev: any) => any;\r
13996 declare var onmspointerhover: (ev: any) => any;\r
13997 declare var onmsgesturehold: (ev: any) => any;\r
13998 declare var onmspointermove: (ev: any) => any;\r
13999 declare var onmsgesturechange: (ev: any) => any;\r
14000 declare var onmsgesturestart: (ev: any) => any;\r
14001 declare var onmspointercancel: (ev: any) => any;\r
14002 declare var onmsgestureend: (ev: any) => any;\r
14003 declare var onmsgesturetap: (ev: any) => any;\r
14004 declare var onmspointerout: (ev: any) => any;\r
14005 declare var msAnimationStartTime: number;\r
14006 declare var applicationCache: ApplicationCache;\r
14007 declare var onmsinertiastart: (ev: any) => any;\r
14008 declare var onmspointerover: (ev: any) => any;\r
14009 declare var onpopstate: (ev: PopStateEvent) => any;\r
14010 declare var onmspointerup: (ev: any) => any;\r
14011 declare var onpageshow: (ev: PageTransitionEvent) => any;\r
14012 declare var ondevicemotion: (ev: DeviceMotionEvent) => any;\r
14013 declare var devicePixelRatio: number;\r
14014 declare var msCrypto: Crypto;\r
14015 declare var ondeviceorientation: (ev: DeviceOrientationEvent) => any;\r
14016 declare var doNotTrack: string;\r
14017 declare var onmspointerenter: (ev: any) => any;\r
14018 declare var onpagehide: (ev: PageTransitionEvent) => any;\r
14019 declare var onmspointerleave: (ev: any) => any;\r
14020 declare function alert(message?: any): void;\r
14021 declare function scroll(x?: number, y?: number): void;\r
14022 declare function focus(): void;\r
14023 declare function scrollTo(x?: number, y?: number): void;\r
14024 declare function print(): void;\r
14025 declare function prompt(message?: string, _default?: string): string;\r
14026 declare function toString(): string;\r
14027 declare function open(url?: string, target?: string, features?: string, replace?: boolean): Window;\r
14028 declare function scrollBy(x?: number, y?: number): void;\r
14029 declare function confirm(message?: string): boolean;\r
14030 declare function close(): void;\r
14031 declare function postMessage(message: any, targetOrigin: string, ports?: any): void;\r
14032 declare function showModalDialog(url?: string, argument?: any, options?: any): any;\r
14033 declare function blur(): void;\r
14034 declare function getSelection(): Selection;\r
14035 declare function getComputedStyle(elt: Element, pseudoElt?: string): CSSStyleDeclaration;\r
14036 declare function msCancelRequestAnimationFrame(handle: number): void;\r
14037 declare function matchMedia(mediaQuery: string): MediaQueryList;\r
14038 declare function cancelAnimationFrame(handle: number): void;\r
14039 declare function msIsStaticHTML(html: string): boolean;\r
14040 declare function msMatchMedia(mediaQuery: string): MediaQueryList;\r
14041 declare function requestAnimationFrame(callback: FrameRequestCallback): number;\r
14042 declare function msRequestAnimationFrame(callback: FrameRequestCallback): number;\r
14043 declare function removeEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
14044 declare function dispatchEvent(evt: Event): boolean;\r
14045 declare function attachEvent(event: string, listener: EventListener): boolean;\r
14046 declare function detachEvent(event: string, listener: EventListener): void;\r
14047 declare var localStorage: Storage;\r
14048 declare var status: string;\r
14049 declare var onmouseleave: (ev: MouseEvent) => any;\r
14050 declare var screenLeft: number;\r
14051 declare var offscreenBuffering: any;\r
14052 declare var maxConnectionsPerServer: number;\r
14053 declare var onmouseenter: (ev: MouseEvent) => any;\r
14054 declare var clipboardData: DataTransfer;\r
14055 declare var defaultStatus: string;\r
14056 declare var clientInformation: Navigator;\r
14057 declare var closed: boolean;\r
14058 declare var onhelp: (ev: Event) => any;\r
14059 declare var external: External;\r
14060 declare var event: MSEventObj;\r
14061 declare var onfocusout: (ev: FocusEvent) => any;\r
14062 declare var screenTop: number;\r
14063 declare var onfocusin: (ev: FocusEvent) => any;\r
14064 declare function showModelessDialog(url?: string, argument?: any, options?: any): Window;\r
14065 declare function navigate(url: string): void;\r
14066 declare function resizeBy(x?: number, y?: number): void;\r
14067 declare function item(index: any): any;\r
14068 declare function resizeTo(x?: number, y?: number): void;\r
14069 declare function createPopup(arguments?: any): MSPopupWindow;\r
14070 declare function toStaticHTML(html: string): string;\r
14071 declare function execScript(code: string, language?: string): any;\r
14072 declare function msWriteProfilerMark(profilerMarkName: string): void;\r
14073 declare function moveTo(x?: number, y?: number): void;\r
14074 declare function moveBy(x?: number, y?: number): void;\r
14075 declare function showHelp(url: string, helpArg?: any, features?: string): void;\r
14076 declare function captureEvents(): void;\r
14077 declare function releaseEvents(): void;\r
14078 declare var sessionStorage: Storage;\r
14079 declare function clearTimeout(handle: number): void;\r
14080 declare function setTimeout(handler: any, timeout?: any, ...args: any[]): number;\r
14081 declare function clearInterval(handle: number): void;\r
14082 declare function setInterval(handler: any, timeout?: any, ...args: any[]): number;\r
14083 declare function msSetImmediate(expression: any, ...args: any[]): number;\r
14084 declare function clearImmediate(handle: number): void;\r
14085 declare function msClearImmediate(handle: number): void;\r
14086 declare function setImmediate(expression: any, ...args: any[]): number;\r
14087 declare function btoa(rawString: string): string;\r
14088 declare function atob(encodedString: string): string;\r
14089 declare var msIndexedDB: IDBFactory;\r
14090 declare var indexedDB: IDBFactory;\r
14091 declare var console: Console;\r
14092 declare var onpointerenter: (ev: PointerEvent) => any;\r
14093 declare var onpointerout: (ev: PointerEvent) => any;\r
14094 declare var onpointerdown: (ev: PointerEvent) => any;\r
14095 declare var onpointerup: (ev: PointerEvent) => any;\r
14096 declare var onpointercancel: (ev: PointerEvent) => any;\r
14097 declare var onpointerover: (ev: PointerEvent) => any;\r
14098 declare var onpointermove: (ev: PointerEvent) => any;\r
14099 declare var onpointerleave: (ev: PointerEvent) => any;\r
14100 declare function addEventListener(type: "mouseleave", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14101 declare function addEventListener(type: "mouseenter", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14102 declare function addEventListener(type: "help", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14103 declare function addEventListener(type: "focusout", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
14104 declare function addEventListener(type: "focusin", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
14105 declare function addEventListener(type: "pointerenter", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14106 declare function addEventListener(type: "pointerout", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14107 declare function addEventListener(type: "pointerdown", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14108 declare function addEventListener(type: "pointerup", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14109 declare function addEventListener(type: "pointercancel", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14110 declare function addEventListener(type: "pointerover", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14111 declare function addEventListener(type: "pointermove", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14112 declare function addEventListener(type: "pointerleave", listener: (ev: PointerEvent) => any, useCapture?: boolean): void;\r
14113 declare function addEventListener(type: "dragend", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
14114 declare function addEventListener(type: "keydown", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
14115 declare function addEventListener(type: "dragover", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
14116 declare function addEventListener(type: "keyup", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
14117 declare function addEventListener(type: "reset", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14118 declare function addEventListener(type: "mouseup", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14119 declare function addEventListener(type: "dragstart", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
14120 declare function addEventListener(type: "drag", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
14121 declare function addEventListener(type: "mouseover", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14122 declare function addEventListener(type: "dragleave", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
14123 declare function addEventListener(type: "afterprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14124 declare function addEventListener(type: "pause", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14125 declare function addEventListener(type: "beforeprint", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14126 declare function addEventListener(type: "mousedown", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14127 declare function addEventListener(type: "seeked", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14128 declare function addEventListener(type: "click", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14129 declare function addEventListener(type: "waiting", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14130 declare function addEventListener(type: "online", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14131 declare function addEventListener(type: "durationchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14132 declare function addEventListener(type: "blur", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
14133 declare function addEventListener(type: "emptied", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14134 declare function addEventListener(type: "seeking", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14135 declare function addEventListener(type: "canplay", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14136 declare function addEventListener(type: "stalled", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14137 declare function addEventListener(type: "mousemove", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14138 declare function addEventListener(type: "offline", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14139 declare function addEventListener(type: "beforeunload", listener: (ev: BeforeUnloadEvent) => any, useCapture?: boolean): void;\r
14140 declare function addEventListener(type: "ratechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14141 declare function addEventListener(type: "storage", listener: (ev: StorageEvent) => any, useCapture?: boolean): void;\r
14142 declare function addEventListener(type: "loadstart", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14143 declare function addEventListener(type: "dragenter", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
14144 declare function addEventListener(type: "submit", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14145 declare function addEventListener(type: "progress", listener: (ev: ProgressEvent) => any, useCapture?: boolean): void;\r
14146 declare function addEventListener(type: "dblclick", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14147 declare function addEventListener(type: "contextmenu", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14148 declare function addEventListener(type: "change", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14149 declare function addEventListener(type: "loadedmetadata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14150 declare function addEventListener(type: "play", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14151 declare function addEventListener(type: "playing", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14152 declare function addEventListener(type: "canplaythrough", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14153 declare function addEventListener(type: "abort", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
14154 declare function addEventListener(type: "readystatechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14155 declare function addEventListener(type: "keypress", listener: (ev: KeyboardEvent) => any, useCapture?: boolean): void;\r
14156 declare function addEventListener(type: "loadeddata", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14157 declare function addEventListener(type: "suspend", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14158 declare function addEventListener(type: "focus", listener: (ev: FocusEvent) => any, useCapture?: boolean): void;\r
14159 declare function addEventListener(type: "message", listener: (ev: MessageEvent) => any, useCapture?: boolean): void;\r
14160 declare function addEventListener(type: "timeupdate", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14161 declare function addEventListener(type: "resize", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
14162 declare function addEventListener(type: "select", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
14163 declare function addEventListener(type: "drop", listener: (ev: DragEvent) => any, useCapture?: boolean): void;\r
14164 declare function addEventListener(type: "mouseout", listener: (ev: MouseEvent) => any, useCapture?: boolean): void;\r
14165 declare function addEventListener(type: "ended", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14166 declare function addEventListener(type: "hashchange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14167 declare function addEventListener(type: "unload", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14168 declare function addEventListener(type: "scroll", listener: (ev: UIEvent) => any, useCapture?: boolean): void;\r
14169 declare function addEventListener(type: "mousewheel", listener: (ev: MouseWheelEvent) => any, useCapture?: boolean): void;\r
14170 declare function addEventListener(type: "load", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14171 declare function addEventListener(type: "volumechange", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14172 declare function addEventListener(type: "input", listener: (ev: Event) => any, useCapture?: boolean): void;\r
14173 declare function addEventListener(type: "mspointerdown", listener: (ev: any) => any, useCapture?: boolean): void;\r
14174 declare function addEventListener(type: "msgesturedoubletap", listener: (ev: any) => any, useCapture?: boolean): void;\r
14175 declare function addEventListener(type: "mspointerhover", listener: (ev: any) => any, useCapture?: boolean): void;\r
14176 declare function addEventListener(type: "msgesturehold", listener: (ev: any) => any, useCapture?: boolean): void;\r
14177 declare function addEventListener(type: "mspointermove", listener: (ev: any) => any, useCapture?: boolean): void;\r
14178 declare function addEventListener(type: "msgesturechange", listener: (ev: any) => any, useCapture?: boolean): void;\r
14179 declare function addEventListener(type: "msgesturestart", listener: (ev: any) => any, useCapture?: boolean): void;\r
14180 declare function addEventListener(type: "mspointercancel", listener: (ev: any) => any, useCapture?: boolean): void;\r
14181 declare function addEventListener(type: "msgestureend", listener: (ev: any) => any, useCapture?: boolean): void;\r
14182 declare function addEventListener(type: "msgesturetap", listener: (ev: any) => any, useCapture?: boolean): void;\r
14183 declare function addEventListener(type: "mspointerout", listener: (ev: any) => any, useCapture?: boolean): void;\r
14184 declare function addEventListener(type: "msinertiastart", listener: (ev: any) => any, useCapture?: boolean): void;\r
14185 declare function addEventListener(type: "mspointerover", listener: (ev: any) => any, useCapture?: boolean): void;\r
14186 declare function addEventListener(type: "popstate", listener: (ev: PopStateEvent) => any, useCapture?: boolean): void;\r
14187 declare function addEventListener(type: "mspointerup", listener: (ev: any) => any, useCapture?: boolean): void;\r
14188 declare function addEventListener(type: "pageshow", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
14189 declare function addEventListener(type: "devicemotion", listener: (ev: DeviceMotionEvent) => any, useCapture?: boolean): void;\r
14190 declare function addEventListener(type: "deviceorientation", listener: (ev: DeviceOrientationEvent) => any, useCapture?: boolean): void;\r
14191 declare function addEventListener(type: "mspointerenter", listener: (ev: any) => any, useCapture?: boolean): void;\r
14192 declare function addEventListener(type: "pagehide", listener: (ev: PageTransitionEvent) => any, useCapture?: boolean): void;\r
14193 declare function addEventListener(type: "mspointerleave", listener: (ev: any) => any, useCapture?: boolean): void;\r
14194 declare function addEventListener(type: string, listener: EventListener, useCapture?: boolean): void;\r
14196 /////////////////////////////\r
14197 /// WorkerGlobalScope APIs \r
14198 /////////////////////////////\r
14199 // These are only available in a Web Worker \r
14200 declare function importScripts(...urls: string[]): void;\r
14203 /////////////////////////////\r
14204 /// Windows Script Host APIS\r
14205 /////////////////////////////\r
14207 declare var ActiveXObject: { new (s: string): any; };\r
14209 interface ITextWriter {\r
14210   Write(s: string): void;\r
14211   WriteLine(s: string): void;\r
14212   Close(): void;\r
14215 declare var WScript: {\r
14216   Echo(s: any): void;\r
14217   StdErr: ITextWriter;\r
14218   StdOut: ITextWriter;\r
14219   Arguments: { length: number; Item(n: number): string; };\r
14220   ScriptFullName: string;\r
14221   Quit(exitCode?: number): number;\r