code: function LevelIndex(getPrimaryKey, var_args) {
    // TODO Validate indexSpecs.
    this._getPrimaryKey = getPrimaryKey;
    this._indexSpecs = Array.prototype.slice.call(arguments, 1);
  }
docs: TODO Implement update/delete. 
  This class implements indexed properties for JSON objects in LevelDB.
  
  An index row key looks something like this:
  
  <key-A>\x00<value-A>\x00<key-B>\x00<value-B>pk\x00<primary-key>
  
  E.g.:
  
  author\x00spacemaus\x00stream\x00private\x00pk\x00http://somekey
  
  @param {function(Object): String} getPrimaryKey Takes an object and returns
  the object's primary key.
  @param {[['field-name', 'db-key', function(v): String], ...]} arguments
  Index specs.  Each spec is an array of two or three items.  The first is
  the name of the object's field to index.  The second is the name to use
  when encoding it in the database index.  The optional third argument is
  an encoder for the value to index.  Use `LevelIndex.toAsc` or
  `LevelIndex.toDesc` to encode Numbers in ascending or descending order,
  respectively.