#ifndef SUBEXPORT_H_INCLUDED #define SUBEXPORT_H_INCLUDED #include struct ruleset_content { std::string rule_group; std::string rule_path; std::string rule_content; }; struct extra_settings { bool add_emoji = false; bool remove_emoji = false; bool append_proxy_type = true; string_array include_remarks; }; std::string netchToClash(std::vector &nodes, std::string &base_conf, std::vector &ruleset_content_array, string_array &extra_proxy_group, bool clashR, extra_settings &ext); std::string netchToSurge(std::vector &nodes, std::string &base_conf, std::vector &ruleset_content_array, string_array &extra_proxy_group, int surge_ver, extra_settings &ext); std::string netchToMellow(std::vector &nodes, std::string &base_conf, std::vector &ruleset_content_array, string_array &extra_proxy_group, extra_settings &ext); std::string netchToSS(std::vector &nodes, extra_settings &ext); std::string netchToSSR(std::vector &nodes, extra_settings &ext); std::string netchToVMess(std::vector &nodes, extra_settings &ext); std::string netchToQuanX(std::vector &nodes, extra_settings &ext); std::string netchToQuan(std::vector &nodes, extra_settings &ext); std::string netchToSSD(std::vector &nodes, std::string &group, extra_settings &ext); std::string buildGistData(std::string name, std::string content); int uploadGist(std::string name, std::string path, std::string content, bool writeManageURL); #endif // SUBEXPORT_H_INCLUDED