Files
libredesk/internal/notification/notification.go
T
Abhinav Raut 06db29f7f3 refactor.
2024-08-11 03:52:05 +05:30

23 lines
677 B
Go

package notifier
// Notifier defines the interface for sending notifications.
type Notifier interface {
SendMessage(userIDs []int, subject, content string) error
SendAssignedConversationNotification(userIDs []int, convUUID string) error
}
// TemplateRenderer defines the interface for rendering templates.
type TemplateRenderer interface {
RenderDefault(data map[string]string) (content string, err error)
}
// UserEmailFetcher defines the interface for fetching user email addresses.
type UserEmailFetcher interface {
GetEmail(id int, uuid string) (string, error)
}
// UserStore defines the interface for the user store.
type UserStore interface {
UserEmailFetcher
}