editStory(businessConnectionId, storyId, content, options = {}) {
    const opts = {
      qs: options,
    };

    opts.qs.business_connection_id = businessConnectionId;
    opts.qs.story_id = storyId;

    try {
      const inputHistoryContent = content;
      opts.formData = {};

      if (!content.type) {
        return Promise.reject(new Error('content.type is required'));
      }

      const { formData, fileIds } = this._formatSendMultipleData(content.type, [content]);

      opts.formData = formData;

      if (fileIds[0]) {
        inputHistoryContent[content.type] = fileIds[0];
      } else {
        inputHistoryContent[content.type] = `attach://${content.type}_0`;
      }

      opts.qs.content = stringify(inputHistoryContent);
    } catch (ex) {
      return Promise.reject(ex);
    }

    return this._request('editStory', opts);
  }
This method edits a story previously posted by the bot on behalf of a managed business account.

Requires the **can_manage_stories** business bot right.

@param {String} businessConnectionId Unique identifier of the business connection.
@param {Number} storyId Unique identifier of the story to edit.
@param {Array} content [InputStoryContent](https://core.telegram.org/bots/api#inputpaidmedia). The photo/video property can be String, Stream or Buffer.
@param {Object} [options] Additional Telegram query options
@return {Promise} On success, returns [Story](https://core.telegram.org/bots/api#story).
@see https://core.telegram.org/bots/api#editstory