diff --git a/internal/agent/workers.go b/internal/agent/workers.go index 494d448b..5481e7fe 100644 --- a/internal/agent/workers.go +++ b/internal/agent/workers.go @@ -23,6 +23,13 @@ type Worker[T any] interface { Start(ctx context.Context) (<-chan T, error) } +// WorkerWithPreferences represents a worker that has preferences that can be +// set by a user. +type WorkerWithPreferences[T any, P any] interface { + Worker[T] + DefaultPreferences() P +} + // SensorWorker is a worker that produces sensors. In addition to the base // worker methods, it has a function to generate a list of sensor values. type SensorWorker interface {