package service import ( "context" "time" ) type Redis interface { Lock(ctx context.Context, key string, ttl time.Duration) (func(context.Context), error) Set(key string, value []byte, ttl time.Duration) error Get(key string) ([]byte, error) } type Grib interface { Update(ctx context.Context) error }