blob: 4898daafd6589bd0938c7942b8621ba5c6d0c22c (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
using System.Text.Json.Nodes;
using System.Text.Json.Serialization;
namespace Spacebar.Models.Generic;
public class Message {
[JsonPropertyName("id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public required long Id { get; set; }
[JsonPropertyName("channel_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long? ChannelId { get; set; }
[JsonPropertyName("guild_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long? GuildId { get; set; }
[JsonPropertyName("webhook_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long? WebhookId { get; set; }
[JsonPropertyName("application_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long? ApplicationId { get; set; }
[JsonPropertyName("content")]
public string? Content { get; set; }
[JsonPropertyName("timestamp")]
public DateTime Timestamp { get; set; }
[JsonPropertyName("edited_timestamp")]
public DateTime? EditedTimestamp { get; set; }
[JsonPropertyName("tts")]
public bool? Tts { get; set; }
[JsonPropertyName("mention_everyone")]
public bool? MentionEveryone { get; set; }
[JsonPropertyName("mentions")]
public List<PartialUser>? Mentions { get; set; }
[JsonPropertyName("embeds")]
public JsonObject[] Embeds { get; set; }
[JsonPropertyName("reactions")]
public JsonObject[] Reactions { get; set; } = null!;
[JsonPropertyName("nonce")]
public string? Nonce { get; set; }
[JsonPropertyName("type")]
public int Type { get; set; }
[JsonPropertyName("activity")]
public string? Activity { get; set; }
[JsonPropertyName("message_reference")]
public MessageReference? MessageReference { get; set; }
[JsonPropertyName("referenced_message")]
public Message? ReferencedMessage { get; set; }
[JsonPropertyName("interaction")]
public string? Interaction { get; set; }
[JsonPropertyName("components")]
public JsonObject[] Components { get; set; }
[JsonPropertyName("flags")]
public int Flags { get; set; }
[JsonPropertyName("poll")]
public string? Poll { get; set; }
[JsonPropertyName("username")]
public string? Username { get; set; }
[JsonPropertyName("avatar")]
public string? Avatar { get; set; }
[JsonPropertyName("pinned_at")]
public DateTime? PinnedAt { get; set; }
[JsonPropertyName("interaction_metadata")]
public JsonObject? InteractionMetadata { get; set; }
[JsonPropertyName("message_snapshots")]
public JsonObject[]? MessageSnapshots { get; set; }
[JsonPropertyName("thread_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long? ThreadId { get; set; }
[JsonPropertyName("author")]
public PartialUser Author { get; set; }
[JsonPropertyName("attachments")]
public List<MessageAttachment> Attachments { get; set; }
}
public class MessageReference {
[JsonPropertyName("guild_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long? GuildId { get; set; }
[JsonPropertyName("channel_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long ChannelId { get; set; }
[JsonPropertyName("message_id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long MessageId { get; set; }
}
public class MessageAttachment {
[JsonPropertyName("id"), JsonNumberHandling(JsonNumberHandling.AllowReadingFromString | JsonNumberHandling.WriteAsString)]
public long Id { get; set; }
[JsonPropertyName("filename")]
public string Filename { get; set; }
[JsonPropertyName("size")]
public int Size { get; set; }
[JsonPropertyName("height")]
public int? Height { get; set; }
[JsonPropertyName("width")]
public int? Width { get; set; }
[JsonPropertyName("content_type")]
public string ContentType { get; set; }
// channel id? message id? are these leaked properties?
[JsonPropertyName("url")]
public string Url { get; set; }
[JsonPropertyName("proxy_url")]
public string ProxyUrl { get; set; }
}
|