Browse Source

Fixed several issues in ref entities

tags/docs-0.9
RogueException 9 years ago
parent
commit
19e02e923d
29 changed files with 146 additions and 225 deletions
  1. +0
    -32
      ref/DiscordClient.Events.cs
  2. +26
    -2
      ref/DiscordClient.cs
  3. +12
    -10
      ref/Entities/Channels/IPublicChannel.cs
  4. +6
    -8
      ref/Entities/Channels/PrivateChannel.cs
  5. +9
    -13
      ref/Entities/Channels/TextChannel.cs
  6. +8
    -12
      ref/Entities/Channels/VoiceChannel.cs
  7. +2
    -4
      ref/Entities/IEntity.cs
  8. +8
    -7
      ref/Entities/Invite.cs
  9. +7
    -7
      ref/Entities/Message.cs
  10. +3
    -4
      ref/Entities/Permissions/ChannelPermissions.cs
  11. +6
    -6
      ref/Entities/Permissions/OverwritePermissions.cs
  12. +0
    -9
      ref/Entities/Permissions/PermissionOverwrite.cs
  13. +1
    -1
      ref/Entities/Permissions/ServerPermissions.cs
  14. +7
    -5
      ref/Entities/Profile.cs
  15. +0
    -9
      ref/Entities/Region.cs
  16. +5
    -5
      ref/Entities/Role.cs
  17. +10
    -9
      ref/Entities/Server.cs
  18. +14
    -18
      ref/Entities/User.cs
  19. +18
    -0
      ref/Enums/EntityState.cs
  20. +1
    -0
      ref/Enums/LogSeverity.cs
  21. +0
    -18
      ref/Enums/ModelState.cs
  22. +0
    -31
      ref/Enums/PermissionBits.cs
  23. +1
    -2
      ref/Events/ChannelEventArgs.cs
  24. +0
    -1
      ref/Events/ChannelUpdatedEventArgs.cs
  25. +1
    -2
      ref/Events/MessageEventArgs.cs
  26. +1
    -2
      ref/Events/MessageUpdatedEventArgs.cs
  27. +0
    -1
      ref/Events/UserEventArgs.cs
  28. +0
    -1
      ref/Events/UserUpdatedEventArgs.cs
  29. +0
    -6
      ref/Net/WebSockets/WebSocketEventEventArgs.cs

+ 0
- 32
ref/DiscordClient.Events.cs View File

@@ -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 { };
}
}

+ 26
- 2
ref/DiscordClient.cs View File

@@ -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; }


+ 12
- 10
ref/Entities/Channels/IPublicChannel.cs View File

@@ -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>


+ 6
- 8
ref/Entities/Channels/PrivateChannel.cs View File

@@ -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;
}
}

+ 9
- 13
ref/Entities/Channels/TextChannel.cs View File

@@ -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;
}
}

+ 8
- 12
ref/Entities/Channels/VoiceChannel.cs View File

@@ -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;
}
}

+ 2
- 4
ref/Entities/IEntity.cs View File

@@ -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();
}


+ 8
- 7
ref/Entities/Invite.cs View File

@@ -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;
}
}

+ 7
- 7
ref/Entities/Message.cs View File

@@ -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;
}
}

+ 3
- 4
ref/Entities/Permissions/ChannelPermissions.cs View File

@@ -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,


ref/Entities/Permissions/TriStateChannelPermissions.cs → ref/Entities/Permissions/OverwritePermissions.cs View File

@@ -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);
}
}

+ 0
- 9
ref/Entities/Permissions/PermissionOverwrite.cs View File

@@ -1,9 +0,0 @@
namespace Discord
{
public struct PermissionOverwrite
{
public PermissionTarget TargetType { get; }
public ulong TargetId { get; }
public TriStateChannelPermissions Permissions { get; }
}
}

+ 1
- 1
ref/Entities/Permissions/ServerPermissions.cs View File

@@ -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,


+ 7
- 5
ref/Entities/Profile.cs View File

@@ -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;
}
}

+ 0
- 9
ref/Entities/Region.cs View File

@@ -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
- 5
ref/Entities/Role.cs View File

@@ -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;
}
}

+ 10
- 9
ref/Entities/Server.cs View File

@@ -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;
}
}

+ 14
- 18
ref/Entities/User.cs View File

@@ -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;
}
}

+ 18
- 0
ref/Enums/EntityState.cs View File

@@ -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
}
}

+ 1
- 0
ref/Enums/LogSeverity.cs View File

@@ -2,6 +2,7 @@
{
public enum LogSeverity
{
Critical = 0,
Error = 1,
Warning = 2,
Info = 3,


+ 0
- 18
ref/Enums/ModelState.cs View File

@@ -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
}
}

+ 0
- 31
ref/Enums/PermissionBits.cs View File

@@ -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
}
}

+ 1
- 2
ref/Events/ChannelEventArgs.cs View File

@@ -4,7 +4,6 @@ namespace Discord
{
public class ChannelEventArgs : EventArgs
{
public Channel Channel => null;
public Server Server => null;
public IChannel Channel => null;
}
}

+ 0
- 1
ref/Events/ChannelUpdatedEventArgs.cs View File

@@ -6,6 +6,5 @@ namespace Discord
{
public IChannel Before => null;
public IChannel After => null;
public Server Server => null;
}
}

+ 1
- 2
ref/Events/MessageEventArgs.cs View File

@@ -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;
}
}

+ 1
- 2
ref/Events/MessageUpdatedEventArgs.cs View File

@@ -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;
}
}

+ 0
- 1
ref/Events/UserEventArgs.cs View File

@@ -4,6 +4,5 @@ namespace Discord
public class UserEventArgs : EventArgs
{
public User User => null;
public Server Server => null;
}
}

+ 0
- 1
ref/Events/UserUpdatedEventArgs.cs View File

@@ -5,6 +5,5 @@ namespace Discord
{
public User Before => null;
public User After => null;
public Server Server => null;
}
}

+ 0
- 6
ref/Net/WebSockets/WebSocketEventEventArgs.cs View File

@@ -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;
}
}
}

Loading…
Cancel
Save