go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/_motor/providers/watcher.go (about)

     1  // Copyright (c) Mondoo, Inc.
     2  // SPDX-License-Identifier: BUSL-1.1
     3  
     4  package providers
     5  
     6  type ObservableType int
     7  
     8  const (
     9  	FileType ObservableType = iota
    10  	CommandType
    11  )
    12  
    13  type Observable interface {
    14  	Type() ObservableType
    15  	ID() string
    16  }
    17  
    18  type Watcher interface {
    19  	Subscribe(typ string, id string, observable func(Observable)) error
    20  	Unsubscribe(typ string, id string) error
    21  	TearDown() error
    22  }