69 lines
1.4 KiB
C#
69 lines
1.4 KiB
C#
using System.Text.Json.Serialization;
|
|
|
|
namespace WebDrop.Core;
|
|
|
|
[JsonConverter(typeof(JsonStringEnumConverter<ChannelMode>))]
|
|
public enum ChannelMode : byte
|
|
{
|
|
[JsonStringEnumMemberName("enc")] Enc = 1,
|
|
[JsonStringEnumMemberName("raw")] Raw = 2,
|
|
}
|
|
|
|
[JsonConverter(typeof(JsonStringEnumConverter<CryptoDomain>))]
|
|
public enum CryptoDomain : byte
|
|
{
|
|
[JsonStringEnumMemberName("chat")] Chat = 1,
|
|
[JsonStringEnumMemberName("files")] Files = 2,
|
|
}
|
|
|
|
[JsonConverter(typeof(JsonStringEnumConverter<JoinPolicy>))]
|
|
public enum JoinPolicy : byte
|
|
{
|
|
[JsonStringEnumMemberName("open")] Open = 1,
|
|
[JsonStringEnumMemberName("invite")] Invite = 2,
|
|
}
|
|
|
|
[JsonConverter(typeof(JsonStringEnumConverter<DeletePolicy>))]
|
|
public enum DeletePolicy : byte
|
|
{
|
|
[JsonStringEnumMemberName("owner_only")] OwnerOnly = 0,
|
|
[JsonStringEnumMemberName("own")] Own = 1,
|
|
[JsonStringEnumMemberName("anyone")] Anyone = 2,
|
|
}
|
|
|
|
/// <summary>请求声明并通过验证的角色,数值越大权限越高。</summary>
|
|
public enum Role : byte
|
|
{
|
|
None = 0,
|
|
Read = 1,
|
|
Write = 2,
|
|
Owner = 3,
|
|
}
|
|
|
|
[Flags]
|
|
public enum FrameFlags : byte
|
|
{
|
|
None = 0,
|
|
Final = 1,
|
|
Snapshot = 2,
|
|
Gated = 4,
|
|
Enc = 8,
|
|
Control = 16,
|
|
}
|
|
|
|
public enum LogKind : byte
|
|
{
|
|
Frame = 1,
|
|
Tombstone = 2,
|
|
Announce = 3,
|
|
}
|
|
|
|
public enum TombstoneReason : byte
|
|
{
|
|
Deleted = 0,
|
|
Expired = 1,
|
|
Evicted = 2,
|
|
DownloadLimit = 3,
|
|
Superseded = 4,
|
|
}
|