+#include "base.h"
+
+typedef TR1NS::unordered_map<std::string, User*, irc::insensitive, irc::StrHashComp> user_hash;
+typedef TR1NS::unordered_map<std::string, Channel*, irc::insensitive, irc::StrHashComp> chan_hash;
+
+/** A list of failed port bindings, used for informational purposes on startup */
+typedef std::vector<std::pair<std::string, std::string> > FailedPortList;
+
+/** List of channels to consider when building the neighbor list of a user
+ */
+typedef std::vector<Membership*> IncludeChanList;
+
+/** A cached text file stored with its contents as lines
+ */
+typedef std::vector<std::string> file_cache;
+
+/** A configuration key and value pair
+ */
+typedef std::pair<std::string, std::string> KeyVal;
+
+/** The entire configuration
+ */
+typedef std::multimap<std::string, reference<ConfigTag> > ConfigDataHash;
+
+/** Iterator of ConfigDataHash */
+typedef ConfigDataHash::const_iterator ConfigIter;
+/** Iterator pair, used for tag-name ranges */
+typedef std::pair<ConfigIter,ConfigIter> ConfigTagList;