24 lines
1.5 KiB
Go
24 lines
1.5 KiB
Go
package store
|
|
|
|
import (
|
|
"context"
|
|
|
|
"telesrv/internal/domain"
|
|
)
|
|
|
|
// MessageStore 持久化账号视角下的消息。
|
|
type MessageStore interface {
|
|
Create(ctx context.Context, msg domain.Message) (domain.Message, error)
|
|
SendPrivateText(ctx context.Context, req domain.SendPrivateTextRequest) (domain.SendPrivateTextResult, error)
|
|
ForwardPrivateMessages(ctx context.Context, req domain.ForwardPrivateMessagesRequest) (domain.ForwardPrivateMessagesResult, error)
|
|
ReadHistory(ctx context.Context, req domain.ReadHistoryRequest) (domain.ReadHistoryResult, error)
|
|
ReadMessageContents(ctx context.Context, req domain.ReadMessageContentsRequest) (domain.ReadMessageContentsResult, error)
|
|
GetOutboxReadDate(ctx context.Context, req domain.OutboxReadDateRequest) (int, error)
|
|
SetMessageReactions(ctx context.Context, req domain.SetPrivateMessageReactionsRequest) (domain.PrivateMessageReactionsResult, error)
|
|
GetMessageReactions(ctx context.Context, req domain.PrivateMessageReactionsRequest) (domain.PrivateMessageReactionsResult, error)
|
|
EditMessage(ctx context.Context, req domain.EditMessageRequest) (domain.EditMessageResult, error)
|
|
DeleteMessages(ctx context.Context, req domain.DeleteMessagesRequest) (domain.DeleteMessagesResult, error)
|
|
DeleteHistory(ctx context.Context, req domain.DeleteHistoryRequest) (domain.DeleteMessagesResult, error)
|
|
GetByIDs(ctx context.Context, userID int64, ids []int) (domain.MessageList, error)
|
|
ListByUser(ctx context.Context, userID int64, filter domain.MessageFilter) (domain.MessageList, error)
|
|
}
|