2025-04-27 01:54:46 +00:00
|
|
|
namespace SharpChat.Messages;
|
|
|
|
|
|
|
|
public interface MessageStorage {
|
2025-04-29 15:43:31 +00:00
|
|
|
Task LogMessage(Message msg);
|
2025-04-27 01:54:46 +00:00
|
|
|
Task LogMessage(
|
2025-04-27 22:31:35 +00:00
|
|
|
long id,
|
2025-04-27 01:54:46 +00:00
|
|
|
string type,
|
|
|
|
string channelName,
|
|
|
|
string senderId,
|
|
|
|
string senderName,
|
|
|
|
ColourInheritable senderColour,
|
|
|
|
int senderRank,
|
|
|
|
string senderNick,
|
|
|
|
UserPermissions senderPerms,
|
2025-04-27 18:45:32 +00:00
|
|
|
object? data = null
|
2025-04-27 01:54:46 +00:00
|
|
|
);
|
2025-04-27 22:31:35 +00:00
|
|
|
Task DeleteMessage(Message msg);
|
|
|
|
Task<Message?> GetMessage(long id);
|
2025-04-29 15:43:31 +00:00
|
|
|
Task<long> CountMessages(
|
|
|
|
string? channelName = null,
|
|
|
|
bool includeDeleted = false
|
|
|
|
);
|
2025-04-29 12:50:32 +00:00
|
|
|
Task<IEnumerable<Message>> GetMessages(
|
|
|
|
string? channelName = null,
|
|
|
|
int? take = 20,
|
|
|
|
long? beforeId = null,
|
|
|
|
bool includeDeleted = false
|
|
|
|
);
|
2025-04-27 01:54:46 +00:00
|
|
|
}
|