async replace(id, profileIds, content, { refresh = "false", userId } = {}) {
    // Assertion: the user must exist
    await this.load(id);

    const user = await this.fromDTO({
      ...content,
      // Always last, in case content contains these keys
      _id: id,
      _kuzzle_info: {
        author: userId,
        createdAt: Date.now(),
        updatedAt: null,
        updater: null,
      },
      profileIds,
    });

    return this.persist(user, {
      database: {
        method: "replace",
        refresh,
      },
    });
  }
Replaces a user's content
@param  {String} id
@param  {Object} content
@param  {Object} [opts]
@returns {Promise}