sig
  type response_category =
      [ `Article
      | `Category
      | `Disambiguation
      | `Exclusive
      | `Name
      | `Nothing ]
  type json = Yojson.Basic.json
  type response = {
    abstract : string;
    abstract_text : string;
    abstract_source : string;
    abstract_url : string;
    image : string;
    heading : string;
    answer : string;
    answer_type : string;
    definition : string;
    definition_source : string;
    definition_url : string;
    related_topics : Response_t.json list;
    results : Response_t.json list;
    typ : Response_t.response_category;
    redirect : string;
  }
  type icon = {
    url : string;
    height : Response_t.json;
    width : Response_t.json;
  }
end