@@ -1,32 +0,0 @@ | |||
using System; | |||
namespace Discord | |||
{ | |||
public partial class DiscordClient | |||
{ | |||
public event EventHandler Ready = delegate { }; | |||
public event EventHandler<ChannelEventArgs> ChannelCreated = delegate { }; | |||
public event EventHandler<ChannelEventArgs> ChannelDestroyed = delegate { }; | |||
public event EventHandler<ChannelUpdatedEventArgs> ChannelUpdated = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageAcknowledged = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageDeleted = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageReceived = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageSent = delegate { }; | |||
public event EventHandler<MessageUpdatedEventArgs> MessageUpdated = delegate { }; | |||
public event EventHandler<ProfileUpdatedEventArgs> ProfileUpdated = delegate { }; | |||
public event EventHandler<RoleEventArgs> RoleCreated = delegate { }; | |||
public event EventHandler<RoleUpdatedEventArgs> RoleUpdated = delegate { }; | |||
public event EventHandler<RoleEventArgs> RoleDeleted = delegate { }; | |||
public event EventHandler<ServerEventArgs> JoinedServer = delegate { }; | |||
public event EventHandler<ServerEventArgs> LeftServer = delegate { }; | |||
public event EventHandler<ServerEventArgs> ServerAvailable = delegate { }; | |||
public event EventHandler<ServerUpdatedEventArgs> ServerUpdated = delegate { }; | |||
public event EventHandler<ServerEventArgs> ServerUnavailable = delegate { }; | |||
public event EventHandler<UserEventArgs> UserBanned = delegate { }; | |||
public event EventHandler<TypingEventArgs> UserIsTyping = delegate { }; | |||
public event EventHandler<UserEventArgs> UserJoined = delegate { }; | |||
public event EventHandler<UserEventArgs> UserLeft = delegate { }; | |||
public event EventHandler<UserUpdatedEventArgs> UserUpdated = delegate { }; | |||
public event EventHandler<UserEventArgs> UserUnbanned = delegate { }; | |||
} | |||
} |
@@ -5,15 +5,39 @@ using Newtonsoft.Json; | |||
using System; | |||
using System.Collections.Generic; | |||
using System.IO; | |||
using System.Net; | |||
using System.Threading; | |||
using System.Threading.Tasks; | |||
namespace Discord | |||
{ | |||
/// <summary> Provides a connection to the DiscordApp service. </summary> | |||
public partial class DiscordClient : IDisposable | |||
public class DiscordClient : IDisposable | |||
{ | |||
public event EventHandler Ready = delegate { }; | |||
public event EventHandler<ChannelEventArgs> ChannelCreated = delegate { }; | |||
public event EventHandler<ChannelUpdatedEventArgs> ChannelUpdated = delegate { }; | |||
public event EventHandler<ChannelEventArgs> ChannelDestroyed = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageAcknowledged = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageDeleted = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageReceived = delegate { }; | |||
public event EventHandler<MessageEventArgs> MessageSent = delegate { }; | |||
public event EventHandler<MessageUpdatedEventArgs> MessageUpdated = delegate { }; | |||
public event EventHandler<ProfileUpdatedEventArgs> ProfileUpdated = delegate { }; | |||
public event EventHandler<RoleEventArgs> RoleCreated = delegate { }; | |||
public event EventHandler<RoleUpdatedEventArgs> RoleUpdated = delegate { }; | |||
public event EventHandler<RoleEventArgs> RoleDeleted = delegate { }; | |||
public event EventHandler<ServerEventArgs> JoinedServer = delegate { }; | |||
public event EventHandler<ServerEventArgs> LeftServer = delegate { }; | |||
public event EventHandler<ServerEventArgs> ServerAvailable = delegate { }; | |||
public event EventHandler<ServerUpdatedEventArgs> ServerUpdated = delegate { }; | |||
public event EventHandler<ServerEventArgs> ServerUnavailable = delegate { }; | |||
public event EventHandler<UserEventArgs> UserBanned = delegate { }; | |||
public event EventHandler<TypingEventArgs> UserIsTyping = delegate { }; | |||
public event EventHandler<UserEventArgs> UserJoined = delegate { }; | |||
public event EventHandler<UserEventArgs> UserLeft = delegate { }; | |||
public event EventHandler<UserUpdatedEventArgs> UserUpdated = delegate { }; | |||
public event EventHandler<UserEventArgs> UserUnbanned = delegate { }; | |||
public DiscordConfig Config { get; } | |||
public RestClient ClientAPI { get; } | |||
public RestClient StatusAPI { get; } | |||
@@ -3,32 +3,34 @@ using System.Threading.Tasks; | |||
namespace Discord | |||
{ | |||
public struct PermissionOverwriteEntry | |||
{ | |||
public PermissionTarget TargetType { get; } | |||
public ulong TargetId { get; } | |||
public OverwritePermissions Permissions { get; } | |||
} | |||
public interface IPublicChannel : IChannel | |||
{ | |||
/// <summary> Gets the server this channel is a member of. </summary> | |||
Server Server { get; } | |||
/// <summary> Gets a collection of permission overwrites for this channel. </summary> | |||
IEnumerable<PermissionOverwrite> PermissionOverwrites { get; } | |||
IEnumerable<PermissionOverwriteEntry> PermissionOverwrites { get; } | |||
/// <summary> Gets the name of this public channel. </summary> | |||
string Name { get; } | |||
/// <summary> Gets the position of this public channel relative to others of the same type. </summary> | |||
int Position { get; } | |||
int Position { get; } | |||
/// <summary> Gets the permission overwrite for a specific user, or null if one does not exist. </summary> | |||
PermissionOverwrite? GetPermissionOverwrite(User user); | |||
OverwritePermissions? GetPermissionOverwrite(User user); | |||
/// <summary> Gets the permission overwrite for a specific role, or null if one does not exist. </summary> | |||
PermissionOverwrite? GetPermissionOverwrite(Role role); | |||
OverwritePermissions? GetPermissionOverwrite(Role role); | |||
/// <summary> Downloads a collection of all invites to this server. </summary> | |||
Task<IEnumerable<Invite>> GetInvites(); | |||
/// <summary> Adds or updates the permission overwrite for the given user. </summary> | |||
Task UpdatePermissionOverwrite(User user, ChannelPermissions allow, ChannelPermissions deny); | |||
/// <summary> Adds or updates the permission overwrite for the given user. </summary> | |||
Task UpdatePermissionOverwrite(User user, TriStateChannelPermissions permissions); | |||
/// <summary> Adds or updates the permission overwrite for the given role. </summary> | |||
Task UpdatePermissionOverwrite(Role role, ChannelPermissions allow, ChannelPermissions deny); | |||
Task UpdatePermissionOverwrite(User user, OverwritePermissions permissions); | |||
/// <summary> Adds or updates the permission overwrite for the given role. </summary> | |||
Task UpdatePermissionOverwrite(Role role, TriStateChannelPermissions permissions); | |||
Task UpdatePermissionOverwrite(Role role, OverwritePermissions permissions); | |||
/// <summary> Removes the permission overwrite for the given user, if one exists. </summary> | |||
Task RemovePermissionOverwrite(User user); | |||
/// <summary> Removes the permission overwrite for the given role, if one exists. </summary> | |||
@@ -11,7 +11,7 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public DiscordClient Discord { get; } | |||
/// <inheritdoc /> | |||
public ModelState State { get; } | |||
public EntityState State { get; } | |||
/// <inheritdoc /> | |||
public ChannelType Type { get; } | |||
/// <inheritdoc /> | |||
@@ -22,14 +22,12 @@ namespace Discord | |||
public bool IsText => true; | |||
/// <inheritdoc /> | |||
public bool IsVoice => false; | |||
/// <inheritdoc /> | |||
public Server Server { get; } | |||
/// <inheritdoc /> | |||
public User Recipient { get; } | |||
/// <inheritdoc /> | |||
public Task<IEnumerable<User>> GetUsers(); | |||
public Task<IEnumerable<User>> GetUsers() => null; | |||
/// <inheritdoc /> | |||
public Task<Message> GetMessage(ulong id) => null; | |||
/// <inheritdoc /> | |||
@@ -46,10 +44,10 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public Task SendIsTyping() => null; | |||
/// <inheritdoc /> | |||
public Task Delete() => null; | |||
/// <inheritdoc /> | |||
public Task Update() => null; | |||
/// <inheritdoc /> | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -19,7 +19,7 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public DiscordClient Discord { get; } | |||
/// <inheritdoc /> | |||
public ModelState State { get; } | |||
public EntityState State { get; } | |||
/// <inheritdoc /> | |||
public ChannelType Type => ChannelType.Public | ChannelType.Text; | |||
/// <inheritdoc /> | |||
@@ -42,14 +42,14 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public Server Server { get; } | |||
/// <inheritdoc /> | |||
public IEnumerable<PermissionOverwrite> PermissionOverwrites { get; } | |||
public IEnumerable<PermissionOverwriteEntry> PermissionOverwrites { get; } | |||
/// <inheritdoc /> | |||
public IEnumerable<User> Users { get; } | |||
/// <inheritdoc /> | |||
public PermissionOverwrite? GetPermissionOverwrite(User user) => null; | |||
public OverwritePermissions? GetPermissionOverwrite(User user) => null; | |||
/// <inheritdoc /> | |||
public PermissionOverwrite? GetPermissionOverwrite(Role role) => null; | |||
public OverwritePermissions? GetPermissionOverwrite(Role role) => null; | |||
/// <inheritdoc /> | |||
public Task<IEnumerable<User>> GetUsers() => null; | |||
/// <inheritdoc /> | |||
@@ -60,15 +60,11 @@ namespace Discord | |||
public Task<IEnumerable<Message>> GetMessages(int limit = 100, ulong? relativeMessageId = null, Relative relativeDir = Relative.Before) => null; | |||
/// <inheritdoc /> | |||
public Task<IEnumerable<Invite>> GetInvites() => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(User user, ChannelPermissions allow, ChannelPermissions deny) => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(User user, TriStateChannelPermissions permissions) => null; | |||
public Task UpdatePermissionOverwrite(User user, OverwritePermissions permissions) => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(Role role, ChannelPermissions allow, ChannelPermissions deny) => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(Role role, TriStateChannelPermissions permissions) => null; | |||
public Task UpdatePermissionOverwrite(Role role, OverwritePermissions permissions) => null; | |||
/// <inheritdoc /> | |||
public Task RemovePermissionOverwrite(User user) => null; | |||
/// <inheritdoc /> | |||
@@ -87,11 +83,11 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public Task<Invite> CreateInvite(int? maxAge = 1800, int? maxUses = null, bool tempMembership = false, bool withXkcd = false) => null; | |||
/// <inheritdoc /> | |||
public Task Delete() => null; | |||
/// <inheritdoc /> | |||
public Task Update() => null; | |||
/// <inheritdoc /> | |||
public Task Modify(Action<Properties> func) => null; | |||
/// <inheritdoc /> | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -18,7 +18,7 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public DiscordClient Discord { get; } | |||
/// <inheritdoc /> | |||
public ModelState State { get; } | |||
public EntityState State { get; } | |||
/// <inheritdoc /> | |||
public ChannelType Type { get; } | |||
/// <inheritdoc /> | |||
@@ -39,25 +39,21 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public Server Server { get; } | |||
/// <inheritdoc /> | |||
public IEnumerable<PermissionOverwrite> PermissionOverwrites { get; } | |||
public IEnumerable<PermissionOverwriteEntry> PermissionOverwrites { get; } | |||
/// <inheritdoc /> | |||
public PermissionOverwrite? GetPermissionOverwrite(User user) => null; | |||
public OverwritePermissions? GetPermissionOverwrite(User user) => null; | |||
/// <inheritdoc /> | |||
public PermissionOverwrite? GetPermissionOverwrite(Role role) => null; | |||
public OverwritePermissions? GetPermissionOverwrite(Role role) => null; | |||
/// <inheritdoc /> | |||
public Task<IEnumerable<User>> GetUsers() => null; | |||
/// <inheritdoc /> | |||
public Task<IEnumerable<Invite>> GetInvites() => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(User user, ChannelPermissions allow, ChannelPermissions deny) => null; | |||
public Task UpdatePermissionOverwrite(User user, OverwritePermissions permissions) => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(User user, TriStateChannelPermissions permissions) => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(Role role, ChannelPermissions allow, ChannelPermissions deny) => null; | |||
/// <inheritdoc /> | |||
public Task UpdatePermissionOverwrite(Role role, TriStateChannelPermissions permissions) => null; | |||
public Task UpdatePermissionOverwrite(Role role, OverwritePermissions permissions) => null; | |||
/// <inheritdoc /> | |||
public Task RemovePermissionOverwrite(User user) => null; | |||
/// <inheritdoc /> | |||
@@ -66,11 +62,11 @@ namespace Discord | |||
/// <inheritdoc /> | |||
public Task<Invite> CreateInvite(int? maxAge = 1800, int? maxUses = null, bool tempMembership = false, bool withXkcd = false) => null; | |||
/// <inheritdoc /> | |||
public Task Delete() => null; | |||
/// <inheritdoc /> | |||
public Task Update() => null; | |||
/// <inheritdoc /> | |||
public Task Modify(Action<Properties> func) => null; | |||
/// <inheritdoc /> | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -13,10 +13,8 @@ namespace Discord | |||
/// <summary> Gets the DiscordClient that manages this object. </summary> | |||
DiscordClient Discord { get; } | |||
/// <summary> Gets the state of this object. </summary> | |||
ModelState State { get; } | |||
/// <summary> Deletes this object. </summary> | |||
Task Delete(); | |||
EntityState State { get; } | |||
/// <summary> Downloads the latest values and updates this object. </summary> | |||
Task Update(); | |||
} | |||
@@ -3,7 +3,7 @@ using System.Threading.Tasks; | |||
namespace Discord | |||
{ | |||
public class Invite : IModel<string> | |||
public class Invite : IEntity<string> | |||
{ | |||
public class ServerInfo | |||
{ | |||
@@ -23,10 +23,11 @@ namespace Discord | |||
public string AvatarId { get; } | |||
public string AvatarUrl { get; } | |||
} | |||
public DiscordClient Client { get; } | |||
string IModel<string>.Id => Code; | |||
string IEntity<string>.Id => Code; | |||
public DiscordClient Discord { get; } | |||
public EntityState State { get; } | |||
public string Code { get; } | |||
public string XkcdCode { get; } | |||
@@ -40,9 +41,9 @@ namespace Discord | |||
public DateTime CreatedAt { get; } | |||
public string Url { get; } | |||
public Task Delete() => null; | |||
public Task Accept() => null; | |||
public Task Save() => null; | |||
} | |||
public Task Update() => null; | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -38,13 +38,14 @@ namespace Discord | |||
public int? Width { get; } | |||
public int? Height { get; } | |||
} | |||
public DiscordClient Client { get; } | |||
public ulong Id { get; } | |||
public DiscordClient Discord { get; } | |||
public EntityState State { get; } | |||
public ITextChannel Channel { get; } | |||
public User User { get; } | |||
public bool IsTTS { get; } | |||
public MessageState State { get; } | |||
public string RawText { get; } | |||
public string Text { get; } | |||
public DateTime Timestamp { get; } | |||
@@ -59,10 +60,9 @@ namespace Discord | |||
public Server Server => null; | |||
public bool IsAuthor => false; | |||
public Task Delete() => null; | |||
public Task Save() => null; | |||
public bool IsMentioningMe(bool includeRoles = false) => false; | |||
public Task Update() => null; | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -6,12 +6,11 @@ | |||
public static ChannelPermissions TextOnly { get; } | |||
public static ChannelPermissions PrivateOnly { get; } | |||
public static ChannelPermissions VoiceOnly { get; } | |||
public static ChannelPermissions All(Channel channel) => default(ChannelPermissions); | |||
public static ChannelPermissions All(ChannelType channelType, bool isPrivate) => default(ChannelPermissions); | |||
public static ChannelPermissions All(ChannelType channelType) => default(ChannelPermissions); | |||
public uint RawValue { get; } | |||
public bool CreateInstantInvit { get; } | |||
public bool CreateInstantInvite { get; } | |||
public bool ManagePermission { get; } | |||
public bool ManageChannel { get; } | |||
@@ -44,7 +43,7 @@ | |||
{ | |||
} | |||
public ChannelPermissions Modify(ChannelPermissions basePerms, bool? createInstantInvite = null, bool? managePermissions = null, | |||
public ChannelPermissions Modify(bool? createInstantInvite = null, bool? managePermissions = null, | |||
bool? manageChannel = null, bool? readMessages = null, bool? sendMessages = null, bool? sendTTSMessages = null, | |||
bool? manageMessages = null, bool? embedLinks = null, bool? attachFiles = null, bool? readMessageHistory = null, | |||
bool? mentionEveryone = null, bool? connect = null, bool? speak = null, bool? muteMembers = null, bool? deafenMembers = null, | |||
@@ -1,8 +1,8 @@ | |||
namespace Discord | |||
{ | |||
public struct TriStateChannelPermissions | |||
public struct OverwritePermissions | |||
{ | |||
public static TriStateChannelPermissions InheritAll { get; } | |||
public static OverwritePermissions InheritAll { get; } | |||
public uint AllowValue { get; } | |||
public uint DenyValue { get; } | |||
@@ -26,7 +26,7 @@ | |||
public PermValue MoveMembers { get; } | |||
public PermValue UseVoiceActivation { get; } | |||
public TriStateChannelPermissions(PermValue? createInstantInvite = null, PermValue? managePermissions = null, | |||
public OverwritePermissions(PermValue? createInstantInvite = null, PermValue? managePermissions = null, | |||
PermValue? manageChannel = null, PermValue? readMessages = null, PermValue? sendMessages = null, PermValue? sendTTSMessages = null, | |||
PermValue? manageMessages = null, PermValue? embedLinks = null, PermValue? attachFiles = null, PermValue? readMessageHistory = null, | |||
PermValue? mentionEveryone = null, PermValue? connect = null, PermValue? speak = null, PermValue? muteMembers = null, PermValue? deafenMembers = null, | |||
@@ -35,16 +35,16 @@ | |||
{ | |||
} | |||
public TriStateChannelPermissions(uint allow = 0, uint deny = 0) | |||
public OverwritePermissions(uint allow = 0, uint deny = 0) | |||
: this() | |||
{ | |||
} | |||
public TriStateChannelPermissions Modify(PermValue? createInstantInvite = null, PermValue? managePermissions = null, | |||
public OverwritePermissions Modify(PermValue? createInstantInvite = null, PermValue? managePermissions = null, | |||
PermValue? manageChannel = null, PermValue? readMessages = null, PermValue? sendMessages = null, PermValue? sendTTSMessages = null, | |||
PermValue? manageMessages = null, PermValue? embedLinks = null, PermValue? attachFiles = null, PermValue? readMessageHistory = null, | |||
PermValue? mentionEveryone = null, PermValue? connect = null, PermValue? speak = null, PermValue? muteMembers = null, PermValue? deafenMembers = null, | |||
PermValue? moveMembers = null, PermValue? useVoiceActivation = null) | |||
=> default(TriStateChannelPermissions); | |||
=> default(OverwritePermissions); | |||
} | |||
} |
@@ -1,9 +0,0 @@ | |||
namespace Discord | |||
{ | |||
public struct PermissionOverwrite | |||
{ | |||
public PermissionTarget TargetType { get; } | |||
public ulong TargetId { get; } | |||
public TriStateChannelPermissions Permissions { get; } | |||
} | |||
} |
@@ -44,7 +44,7 @@ | |||
{ | |||
} | |||
public ServerPermissions Modify(ServerPermissions basePerms, bool? createInstantInvite = null, bool? manageRoles = null, | |||
public ServerPermissions Modify(bool? createInstantInvite = null, bool? manageRoles = null, | |||
bool? kickMembers = null, bool? banMembers = null, bool? manageChannel = null, bool? manageServer = null, | |||
bool? readMessages = null, bool? sendMessages = null, bool? sendTTSMessages = null, bool? manageMessages = null, | |||
bool? embedLinks = null, bool? attachFiles = null, bool? readMessageHistory = null, bool? mentionEveryone = null, | |||
@@ -3,10 +3,11 @@ | |||
namespace Discord | |||
{ | |||
public class Profile : IEntity<ulong> | |||
{ | |||
public DiscordClient Client { get; } | |||
{ | |||
public ulong Id { get; } | |||
public DiscordClient Discord { get; } | |||
public EntityState State { get; } | |||
public string AvatarId { get; } | |||
public string AvatarUrl { get; } | |||
public ushort Discriminator { get; } | |||
@@ -16,8 +17,9 @@ namespace Discord | |||
public string Email { get; } | |||
public bool? IsVerified { get; } | |||
public string Name { get; set; } | |||
public string Name { get; set; } | |||
public Task Save() => null; | |||
public Task Update() => null; | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -7,14 +7,5 @@ | |||
public string Hostname { get; } | |||
public int Port { get; } | |||
public bool Vip { get; } | |||
internal Region(string id, string name, string hostname, int port, bool vip) | |||
{ | |||
Id = id; | |||
Name = name; | |||
Hostname = hostname; | |||
Port = port; | |||
Vip = vip; | |||
} | |||
} | |||
} |
@@ -5,9 +5,10 @@ namespace Discord | |||
{ | |||
public class Role : IEntity<ulong>, IMentionable | |||
{ | |||
public DiscordClient Client { get; } | |||
public ulong Id { get; } | |||
public DiscordClient Discord { get; } | |||
public EntityState State { get; } | |||
public Server Server { get; } | |||
public string Name { get; } | |||
@@ -21,9 +22,8 @@ namespace Discord | |||
public IEnumerable<User> Members { get; } | |||
public string Mention { get; } | |||
public Task Delete() => null; | |||
public Task Save() => null; | |||
public Task Update() => null; | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -16,6 +16,9 @@ namespace Discord | |||
} | |||
public ulong Id { get; } | |||
public DiscordClient Discord { get; } | |||
public EntityState State { get; } | |||
public User CurrentUser { get; } | |||
public string IconId { get; } | |||
public string SplashId { get; } | |||
@@ -50,11 +53,8 @@ namespace Discord | |||
public Task<IEnumerable<User>> DownloadBans() => null; | |||
public Task<IEnumerable<Invite>> DownloadInvites() => null; | |||
public Task Leave() => null; | |||
public Task Delete() => null; | |||
public Task Save() => null; | |||
public Task<Channel> CreateChannel(string name, ChannelType type) => null; | |||
public Task<TextChannel> CreateTextChannel(string name) => null; | |||
public Task<VoiceChannel> CreateVoiceChannel(string name) => null; | |||
public Task<Invite> CreateInvite(int? maxAge = 1800, int? maxUses = null, bool tempMembership = false, bool withXkcd = false) => null; | |||
public Task<Role> CreateRole(string name, ServerPermissions? permissions = null, Color color = null, bool isHoisted = false) => null; | |||
@@ -62,9 +62,10 @@ namespace Discord | |||
public Task Unban(User user) => null; | |||
public Task Unban(ulong userId) => null; | |||
public Task ReorderChannels(IEnumerable<Channel> channels) => null; | |||
public Task ReorderRoles(IEnumerable<Role> roles, Role after = null) => null; | |||
public Task<int> PruneUsers(int days = 30, bool simulate = false) => null; | |||
} | |||
public Task Update() => null; | |||
public Task Leave() => null; | |||
public Task Delete() => null; | |||
} | |||
} |
@@ -5,13 +5,13 @@ using System.Threading.Tasks; | |||
namespace Discord | |||
{ | |||
public class User : IModel<ulong> | |||
{ | |||
public DiscordClient Client { get; } | |||
public class User : IEntity<ulong> | |||
{ | |||
public ulong Id { get; } | |||
public Server Server { get; } | |||
public DiscordClient Discord { get; } | |||
public EntityState State { get; } | |||
public Server Server { get; } | |||
public string Name { get; } | |||
public ushort Discriminator { get; } | |||
public string AvatarId { get; } | |||
@@ -20,7 +20,6 @@ namespace Discord | |||
public DateTime JoinedAt { get; } | |||
public DateTime? LastActivityAt { get; } | |||
public Channel PrivateChannel => null; | |||
public string Mention => null; | |||
public bool IsSelfMuted => false; | |||
public bool IsSelfDeafened => false; | |||
@@ -28,18 +27,14 @@ namespace Discord | |||
public bool IsServerDeafened => false; | |||
public bool IsServerSuppressed => false; | |||
public DateTime? LastOnlineAt => null; | |||
public Channel VoiceChannel => null; | |||
public VoiceChannel VoiceChannel => null; | |||
public string AvatarUrl => null; | |||
public IEnumerable<Role> Roles => null; | |||
public IEnumerable<Channel> Channels => null; | |||
public Task Kick() => null; | |||
public IEnumerable<Role> Roles => null; | |||
public IEnumerable<IPublicChannel> Channels => null; | |||
public ServerPermissions ServerPermissions => default(ServerPermissions); | |||
public ChannelPermissions GetPermissions(Channel channel) => default(ChannelPermissions); | |||
public Task<Channel> CreatePMChannel() => null; | |||
public ChannelPermissions GetPermissions(IPublicChannel channel) => default(ChannelPermissions); | |||
public Task<PrivateChannel> GetPrivateChannel() => null; | |||
public Task<Message> SendMessage(string text) => null; | |||
public Task<Message> SendFile(string filePath) => null; | |||
@@ -50,6 +45,7 @@ namespace Discord | |||
public Task AddRoles(params Role[] roles) => null; | |||
public Task RemoveRoles(params Role[] roles) => null; | |||
public Task Save() => null; | |||
public Task Update() => null; | |||
public Task Kick() => null; | |||
} | |||
} |
@@ -0,0 +1,18 @@ | |||
namespace Discord | |||
{ | |||
public enum EntityState : byte | |||
{ | |||
/// <summary> Object is not attached to a cache manager nor receiving live updates. </summary> | |||
Detached = 0, | |||
/// <summary> Object is attached to a cache manager and receiving live updates. </summary> | |||
Attached, | |||
/// <summary> Object was deleted. </summary> | |||
Deleted, | |||
/// <summary> Object is currently waiting to be created. </summary> | |||
Queued, | |||
/// <summary> Object's creation was aborted. </summary> | |||
Aborted, | |||
/// <summary> Object's creation failed. </summary> | |||
Failed | |||
} | |||
} |
@@ -2,6 +2,7 @@ | |||
{ | |||
public enum LogSeverity | |||
{ | |||
Critical = 0, | |||
Error = 1, | |||
Warning = 2, | |||
Info = 3, | |||
@@ -1,18 +0,0 @@ | |||
namespace Discord | |||
{ | |||
public enum ModelState : byte | |||
{ | |||
/// <summary> Message did not originate from this session, or was successfully sent. </summary> | |||
Normal = 0, | |||
/// <summary> Message is current queued. </summary> | |||
Queued, | |||
/// <summary> Message was deleted. </summary> | |||
Deleted, | |||
/// <summary> Message was deleted before it was sent. </summary> | |||
Aborted, | |||
/// <summary> Message failed to be sent. </summary> | |||
Failed, | |||
/// <summary> Message has been removed from cache and will no longer receive updates. </summary> | |||
Detached | |||
} | |||
} |
@@ -1,31 +0,0 @@ | |||
namespace Discord | |||
{ | |||
internal enum PermissionBits | |||
{ | |||
//General | |||
CreateInstantInvite = 0, | |||
KickMembers = 1, | |||
BanMembers = 2, | |||
ManageRolesOrPermissions = 3, | |||
ManageChannel = 4, | |||
ManageServer = 5, | |||
//Text | |||
ReadMessages = 10, | |||
SendMessages = 11, | |||
SendTTSMessages = 12, | |||
ManageMessages = 13, | |||
EmbedLinks = 14, | |||
AttachFiles = 15, | |||
ReadMessageHistory = 16, | |||
MentionEveryone = 17, | |||
//Voice | |||
Connect = 20, | |||
Speak = 21, | |||
MuteMembers = 22, | |||
DeafenMembers = 23, | |||
MoveMembers = 24, | |||
UseVoiceActivation = 25 | |||
} | |||
} |
@@ -4,7 +4,6 @@ namespace Discord | |||
{ | |||
public class ChannelEventArgs : EventArgs | |||
{ | |||
public Channel Channel => null; | |||
public Server Server => null; | |||
public IChannel Channel => null; | |||
} | |||
} |
@@ -6,6 +6,5 @@ namespace Discord | |||
{ | |||
public IChannel Before => null; | |||
public IChannel After => null; | |||
public Server Server => null; | |||
} | |||
} |
@@ -6,7 +6,6 @@ namespace Discord | |||
{ | |||
public Message Message => null; | |||
public User User => null; | |||
public Channel Channel => null; | |||
public Server Server => null; | |||
public ITextChannel Channel => null; | |||
} | |||
} |
@@ -7,7 +7,6 @@ namespace Discord | |||
public Message Before => null; | |||
public Message After => null; | |||
public User User => null; | |||
public Channel Channel => null; | |||
public Server Server => null; | |||
public ITextChannel Channel => null; | |||
} | |||
} |
@@ -4,6 +4,5 @@ namespace Discord | |||
public class UserEventArgs : EventArgs | |||
{ | |||
public User User => null; | |||
public Server Server => null; | |||
} | |||
} |
@@ -5,6 +5,5 @@ namespace Discord | |||
{ | |||
public User Before => null; | |||
public User After => null; | |||
public Server Server => null; | |||
} | |||
} |
@@ -7,11 +7,5 @@ namespace Discord.Net.WebSockets | |||
{ | |||
public string Type { get; } | |||
public JToken Payload { get; } | |||
internal WebSocketEventEventArgs(string type, JToken data) | |||
{ | |||
Type = type; | |||
Payload = data; | |||
} | |||
} | |||
} |