module Dependabot::SimpleInstrumentor

def instrument(name, params = {}, &block)

def instrument(name, params = {}, &block)
  @subscribers&.each { |s| s.call(name, params) }
  yield if block
end

def subscribe(&block)

def subscribe(&block)
  @subscribers ||= T.let(
    [],
    T.nilable(T::Array[T.proc.params(name: String, params: T::Hash[Symbol, T.untyped]).void])
  )
  @subscribers << block
end