133010592ec9f7d4943ab04231319a3ded7bca29
[WebKit-https.git] / Source / WebInspectorUI / UserInterface / Models / NativeFunctionParameters.js
1 /*
2  * Copyright (C) 2015 Apple Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 // FIXME: Provide Parameter lists for the constructors themselves? (new RegExp(...)).
27 // FIXME: Provide Parameter lists for global functions (eval, decodeURI, ...).
28
29 WebInspector.NativeConstructorFunctionParameters = {
30     Object: {
31         create: "prototype, [propertiesObject]",
32         defineProperty: "object, propertyName, descriptor",
33         defineProperties: "object, properties",
34         freeze: "object",
35         getOwnPropertyDescriptor: "object, propertyName",
36         getOwnPropertyNames: "object",
37         getOwnPropertySymbols: "object",
38         getPrototypeOf: "object",
39         isExtensible: "object",
40         isFrozen: "object",
41         isSealed: "object",
42         keys: "object",
43         preventExtensions: "object",
44         seal: "object",
45         __proto__: null,
46     },
47
48     Array: {
49         from: "arrayLike, [mapFunction], [thisArg]",
50         isArray: "object",
51         of: "[...values]",
52         __proto__: null,
53     },
54
55     ArrayBuffer: {
56         isView: "object",
57         transfer: "oldBuffer, [newByteLength=length]",
58         __proto__: null,
59     },
60
61     Number: {
62         isFinite: "value",
63         isInteger: "value",
64         isNaN: "value",
65         isSafeInteger: "value",
66         parseFloat: "string",
67         parseInt: "string, [radix]",
68         __proto__: null,
69     },
70
71     Math: {
72         abs: "x",
73         acos: "x",
74         acosh: "x",
75         asin: "x",
76         asinh: "x",
77         atan: "x",
78         atan2: "y, x",
79         atanh: "x",
80         cbrt: "x",
81         ceil: "x",
82         cos: "x",
83         cosh: "x",
84         exp: "x",
85         expm1: "x",
86         floor: "x",
87         fround: "x",
88         hypot: "[...x]",
89         imul: "x",
90         log: "x",
91         log1p: "x",
92         log2: "x",
93         log10: "x",
94         max: "[...x]",
95         min: "[...x]",
96         pow: "x, y",
97         round: "x",
98         sin: "x",
99         sinh: "x",
100         sqrt: "x",
101         tan: "x",
102         tanh: "x",
103         trunc: "x",
104         __proto__: null,
105     },
106
107     JSON: {
108         parse: "text, [reviver]",
109         stringify: "value, [replacer], [space]",
110         __proto__: null,
111     },
112
113     Date: {
114         parse: "dateString",
115         UTC: "year, [month], [day], [hour], [minute], [second], [ms]",
116         __proto__: null,
117     },
118
119     Promise: {
120         all: "iterable",
121         race: "iterable",
122         reject: "reason",
123         resolve: "value",
124         __proto__: null,
125     },
126
127     String: {
128         fromCharCode: "code, [...codes]",
129         __proto__: null,
130     },
131
132     Symbol: {
133         for: "key",
134         keyFor: "symbol",
135         __proto__: null,
136     },
137
138     // Autogenerated DOM Interface static methods.
139
140     IDBKeyRangeConstructor: {
141         bound: "lower, upper, [lowerOpen], [upperOpen]",
142         lowerBound: "lower, [open]",
143         only: "value",
144         upperBound: "upper, [open]",
145         __proto__: null,
146     },
147
148     MediaSourceConstructor: {
149         isTypeSupported: "type",
150         __proto__: null,
151     },
152
153     MediaStreamTrackConstructor: {
154         getSources: "callback",
155         __proto__: null,
156     },
157
158     NotificationConstructor: {
159         requestPermission: "[callback]",
160         __proto__: null,
161     },
162
163     URLConstructor: {
164         createObjectURL: "blob",
165         revokeObjectURL: "url",
166         __proto__: null,
167     },
168
169     WebKitMediaKeysConstructor: {
170         isTypeSupported: "keySystem, [type]",
171         __proto__: null,
172     },
173 };
174
175 WebInspector.NativePrototypeFunctionParameters = {
176
177     // Built-in JavaScript objects.
178     // FIXME: TypedArrays (Int8Array, etc),
179
180     Object: {
181         __defineGetter__: "propertyName, getterFunction",
182         __defineSetter__: "propertyName, setterFunction",
183         __lookupGetter__: "propertyName",
184         __lookupSetter__: "propertyName",
185         hasOwnProperty: "propertyName",
186         isPrototypeOf: "property",
187         propertyIsEnumerable: "propertyName",
188         __proto__: null,
189     },
190
191     Array: {
192         concat: "value, ...",
193         every: "callback, [thisArg]",
194         fill: "value, [startIndex=0], [endIndex=length]",
195         filter: "callback, [thisArg]",
196         find: "callback, [thisArg]",
197         findIndex: "callback, [thisArg]",
198         forEach: "callback, [thisArg]",
199         includes: "searchValue, [startIndex=0]",
200         indexOf: "searchValue, [startIndex=0]",
201         join: "[separator=\",\"]",
202         lastIndexOf: "searchValue, [startIndex=length]",
203         map: "callback, [thisArg]",
204         push: "value, ...",
205         reduce: "callback, [initialValue]",
206         reduceRight: "callback, [initialValue]",
207         slice: "[startIndex=0], [endIndex=length]",
208         some: "callback, [thisArg]",
209         sort: "[compareFunction]",
210         splice: "startIndex, [deleteCount=0], ...itemsToAdd",
211         __proto__: null,
212     },
213
214     ArrayBuffer: {
215         slice: "startIndex, [endIndex=byteLength]",
216         __proto__: null,
217     },
218
219     DataView: {
220         setInt8: "byteOffset, value",
221         setInt16: "byteOffset, value, [littleEndian=false]",
222         setInt23: "byteOffset, value, [littleEndian=false]",
223         setUint8: "byteOffset, value",
224         setUint16: "byteOffset, value, [littleEndian=false]",
225         setUint32: "byteOffset, value, [littleEndian=false]",
226         setFloat32: "byteOffset, value, [littleEndian=false]",
227         setFloat64: "byteOffset, value, [littleEndian=false]",
228         getInt8: "byteOffset",
229         getInt16: "byteOffset, [littleEndian=false]",
230         getInt23: "byteOffset, [littleEndian=false]",
231         getUint8: "byteOffset",
232         getUint16: "byteOffset, [littleEndian=false]",
233         getUint32: "byteOffset, [littleEndian=false]",
234         getFloat32: "byteOffset, [littleEndian=false]",
235         getFloat64: "byteOffset, [littleEndian=false]",
236         __proto__: null,
237     },
238
239     Date: {
240         setDate: "day",
241         setFullYear: "year, [month=getMonth()], [day=getDate()]",
242         setHours: "hours, [minutes=getMinutes()], [seconds=getSeconds()], [ms=getMilliseconds()]",
243         setMilliseconds: "ms",
244         setMinutes: "minutes, [seconds=getSeconds()], [ms=getMilliseconds()]",
245         setMonth: "month, [day=getDate()]",
246         setSeconds: "seconds, [ms=getMilliseconds()]",
247         setTime: "time",
248         setUTCDate: "day",
249         setUTCFullYear: "year, [month=getUTCMonth()], [day=getUTCDate()]",
250         setUTCHours: "hours, [minutes=getUTCMinutes()], [seconds=getUTCSeconds()], [ms=getUTCMilliseconds()]",
251         setUTCMilliseconds: "ms",
252         setUTCMinutes: "minutes, [seconds=getUTCSeconds()], [ms=getUTCMilliseconds()]",
253         setUTCMonth: "month, [day=getUTCDate()]",
254         setUTCSeconds: "seconds, [ms=getUTCMilliseconds()]",
255         setUTCTime: "time",
256         setYear: "year",
257         __proto__: null,
258     },
259
260     Function: {
261         apply: "thisObject, [argumentsArray]",
262         bind: "thisObject, ...arguments",
263         call: "thisObject, ...arguments",
264         __proto__: null,
265     },
266
267     Map: {
268         delete: "key",
269         forEach: "callback, [thisArg]",
270         get: "key",
271         has: "key",
272         set: "key, value",
273         __proto__: null,
274     },
275
276     Number: {
277         toExponential: "[digits]",
278         toFixed: "[digits]",
279         toPrecision: "[significantDigits]",
280         toString: "[radix=10]",
281         __proto__: null,
282     },
283
284     RegExp: {
285         compile: "pattern, flags",
286         exec: "string",
287         test: "string",
288         __proto__: null,
289     },
290
291     Set: {
292         delete: "value",
293         forEach: "callback, [thisArg]",
294         has: "value",
295         add: "value",
296         __proto__: null,
297     },
298
299     String: {
300         charAt: "index",
301         charCodeAt: "index",
302         concat: "string, ...",
303         includes: "searchValue, [startIndex=0]",
304         indexOf: "searchValue, [startIndex=0]",
305         lastIndexOf: "searchValue, [startIndex=length]",
306         localeCompare: "string",
307         match: "regex",
308         replace: "regex|string, replaceString|replaceHandler, [flags]",
309         search: "regex",
310         slice: "startIndex, [endIndex=length]",
311         split: "[separator], [limit]",
312         substr: "startIndex, [numberOfCharacters]",
313         substring: "startIndex, [endIndex=length]",
314         __proto__: null,
315     },
316
317     Promise: {
318         catch: "rejectionHandler",
319         then: "resolvedHandler, rejectionHandler",
320         __proto__: null,
321     },
322
323     // Curated DOM Interfaces.
324
325     Element: {
326         closest: "selectors",
327         getAttribute: "attributeName",
328         getAttributeNS: "namespace, attributeName",
329         getAttributeNode: "attributeName",
330         getAttributeNodeNS: "namespace, attributeName",
331         hasAttribute: "attributeName",
332         hasAttributeNS: "namespace, attributeName",
333         matches: "selector",
334         removeAttribute: "attributeName",
335         removeAttributeNS: "namespace, attributeName",
336         removeAttributeNode: "attributeName",
337         scrollByLines: "[lines]",
338         scrollByPages: "[pages]",
339         scrollIntoView: "[alignWithTop]",
340         scrollIntoViewIfNeeded: "[centerIfNeeded]",
341         setAttribute: "name, value",
342         setAttributeNS: "namespace, name, value",
343         setAttributeNode: "attributeNode",
344         setAttributeNodeNS: "namespace, attributeNode",
345         webkitMatchesSelector: "selectors",
346         __proto__: null,
347     },
348
349     Node: {
350         appendChild: "child",
351         cloneNode: "[deep]",
352         compareDocumentPosition: "[node]",
353         contains: "[node]",
354         insertBefore: "insertElement, referenceElement",
355         isDefaultNamespace: "[namespace]",
356         isEqualNode: "[node]",
357         lookupNamespaceURI: "prefix",
358         removeChild: "node",
359         replaceChild: "newChild, oldChild",
360         __proto__: null,
361     },
362
363     Window: {
364         alert: "[message]",
365         atob: "encodedData",
366         btoa: "stringToEncode",
367         cancelAnimationFrame: "id",
368         clearInterval: "intervalId",
369         clearTimeout: "timeoutId",
370         confirm: "[message]",
371         find: "string, [caseSensitive], [backwards], [wrapAround]",
372         getComputedStyle: "[element], [pseudoElement]",
373         getMatchedCSSRules: "[element], [pseudoElement]",
374         matchMedia: "mediaQueryString",
375         moveBy: "[deltaX], [deltaY]",
376         moveTo: "[screenX], [screenY]",
377         open: "url, windowName, [featuresString]",
378         openDatabase: "name, version, displayName, estimatedSize, [creationCallback]",
379         postMessage: "message, targetOrigin, [...transferables]",
380         prompt: "[message], [value]",
381         requestAnimationFrame: "callback",
382         resizeBy: "[deltaX], [deltaY]",
383         resizeTo: "[width], [height]",
384         scrollBy: "[deltaX], [deltaY]",
385         scrollTo: "[x], [y]",
386         setInterval: "func, [delay], [...params]",
387         setTimeout: "func, [delay], [...params]",
388         showModalDialog: "url, [arguments], [options]",
389         __proto__: null,
390     },
391
392     Document: {
393         adoptNode: "[node]",
394         caretRangeFromPoint: "[x], [y]",
395         createAttribute: "attributeName",
396         createAttributeNS: "namespace, qualifiedName",
397         createCDATASection: "data",
398         createComment: "data",
399         createElement: "tagName",
400         createElementNS: "namespace, qualifiedName",
401         createEntityReference: "name",
402         createEvent: "type",
403         createExpression: "xpath, resolver",
404         createNSResolver: "node",
405         createNodeIterator: "root, whatToShow, filter",
406         createProcessingInstruction: "target, data",
407         createTextNode: "data",
408         createTreeWalker: "root, whatToShow, filter, entityReferenceExpansion",
409         elementFromPoint: "x, y",
410         evaluate: "xpath, contextNode, namespaceResolver, resultType, result",
411         execCommand: "command, userInterface, value",
412         getCSSCanvasContext: "contextId, name, width, height",
413         getElementById: "id",
414         getElementsByName: "name",
415         getOverrideStyle: "[element], [pseudoElement]",
416         importNode: "node, deep",
417         queryCommandEnabled: "command",
418         queryCommandIndeterm: "command",
419         queryCommandState: "command",
420         queryCommandSupported: "command",
421         queryCommandValue: "command",
422         __proto__: null,
423     },
424
425     // Autogenerated DOM Interfaces.
426
427     ANGLEInstancedArrays: {
428         drawArraysInstancedANGLE: "mode, first, count, primcount",
429         drawElementsInstancedANGLE: "mode, count, type, offset, primcount",
430         vertexAttribDivisorANGLE: "index, divisor",
431         __proto__: null,
432     },
433
434     AnalyserNode: {
435         getByteFrequencyData: "array",
436         getByteTimeDomainData: "array",
437         getFloatFrequencyData: "array",
438         __proto__: null,
439     },
440
441     AudioBuffer: {
442         getChannelData: "channelIndex",
443         __proto__: null,
444     },
445
446     AudioBufferCallback: {
447         handleEvent: "audioBuffer",
448         __proto__: null,
449     },
450
451     AudioBufferSourceNode: {
452         noteGrainOn: "when, grainOffset, grainDuration",
453         noteOff: "when",
454         noteOn: "when",
455         start: "[when], [grainOffset], [grainDuration]",
456         stop: "[when]",
457         __proto__: null,
458     },
459
460     AudioListener: {
461         setOrientation: "x, y, z, xUp, yUp, zUp",
462         setPosition: "x, y, z",
463         setVelocity: "x, y, z",
464         __proto__: null,
465     },
466
467     AudioNode: {
468         connect: "destination, [output], [input]",
469         disconnect: "[output]",
470         __proto__: null,
471     },
472
473     AudioParam: {
474         cancelScheduledValues: "startTime",
475         exponentialRampToValueAtTime: "value, time",
476         linearRampToValueAtTime: "value, time",
477         setTargetAtTime: "target, time, timeConstant",
478         setTargetValueAtTime: "targetValue, time, timeConstant",
479         setValueAtTime: "value, time",
480         setValueCurveAtTime: "values, time, duration",
481         __proto__: null,
482     },
483
484     AudioTrackList: {
485         getTrackById: "id",
486         item: "index",
487         __proto__: null,
488     },
489
490     BiquadFilterNode: {
491         getFrequencyResponse: "frequencyHz, magResponse, phaseResponse",
492         __proto__: null,
493     },
494
495     Blob: {
496         slice: "[start], [end], [contentType]",
497         __proto__: null,
498     },
499
500     CSS: {
501         supports: "property, value",
502         __proto__: null,
503     },
504
505     CSSKeyframesRule: {
506         appendRule: "[rule]",
507         deleteRule: "[key]",
508         findRule: "[key]",
509         insertRule: "[rule]",
510         __proto__: null,
511     },
512
513     CSSMediaRule: {
514         deleteRule: "[index]",
515         insertRule: "[rule], [index]",
516         __proto__: null,
517     },
518
519     CSSPrimitiveValue: {
520         getFloatValue: "[unitType]",
521         setFloatValue: "[unitType], [floatValue]",
522         setStringValue: "[stringType], [stringValue]",
523         __proto__: null,
524     },
525
526     CSSRuleList: {
527         item: "[index]",
528         __proto__: null,
529     },
530
531     CSSStyleDeclaration: {
532         getPropertyCSSValue: "[propertyName]",
533         getPropertyPriority: "[propertyName]",
534         getPropertyShorthand: "[propertyName]",
535         getPropertyValue: "[propertyName]",
536         isPropertyImplicit: "[propertyName]",
537         item: "[index]",
538         removeProperty: "[propertyName]",
539         setProperty: "[propertyName], [value], [priority]",
540         __proto__: null,
541     },
542
543     CSSStyleSheet: {
544         addRule: "[selector], [style], [index]",
545         deleteRule: "[index]",
546         insertRule: "[rule], [index]",
547         removeRule: "[index]",
548         __proto__: null,
549     },
550
551     CSSSupportsRule: {
552         deleteRule: "[index]",
553         insertRule: "[rule], [index]",
554         __proto__: null,
555     },
556
557     CSSValueList: {
558         item: "[index]",
559         __proto__: null,
560     },
561
562     CanvasGradient: {
563         addColorStop: "[offset], [color]",
564         __proto__: null,
565     },
566
567     CanvasRenderingContext2D: {
568         arc: "x, y, radius, startAngle, endAngle, [anticlockwise]",
569         arcTo: "x1, y1, x2, y2, radius",
570         bezierCurveTo: "cp1x, cp1y, cp2x, cp2y, x, y",
571         clearRect: "x, y, width, height",
572         clip: "path, [winding]",
573         createImageData: "imagedata",
574         createLinearGradient: "x0, y0, x1, y1",
575         createPattern: "canvas, repetitionType",
576         createRadialGradient: "x0, y0, r0, x1, y1, r1",
577         drawFocusIfNeeded: "element",
578         drawImage: "image, x, y",
579         drawImageFromRect: "image, [sx], [sy], [sw], [sh], [dx], [dy], [dw], [dh], [compositeOperation]",
580         ellipse: "x, y, radiusX, radiusY, rotation, startAngle, endAngle, [anticlockwise]",
581         fill: "path, [winding]",
582         fillRect: "x, y, width, height",
583         fillText: "text, x, y, [maxWidth]",
584         getImageData: "sx, sy, sw, sh",
585         isPointInPath: "path, x, y, [winding]",
586         isPointInStroke: "path, x, y",
587         lineTo: "x, y",
588         measureText: "text",
589         moveTo: "x, y",
590         putImageData: "imagedata, dx, dy",
591         quadraticCurveTo: "cpx, cpy, x, y",
592         rect: "x, y, width, height",
593         rotate: "angle",
594         scale: "sx, sy",
595         setAlpha: "[alpha]",
596         setCompositeOperation: "[compositeOperation]",
597         setFillColor: "color, [alpha]",
598         setLineCap: "[cap]",
599         setLineDash: "dash",
600         setLineJoin: "[join]",
601         setLineWidth: "[width]",
602         setMiterLimit: "[limit]",
603         setShadow: "width, height, blur, [color], [alpha]",
604         setStrokeColor: "color, [alpha]",
605         setTransform: "m11, m12, m21, m22, dx, dy",
606         stroke: "path",
607         strokeRect: "x, y, width, height",
608         strokeText: "text, x, y, [maxWidth]",
609         transform: "m11, m12, m21, m22, dx, dy",
610         translate: "tx, ty",
611         webkitGetImageDataHD: "sx, sy, sw, sh",
612         webkitPutImageDataHD: "imagedata, dx, dy",
613         __proto__: null,
614     },
615
616     CharacterData: {
617         appendData: "[data]",
618         deleteData: "[offset], [length]",
619         insertData: "[offset], [data]",
620         replaceData: "[offset], [length], [data]",
621         substringData: "[offset], [length]",
622         __proto__: null,
623     },
624
625     ClientRectList: {
626         item: "[index]",
627         __proto__: null,
628     },
629
630     CommandLineAPIHost: {
631         copyText: "text",
632         databaseId: "database",
633         getEventListeners: "node",
634         inspect: "objectId, hints",
635         storageId: "storage",
636         __proto__: null,
637     },
638
639     CompositionEvent: {
640         initCompositionEvent: "[typeArg], [canBubbleArg], [cancelableArg], [viewArg], [dataArg]",
641         __proto__: null,
642     },
643
644     Crypto: {
645         getRandomValues: "array",
646         __proto__: null,
647     },
648
649     CustomEvent: {
650         initCustomEvent: "[typeArg], [canBubbleArg], [cancelableArg], [detailArg]",
651         __proto__: null,
652     },
653
654     DOMApplicationCache: {
655         /* EventTarget */
656         __proto__: null,
657     },
658
659     DOMImplementation: {
660         createCSSStyleSheet: "[title], [media]",
661         createDocument: "[namespaceURI], [qualifiedName], [doctype]",
662         createDocumentType: "[qualifiedName], [publicId], [systemId]",
663         createHTMLDocument: "[title]",
664         hasFeature: "[feature], [version]",
665         __proto__: null,
666     },
667
668     DOMParser: {
669         parseFromString: "[str], [contentType]",
670         __proto__: null,
671     },
672
673     DOMStringList: {
674         contains: "[string]",
675         item: "[index]",
676         __proto__: null,
677     },
678
679     DOMTokenList: {
680         add: "tokens...",
681         contains: "token",
682         item: "index",
683         remove: "tokens...",
684         toggle: "token, [force]",
685         __proto__: null,
686     },
687
688     DataTransfer: {
689         clearData: "[type]",
690         getData: "type",
691         setData: "type, data",
692         setDragImage: "image, x, y",
693         __proto__: null,
694     },
695
696     DataTransferItem: {
697         getAsString: "[callback]",
698         __proto__: null,
699     },
700
701     DataTransferItemList: {
702         add: "file",
703         item: "[index]",
704         __proto__: null,
705     },
706
707     Database: {
708         changeVersion: "oldVersion, newVersion, [callback], [errorCallback], [successCallback]",
709         readTransaction: "callback, [errorCallback], [successCallback]",
710         transaction: "callback, [errorCallback], [successCallback]",
711         __proto__: null,
712     },
713
714     DatabaseCallback: {
715         handleEvent: "database",
716         __proto__: null,
717     },
718
719     DedicatedWorkerGlobalScope: {
720         postMessage: "message, [messagePorts]",
721         __proto__: null,
722     },
723
724     DeviceMotionEvent: {
725         initDeviceMotionEvent: "[type], [bubbles], [cancelable], [acceleration], [accelerationIncludingGravity], [rotationRate], [interval]",
726         __proto__: null,
727     },
728
729     DeviceOrientationEvent: {
730         initDeviceOrientationEvent: "[type], [bubbles], [cancelable], [alpha], [beta], [gamma], [absolute]",
731         __proto__: null,
732     },
733
734     DocumentFragment: {
735         querySelector: "selectors",
736         querySelectorAll: "selectors",
737         __proto__: null,
738     },
739
740     Event: {
741         initEvent: "[type], [canBubble], [cancelable]",
742         __proto__: null,
743     },
744
745     FileList: {
746         item: "index",
747         __proto__: null,
748     },
749
750     FileReader: {
751         readAsArrayBuffer: "blob",
752         readAsBinaryString: "blob",
753         readAsDataURL: "blob",
754         readAsText: "blob, [encoding]",
755         __proto__: null,
756     },
757
758     FileReaderSync: {
759         readAsArrayBuffer: "blob",
760         readAsBinaryString: "blob",
761         readAsDataURL: "blob",
762         readAsText: "blob, [encoding]",
763         __proto__: null,
764     },
765
766     FontLoader: {
767         checkFont: "font, [text]",
768         loadFont: "params",
769         notifyWhenFontsReady: "callback",
770         __proto__: null,
771     },
772
773     FormData: {
774         append: "[name], [value], [filename]",
775         __proto__: null,
776     },
777
778     Geolocation: {
779         clearWatch: "watchID",
780         getCurrentPosition: "successCallback, [errorCallback], [options]",
781         watchPosition: "successCallback, [errorCallback], [options]",
782         __proto__: null,
783     },
784
785     HTMLAllCollection: {
786         item: "[index]",
787         namedItem: "name",
788         tags: "name",
789         __proto__: null,
790     },
791
792     HTMLButtonElement: {
793         setCustomValidity: "error",
794         __proto__: null,
795     },
796
797     HTMLCanvasElement: {
798         getContext: "[contextId]",
799         probablySupportsContext: "[contextId]",
800         toDataURL: "[type]",
801         __proto__: null,
802     },
803
804     HTMLCollection: {
805         item: "[index]",
806         namedItem: "[name]",
807         __proto__: null,
808     },
809
810     HTMLDocument: {
811         write: "[html]",
812         writeln: "[html]",
813         __proto__: null,
814     },
815
816     HTMLElement: {
817         insertAdjacentElement: "[position], [element]",
818         insertAdjacentHTML: "[position], [html]",
819         insertAdjacentText: "[position], [text]",
820         __proto__: null,
821     },
822
823     HTMLFieldSetElement: {
824         setCustomValidity: "error",
825         __proto__: null,
826     },
827
828     HTMLFormControlsCollection: {
829         namedItem: "[name]",
830         __proto__: null,
831     },
832
833     HTMLInputElement: {
834         setCustomValidity: "error",
835         setRangeText: "replacement",
836         setSelectionRange: "[start], [end], [direction]",
837         stepDown: "[n]",
838         stepUp: "[n]",
839         __proto__: null,
840     },
841
842     HTMLKeygenElement: {
843         setCustomValidity: "error",
844         __proto__: null,
845     },
846
847     HTMLMediaElement: {
848         addTextTrack: "kind, [label], [language]",
849         canPlayType: "[type], [keySystem]",
850         fastSeek: "time",
851         webkitAddKey: "keySystem, key, [initData], [sessionId]",
852         webkitCancelKeyRequest: "keySystem, [sessionId]",
853         webkitGenerateKeyRequest: "keySystem, [initData]",
854         webkitSetMediaKeys: "mediaKeys",
855         __proto__: null,
856     },
857
858     HTMLObjectElement: {
859         setCustomValidity: "error",
860         __proto__: null,
861     },
862
863     HTMLOptionsCollection: {
864         add: "element, [before]",
865         namedItem: "[name]",
866         remove: "[index]",
867         __proto__: null,
868     },
869
870     HTMLOutputElement: {
871         setCustomValidity: "error",
872         __proto__: null,
873     },
874
875     HTMLSelectElement: {
876         add: "element, [before]",
877         item: "index",
878         namedItem: "[name]",
879         setCustomValidity: "error",
880         __proto__: null,
881     },
882
883     HTMLTableElement: {
884         deleteRow: "[index]",
885         insertRow: "[index]",
886         __proto__: null,
887     },
888
889     HTMLTableRowElement: {
890         deleteCell: "[index]",
891         insertCell: "[index]",
892         __proto__: null,
893     },
894
895     HTMLTableSectionElement: {
896         deleteRow: "[index]",
897         insertRow: "[index]",
898         __proto__: null,
899     },
900
901     HTMLTextAreaElement: {
902         setCustomValidity: "error",
903         setRangeText: "replacement",
904         setSelectionRange: "[start], [end], [direction]",
905         __proto__: null,
906     },
907
908     HTMLVideoElement: {
909         webkitSetPresentationMode: "mode",
910         webkitSupportsPresentationMode: "mode",
911         __proto__: null,
912     },
913
914     HashChangeEvent: {
915         initHashChangeEvent: "[type], [canBubble], [cancelable], [oldURL], [newURL]",
916         __proto__: null,
917     },
918
919     History: {
920         go: "[distance]",
921         pushState: "data, title, [url]",
922         replaceState: "data, title, [url]",
923         __proto__: null,
924     },
925
926     IDBCursor: {
927         advance: "count",
928         continue: "[key]",
929         update: "value",
930         __proto__: null,
931     },
932
933     IDBDatabase: {
934         createObjectStore: "name, [options]",
935         deleteObjectStore: "name",
936         transaction: "storeName, [mode]",
937         __proto__: null,
938     },
939
940     IDBFactory: {
941         cmp: "first, second",
942         deleteDatabase: "name",
943         open: "name, [version]",
944         __proto__: null,
945     },
946
947     IDBIndex: {
948         count: "[range]",
949         get: "key",
950         getKey: "key",
951         openCursor: "[range], [direction]",
952         openKeyCursor: "[range], [direction]",
953         __proto__: null,
954     },
955
956     IDBObjectStore: {
957         add: "value, [key]",
958         count: "[range]",
959         createIndex: "name, keyPath, [options]",
960         delete: "keyRange",
961         deleteIndex: "name",
962         get: "key",
963         index: "name",
964         openCursor: "[range], [direction]",
965         put: "value, [key]",
966         __proto__: null,
967     },
968
969     IDBTransaction: {
970         objectStore: "name",
971         __proto__: null,
972     },
973
974     KeyboardEvent: {
975         initKeyboardEvent: "[type], [canBubble], [cancelable], [view], [keyIdentifier], [location], [ctrlKey], [altKey], [shiftKey], [metaKey], [altGraphKey]",
976         __proto__: null,
977     },
978
979     Location: {
980         assign: "[url]",
981         reload: "[force=false]",
982         replace: "[url]",
983         __proto__: null,
984     },
985
986     MediaController: {
987         /* EventTarget */
988         __proto__: null,
989     },
990
991     MediaControlsHost: {
992         displayNameForTrack: "track",
993         mediaUIImageData: "partID",
994         setSelectedTextTrack: "track",
995         sortedTrackListForMenu: "trackList",
996         __proto__: null,
997     },
998
999     MediaList: {
1000         appendMedium: "[newMedium]",
1001         deleteMedium: "[oldMedium]",
1002         item: "[index]",
1003         __proto__: null,
1004     },
1005
1006     MediaQueryList: {
1007         addListener: "[listener]",
1008         removeListener: "[listener]",
1009         __proto__: null,
1010     },
1011
1012     MediaQueryListListener: {
1013         queryChanged: "[list]",
1014         __proto__: null,
1015     },
1016
1017     MediaSource: {
1018         addSourceBuffer: "type",
1019         endOfStream: "[error]",
1020         removeSourceBuffer: "buffer",
1021         __proto__: null,
1022     },
1023
1024     MediaStreamTrack: {
1025         applyConstraints: "constraints",
1026         __proto__: null,
1027     },
1028
1029     MediaStreamTrackSourcesCallback: {
1030         handleEvent: "sources",
1031         __proto__: null,
1032     },
1033
1034     MessageEvent: {
1035         initMessageEvent: "[typeArg], [canBubbleArg], [cancelableArg], [dataArg], [originArg], [lastEventIdArg], [sourceArg], [messagePorts]",
1036         webkitInitMessageEvent: "[typeArg], [canBubbleArg], [cancelableArg], [dataArg], [originArg], [lastEventIdArg], [sourceArg], [transferables]",
1037         __proto__: null,
1038     },
1039
1040     MessagePort: {
1041         /* EventTarget */
1042         __proto__: null,
1043     },
1044
1045     MimeTypeArray: {
1046         item: "[index]",
1047         namedItem: "[name]",
1048         __proto__: null,
1049     },
1050
1051     MouseEvent: {
1052         initMouseEvent: "[type], [canBubble], [cancelable], [view], [detail], [screenX], [screenY], [clientX], [clientY], [ctrlKey], [altKey], [shiftKey], [metaKey], [button], [relatedTarget]",
1053         __proto__: null,
1054     },
1055
1056     MutationEvent: {
1057         initMutationEvent: "[type], [canBubble], [cancelable], [relatedNode], [prevValue], [newValue], [attrName], [attrChange]",
1058         __proto__: null,
1059     },
1060
1061     MutationObserver: {
1062         observe: "target, options",
1063         __proto__: null,
1064     },
1065
1066     NamedNodeMap: {
1067         getNamedItem: "[name]",
1068         getNamedItemNS: "[namespaceURI], [localName]",
1069         item: "[index]",
1070         removeNamedItem: "[name]",
1071         removeNamedItemNS: "[namespaceURI], [localName]",
1072         setNamedItem: "[node]",
1073         setNamedItemNS: "[node]",
1074         __proto__: null,
1075     },
1076
1077     Navigator: {
1078         webkitGetUserMedia: "options, successCallback, [errorCallback]",
1079         __proto__: null,
1080     },
1081
1082     NavigatorUserMediaErrorCallback: {
1083         handleEvent: "error",
1084         __proto__: null,
1085     },
1086
1087     NavigatorUserMediaSuccessCallback: {
1088         handleEvent: "stream",
1089         __proto__: null,
1090     },
1091
1092     NodeFilter: {
1093         acceptNode: "[n]",
1094         __proto__: null,
1095     },
1096
1097     NodeList: {
1098         item: "index",
1099         __proto__: null,
1100     },
1101
1102     Notification: {
1103         /* EventTarget */
1104         __proto__: null,
1105     },
1106
1107     NotificationCenter: {
1108         createNotification: "iconUrl, title, body",
1109         requestPermission: "[callback]",
1110         __proto__: null,
1111     },
1112
1113     NotificationPermissionCallback: {
1114         handleEvent: "permission",
1115         __proto__: null,
1116     },
1117
1118     OESVertexArrayObject: {
1119         bindVertexArrayOES: "[arrayObject]",
1120         deleteVertexArrayOES: "[arrayObject]",
1121         isVertexArrayOES: "[arrayObject]",
1122         __proto__: null,
1123     },
1124
1125     OscillatorNode: {
1126         noteOff: "when",
1127         noteOn: "when",
1128         setPeriodicWave: "wave",
1129         start: "[when]",
1130         stop: "[when]",
1131         __proto__: null,
1132     },
1133
1134     Path2D: {
1135         addPath: "path, [transform]",
1136         arc: "[x], [y], [radius], [startAngle], [endAngle], [anticlockwise]",
1137         arcTo: "[x1], [y1], [x2], [y2], [radius]",
1138         bezierCurveTo: "[cp1x], [cp1y], [cp2x], [cp2y], [x], [y]",
1139         ellipse: "x, y, radiusX, radiusY, rotation, startAngle, endAngle, [anticlockwise]",
1140         lineTo: "[x], [y]",
1141         moveTo: "[x], [y]",
1142         quadraticCurveTo: "[cpx], [cpy], [x], [y]",
1143         rect: "[x], [y], [width], [height]",
1144         __proto__: null,
1145     },
1146
1147     Plugin: {
1148         item: "[index]",
1149         namedItem: "[name]",
1150         __proto__: null,
1151     },
1152
1153     PluginArray: {
1154         item: "[index]",
1155         namedItem: "[name]",
1156         refresh: "[reload]",
1157         __proto__: null,
1158     },
1159
1160     PositionCallback: {
1161         handleEvent: "position",
1162         __proto__: null,
1163     },
1164
1165     PositionErrorCallback: {
1166         handleEvent: "error",
1167         __proto__: null,
1168     },
1169
1170     QuickTimePluginReplacement: {
1171         postEvent: "eventName",
1172         __proto__: null,
1173     },
1174
1175     RTCDTMFSender: {
1176         insertDTMF: "tones, [duration], [interToneGap]",
1177         __proto__: null,
1178     },
1179
1180     RTCDataChannel: {
1181         send: "data",
1182         __proto__: null,
1183     },
1184
1185     RTCPeerConnectionErrorCallback: {
1186         handleEvent: "error",
1187         __proto__: null,
1188     },
1189
1190     RTCSessionDescriptionCallback: {
1191         handleEvent: "sdp",
1192         __proto__: null,
1193     },
1194
1195     RTCStatsCallback: {
1196         handleEvent: "response",
1197         __proto__: null,
1198     },
1199
1200     RTCStatsReport: {
1201         stat: "name",
1202         __proto__: null,
1203     },
1204
1205     RTCStatsResponse: {
1206         namedItem: "[name]",
1207         __proto__: null,
1208     },
1209
1210     Range: {
1211         collapse: "[toStart]",
1212         compareBoundaryPoints: "[how], [sourceRange]",
1213         compareNode: "[refNode]",
1214         comparePoint: "[refNode], [offset]",
1215         createContextualFragment: "[html]",
1216         expand: "[unit]",
1217         insertNode: "[newNode]",
1218         intersectsNode: "[refNode]",
1219         isPointInRange: "[refNode], [offset]",
1220         selectNode: "[refNode]",
1221         selectNodeContents: "[refNode]",
1222         setEnd: "[refNode], [offset]",
1223         setEndAfter: "[refNode]",
1224         setEndBefore: "[refNode]",
1225         setStart: "[refNode], [offset]",
1226         setStartAfter: "[refNode]",
1227         setStartBefore: "[refNode]",
1228         surroundContents: "[newParent]",
1229         __proto__: null,
1230     },
1231
1232     ReadableStream: {
1233         cancel: "reason",
1234         pipeThrough: "dest, options",
1235         pipeTo: "streams, options",
1236         __proto__: null,
1237     },
1238
1239     RequestAnimationFrameCallback: {
1240         handleEvent: "highResTime",
1241         __proto__: null,
1242     },
1243
1244     SQLResultSetRowList: {
1245         item: "index",
1246         __proto__: null,
1247     },
1248
1249     SQLStatementCallback: {
1250         handleEvent: "transaction, resultSet",
1251         __proto__: null,
1252     },
1253
1254     SQLStatementErrorCallback: {
1255         handleEvent: "transaction, error",
1256         __proto__: null,
1257     },
1258
1259     SQLTransaction: {
1260         executeSql: "sqlStatement, arguments, [callback], [errorCallback]",
1261         __proto__: null,
1262     },
1263
1264     SQLTransactionCallback: {
1265         handleEvent: "transaction",
1266         __proto__: null,
1267     },
1268
1269     SQLTransactionErrorCallback: {
1270         handleEvent: "error",
1271         __proto__: null,
1272     },
1273
1274     SVGAngle: {
1275         convertToSpecifiedUnits: "unitType",
1276         newValueSpecifiedUnits: "unitType, valueInSpecifiedUnits",
1277         __proto__: null,
1278     },
1279
1280     SVGAnimationElement: {
1281         beginElementAt: "[offset]",
1282         endElementAt: "[offset]",
1283         hasExtension: "[extension]",
1284         __proto__: null,
1285     },
1286
1287     SVGColor: {
1288         setColor: "colorType, rgbColor, iccColor",
1289         setRGBColor: "rgbColor",
1290         setRGBColorICCColor: "rgbColor, iccColor",
1291         __proto__: null,
1292     },
1293
1294     SVGCursorElement: {
1295         hasExtension: "[extension]",
1296         __proto__: null,
1297     },
1298
1299     SVGDocument: {
1300         createEvent: "[eventType]",
1301         __proto__: null,
1302     },
1303
1304     SVGElement: {
1305         getPresentationAttribute: "[name]",
1306         __proto__: null,
1307     },
1308
1309     SVGFEDropShadowElement: {
1310         setStdDeviation: "[stdDeviationX], [stdDeviationY]",
1311         __proto__: null,
1312     },
1313
1314     SVGFEGaussianBlurElement: {
1315         setStdDeviation: "[stdDeviationX], [stdDeviationY]",
1316         __proto__: null,
1317     },
1318
1319     SVGFEMorphologyElement: {
1320         setRadius: "[radiusX], [radiusY]",
1321         __proto__: null,
1322     },
1323
1324     SVGFilterElement: {
1325         setFilterRes: "[filterResX], [filterResY]",
1326         __proto__: null,
1327     },
1328
1329     SVGGraphicsElement: {
1330         getTransformToElement: "[element]",
1331         hasExtension: "[extension]",
1332         __proto__: null,
1333     },
1334
1335     SVGLength: {
1336         convertToSpecifiedUnits: "unitType",
1337         newValueSpecifiedUnits: "unitType, valueInSpecifiedUnits",
1338         __proto__: null,
1339     },
1340
1341     SVGLengthList: {
1342         appendItem: "item",
1343         getItem: "index",
1344         initialize: "item",
1345         insertItemBefore: "item, index",
1346         removeItem: "index",
1347         replaceItem: "item, index",
1348         __proto__: null,
1349     },
1350
1351     SVGMarkerElement: {
1352         setOrientToAngle: "[angle]",
1353         __proto__: null,
1354     },
1355
1356     SVGMaskElement: {
1357         hasExtension: "[extension]",
1358         __proto__: null,
1359     },
1360
1361     SVGMatrix: {
1362         multiply: "secondMatrix",
1363         rotate: "angle",
1364         rotateFromVector: "x, y",
1365         scale: "scaleFactor",
1366         scaleNonUniform: "scaleFactorX, scaleFactorY",
1367         skewX: "angle",
1368         skewY: "angle",
1369         translate: "x, y",
1370         __proto__: null,
1371     },
1372
1373     SVGNumberList: {
1374         appendItem: "item",
1375         getItem: "index",
1376         initialize: "item",
1377         insertItemBefore: "item, index",
1378         removeItem: "index",
1379         replaceItem: "item, index",
1380         __proto__: null,
1381     },
1382
1383     SVGPaint: {
1384         setPaint: "paintType, uri, rgbColor, iccColor",
1385         setUri: "uri",
1386         __proto__: null,
1387     },
1388
1389     SVGPathElement: {
1390         createSVGPathSegArcAbs: "[x], [y], [r1], [r2], [angle], [largeArcFlag], [sweepFlag]",
1391         createSVGPathSegArcRel: "[x], [y], [r1], [r2], [angle], [largeArcFlag], [sweepFlag]",
1392         createSVGPathSegCurvetoCubicAbs: "[x], [y], [x1], [y1], [x2], [y2]",
1393         createSVGPathSegCurvetoCubicRel: "[x], [y], [x1], [y1], [x2], [y2]",
1394         createSVGPathSegCurvetoCubicSmoothAbs: "[x], [y], [x2], [y2]",
1395         createSVGPathSegCurvetoCubicSmoothRel: "[x], [y], [x2], [y2]",
1396         createSVGPathSegCurvetoQuadraticAbs: "[x], [y], [x1], [y1]",
1397         createSVGPathSegCurvetoQuadraticRel: "[x], [y], [x1], [y1]",
1398         createSVGPathSegCurvetoQuadraticSmoothAbs: "[x], [y]",
1399         createSVGPathSegCurvetoQuadraticSmoothRel: "[x], [y]",
1400         createSVGPathSegLinetoAbs: "[x], [y]",
1401         createSVGPathSegLinetoHorizontalAbs: "[x]",
1402         createSVGPathSegLinetoHorizontalRel: "[x]",
1403         createSVGPathSegLinetoRel: "[x], [y]",
1404         createSVGPathSegLinetoVerticalAbs: "[y]",
1405         createSVGPathSegLinetoVerticalRel: "[y]",
1406         createSVGPathSegMovetoAbs: "[x], [y]",
1407         createSVGPathSegMovetoRel: "[x], [y]",
1408         getPathSegAtLength: "[distance]",
1409         getPointAtLength: "[distance]",
1410         __proto__: null,
1411     },
1412
1413     SVGPathSegList: {
1414         appendItem: "newItem",
1415         getItem: "index",
1416         initialize: "newItem",
1417         insertItemBefore: "newItem, index",
1418         removeItem: "index",
1419         replaceItem: "newItem, index",
1420         __proto__: null,
1421     },
1422
1423     SVGPatternElement: {
1424         hasExtension: "[extension]",
1425         __proto__: null,
1426     },
1427
1428     SVGPoint: {
1429         matrixTransform: "matrix",
1430         __proto__: null,
1431     },
1432
1433     SVGPointList: {
1434         appendItem: "item",
1435         getItem: "index",
1436         initialize: "item",
1437         insertItemBefore: "item, index",
1438         removeItem: "index",
1439         replaceItem: "item, index",
1440         __proto__: null,
1441     },
1442
1443     SVGSVGElement: {
1444         checkEnclosure: "[element], [rect]",
1445         checkIntersection: "[element], [rect]",
1446         createSVGTransformFromMatrix: "[matrix]",
1447         getElementById: "[elementId]",
1448         getEnclosureList: "[rect], [referenceElement]",
1449         getIntersectionList: "[rect], [referenceElement]",
1450         setCurrentTime: "[seconds]",
1451         suspendRedraw: "[maxWaitMilliseconds]",
1452         unsuspendRedraw: "[suspendHandleId]",
1453         __proto__: null,
1454     },
1455
1456     SVGStringList: {
1457         appendItem: "item",
1458         getItem: "index",
1459         initialize: "item",
1460         insertItemBefore: "item, index",
1461         removeItem: "index",
1462         replaceItem: "item, index",
1463         __proto__: null,
1464     },
1465
1466     SVGTextContentElement: {
1467         getCharNumAtPosition: "[point]",
1468         getEndPositionOfChar: "[offset]",
1469         getExtentOfChar: "[offset]",
1470         getRotationOfChar: "[offset]",
1471         getStartPositionOfChar: "[offset]",
1472         getSubStringLength: "[offset], [length]",
1473         selectSubString: "[offset], [length]",
1474         __proto__: null,
1475     },
1476
1477     SVGTransform: {
1478         setMatrix: "matrix",
1479         setRotate: "angle, cx, cy",
1480         setScale: "sx, sy",
1481         setSkewX: "angle",
1482         setSkewY: "angle",
1483         setTranslate: "tx, ty",
1484         __proto__: null,
1485     },
1486
1487     SVGTransformList: {
1488         appendItem: "item",
1489         createSVGTransformFromMatrix: "matrix",
1490         getItem: "index",
1491         initialize: "item",
1492         insertItemBefore: "item, index",
1493         removeItem: "index",
1494         replaceItem: "item, index",
1495         __proto__: null,
1496     },
1497
1498     SecurityPolicy: {
1499         allowsConnectionTo: "url",
1500         allowsFontFrom: "url",
1501         allowsFormAction: "url",
1502         allowsFrameFrom: "url",
1503         allowsImageFrom: "url",
1504         allowsMediaFrom: "url",
1505         allowsObjectFrom: "url",
1506         allowsPluginType: "type",
1507         allowsScriptFrom: "url",
1508         allowsStyleFrom: "url",
1509         __proto__: null,
1510     },
1511
1512     Selection: {
1513         addRange: "[range]",
1514         collapse: "[node], [index]",
1515         containsNode: "[node], [allowPartial]",
1516         extend: "[node], [offset]",
1517         getRangeAt: "[index]",
1518         modify: "[alter], [direction], [granularity]",
1519         selectAllChildren: "[node]",
1520         setBaseAndExtent: "[baseNode], [baseOffset], [extentNode], [extentOffset]",
1521         setPosition: "[node], [offset]",
1522         __proto__: null,
1523     },
1524
1525     SourceBuffer: {
1526         appendBuffer: "data",
1527         remove: "start, end",
1528         __proto__: null,
1529     },
1530
1531     SourceBufferList: {
1532         item: "index",
1533         __proto__: null,
1534     },
1535
1536     SpeechSynthesis: {
1537         speak: "utterance",
1538         __proto__: null,
1539     },
1540
1541     SpeechSynthesisUtterance: {
1542         /* EventTarget */
1543         __proto__: null,
1544     },
1545
1546     Storage: {
1547         getItem: "key",
1548         key: "index",
1549         removeItem: "key",
1550         setItem: "key, data",
1551         __proto__: null,
1552     },
1553
1554     StorageErrorCallback: {
1555         handleEvent: "error",
1556         __proto__: null,
1557     },
1558
1559     StorageEvent: {
1560         initStorageEvent: "[typeArg], [canBubbleArg], [cancelableArg], [keyArg], [oldValueArg], [newValueArg], [urlArg], [storageAreaArg]",
1561         __proto__: null,
1562     },
1563
1564     StorageInfo: {
1565         queryUsageAndQuota: "storageType, [usageCallback], [errorCallback]",
1566         requestQuota: "storageType, newQuotaInBytes, [quotaCallback], [errorCallback]",
1567         __proto__: null,
1568     },
1569
1570     StorageQuota: {
1571         queryUsageAndQuota: "usageCallback, [errorCallback]",
1572         requestQuota: "newQuotaInBytes, [quotaCallback], [errorCallback]",
1573         __proto__: null,
1574     },
1575
1576     StorageQuotaCallback: {
1577         handleEvent: "grantedQuotaInBytes",
1578         __proto__: null,
1579     },
1580
1581     StorageUsageCallback: {
1582         handleEvent: "currentUsageInBytes, currentQuotaInBytes",
1583         __proto__: null,
1584     },
1585
1586     StringCallback: {
1587         handleEvent: "data",
1588         __proto__: null,
1589     },
1590
1591     StyleMedia: {
1592         matchMedium: "[mediaquery]",
1593         __proto__: null,
1594     },
1595
1596     StyleSheetList: {
1597         item: "[index]",
1598         __proto__: null,
1599     },
1600
1601     Text: {
1602         replaceWholeText: "[content]",
1603         splitText: "offset",
1604         __proto__: null,
1605     },
1606
1607     TextEvent: {
1608         initTextEvent: "[typeArg], [canBubbleArg], [cancelableArg], [viewArg], [dataArg]",
1609         __proto__: null,
1610     },
1611
1612     TextTrack: {
1613         addCue: "cue",
1614         addRegion: "region",
1615         removeCue: "cue",
1616         removeRegion: "region",
1617         __proto__: null,
1618     },
1619
1620     TextTrackCue: {
1621         /* EventTarget */
1622         __proto__: null,
1623     },
1624
1625     TextTrackCueList: {
1626         getCueById: "id",
1627         item: "index",
1628         __proto__: null,
1629     },
1630
1631     TextTrackList: {
1632         getTrackById: "id",
1633         item: "index",
1634         __proto__: null,
1635     },
1636
1637     TimeRanges: {
1638         end: "index",
1639         start: "index",
1640         __proto__: null,
1641     },
1642
1643     TouchEvent: {
1644         initTouchEvent: "[touches], [targetTouches], [changedTouches], [type], [view], [screenX], [screenY], [clientX], [clientY], [ctrlKey], [altKey], [shiftKey], [metaKey]",
1645         __proto__: null,
1646     },
1647
1648     TouchList: {
1649         item: "index",
1650         __proto__: null,
1651     },
1652
1653     UIEvent: {
1654         initUIEvent: "[type], [canBubble], [cancelable], [view], [detail]",
1655         __proto__: null,
1656     },
1657
1658     UserMessageHandler: {
1659         postMessage: "message",
1660         __proto__: null,
1661     },
1662
1663     VTTRegionList: {
1664         getRegionById: "id",
1665         item: "index",
1666         __proto__: null,
1667     },
1668
1669     VideoTrackList: {
1670         getTrackById: "id",
1671         item: "index",
1672         __proto__: null,
1673     },
1674
1675     WebGL2RenderingContext: {
1676         beginQuery: "target, query",
1677         beginTransformFeedback: "primitiveMode",
1678         bindBufferBase: "target, index, buffer",
1679         bindBufferRange: "target, index, buffer, offset, size",
1680         bindSampler: "unit, sampler",
1681         bindTransformFeedback: "target, id",
1682         bindVertexArray: "vertexArray",
1683         blitFramebuffer: "srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter",
1684         clearBufferfi: "buffer, drawbuffer, depth, stencil",
1685         clearBufferfv: "buffer, drawbuffer, value",
1686         clearBufferiv: "buffer, drawbuffer, value",
1687         clearBufferuiv: "buffer, drawbuffer, value",
1688         clientWaitSync: "sync, flags, timeout",
1689         compressedTexImage3D: "target, level, internalformat, width, height, depth, border, imageSize, data",
1690         compressedTexSubImage3D: "target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data",
1691         copyBufferSubData: "readTarget, writeTarget, readOffset, writeOffset, size",
1692         copyTexSubImage3D: "target, level, xoffset, yoffset, zoffset, x, y, width, height",
1693         deleteQuery: "query",
1694         deleteSampler: "sampler",
1695         deleteSync: "sync",
1696         deleteTransformFeedback: "id",
1697         deleteVertexArray: "vertexArray",
1698         drawArraysInstanced: "mode, first, count, instanceCount",
1699         drawBuffers: "buffers",
1700         drawElementsInstanced: "mode, count, type, offset, instanceCount",
1701         drawRangeElements: "mode, start, end, count, type, offset",
1702         endQuery: "target",
1703         fenceSync: "condition, flags",
1704         framebufferTextureLayer: "target, attachment, texture, level, layer",
1705         getActiveUniformBlockName: "program, uniformBlockIndex",
1706         getActiveUniformBlockParameter: "program, uniformBlockIndex, pname",
1707         getActiveUniforms: "program, uniformIndices, pname",
1708         getBufferSubData: "target, offset, returnedData",
1709         getFragDataLocation: "program, name",
1710         getIndexedParameter: "target, index",
1711         getInternalformatParameter: "target, internalformat, pname",
1712         getQuery: "target, pname",
1713         getQueryParameter: "query, pname",
1714         getSamplerParameter: "sampler, pname",
1715         getSyncParameter: "sync, pname",
1716         getTransformFeedbackVarying: "program, index",
1717         getUniformBlockIndex: "program, uniformBlockName",
1718         getUniformIndices: "program, uniformNames",
1719         invalidateFramebuffer: "target, attachments",
1720         invalidateSubFramebuffer: "target, attachments, x, y, width, height",
1721         isQuery: "query",
1722         isSampler: "sampler",
1723         isSync: "sync",
1724         isTransformFeedback: "id",
1725         isVertexArray: "vertexArray",
1726         readBuffer: "src",
1727         renderbufferStorageMultisample: "target, samples, internalformat, width, height",
1728         samplerParameterf: "sampler, pname, param",
1729         samplerParameteri: "sampler, pname, param",
1730         texImage3D: "target, level, internalformat, width, height, depth, border, format, type, pixels",
1731         texStorage2D: "target, levels, internalformat, width, height",
1732         texStorage3D: "target, levels, internalformat, width, height, depth",
1733         texSubImage3D: "target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels",
1734         transformFeedbackVaryings: "program, varyings, bufferMode",
1735         uniform1ui: "location, v0",
1736         uniform1uiv: "location, value",
1737         uniform2ui: "location, v0, v1",
1738         uniform2uiv: "location, value",
1739         uniform3ui: "location, v0, v1, v2",
1740         uniform3uiv: "location, value",
1741         uniform4ui: "location, v0, v1, v2, v3",
1742         uniform4uiv: "location, value",
1743         uniformBlockBinding: "program, uniformBlockIndex, uniformBlockBinding",
1744         uniformMatrix2x3fv: "location, transpose, value",
1745         uniformMatrix2x4fv: "location, transpose, value",
1746         uniformMatrix3x2fv: "location, transpose, value",
1747         uniformMatrix3x4fv: "location, transpose, value",
1748         uniformMatrix4x2fv: "location, transpose, value",
1749         uniformMatrix4x3fv: "location, transpose, value",
1750         vertexAttribDivisor: "index, divisor",
1751         vertexAttribI4i: "index, x, y, z, w",
1752         vertexAttribI4iv: "index, v",
1753         vertexAttribI4ui: "index, x, y, z, w",
1754         vertexAttribI4uiv: "index, v",
1755         vertexAttribIPointer: "index, size, type, stride, offset",
1756         waitSync: "sync, flags, timeout",
1757         __proto__: null,
1758     },
1759
1760     WebGLDebugShaders: {
1761         getTranslatedShaderSource: "shader",
1762         __proto__: null,
1763     },
1764
1765     WebGLDrawBuffers: {
1766         drawBuffersWEBGL: "buffers",
1767         __proto__: null,
1768     },
1769
1770     WebGLRenderingContextBase: {
1771         activeTexture: "texture",
1772         attachShader: "program, shader",
1773         bindAttribLocation: "program, index, name",
1774         bindBuffer: "target, buffer",
1775         bindFramebuffer: "target, framebuffer",
1776         bindRenderbuffer: "target, renderbuffer",
1777         bindTexture: "target, texture",
1778         blendColor: "red, green, blue, alpha",
1779         blendEquation: "mode",
1780         blendEquationSeparate: "modeRGB, modeAlpha",
1781         blendFunc: "sfactor, dfactor",
1782         blendFuncSeparate: "srcRGB, dstRGB, srcAlpha, dstAlpha",
1783         bufferData: "target, data, usage",
1784         bufferSubData: "target, offset, data",
1785         checkFramebufferStatus: "target",
1786         clear: "mask",
1787         clearColor: "red, green, blue, alpha",
1788         clearDepth: "depth",
1789         clearStencil: "s",
1790         colorMask: "red, green, blue, alpha",
1791         compileShader: "shader",
1792         compressedTexImage2D: "target, level, internalformat, width, height, border, data",
1793         compressedTexSubImage2D: "target, level, xoffset, yoffset, width, height, format, data",
1794         copyTexImage2D: "target, level, internalformat, x, y, width, height, border",
1795         copyTexSubImage2D: "target, level, xoffset, yoffset, x, y, width, height",
1796         createShader: "type",
1797         cullFace: "mode",
1798         deleteBuffer: "buffer",
1799         deleteFramebuffer: "framebuffer",
1800         deleteProgram: "program",
1801         deleteRenderbuffer: "renderbuffer",
1802         deleteShader: "shader",
1803         deleteTexture: "texture",
1804         depthFunc: "func",
1805         depthMask: "flag",
1806         depthRange: "zNear, zFar",
1807         detachShader: "program, shader",
1808         disable: "cap",
1809         disableVertexAttribArray: "index",
1810         drawArrays: "mode, first, count",
1811         drawElements: "mode, count, type, offset",
1812         enable: "cap",
1813         enableVertexAttribArray: "index",
1814         framebufferRenderbuffer: "target, attachment, renderbuffertarget, renderbuffer",
1815         framebufferTexture2D: "target, attachment, textarget, texture, level",
1816         frontFace: "mode",
1817         generateMipmap: "target",
1818         getActiveAttrib: "program, index",
1819         getActiveUniform: "program, index",
1820         getAttachedShaders: "program",
1821         getAttribLocation: "program, name",
1822         getBufferParameter: "target, pname",
1823         getExtension: "name",
1824         getFramebufferAttachmentParameter: "target, attachment, pname",
1825         getParameter: "pname",
1826         getProgramInfoLog: "program",
1827         getProgramParameter: "program, pname",
1828         getRenderbufferParameter: "target, pname",
1829         getShaderInfoLog: "shader",
1830         getShaderParameter: "shader, pname",
1831         getShaderPrecisionFormat: "shadertype, precisiontype",
1832         getShaderSource: "shader",
1833         getTexParameter: "target, pname",
1834         getUniform: "program, location",
1835         getUniformLocation: "program, name",
1836         getVertexAttrib: "index, pname",
1837         getVertexAttribOffset: "index, pname",
1838         hint: "target, mode",
1839         isBuffer: "buffer",
1840         isEnabled: "cap",
1841         isFramebuffer: "framebuffer",
1842         isProgram: "program",
1843         isRenderbuffer: "renderbuffer",
1844         isShader: "shader",
1845         isTexture: "texture",
1846         lineWidth: "width",
1847         linkProgram: "program",
1848         pixelStorei: "pname, param",
1849         polygonOffset: "factor, units",
1850         readPixels: "x, y, width, height, format, type, pixels",
1851         renderbufferStorage: "target, internalformat, width, height",
1852         sampleCoverage: "value, invert",
1853         scissor: "x, y, width, height",
1854         shaderSource: "shader, string",
1855         stencilFunc: "func, ref, mask",
1856         stencilFuncSeparate: "face, func, ref, mask",
1857         stencilMask: "mask",
1858         stencilMaskSeparate: "face, mask",
1859         stencilOp: "fail, zfail, zpass",
1860         stencilOpSeparate: "face, fail, zfail, zpass",
1861         texImage2D: "target, level, internalformat, width, height, border, format, type, pixels",
1862         texParameterf: "target, pname, param",
1863         texParameteri: "target, pname, param",
1864         texSubImage2D: "target, level, xoffset, yoffset, width, height, format, type, pixels",
1865         uniform1f: "location, x",
1866         uniform1fv: "location, v",
1867         uniform1i: "location, x",
1868         uniform1iv: "location, v",
1869         uniform2f: "location, x, y",
1870         uniform2fv: "location, v",
1871         uniform2i: "location, x, y",
1872         uniform2iv: "location, v",
1873         uniform3f: "location, x, y, z",
1874         uniform3fv: "location, v",
1875         uniform3i: "location, x, y, z",
1876         uniform3iv: "location, v",
1877         uniform4f: "location, x, y, z, w",
1878         uniform4fv: "location, v",
1879         uniform4i: "location, x, y, z, w",
1880         uniform4iv: "location, v",
1881         uniformMatrix2fv: "location, transpose, array",
1882         uniformMatrix3fv: "location, transpose, array",
1883         uniformMatrix4fv: "location, transpose, array",
1884         useProgram: "program",
1885         validateProgram: "program",
1886         vertexAttrib1f: "indx, x",
1887         vertexAttrib1fv: "indx, values",
1888         vertexAttrib2f: "indx, x, y",
1889         vertexAttrib2fv: "indx, values",
1890         vertexAttrib3f: "indx, x, y, z",
1891         vertexAttrib3fv: "indx, values",
1892         vertexAttrib4f: "indx, x, y, z, w",
1893         vertexAttrib4fv: "indx, values",
1894         vertexAttribPointer: "indx, size, type, normalized, stride, offset",
1895         viewport: "x, y, width, height",
1896         __proto__: null,
1897     },
1898
1899     WebKitCSSMatrix: {
1900         multiply: "[secondMatrix]",
1901         rotate: "[rotX], [rotY], [rotZ]",
1902         rotateAxisAngle: "[x], [y], [z], [angle]",
1903         scale: "[scaleX], [scaleY], [scaleZ]",
1904         setMatrixValue: "[string]",
1905         skewX: "[angle]",
1906         skewY: "[angle]",
1907         translate: "[x], [y], [z]",
1908         __proto__: null,
1909     },
1910
1911     WebKitMediaKeySession: {
1912         update: "key",
1913         __proto__: null,
1914     },
1915
1916     WebKitMediaKeys: {
1917         createSession: "[type], [initData]",
1918         __proto__: null,
1919     },
1920
1921     WebKitNamedFlow: {
1922         getRegionsByContent: "contentNode",
1923         __proto__: null,
1924     },
1925
1926     WebKitNamedFlowCollection: {
1927         item: "index",
1928         namedItem: "name",
1929         __proto__: null,
1930     },
1931
1932     WebKitSubtleCrypto: {
1933         decrypt: "algorithm, key, data",
1934         digest: "algorithm, data",
1935         encrypt: "algorithm, key, data",
1936         exportKey: "format, key",
1937         generateKey: "algorithm, [extractable], [keyUsages]",
1938         importKey: "format, keyData, algorithm, [extractable], [keyUsages]",
1939         sign: "algorithm, key, data",
1940         unwrapKey: "format, wrappedKey, unwrappingKey, unwrapAlgorithm, unwrappedKeyAlgorithm, [extractable], [keyUsages]",
1941         verify: "algorithm, key, signature, data",
1942         wrapKey: "format, key, wrappingKey, wrapAlgorithm",
1943         __proto__: null,
1944     },
1945
1946     WebSocket: {
1947         close: "[code], [reason]",
1948         send: "data",
1949         __proto__: null,
1950     },
1951
1952     WheelEvent: {
1953         initWebKitWheelEvent: "[wheelDeltaX], [wheelDeltaY], [view], [screenX], [screenY], [clientX], [clientY], [ctrlKey], [altKey], [shiftKey], [metaKey]",
1954         __proto__: null,
1955     },
1956
1957     Worker: {
1958         postMessage: "message, [messagePorts]",
1959         __proto__: null,
1960     },
1961
1962     WorkerGlobalScope: {
1963         clearInterval: "[handle]",
1964         clearTimeout: "[handle]",
1965         setInterval: "handler, [timeout]",
1966         setTimeout: "handler, [timeout]",
1967         __proto__: null,
1968     },
1969
1970     XMLHttpRequest: {
1971         getResponseHeader: "header",
1972         open: "method, url, [async], [user], [password]",
1973         overrideMimeType: "override",
1974         setRequestHeader: "header, value",
1975         __proto__: null,
1976     },
1977
1978     XMLHttpRequestUpload: {
1979         /* EventTarget */
1980         __proto__: null,
1981     },
1982
1983     XMLSerializer: {
1984         serializeToString: "[node]",
1985         __proto__: null,
1986     },
1987
1988     XPathEvaluator: {
1989         createExpression: "[expression], [resolver]",
1990         createNSResolver: "[nodeResolver]",
1991         evaluate: "[expression], [contextNode], [resolver], [type], [inResult]",
1992         __proto__: null,
1993     },
1994
1995     XPathExpression: {
1996         evaluate: "[contextNode], [type], [inResult]",
1997         __proto__: null,
1998     },
1999
2000     XPathNSResolver: {
2001         lookupNamespaceURI: "[prefix]",
2002         __proto__: null,
2003     },
2004
2005     XPathResult: {
2006         snapshotItem: "[index]",
2007         __proto__: null,
2008     },
2009
2010     XSLTProcessor: {
2011         getParameter: "namespaceURI, localName",
2012         importStylesheet: "[stylesheet]",
2013         removeParameter: "namespaceURI, localName",
2014         setParameter: "namespaceURI, localName, value",
2015         transformToDocument: "[source]",
2016         transformToFragment: "[source], [docVal]",
2017         __proto__: null,
2018     },
2019
2020     webkitAudioContext: {
2021         createBuffer: "numberOfChannels, numberOfFrames, sampleRate",
2022         createChannelMerger: "[numberOfInputs]",
2023         createChannelSplitter: "[numberOfOutputs]",
2024         createDelay: "[maxDelayTime]",
2025         createDelayNode: "[maxDelayTime]",
2026         createJavaScriptNode: "bufferSize, [numberOfInputChannels], [numberOfOutputChannels]",
2027         createMediaElementSource: "mediaElement",
2028         createPeriodicWave: "real, imag",
2029         createScriptProcessor: "bufferSize, [numberOfInputChannels], [numberOfOutputChannels]",
2030         decodeAudioData: "audioData, successCallback, [errorCallback]",
2031         __proto__: null,
2032     },
2033
2034     webkitAudioPannerNode: {
2035         setOrientation: "x, y, z",
2036         setPosition: "x, y, z",
2037         setVelocity: "x, y, z",
2038         __proto__: null,
2039     },
2040
2041     webkitMediaStream: {
2042         addTrack: "track",
2043         getTrackById: "trackId",
2044         removeTrack: "track",
2045         __proto__: null,
2046     },
2047
2048     webkitRTCPeerConnection: {
2049         addIceCandidate: "candidate, successCallback, failureCallback",
2050         addStream: "stream",
2051         createAnswer: "successCallback, failureCallback, [answerOptions]",
2052         createDTMFSender: "track",
2053         createDataChannel: "label, [options]",
2054         createOffer: "successCallback, failureCallback, [offerOptions]",
2055         getStats: "successCallback, failureCallback, [selector]",
2056         getStreamById: "streamId",
2057         removeStream: "stream",
2058         setLocalDescription: "description, successCallback, failureCallback",
2059         setRemoteDescription: "description, successCallback, failureCallback",
2060         updateIce: "configuration",
2061         __proto__: null,
2062     },
2063 };
2064
2065 WebInspector.NativePrototypeFunctionParameters.WeakMap = WebInspector.NativePrototypeFunctionParameters.Map;
2066 WebInspector.NativePrototypeFunctionParameters.WeakSet = WebInspector.NativePrototypeFunctionParameters.Set;
2067
2068 (function() {
2069     function mixin(o, mixin) {
2070         for (var p in mixin)
2071             o[p] = mixin[p];
2072     }
2073
2074     var EventTarget = {
2075         addEventListener: "type, listener, [useCapture=false]",
2076         removeEventListener: "type, listener, [useCapture=false]",
2077         dispatchEvent: "event",
2078     };
2079
2080     var eventTargetTypes = [
2081         "Node", "Window",
2082         "AudioNode", "AudioTrackList", "DOMApplicationCache", "FileReader", "FontLoader",
2083         "MediaController", "MediaStreamTrack", "MessagePort", "Notification", "RTCDTMFSender",
2084         "SpeechSynthesisUtterance", "TextTrack", "TextTrackCue", "TextTrackList",
2085         "VideoTrackList", "WebKitMediaKeySession", "WebKitNamedFlow", "WebSocket",
2086         "WorkerGlobalScope", "XMLHttpRequest", "webkitMediaStream", "webkitRTCPeerConnection"
2087     ];
2088
2089     for (var type of eventTargetTypes)
2090         mixin(WebInspector.NativePrototypeFunctionParameters[type], EventTarget);
2091
2092     var ElementQueries = {
2093         getElementsByClassName: "classNames",
2094         getElementsByTagName: "tagName",
2095         getElementsByTagNameNS: "namespace, localName",
2096         querySelector: "selectors",
2097         querySelectorAll: "selectors",
2098     };
2099
2100     mixin(WebInspector.NativePrototypeFunctionParameters.Element, ElementQueries);
2101     mixin(WebInspector.NativePrototypeFunctionParameters.Document, ElementQueries);
2102 })();