Unreviewed inspector front-end closure compilaiton fixes.
[WebKit-https.git] / Source / WebCore / inspector / front-end / externs.js
1 /*
2  * Copyright (C) 2011 Google 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 are
6  * met:
7  *
8  *     * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *     * Redistributions in binary form must reproduce the above
11  * copyright notice, this list of conditions and the following disclaimer
12  * in the documentation and/or other materials provided with the
13  * distribution.
14  *     * Neither the name of Google Inc. nor the names of its
15  * contributors may be used to endorse or promote products derived from
16  * this software without specific prior written permission.
17  *
18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29  */
30
31 // WebKit Web Facing API
32 var console = {}
33 /** @param {...*} vararg */
34 console.warn = function(vararg) {}
35 /** @param {...*} vararg */
36 console.assert = function(vararg) {}
37 /** @param {...*} vararg */
38 console.error = function(vararg) {}
39 console.trace = function() {}
40
41 var JSON = {}
42 /** @param {string} str */
43 JSON.parse = function(str) {}
44 /**
45  * @param {*} obj
46  * @param {Function=} replacer
47  * @param {number=} space
48  * @return {string}
49  */
50 JSON.stringify = function(obj, replacer, space) {}
51
52 /** @param {boolean=} param */
53 Element.prototype.scrollIntoViewIfNeeded = function(param) {}
54 /** @type {boolean} */
55 Event.prototype.isMetaOrCtrlForTest = false;
56 /** @param {...*} vararg */
57 Event.prototype.initWebKitWheelEvent = function(vararg) {}
58 Event.prototype.stopImmediatePropagation = function() {}
59
60 /** @param {Element} element */
61 window.getComputedStyle = function(element) {}
62 /** @param {*} message */
63 function postMessage(message) {}
64
65 /**
66  * @param {string} eventName
67  * @param {Function} listener
68  * @param {boolean=} capturing
69  */
70 function addEventListener(eventName, listener, capturing) {}
71
72 /** @param {boolean=} onlyFirst */
73 Array.prototype.remove = function(obj, onlyFirst) {}
74 Array.prototype.keySet = function() {}
75 /** @return {number} */
76 Array.prototype.upperBound = function(anchor) {}
77 /** @return {number} */
78 Array.prototype.binaryIndexOf = function(anchor) {}
79 Array.prototype.sortRange = function(comparator, leftBound, rightBound, k) {}
80
81 /**
82  * @this {Array.<number>}
83  * @param {function(number,number):boolean} comparator
84  * @param {number} left
85  * @param {number} right
86  * @param {number} pivotIndex
87  * @return {number}
88  */
89 Array.prototype.partition = function(comparator, left, right, pivotIndex) {}
90
91 /**
92  * @this {Array.<number>}
93  * @param {number} k
94  * @param {function(number,number):boolean=} comparator
95  * @return {number}
96  */
97 Array.prototype.qselect = function(k, comparator) {}
98
99 /**
100  * @this {Array.<*>}
101  * @param {string} field
102  * @return {Array.<*>}
103  */
104 Array.prototype.select = function(field) {}
105
106 DOMApplicationCache.prototype.UNCACHED = 0;
107 DOMApplicationCache.prototype.IDLE = 1;
108 DOMApplicationCache.prototype.CHECKING = 2;
109 DOMApplicationCache.prototype.DOWNLOADING = 3;
110 DOMApplicationCache.prototype.UPDATEREADY = 4;
111 DOMApplicationCache.prototype.OBSOLETE = 5;
112
113 /** @type {Node} */
114 Range.prototype.startContainer;
115
116 // Inspector Backend
117 var InspectorBackend = {}
118 InspectorBackend.runAfterPendingDispatches = function(message) {}
119
120 /** @interface */
121 function InspectorFrontendHostAPI() {}
122 InspectorFrontendHostAPI.prototype.platform = function() {}
123 InspectorFrontendHostAPI.prototype.port = function() {}
124 InspectorFrontendHostAPI.prototype.bringToFront = function() {}
125 InspectorFrontendHostAPI.prototype.closeWindow = function() {}
126 InspectorFrontendHostAPI.prototype.requestAttachWindow = function() {}
127 InspectorFrontendHostAPI.prototype.requestDetachWindow = function() {}
128 InspectorFrontendHostAPI.prototype.requestSetDockSide = function(dockSide) {}
129 InspectorFrontendHostAPI.prototype.setAttachedWindowHeight = function(height) {}
130 InspectorFrontendHostAPI.prototype.moveWindowBy = function(x, y) {}
131 InspectorFrontendHostAPI.prototype.setInjectedScriptForOrigin = function(origin, script) {}
132 InspectorFrontendHostAPI.prototype.loaded = function() {}
133 InspectorFrontendHostAPI.prototype.localizedStringsURL = function() {}
134 InspectorFrontendHostAPI.prototype.hiddenPanels = function() {}
135 InspectorFrontendHostAPI.prototype.inspectedURLChanged = function(url) {}
136 InspectorFrontendHostAPI.prototype.documentCopy = function(event) {}
137 InspectorFrontendHostAPI.prototype.copyText = function(text) {}
138 InspectorFrontendHostAPI.prototype.openInNewTab = function(url) {}
139 InspectorFrontendHostAPI.prototype.canSave = function() {}
140 InspectorFrontendHostAPI.prototype.save = function(url, content, forceSaveAs) {}
141 InspectorFrontendHostAPI.prototype.canAppend = function() {}
142 InspectorFrontendHostAPI.prototype.append = function(url, content) {}
143 InspectorFrontendHostAPI.prototype.sendMessageToBackend = function(message) {}
144 InspectorFrontendHostAPI.prototype.recordActionTaken = function(actionCode) {}
145 InspectorFrontendHostAPI.prototype.recordPanelShown = function(panelCode) {}
146 InspectorFrontendHostAPI.prototype.recordSettingChanged = function(settingCode) {}
147 InspectorFrontendHostAPI.prototype.loadResourceSynchronously = function(url) {}
148 InspectorFrontendHostAPI.prototype.setZoomFactor = function(zoom) {}
149 InspectorFrontendHostAPI.prototype.canInspectWorkers = function() {}
150 /** @type {InspectorFrontendHostAPI} */
151 var InspectorFrontendHost;
152
153 /** @constructor */
154 function SourceMapV3()
155 {
156     /** @type {number} */ this.version;
157     /** @type {string} */ this.file;
158     /** @type {Array.<string>} */ this.sources;
159     /** @type {Array.<SourceMapV3.Section>} */ this.sections;
160     /** @type {string} */ this.mappings
161 }
162
163 /** @constructor */
164 SourceMapV3.Section = function()
165 {
166     /** @type {SourceMapV3} */ this.map;
167     /** @type {SourceMapV3.Offset} */ this.offset;
168 }
169
170 /** @constructor */
171 SourceMapV3.Offset = function()
172 {
173     /** @type {number} */ this.line;
174     /** @type {number} */ this.column;
175 }
176
177 // FIXME: remove everything below.
178 var WebInspector = {}
179
180 WebInspector.queryParamsObject = {}
181 WebInspector.toggleSearchingForNode = function() {}
182 WebInspector.panels = {};
183
184 /**
185  * @param {Element} element
186  * @param {function()=} onclose
187  */
188 WebInspector.showViewInDrawer = function(element, view, onclose) {}
189
190 WebInspector.closeViewInDrawer = function() {}
191
192 /**
193  * @param {string=} messageLevel
194  * @param {boolean=} showConsole
195  */
196 WebInspector.log = function(message, messageLevel, showConsole) {}
197
198 WebInspector.showErrorMessage = function(error) {}
199
200 WebInspector.addMainEventListeners = function(doc) {}
201
202 WebInspector.openResource = function(url, external) {}
203
204 WebInspector.showConsole = function() {}
205
206 /**
207  * @param {string} expression
208  * @param {boolean=} showResultOnly
209  */
210 WebInspector.evaluateInConsole = function(expression, showResultOnly) {}
211
212 WebInspector.queryParamsObject = {}
213
214 WebInspector.Events = {
215     InspectorClosing: "InspectorClosing"
216 }
217
218 /** Extensions API */
219
220 /** @constructor */
221 function AuditCategory() {}
222 /** @constructor */
223 function AuditResult() {}
224 /** @constructor */
225 function EventSink() {}
226 /** @constructor */
227 function ExtensionSidebarPane() {}
228 /** @constructor */
229 function Panel() {}
230 /** @constructor */
231 function PanelWithSidebar() {}
232 /** @constructor */
233 function Request() {}
234 /** @constructor */
235 function Resource() {}
236 /** @constructor */
237 function Timeline() {}
238
239 /** @type {string} */
240 Location.prototype.origin = "";
241
242 /**
243  * @constructor
244  */
245 function ExtensionDescriptor() {
246     this.startPage = "";
247     this.name = "";
248 }
249
250 /**
251  * @constructor
252  */
253 function ExtensionReloadOptions() {
254     this.ignoreCache = false;
255     this.injectedScript = "";
256     this.userAgent = "";
257 }
258
259 WebInspector.showPanel = function(panel)
260 {
261 }
262
263 /**
264  * @type {string} 
265  */
266 WebInspector.inspectedPageDomain;
267
268 WebInspector.SourceJavaScriptTokenizer = {}
269 WebInspector.SourceJavaScriptTokenizer.Keywords = {}
270
271 var InspectorTest = {}
272
273 /* jsdifflib API */
274 var difflib = {};
275 difflib.stringAsLines = function(text) { return []; }
276 /** @constructor */
277 difflib.SequenceMatcher = function(baseText, newText) { }
278 difflib.SequenceMatcher.prototype.get_opcodes = function() { return []; }
279
280 /** @constructor */
281 WebInspector.CodeMirrorTextEditor = function(url, delegate) { }
282
283 WebInspector.ProfileURLRegExp = "";