diff --git a/src/Discord.Net.Core/Entities/Permissions/ApplicationCommandPermissions.cs b/src/Discord.Net.Core/Entities/Permissions/ApplicationCommandPermissions.cs
index 28a6455e2..aa1580c8a 100644
--- a/src/Discord.Net.Core/Entities/Permissions/ApplicationCommandPermissions.cs
+++ b/src/Discord.Net.Core/Entities/Permissions/ApplicationCommandPermissions.cs
@@ -58,5 +58,61 @@ namespace Discord
Permission = allow;
TargetType = ApplicationCommandPermissionTarget.Role;
}
+
+ ///
+ /// Creates a new targeting .
+ ///
+ /// The channel you want to target this permission value for.
+ /// The value of this permission.
+ public ApplicationCommandPermission(IChannel channel, bool allow)
+ {
+ TargetId = channel.Id;
+ Permission = allow;
+ TargetType = ApplicationCommandPermissionTarget.Channel;
+ }
+
+ ///
+ /// Creates a new targeting @everyone in a guild.
+ ///
+ /// Id of the target guild.
+ /// The value of this permission.
+ ///
+ /// Instance of targeting @everyone in a guild.
+ ///
+ public static ApplicationCommandPermission ForEveryone(ulong guildId, bool allow) =>
+ new (guildId, ApplicationCommandPermissionTarget.User, allow);
+
+ ///
+ /// Creates a new targeting @everyone in a guild.
+ ///
+ /// Target guild.
+ /// The value of this permission.
+ ///
+ /// Instance of targeting @everyone in a guild.
+ ///
+ public static ApplicationCommandPermission ForEveryone(IGuild guild, bool allow) =>
+ ForEveryone(guild.Id, allow);
+
+ ///
+ /// Creates a new targeting every channel in a guild.
+ ///
+ /// Id of the target guild.
+ /// The value of this permission.
+ ///
+ /// Instance of targeting everychannel in a guild.
+ ///
+ public static ApplicationCommandPermission ForAllChannels(ulong guildId, bool allow) =>
+ new (guildId - 1, ApplicationCommandPermissionTarget.Channel, allow);
+
+ ///
+ /// Creates a new targeting every channel in a guild.
+ ///
+ /// Target guild.
+ /// The value of this permission.
+ ///
+ /// Instance of targeting everychannel in a guild.
+ ///
+ public static ApplicationCommandPermission ForAllChannels(IGuild guild, bool allow) =>
+ ForAllChannels(guild.Id, allow);
}
}