Versions in this module Expand all Collapse all v0 v0.1.0 May 12, 2026 Changes in this version + type Decoder func(body string) (T, error) + func JSONDecoder[T any]() Decoder[T] + type Handler = func(context.Context, events.SQSEvent) (events.SQSEventResponse, error) + func NewHandler[T any, V any](p *pipeline.Pipeline[T, V], decode Decoder[T], opts ...HandlerOption[T]) (Handler, error) + type HandlerOption func(*handlerConfig[T]) + func WithClock[T any](now func() time.Time) HandlerOption[T] + func WithDecodeErrorCallback[T any](fn func(body string, messageID string, err error)) HandlerOption[T] + func WithDedup[T any](d state.Deduper) HandlerOption[T] + func WithEventID[T any](fn func(msg *events.SQSMessage, decoded T) string) HandlerOption[T] + func WithMaxAttempts[T any](n int) HandlerOption[T] + func WithMetrics[T any](r metrics.Recorder) HandlerOption[T] + func WithRetryBackoff[T any](base, max time.Duration) HandlerOption[T]