class Tapioca::Gem::Listeners::SorbetHelpers

def ignore?(event)

: (NodeAdded event) -> bool
@override
def ignore?(event)
  event.is_a?(Tapioca::Gem::ForeignScopeNodeAdded)
end

def on_scope(event)

: (ScopeNodeAdded event) -> void
@override
def on_scope(event)
  constant = event.constant
  node = event.node
  abstract_type = abstract_type_of(constant)
  node << RBI::Helper.new(abstract_type.to_s) if abstract_type
  node << RBI::Helper.new("final") if final_module?(constant)
  node << RBI::Helper.new("sealed") if sealed_module?(constant)
end