deltaFromRemove(op) {
    let delta = []
    let foundCount = 0
    let opKeys = Object.keys(op)
    let lastRemove = 0
    for (let i = 0; i < this.data.len(); i++) {
      let matchCount = this.data.matchCount(i, opKeys)
      if (matchCount > 0) {
        if(i - lastRemove > 0) delta.push({ retain: i - lastRemove })
        // since the delete has already occurred we need to use the number of matched ids at the current char
        delta.push({ delete: matchCount })
        lastRemove = i
        foundCount += matchCount
        if(foundCount >= opKeys.length) {
          return delta
        }
      }
    }
    return delta
  }
Obtain a delta based on a remove operation. Note that this must be run *after* the remove has already
occurred on the replica. This can be used to obtain deltas for updating a local editor based on an op received
from the replica event system.
@param op
@returns {Array}