code: func NewREST(optsGetter generic.RESTOptionsGetter) *REST {
  	store := &genericregistry.Store{
  		NewFunc:     func() runtime.Object { return &auditregistration.AuditSink{} },
  		NewListFunc: func() runtime.Object { return &auditregistration.AuditSinkList{} },
  		ObjectNameFunc: func(obj runtime.Object) (string, error) {
  			return obj.(*auditregistration.AuditSink).Name, nil
  		},
  		DefaultQualifiedResource: auditregistration.Resource("auditsinks"),
  
  		CreateStrategy: auditstrategy.Strategy,
  		UpdateStrategy: auditstrategy.Strategy,
  		DeleteStrategy: auditstrategy.Strategy,
  	}
  	options := &generic.StoreOptions{RESTOptions: optsGetter}
  	if err := store.CompleteWithOptions(options); err != nil {
  		panic(err) // TODO: Propagate error up
  	}
  	return &REST{store}
  }
docs: // NewREST returns a RESTStorage object that will work against audit sinks