namespace SharpChat.EventStorage; public interface EventStorage { Task AddEvent( long id, string type, string channelName, string senderId, string senderName, ColourInheritable senderColour, int senderRank, string senderNick, UserPermissions senderPerms, object? data = null, StoredEventFlags flags = StoredEventFlags.None ); Task RemoveEvent(StoredEventInfo evt); Task<StoredEventInfo?> GetEvent(long seqId); Task<IEnumerable<StoredEventInfo>> GetChannelEventLog(string channelName, int amount = 20, int offset = 0); }