async searchRole(body, { from = 0, size = 9999 } = {}) {
    if (!body.controllers) {
      return this.search(body, { from, size });
    }

    const searchResults = await this.search(
      { query: {}, sort: [{ _id: { order: "asc" } }] },
      { from: 0, size: 9999 },
    ); // /!\ NOT the options values

    const result = {
      hits: searchResults.hits,
      total: searchResults.total,
    };

    if (body.controllers.length > 0) {
      result.hits = searchResults.hits.filter((role) =>
        Object.keys(role.controllers).some(
          (key) => key === "*" || body.controllers.includes(key),
        ),
      );

      result.total = result.hits.length;
    }

    result.hits = result.hits.slice(from, from + size);

    return result;
  }
@param {Object} body Search body containing either "query" or "controllers"
@param {Object} options