#nullable disable using NadekoBot.Modules.Utility.Patronage; using NadekoBot.Services.Database.Models; using OneOf; using OneOf.Types; namespace NadekoBot.Modules.Administration.Services; public interface IReactionRoleService { /// /// Adds a single reaction role /// /// Guild where to add a reaction role /// Message to which to add a reaction role /// /// /// /// /// The result of the operation Task> AddReactionRole( IGuild guild, IMessage msg, string emote, IRole role, int group = 0, int levelReq = 0); /// /// Get all reaction roles on the specified server /// /// /// Task> GetReactionRolesAsync(ulong guildId); /// /// Remove reaction roles on the specified message /// /// /// /// Task RemoveReactionRoles(ulong guildId, ulong messageId); /// /// Remove all reaction roles in the specified server /// /// /// Task RemoveAllReactionRoles(ulong guildId); Task> TransferReactionRolesAsync(ulong guildId, ulong fromMessageId, ulong toMessageId); }