removeFromStorage_(storage, uri, manifest) {
    /** @type {!Array<number>} */
    const segmentIds = shaka.offline.Storage.getAllSegmentIds_(manifest);

    // Count(segments) + Count(manifests)
    const toRemove = segmentIds.length + 1;
    let removed = 0;

    const pendingContent = shaka.offline.StoredContentUtils.fromManifestDB(
        uri, manifest);

    const onRemove = (key) => {
      removed += 1;
      this.config_.offline.progressCallback(pendingContent, removed / toRemove);
    };

    return Promise.all([
      storage.removeSegments(segmentIds, onRemove),
      storage.removeManifests([uri.key()], onRemove),
    ]);
  }
@param {shaka.extern.StorageCell} storage
@param {!shaka.offline.OfflineUri} uri
@param {shaka.extern.ManifestDB} manifest
@return {!Promise}
@private