Versions in this module Expand all Collapse all v0 v0.1.0 Aug 30, 2026 Changes in this version + const DefaultMaxPageSize + const MinTokenLen + type API struct + func New(opts Options) (*API, error) + func (a *API) ServeHTTP(w http.ResponseWriter, r *http.Request) + type CacheSource interface + Flush func() + FlushSubtree func(n dnsmsg.Name) int + Len func() int + Stats func() cache.Stats + type LogSource interface + Count func(ctx context.Context, f storage.Filter) (uint64, error) + Query func(ctx context.Context, f storage.Filter) ([]storage.QueryEntry, error) + TopDevices func(ctx context.Context, f storage.Filter, n int) ([]storage.Stat, error) + TopNames func(ctx context.Context, f storage.Filter, n int) ([]storage.Stat, error) + type MetricsSource interface + Snapshot func() metrics.Snapshot + type Options struct + AllowedOrigins []string + Cache CacheSource + Clock clock.Clock + ExposeLog bool + Log LogSource + Logger *slog.Logger + MaxPageSize int + Metrics MetricsSource + Policy PolicySource + ReadOnly bool + Token string + func (o Options) Validate() error + type PolicySource interface + Reload func(ctx context.Context) error + Stats func() (evaluated, blocked uint64)