#pragma once #include #include #include #include #include #include #include "../irc/message.hpp" #include "../schemas/channel.hpp" #include "../schemas/user.hpp" namespace bot::command { struct Request { std::string command_id; std::optional subcommand_id; std::optional message; const irc::Message &irc_message; schemas::Channel channel; schemas::ChannelPreferences channel_preferences; schemas::User user; schemas::UserRights user_rights; pqxx::connection &conn; sol::table as_lua_table(std::shared_ptr luaState) const; }; }