--- /dev/null
+#ifndef _DBHelper_h
+#define _DBHelper_h
+
+#include "main.h"
+struct UserNode;
+struct ChanNode;
+
+#define DB_CHANUSER_SUSPENDED 0x01
+#define DB_CHANUSER_AUTOINVITE 0x02
+#define DB_CHANUSER_NOAUTOOP 0x04
+
+void _loadUserSettings(struct UserNode* user);
+#define loadUserSettings(USER) if((USER->flags & USERFLAG_ISAUTHED) && !(USER->flags & USERFLAG_LOADED_SETTINGS)) _loadUserSettings(USER)
+int isGodMode(struct UserNode *user);
+char *getChanDefault(char *channel_setting);
+int getChannelAccess(struct UserNode *user, struct ChanNode *chan, int override);
+int checkChannelAccess(struct UserNode *user, struct ChanNode *chan, char *channel_setting, int allow_override, int allow_501);
+void _loadChannelSettings(struct ChanNode *chan);
+#define loadChannelSettings(CHAN) if(!(CHAN->flags & CHANFLAG_REQUESTED_CHANINFO)) _loadChannelSettings(CHAN)
+int isUserProtected(struct ChanNode *chan, struct UserNode *victim, struct UserNode *issuer);
+
+char *getBanAffectingMask(struct ChanNode *chan, char *mask); //returns bans that match a given mask eg. *!*@ab* if you pass *!*@abcdefg.*
+
+#endif
\ No newline at end of file