+#if USE_CURL
+Json::Value getModstoreUrl(std::string url);
+#else
+inline Json::Value getModstoreUrl(std::string url) {
+ return Json::Value();
+}
+#endif
+
+struct ModLicenseInfo {
+ int id;
+ std::string shortinfo;
+ std::string url;
+};
+
+struct ModAuthorInfo {
+ int id;
+ std::string username;
+};
+
+struct ModStoreMod {
+ int id;
+ std::string title;
+ std::string basename;
+ ModAuthorInfo author;
+ float rating;
+ bool valid;
+};
+
+struct ModStoreCategoryInfo {
+ int id;
+ std::string name;
+};
+
+struct ModStoreVersionEntry {
+ int id;
+ std::string date;
+ std::string file;
+ bool approved;
+ //ugly version number
+ int mtversion;
+};
+
+struct ModStoreTitlePic {
+ int id;
+ std::string file;
+ std::string description;
+ int mod;
+};
+
+struct ModStoreModDetails {
+ /* version_set?? */
+ std::vector<ModStoreCategoryInfo> categories;
+ ModAuthorInfo author;
+ ModLicenseInfo license;
+ ModStoreTitlePic titlepic;
+ int id;
+ std::string title;
+ std::string basename;
+ std::string description;
+ std::string repository;
+ float rating;
+ std::vector<std::string> depends;
+ std::vector<std::string> softdeps;
+
+ std::string download_url;
+ std::string screenshot_url;
+ std::vector<ModStoreVersionEntry> versions;
+ bool valid;
+};
+