sharp-chat/SharpChatCommon/Messages/MessageStorage.cs

29 lines
767 B
C#

namespace SharpChat.Messages;
public interface MessageStorage {
Task LogMessage(Message msg);
Task LogMessage(
long id,
string type,
string channelName,
string senderId,
string senderName,
ColourInheritable senderColour,
int senderRank,
string senderNick,
UserPermissions senderPerms,
object? data = null
);
Task DeleteMessage(Message msg);
Task<Message?> GetMessage(long id);
Task<long> CountMessages(
string? channelName = null,
bool includeDeleted = false
);
Task<IEnumerable<Message>> GetMessages(
string? channelName = null,
int? take = 20,
long? beforeId = null,
bool includeDeleted = false
);
}