58 lines
2.1 KiB
C#
58 lines
2.1 KiB
C#
using System.Text.Json.Serialization;
|
|
using JacobTechEncryption.Enums;
|
|
using Luski.Shared.PublicServers.V1.Enums;
|
|
|
|
namespace Luski.Shared.PublicServers.V1.ClientToServer.HTTP;
|
|
|
|
public class ChannelPostCTS : CTS
|
|
{
|
|
[JsonInclude]
|
|
[JsonPropertyName("parent")]
|
|
public long Parent { get; set; }
|
|
[JsonInclude]
|
|
[JsonPropertyName("color")]
|
|
public string Color { get; set; } = string.Empty;
|
|
[JsonInclude]
|
|
[JsonPropertyName("type")]
|
|
public ChannelType Type { get; set; } = ChannelType.TextAndVoice;
|
|
[JsonInclude]
|
|
[JsonPropertyName("name")]
|
|
public string Name { get; set; } = string.Empty;
|
|
[JsonInclude]
|
|
[JsonPropertyName("description")]
|
|
public string Description { get; set; } = string.Empty;
|
|
[JsonInclude]
|
|
[JsonPropertyName("role_overrides")]
|
|
public UserRoleOverrideCTS[] RoleOverrides { get; set; } = Array.Empty<UserRoleOverrideCTS>();
|
|
[JsonInclude]
|
|
[JsonPropertyName("member_overrides")]
|
|
public UserOverrideCTS[] UserOverrides { get; set; } = Array.Empty<UserOverrideCTS>();
|
|
[JsonInclude]
|
|
[JsonPropertyName("title_encryption_key")]
|
|
public long TitleEncryptionKey { get; set; }
|
|
[JsonInclude]
|
|
[JsonPropertyName("description_encryption_key")]
|
|
public long DescriptionEncryptionKey { get; set; }
|
|
[JsonInclude]
|
|
[JsonPropertyName("encryption_keys")]
|
|
public long[] EncryptionKeys { get; set; } = Array.Empty<long>();
|
|
[JsonInclude]
|
|
[JsonPropertyName("title_encoder_type")]
|
|
public EncoderType TitleEncoderType { get; set; }
|
|
[JsonInclude]
|
|
[JsonPropertyName("description_encoder_type")]
|
|
public EncoderType DescriptionEncoderType { get; set; }
|
|
[JsonInclude]
|
|
[JsonPropertyName("encoder_types")]
|
|
public EncoderType[] EncoderTypes { get; set; } = Array.Empty<EncoderType>();
|
|
[JsonInclude]
|
|
[JsonPropertyName("picture_type")]
|
|
public PictureType PictureType { get; set; }
|
|
}
|
|
|
|
[JsonSerializable(typeof(ChannelPostCTS))]
|
|
[JsonSourceGenerationOptions(
|
|
GenerationMode = JsonSourceGenerationMode.Default,
|
|
PropertyNamingPolicy = JsonKnownNamingPolicy.CamelCase,
|
|
WriteIndented = false)]
|
|
public partial class ChannelPostCTSContext : JsonSerializerContext; |