2021-08-27 15:03:47 +00:00
|
|
|
namespace Myriad.Types
|
2020-12-22 12:15:26 +00:00
|
|
|
{
|
|
|
|
public record Channel
|
|
|
|
{
|
|
|
|
public enum ChannelType
|
|
|
|
{
|
|
|
|
GuildText = 0,
|
|
|
|
Dm = 1,
|
|
|
|
GuildVoice = 2,
|
|
|
|
GroupDm = 3,
|
|
|
|
GuildCategory = 4,
|
|
|
|
GuildNews = 5,
|
2021-06-08 16:43:43 +00:00
|
|
|
GuildStore = 6,
|
|
|
|
GuildNewsThread = 10,
|
|
|
|
GuildPublicThread = 11,
|
|
|
|
GuildPrivateThread = 12,
|
|
|
|
GuildStageVoice = 13
|
2020-12-22 12:15:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
public ulong Id { get; init; }
|
|
|
|
public ChannelType Type { get; init; }
|
|
|
|
public ulong? GuildId { get; init; }
|
|
|
|
public int? Position { get; init; }
|
|
|
|
public string? Name { get; init; }
|
|
|
|
public string? Topic { get; init; }
|
|
|
|
public bool? Nsfw { get; init; }
|
2020-12-22 15:55:13 +00:00
|
|
|
public ulong? ParentId { get; init; }
|
2020-12-22 12:15:26 +00:00
|
|
|
public Overwrite[]? PermissionOverwrites { get; init; }
|
2021-03-18 10:28:11 +00:00
|
|
|
public User[]? Recipients { get; init; } // NOTE: this may be null for stub channel objects
|
2020-12-22 12:15:26 +00:00
|
|
|
|
|
|
|
public record Overwrite
|
|
|
|
{
|
|
|
|
public ulong Id { get; init; }
|
|
|
|
public OverwriteType Type { get; init; }
|
|
|
|
public PermissionSet Allow { get; init; }
|
|
|
|
public PermissionSet Deny { get; init; }
|
|
|
|
}
|
|
|
|
|
|
|
|
public enum OverwriteType
|
|
|
|
{
|
|
|
|
Role = 0,
|
|
|
|
Member = 1
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|