diff --git a/LibMatrix/StateEventTypes/Spec/RoomMessageEventData.cs b/LibMatrix/EventTypes/Spec/RoomMessageEventData.cs
index a15efe8..b76b176 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomMessageEventData.cs
+++ b/LibMatrix/EventTypes/Spec/RoomMessageEventData.cs
@@ -1,9 +1,8 @@
using System.Text.Json.Serialization;
-using ArcaneLibs.Extensions;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec;
[MatrixEvent(EventName = "m.room.message")]
public class RoomMessageEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/CanonicalAliasEventContent.cs b/LibMatrix/EventTypes/Spec/State/CanonicalAliasEventContent.cs
index 7a0e84c..71f3d0d 100644
--- a/LibMatrix/StateEventTypes/Spec/CanonicalAliasEventContent.cs
+++ b/LibMatrix/EventTypes/Spec/State/CanonicalAliasEventContent.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.canonical_alias")]
public class CanonicalAliasEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/GuestAccessEventData.cs b/LibMatrix/EventTypes/Spec/State/GuestAccessEventData.cs
index 0709b86..af1b2ce 100644
--- a/LibMatrix/StateEventTypes/Spec/GuestAccessEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/GuestAccessEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.guest_access")]
public class GuestAccessEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/HistoryVisibilityEventData.cs b/LibMatrix/EventTypes/Spec/State/HistoryVisibilityEventData.cs
index b19dd32..b57ade5 100644
--- a/LibMatrix/StateEventTypes/Spec/HistoryVisibilityEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/HistoryVisibilityEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.history_visibility")]
public class HistoryVisibilityEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/JoinRulesEventData.cs b/LibMatrix/EventTypes/Spec/State/JoinRulesEventData.cs
index 8c0772f..0098bef 100644
--- a/LibMatrix/StateEventTypes/Spec/JoinRulesEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/JoinRulesEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.join_rules")]
public class JoinRulesEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs b/LibMatrix/EventTypes/Spec/State/PolicyRuleStateEventData.cs
index 539e371..fde02c1 100644
--- a/LibMatrix/StateEventTypes/Spec/PolicyRuleStateEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/PolicyRuleStateEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.policy.rule.user")]
[MatrixEvent(EventName = "m.policy.rule.server")]
diff --git a/LibMatrix/StateEventTypes/Spec/PresenceStateEventData.cs b/LibMatrix/EventTypes/Spec/State/PresenceStateEventData.cs
index b897ff0..b12da5b 100644
--- a/LibMatrix/StateEventTypes/Spec/PresenceStateEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/PresenceStateEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.presence")]
public class PresenceEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/ProfileResponseEventData.cs b/LibMatrix/EventTypes/Spec/State/ProfileResponseEventData.cs
index 9b4f1d0..893fce1 100644
--- a/LibMatrix/StateEventTypes/Spec/ProfileResponseEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/ProfileResponseEventData.cs
@@ -1,7 +1,7 @@
using System.Text.Json.Serialization;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
public class ProfileResponseEventContent : EventContent {
[JsonPropertyName("avatar_url")]
diff --git a/LibMatrix/StateEventTypes/Spec/RoomAliasEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomAliasEventData.cs
index d3960a1..5b0e914 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomAliasEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomAliasEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.alias")]
public class RoomAliasEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/RoomAvatarEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomAvatarEventData.cs
index e2263c8..601d014 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomAvatarEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomAvatarEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.avatar")]
public class RoomAvatarEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/RoomCreateEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomCreateEventData.cs
index 22df784..e409f3a 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomCreateEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomCreateEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.create")]
public class RoomCreateEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/RoomEncryptionEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomEncryptionEventData.cs
index 1d5ec2c..6ffa4c5 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomEncryptionEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomEncryptionEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.encryption")]
public class RoomEncryptionEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/RoomMemberEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomMemberEventData.cs
index a9d4710..da158f1 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomMemberEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomMemberEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.member")]
public class RoomMemberEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/RoomNameEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomNameEventData.cs
index 3002102..7cb881a 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomNameEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomNameEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.name")]
public class RoomNameEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/RoomPinnedEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomPinnedEventData.cs
index 16144bc..eb02cc7 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomPinnedEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomPinnedEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.pinned_events")]
public class RoomPinnedEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/RoomPowerLevelEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomPowerLevelEventData.cs
index 960c198..1a5d5f5 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomPowerLevelEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomPowerLevelEventData.cs
@@ -2,39 +2,39 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.power_levels")]
public class RoomPowerLevelEventContent : EventContent {
[JsonPropertyName("ban")]
- public long Ban { get; set; } // = 50;
+ public long? Ban { get; set; } // = 50;
[JsonPropertyName("events_default")]
public long EventsDefault { get; set; } // = 0;
[JsonPropertyName("events")]
- public Dictionary<string, long> Events { get; set; } // = null!;
+ public Dictionary<string, long>? Events { get; set; } // = null!;
[JsonPropertyName("invite")]
- public long Invite { get; set; } // = 50;
+ public long? Invite { get; set; } // = 50;
[JsonPropertyName("kick")]
- public long Kick { get; set; } // = 50;
+ public long? Kick { get; set; } // = 50;
[JsonPropertyName("notifications")]
- public NotificationsPL NotificationsPl { get; set; } // = null!;
+ public NotificationsPL? NotificationsPl { get; set; } // = null!;
[JsonPropertyName("redact")]
- public long Redact { get; set; } // = 50;
+ public long? Redact { get; set; } // = 50;
[JsonPropertyName("state_default")]
- public long StateDefault { get; set; } // = 50;
+ public long? StateDefault { get; set; } // = 50;
[JsonPropertyName("users")]
- public Dictionary<string, long> Users { get; set; } // = null!;
+ public Dictionary<string, long>? Users { get; set; } // = null!;
[JsonPropertyName("users_default")]
- public long UsersDefault { get; set; } // = 0;
+ public long? UsersDefault { get; set; } // = 0;
[Obsolete("Historical was a key related to MSC2716, a spec change on backfill that was dropped!", true)]
[JsonIgnore]
diff --git a/LibMatrix/StateEventTypes/Spec/RoomTopicEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomTopicEventData.cs
index 61d1a01..52c7e42 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomTopicEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomTopicEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.topic")]
[MatrixEvent(EventName = "org.matrix.msc3765.topic", Legacy = true)]
diff --git a/LibMatrix/StateEventTypes/Spec/RoomTypingEventData.cs b/LibMatrix/EventTypes/Spec/State/RoomTypingEventData.cs
index e935cb2..01cfacf 100644
--- a/LibMatrix/StateEventTypes/Spec/RoomTypingEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/RoomTypingEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.typing")]
public class RoomTypingEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/ServerACLEventData.cs b/LibMatrix/EventTypes/Spec/State/ServerACLEventData.cs
index 031d113..f18fe43 100644
--- a/LibMatrix/StateEventTypes/Spec/ServerACLEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/ServerACLEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.room.server_acl")]
public class ServerACLEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/SpaceChildEventData.cs b/LibMatrix/EventTypes/Spec/State/SpaceChildEventData.cs
index 80fc771..a13ba2e 100644
--- a/LibMatrix/StateEventTypes/Spec/SpaceChildEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/SpaceChildEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.space.child")]
public class SpaceChildEventContent : EventContent {
diff --git a/LibMatrix/StateEventTypes/Spec/SpaceParentEventData.cs b/LibMatrix/EventTypes/Spec/State/SpaceParentEventData.cs
index 1bc89ab..0ffa193 100644
--- a/LibMatrix/StateEventTypes/Spec/SpaceParentEventData.cs
+++ b/LibMatrix/EventTypes/Spec/State/SpaceParentEventData.cs
@@ -2,7 +2,7 @@ using System.Text.Json.Serialization;
using LibMatrix.Helpers;
using LibMatrix.Interfaces;
-namespace LibMatrix.StateEventTypes.Spec;
+namespace LibMatrix.EventTypes.Spec.State;
[MatrixEvent(EventName = "m.space.parent")]
public class SpaceParentEventContent : EventContent {
|