tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

w3c_indexeddb.js (18164B)


      1 /*
      2 * Copyright 2011 The Closure Compiler Authors.
      3 *
      4 * Licensed under the Apache License, Version 2.0 (the "License");
      5 * you may not use this file except in compliance with the License.
      6 * You may obtain a copy of the License at
      7 *
      8 *     http://www.apache.org/licenses/LICENSE-2.0
      9 *
     10 * Unless required by applicable law or agreed to in writing, software
     11 * distributed under the License is distributed on an "AS IS" BASIS,
     12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13 * See the License for the specific language governing permissions and
     14 * limitations under the License.
     15 */
     16 
     17 /**
     18 * @fileoverview Definitions for W3C's IndexedDB API. In Chrome all the
     19 * IndexedDB classes are prefixed with 'webkit'. In order to access constants
     20 * and static methods of these classes they must be duplicated with the
     21 * prefix here.
     22 * @see http://www.w3.org/TR/IndexedDB/
     23 *
     24 * @externs
     25 * @author guido.tapia@picnet.com.au (Guido Tapia)
     26 */
     27 
     28 /** @type {IDBFactory} */
     29 Window.prototype.moz_indexedDB;
     30 
     31 /** @type {IDBFactory} */
     32 Window.prototype.mozIndexedDB;
     33 
     34 /** @type {IDBFactory} */
     35 Window.prototype.webkitIndexedDB;
     36 
     37 /** @type {IDBFactory} */
     38 Window.prototype.msIndexedDB;
     39 
     40 /** @type {IDBFactory} */
     41 Window.prototype.indexedDB;
     42 
     43 /**
     44 * @constructor
     45 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBFactory
     46 */
     47 function IDBFactory() {}
     48 
     49 /**
     50 * @param {string} name The name of the database to open.
     51 * @param {number=} opt_version The version at which to open the database.
     52 * @return {!IDBOpenDBRequest} The IDBRequest object.
     53 */
     54 IDBFactory.prototype.open = function(name, opt_version) {};
     55 
     56 /**
     57 * @param {string} name The name of the database to delete.
     58 * @return {!IDBOpenDBRequest} The IDBRequest object.
     59 */
     60 IDBFactory.prototype.deleteDatabase = function(name) {};
     61 
     62 /**
     63 * @constructor
     64 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBDatabaseException
     65 */
     66 function IDBDatabaseException() {}
     67 
     68 /**
     69 * @constructor
     70 * @extends {IDBDatabaseException}
     71 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBDatabaseException
     72 */
     73 function webkitIDBDatabaseException() {}
     74 
     75 /**
     76 * @const
     77 * @type {number}
     78 */
     79 IDBDatabaseException.UNKNOWN_ERR;
     80 
     81 /**
     82 * @const
     83 * @type {number}
     84 */
     85 webkitIDBDatabaseException.UNKNOWN_ERR;
     86 
     87 /**
     88 * @const
     89 * @type {number}
     90 */
     91 IDBDatabaseException.NON_TRANSIENT_ERR;
     92 
     93 /**
     94 * @const
     95 * @type {number}
     96 */
     97 webkitIDBDatabaseException.NON_TRANSIENT_ERR;
     98 
     99 /**
    100 * @const
    101 * @type {number}
    102 */
    103 IDBDatabaseException.NOT_FOUND_ERR;
    104 
    105 /**
    106 * @const
    107 * @type {number}
    108 */
    109 webkitIDBDatabaseException.NOT_FOUND_ERR;
    110 
    111 /**
    112 * @const
    113 * @type {number}
    114 */
    115 IDBDatabaseException.CONSTRAINT_ERR;
    116 
    117 /**
    118 * @const
    119 * @type {number}
    120 */
    121 webkitIDBDatabaseException.CONSTRAINT_ERR;
    122 
    123 /**
    124 * @const
    125 * @type {number}
    126 */
    127 IDBDatabaseException.DATA_ERR;
    128 
    129 /**
    130 * @const
    131 * @type {number}
    132 */
    133 webkitIDBDatabaseException.DATA_ERR;
    134 
    135 /**
    136 * @const
    137 * @type {number}
    138 */
    139 IDBDatabaseException.NOT_ALLOWED_ERR;
    140 
    141 /**
    142 * @const
    143 * @type {number}
    144 */
    145 webkitIDBDatabaseException.NOT_ALLOWED_ERR;
    146 
    147 /**
    148 * @const
    149 * @type {number}
    150 */
    151 IDBDatabaseException.TRANSACTION_INACTIVE_ERR;
    152 
    153 /**
    154 * @const
    155 * @type {number}
    156 */
    157 webkitIDBDatabaseException.TRANSACTION_INACTIVE_ERR;
    158 
    159 /**
    160 * @const
    161 * @type {number}
    162 */
    163 IDBDatabaseException.ABORT_ERR;
    164 
    165 /**
    166 * @const
    167 * @type {number}
    168 */
    169 webkitIDBDatabaseException.ABORT_ERR;
    170 
    171 /**
    172 * @const
    173 * @type {number}
    174 */
    175 IDBDatabaseException.READ_ONLY_ERR;
    176 
    177 /**
    178 * @const
    179 * @type {number}
    180 */
    181 webkitIDBDatabaseException.READ_ONLY_ERR;
    182 
    183 /**
    184 * @const
    185 * @type {number}
    186 */
    187 IDBDatabaseException.TIMEOUT_ERR;
    188 
    189 /**
    190 * @const
    191 * @type {number}
    192 */
    193 webkitIDBDatabaseException.TIMEOUT_ERR;
    194 
    195 /**
    196 * @const
    197 * @type {number}
    198 */
    199 IDBDatabaseException.QUOTA_ERR;
    200 
    201 /**
    202 * @const
    203 * @type {number}
    204 */
    205 webkitIDBDatabaseException.QUOTA_ERR;
    206 
    207 /**
    208 * @const
    209 * @type {number}
    210 */
    211 IDBDatabaseException.prototype.code;
    212 
    213 /**
    214 * @const
    215 * @type {number}
    216 */
    217 webkitIDBDatabaseException.prototype.code;
    218 
    219 /**
    220 * @const
    221 * @type {string}
    222 */
    223 IDBDatabaseException.prototype.message;
    224 
    225 /**
    226 * @const
    227 * @type {string}
    228 */
    229 webkitIDBDatabaseException.prototype.message;
    230 
    231 /**
    232 * @constructor
    233 * @implements {EventTarget}
    234 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBRequest
    235 */
    236 function IDBRequest() {}
    237 
    238 /**
    239 * @param {boolean=} opt_useCapture
    240 * @override
    241 */
    242 IDBRequest.prototype.addEventListener =
    243    function(type, listener, opt_useCapture) {};
    244 
    245 /**
    246 * @param {boolean=} opt_useCapture
    247 * @override
    248 */
    249 IDBRequest.prototype.removeEventListener =
    250    function(type, listener, opt_useCapture) {};
    251 
    252 /** @override */
    253 IDBRequest.prototype.dispatchEvent = function(evt) {};
    254 
    255 /**
    256 * @constructor
    257 * @extends {IDBRequest}
    258 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBRequest
    259 */
    260 function webkitIDBRequest() {}
    261 
    262 /**
    263 * @type {number}
    264 * @const
    265 */
    266 IDBRequest.LOADING;
    267 
    268 /**
    269 * @type {number}
    270 * @const
    271 */
    272 webkitIDBRequest.LOADING;
    273 
    274 /**
    275 * @type {number}
    276 * @const
    277 */
    278 IDBRequest.DONE;
    279 
    280 /**
    281 * @type {number}
    282 * @const
    283 */
    284 webkitIDBRequest.DONE;
    285 
    286 /** @type {number} */
    287 IDBRequest.prototype.readyState; // readonly
    288 
    289 /** @type {function(!Event)} */
    290 IDBRequest.prototype.onsuccess = function(e) {};
    291 
    292 /** @type {function(!Event)} */
    293 IDBRequest.prototype.onerror = function(e) {};
    294 
    295 /** @type {*} */
    296 IDBRequest.prototype.result;  // readonly
    297 
    298 /**
    299 * @type {number}
    300 * @deprecated Use "error"
    301 */
    302 IDBRequest.prototype.errorCode;  // readonly
    303 
    304 
    305 /** @type {!DOMError} */
    306 IDBRequest.prototype.error; // readonly
    307 
    308 /** @type {Object} */
    309 IDBRequest.prototype.source; // readonly
    310 
    311 /** @type {IDBTransaction} */
    312 IDBRequest.prototype.transaction; // readonly
    313 
    314 /**
    315 * @constructor
    316 * @extends {IDBRequest}
    317 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBOpenDBRequest
    318 */
    319 function IDBOpenDBRequest() {}
    320 
    321 /**
    322 * @type {function(!IDBVersionChangeEvent)}
    323 */
    324 IDBOpenDBRequest.prototype.onblocked = function(e) {};
    325 
    326 /**
    327 * @type {function(!IDBVersionChangeEvent)}
    328 */
    329 IDBOpenDBRequest.prototype.onupgradeneeded = function(e) {};
    330 
    331 /**
    332 * @constructor
    333 * @implements {EventTarget}
    334 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBDatabase
    335 */
    336 function IDBDatabase() {}
    337 
    338 /**
    339 * @type {string}
    340 * @const
    341 */
    342 IDBDatabase.prototype.name;
    343 
    344 /**
    345 * @type {string}
    346 * @const
    347 */
    348 IDBDatabase.prototype.description;
    349 
    350 /**
    351 * @type {string}
    352 * @const
    353 */
    354 IDBDatabase.prototype.version;
    355 
    356 /**
    357 * @type {DOMStringList}
    358 * @const
    359 */
    360 IDBDatabase.prototype.objectStoreNames;
    361 
    362 /**
    363 * @param {string} name The name of the object store.
    364 * @param {Object=} opt_parameters Parameters to be passed
    365 *     creating the object store.
    366 * @return {!IDBObjectStore} The created/open object store.
    367 */
    368 IDBDatabase.prototype.createObjectStore =
    369    function(name, opt_parameters)  {};
    370 
    371 /**
    372 * @param {string} name The name of the object store to remove.
    373 */
    374 IDBDatabase.prototype.deleteObjectStore = function(name) {};
    375 
    376 /**
    377 * @param {string} version The new version of the database.
    378 * @return {!IDBRequest} The IDBRequest object.
    379 */
    380 IDBDatabase.prototype.setVersion = function(version) {};
    381 
    382 /**
    383 * @param {Array.<string>} storeNames The stores to open in this transaction.
    384 * @param {(number|string)=} mode The mode for opening the object stores.
    385 * @return {!IDBTransaction} The IDBRequest object.
    386 */
    387 IDBDatabase.prototype.transaction = function(storeNames, mode) {};
    388 
    389 /**
    390 * Closes the database connection.
    391 */
    392 IDBDatabase.prototype.close = function() {};
    393 
    394 /**
    395 * @type {Function}
    396 */
    397 IDBDatabase.prototype.onabort = function() {};
    398 
    399 /**
    400 * @type {Function}
    401 */
    402 IDBDatabase.prototype.onerror = function() {};
    403 
    404 /**
    405 * @type {Function}
    406 */
    407 IDBDatabase.prototype.onversionchange = function() {};
    408 
    409 /**
    410 * @param {boolean=} opt_useCapture
    411 * @override
    412 */
    413 IDBDatabase.prototype.addEventListener =
    414    function(type, listener, opt_useCapture) {};
    415 
    416 /**
    417 * @param {boolean=} opt_useCapture
    418 * @override
    419 */
    420 IDBDatabase.prototype.removeEventListener =
    421    function(type, listener, opt_useCapture) {};
    422 
    423 /** @override */
    424 IDBDatabase.prototype.dispatchEvent = function(evt) {};
    425 
    426 /**
    427 * Typedef for valid key types according to the w3 specification. Note that this
    428 * is slightly wider than what is actually allowed, as all Array elements must
    429 * have a valid key type.
    430 * @see http://www.w3.org/TR/IndexedDB/#key-construct
    431 * @typedef {number|string|!Date|!Array.<?>}
    432 */
    433 var IDBKeyType;
    434 
    435 /**
    436 * @constructor
    437 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBObjectStore
    438 */
    439 function IDBObjectStore() {}
    440 
    441 /**
    442 * @type {string}
    443 */
    444 IDBObjectStore.prototype.name;
    445 
    446 /**
    447 * @type {string}
    448 */
    449 IDBObjectStore.prototype.keyPath;
    450 
    451 /**
    452 * @type {DOMStringList}
    453 */
    454 IDBObjectStore.prototype.indexNames;
    455 
    456 /** @type {IDBTransaction} */
    457 IDBObjectStore.prototype.transaction;
    458 
    459 /** @type {boolean} */
    460 IDBObjectStore.prototype.autoIncrement;
    461 
    462 /**
    463 * @param {*} value The value to put into the object store.
    464 * @param {IDBKeyType=} key The key of this value.
    465 * @return {!IDBRequest} The IDBRequest object.
    466 */
    467 IDBObjectStore.prototype.put = function(value, key) {};
    468 
    469 /**
    470 * @param {*} value The value to add into the object store.
    471 * @param {IDBKeyType=} key The key of this value.
    472 * @return {!IDBRequest} The IDBRequest object.
    473 */
    474 IDBObjectStore.prototype.add = function(value, key) {};
    475 
    476 /**
    477 * @param {IDBKeyType} key The key of this value.
    478 * @return {!IDBRequest} The IDBRequest object.
    479 */
    480 IDBObjectStore.prototype.delete = function(key) {};
    481 
    482 /**
    483 * @param {IDBKeyType|!IDBKeyRange} key The key of the document to retrieve.
    484 * @return {!IDBRequest} The IDBRequest object.
    485 */
    486 IDBObjectStore.prototype.get = function(key) {};
    487 
    488 /**
    489 * @return {!IDBRequest} The IDBRequest object.
    490 */
    491 IDBObjectStore.prototype.clear = function() {};
    492 
    493 /**
    494 * @param {IDBKeyRange=} range The range of the cursor.
    495 * @param {(number|string)=} direction The direction of cursor enumeration.
    496 * @return {!IDBRequest} The IDBRequest object.
    497 */
    498 IDBObjectStore.prototype.openCursor = function(range, direction) {};
    499 
    500 /**
    501 * @param {string} name The name of the index.
    502 * @param {string|!Array.<string>} keyPath The path to the index key.
    503 * @param {Object=} opt_paramters Optional parameters
    504 *     for the created index.
    505 * @return {!IDBIndex} The IDBIndex object.
    506 */
    507 IDBObjectStore.prototype.createIndex = function(name, keyPath, opt_paramters) {};
    508 
    509 /**
    510 * @param {string} name The name of the index to retrieve.
    511 * @return {!IDBIndex} The IDBIndex object.
    512 */
    513 IDBObjectStore.prototype.index = function(name) {};
    514 
    515 /**
    516 * @param {string} indexName The name of the index to remove.
    517 */
    518 IDBObjectStore.prototype.deleteIndex = function(indexName) {};
    519 
    520 /**
    521 * @param {(IDBKeyType|IDBKeyRange)=} key The key of this value.
    522 * @return {!IDBRequest} The IDBRequest object.
    523 * @see http://www.w3.org/TR/IndexedDB/#widl-IDBObjectStore-count
    524 */
    525 IDBObjectStore.prototype.count = function(key) {};
    526 
    527 /**
    528 * @constructor
    529 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBIndex
    530 */
    531 function IDBIndex() {}
    532 
    533 /**
    534 * @type {string}
    535 * @const
    536 */
    537 IDBIndex.prototype.name;
    538 
    539 /**
    540 * @type {!IDBObjectStore}
    541 * @const
    542 */
    543 IDBIndex.prototype.objectStore;
    544 
    545 /**
    546 * @type {string}
    547 * @const
    548 */
    549 IDBIndex.prototype.keyPath;
    550 
    551 /**
    552 * @type {boolean}
    553 * @const
    554 */
    555 IDBIndex.prototype.unique;
    556 
    557 /**
    558 * @param {IDBKeyRange=} range The range of the cursor.
    559 * @param {(number|string)=} direction The direction of cursor enumeration.
    560 * @return {!IDBRequest} The IDBRequest object.
    561 */
    562 IDBIndex.prototype.openCursor = function(range, direction) {};
    563 
    564 /**
    565 * @param {IDBKeyRange=} range The range of the cursor.
    566 * @param {(number|string)=} direction The direction of cursor enumeration.
    567 * @return {!IDBRequest} The IDBRequest object.
    568 */
    569 IDBIndex.prototype.openKeyCursor = function(range, direction) {};
    570 
    571 /**
    572 * @param {IDBKeyType|!IDBKeyRange} key The id of the object to retrieve.
    573 * @return {!IDBRequest} The IDBRequest object.
    574 */
    575 IDBIndex.prototype.get = function(key) {};
    576 
    577 /**
    578 * @param {IDBKeyType|!IDBKeyRange} key The id of the object to retrieve.
    579 * @return {!IDBRequest} The IDBRequest object.
    580 */
    581 IDBIndex.prototype.getKey = function(key) {};
    582 
    583 /**
    584 * @constructor
    585 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBCursor
    586 */
    587 function IDBCursor() {}
    588 
    589 /**
    590 * @constructor
    591 * @extends {IDBCursor}
    592 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBCursor
    593 */
    594 function webkitIDBCursor() {}
    595 
    596 /**
    597 * @const
    598 * @type {number}
    599 */
    600 IDBCursor.NEXT;
    601 
    602 /**
    603 * @const
    604 * @type {number}
    605 */
    606 webkitIDBCursor.NEXT;
    607 
    608 /**
    609 * @const
    610 * @type {number}
    611 */
    612 IDBCursor.NEXT_NO_DUPLICATE;
    613 
    614 /**
    615 * @const
    616 * @type {number}
    617 */
    618 webkitIDBCursor.NEXT_NO_DUPLICATE;
    619 
    620 /**
    621 * @const
    622 * @type {number}
    623 */
    624 IDBCursor.PREV;
    625 
    626 /**
    627 * @const
    628 * @type {number}
    629 */
    630 webkitIDBCursor.PREV;
    631 
    632 /**
    633 * @const
    634 * @type {number}
    635 */
    636 IDBCursor.PREV_NO_DUPLICATE;
    637 
    638 /**
    639 * @const
    640 * @type {number}
    641 */
    642 webkitIDBCursor.PREV_NO_DUPLICATE;
    643 
    644 /**
    645 * @type {*}
    646 * @const
    647 */
    648 IDBCursor.prototype.source;
    649 
    650 /**
    651 * @type {number}
    652 * @const
    653 */
    654 IDBCursor.prototype.direction;
    655 
    656 /**
    657 * @type {IDBKeyType}
    658 * @const
    659 */
    660 IDBCursor.prototype.key;
    661 
    662 /**
    663 * @type {number}
    664 * @const
    665 */
    666 IDBCursor.prototype.primaryKey;
    667 
    668 /**
    669 * @param {*} value The new value for the current object in the cursor.
    670 * @return {!IDBRequest} The IDBRequest object.
    671 */
    672 IDBCursor.prototype.update = function(value) {};
    673 
    674 /**
    675 * Note: Must be quoted to avoid parse error.
    676 * @param {IDBKeyType=} key Continue enumerating the cursor from the specified
    677 *     key (or next).
    678 */
    679 IDBCursor.prototype.continue = function(key) {};
    680 
    681 /**
    682 * @param {number} count Number of times to iterate the cursor.
    683 */
    684 IDBCursor.prototype.advance = function(count) {};
    685 
    686 /**
    687 * Note: Must be quoted to avoid parse error.
    688 * @return {!IDBRequest} The IDBRequest object.
    689 */
    690 IDBCursor.prototype.delete = function() {};
    691 
    692 /**
    693 * @constructor
    694 * @extends {IDBCursor}
    695 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBCursorWithValue
    696 */
    697 function IDBCursorWithValue() {}
    698 
    699 /** @type {*} */
    700 IDBCursorWithValue.prototype.value; // readonly
    701 
    702 /**
    703 * @constructor
    704 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBTransaction
    705 */
    706 function IDBTransaction() {}
    707 
    708 /**
    709 * @constructor
    710 * @extends {IDBTransaction}
    711 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBTransaction
    712 */
    713 function webkitIDBTransaction() {}
    714 
    715 /**
    716 * @const
    717 * @type {number}
    718 */
    719 IDBTransaction.READ_WRITE;
    720 
    721 /**
    722 * @const
    723 * @type {number}
    724 */
    725 webkitIDBTransaction.READ_WRITE;
    726 
    727 /**
    728 * @const
    729 * @type {number}
    730 */
    731 IDBTransaction.READ_ONLY;
    732 
    733 /**
    734 * @const
    735 * @type {number}
    736 */
    737 webkitIDBTransaction.READ_ONLY;
    738 
    739 /**
    740 * @const
    741 * @type {number}
    742 */
    743 IDBTransaction.VERSION_CHANGE;
    744 
    745 /**
    746 * @const
    747 * @type {number}
    748 */
    749 webkitIDBTransaction.VERSION_CHANGE;
    750 
    751 /**
    752 * @type {number|string}
    753 * @const
    754 */
    755 IDBTransaction.prototype.mode;
    756 
    757 /**
    758 * @type {IDBDatabase}
    759 * @const
    760 */
    761 IDBTransaction.prototype.db;
    762 
    763 /**
    764 * @param {string} name The name of the object store to retrieve.
    765 * @return {!IDBObjectStore} The object store.
    766 */
    767 IDBTransaction.prototype.objectStore = function(name) {};
    768 
    769 /**
    770 * Aborts the transaction.
    771 */
    772 IDBTransaction.prototype.abort = function() {};
    773 
    774 /**
    775 * @type {Function}
    776 */
    777 IDBTransaction.prototype.onabort = function() {};
    778 
    779 /**
    780 * @type {Function}
    781 */
    782 IDBTransaction.prototype.oncomplete = function() {};
    783 
    784 /**
    785 * @type {Function}
    786 */
    787 IDBTransaction.prototype.onerror = function() {};
    788 
    789 /**
    790 * @constructor
    791 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBKeyRange
    792 */
    793 function IDBKeyRange() {}
    794 
    795 /**
    796 * @constructor
    797 * @extends {IDBKeyRange}
    798 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBKeyRange
    799 */
    800 function webkitIDBKeyRange() {}
    801 
    802 /**
    803 * @type {*}
    804 * @const
    805 */
    806 IDBKeyRange.prototype.lower;
    807 
    808 /**
    809 * @type {*}
    810 * @const
    811 */
    812 IDBKeyRange.prototype.upper;
    813 
    814 /**
    815 * @type {*}
    816 * @const
    817 */
    818 IDBKeyRange.prototype.lowerOpen;
    819 
    820 /**
    821 * @type {*}
    822 * @const
    823 */
    824 IDBKeyRange.prototype.upperOpen;
    825 
    826 /**
    827 * @param {IDBKeyType} value The single key value of this range.
    828 * @return {!IDBKeyRange} The key range.
    829 */
    830 IDBKeyRange.only = function(value) {};
    831 
    832 /**
    833 * @param {IDBKeyType} value The single key value of this range.
    834 * @return {!IDBKeyRange} The key range.
    835 */
    836 webkitIDBKeyRange.only = function(value) {};
    837 
    838 /**
    839 * @param {IDBKeyType} bound Creates a lower bound key range.
    840 * @param {boolean=} open Open the key range.
    841 * @return {!IDBKeyRange} The key range.
    842 */
    843 IDBKeyRange.lowerBound = function(bound, open) {};
    844 
    845 /**
    846 * @param {IDBKeyType} bound Creates a lower bound key range.
    847 * @param {boolean=} open Open the key range.
    848 * @return {!IDBKeyRange} The key range.
    849 */
    850 webkitIDBKeyRange.lowerBound = function(bound, open) {};
    851 
    852 /**
    853 * @param {IDBKeyType} bound Creates an upper bound key range.
    854 * @param {boolean=} open Open the key range.
    855 * @return {!IDBKeyRange} The key range.
    856 */
    857 IDBKeyRange.upperBound = function(bound, open) {};
    858 
    859 /**
    860 * @param {IDBKeyType} bound Creates an upper bound key range.
    861 * @param {boolean=} open Open the key range.
    862 * @return {!IDBKeyRange} The key range.
    863 */
    864 webkitIDBKeyRange.upperBound = function(bound, open) {};
    865 
    866 /**
    867 * @param {IDBKeyType} left The left bound value.
    868 * @param {IDBKeyType} right The right bound value.
    869 * @param {boolean=} openLeft Whether the left bound value should be excluded.
    870 * @param {boolean=} openRight Whether the right bound value should be excluded.
    871 * @return {!IDBKeyRange} The key range.
    872 */
    873 IDBKeyRange.bound = function(left, right, openLeft, openRight) {};
    874 
    875 /**
    876 * @param {IDBKeyType} left The left bound value.
    877 * @param {IDBKeyType} right The right bound value.
    878 * @param {boolean=} openLeft Whether the left bound value should be excluded.
    879 * @param {boolean=} openRight Whether the right bound value should be excluded.
    880 * @return {!IDBKeyRange} The key range.
    881 */
    882 webkitIDBKeyRange.bound = function(left, right, openLeft, openRight) {};
    883 
    884 /**
    885 * @constructor
    886 * @extends {Event}
    887 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBVersionChangeEvent
    888 */
    889 function IDBVersionChangeEvent() {}
    890 
    891 /**
    892 * @type {number}
    893 * @const
    894 */
    895 IDBVersionChangeEvent.prototype.oldVersion;
    896 
    897 /**
    898 * @type {?number}
    899 * @const
    900 */
    901 IDBVersionChangeEvent.prototype.newVersion;
    902 
    903 /**
    904 * @constructor
    905 * @extends {IDBVersionChangeEvent}
    906 * @see http://www.w3.org/TR/IndexedDB/#idl-def-IDBVersionChangeEvent
    907 */
    908 function webkitIDBVersionChangeEvent() {}
    909 
    910 /**
    911 * @type {string}
    912 * @const
    913 */
    914 webkitIDBVersionChangeEvent.prototype.version;