Ну например, так, если не менять определение функций:
//в main.js
bot.func = require('./functions')(bot);
//в /functions/index.js
module.exports = (bot) => ({
getMemoryMember: (id) => getMemoryMember(bot, id),
getGuildMember: (id) => getGuildMember(bot, id),
...
declOfNum,
getTime,
});
Хотя я бы может просто добавил их в прямо в бота и использовал this.
// в main.js
Object.assign(bot, require('./functions'));
// вместо bot.func.getMemoryMember(bot, id)
bot.getMemoryMember(id);
//в /functions/index.js
function getMemoryMember (id) {
// тут использовать this вместо bot
}
function getGuildMember (id) {
//1412351235
}
...
module.exports = {
getMemoryMember,
getGuildMember,
addExp,
getGuildRole,
declOfNum,
getTime
};
А может даже надо в прототип бота добавить, но это уже нужно смотреть как определяется bot и его прототип.