You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Server.cs 2.9 KiB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Threading.Tasks;
  4. namespace Discord
  5. {
  6. public class Server : IModel<ulong>
  7. {
  8. public class Emoji
  9. {
  10. public string Id { get; }
  11. public string Name { get; }
  12. public bool IsManaged { get; }
  13. public bool RequireColons { get; }
  14. public IEnumerable<Role> Roles { get; }
  15. }
  16. public ulong Id { get; }
  17. public User CurrentUser { get; }
  18. public string IconId { get; }
  19. public string SplashId { get; }
  20. public string IconUrl { get; }
  21. public string SplashUrl { get; }
  22. public int ChannelCount { get; }
  23. public int UserCount { get; }
  24. public int RoleCount { get; }
  25. public TextChannel DefaultChannel { get; }
  26. public Role EveryoneRole { get; }
  27. public IEnumerable<string> Features { get; }
  28. public IEnumerable<Emoji> CustomEmojis { get; }
  29. public IEnumerable<Channel> Channels { get; }
  30. public IEnumerable<TextChannel> TextChannels { get; }
  31. public IEnumerable<VoiceChannel> VoiceChannels { get; }
  32. public IEnumerable<User> Users { get; }
  33. public IEnumerable<Role> Roles { get; }
  34. public string Name { get; set; }
  35. public Region Region { get; set; }
  36. public int AFKTimeout { get; set; }
  37. public DateTime JoinedAt { get; set; }
  38. public User Owner { get; set; }
  39. public VoiceChannel AFKChannel { get; set; }
  40. public IPublicChannel GetChannel(ulong id) => null;
  41. public IPublicChannel GetChannel(string mention) => null;
  42. public Role GetRole(ulong id) => null;
  43. public User GetUser(ulong id) => null;
  44. public User GetUser(string name, ushort discriminator) => null;
  45. public User GetUser(string mention) => null;
  46. public Task<IEnumerable<User>> DownloadBans() => null;
  47. public Task<IEnumerable<Invite>> DownloadInvites() => null;
  48. public Task Leave() => null;
  49. public Task Delete() => null;
  50. public Task Save() => null;
  51. public Task<Channel> CreateChannel(string name, ChannelType type) => null;
  52. public Task<Invite> CreateInvite(int? maxAge = 1800, int? maxUses = null, bool tempMembership = false, bool withXkcd = false) => null;
  53. public Task<Role> CreateRole(string name, ServerPermissions? permissions = null, Color color = null, bool isHoisted = false) => null;
  54. public Task Ban(User user, int pruneDays = 0) => null;
  55. public Task Unban(User user) => null;
  56. public Task Unban(ulong userId) => null;
  57. public Task ReorderChannels(IEnumerable<Channel> channels) => null;
  58. public Task ReorderRoles(IEnumerable<Role> roles, Role after = null) => null;
  59. public Task<int> PruneUsers(int days = 30, bool simulate = false) => null;
  60. }
  61. }