1package logging
2
3import (
4 "context"
5
6 "github.com/kujtimiihoxha/termai/internal/pubsub"
7)
8
9type Interface interface {
10 Debug(msg string, args ...any)
11 Info(msg string, args ...any)
12 Warn(msg string, args ...any)
13 Error(msg string, args ...any)
14 Subscribe(ctx context.Context) <-chan pubsub.Event[LogMessage]
15
16 PersistDebug(msg string, args ...any)
17 PersistInfo(msg string, args ...any)
18 PersistWarn(msg string, args ...any)
19 PersistError(msg string, args ...any)
20 List() []LogMessage
21
22 SetLevel(level string)
23}