# sig/crispr/cli.rbs

class Crispr::CLI
  def self.run: () -> untyped
end


# sig/crispr/mutations/arithmetic.rbs

class Crispr::Mutations::Arithmetic < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/array.rbs

class Crispr::Mutations::Array < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/assignment.rbs

class Crispr::Mutations::Assignment < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/base.rbs

class Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/block.rbs

class Crispr::Mutations::Block < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/boolean.rbs

class Crispr::Mutations::Boolean < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/comparison.rbs

class Crispr::Mutations::Comparison < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/conditional.rbs

class Crispr::Mutations::Conditional < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/control_flow.rbs

class Crispr::Mutations::ControlFlow < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/hash.rbs

class Crispr::Mutations::Hash < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/literal.rbs

class Crispr::Mutations::Literal < Crispr::Mutations::Base
  def mutations_for: () -> untyped
  def replace_literal: () -> untyped
end


# sig/crispr/mutations/logical.rbs

class Crispr::Mutations::Logical < Crispr::Mutations::Base
  def mutate_logical: () -> untyped
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/method_call.rbs

class Crispr::Mutations::MethodCall < Crispr::Mutations::Base
  def match?: () -> untyped
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/numeric.rbs

class Crispr::Mutations::Numeric < Crispr::Mutations::Base
  def mutations_for: () -> untyped
  def replace: () -> untyped
end


# sig/crispr/mutations/range.rbs

class Crispr::Mutations::Range < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/regexp.rbs

class Crispr::Mutations::Regexp < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/rescue.rbs

class Crispr::Mutations::Rescue < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/string.rbs

class Crispr::Mutations::String < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/symbol.rbs

class Crispr::Mutations::Symbol < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/ternary.rbs

class Crispr::Mutations::Ternary < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutations/unary.rbs

class Crispr::Mutations::Unary < Crispr::Mutations::Base
  def mutations_for: () -> untyped
end


# sig/crispr/mutator.rbs

class Crispr::Mutator
  def find_mutations: () -> untyped
  def initialize: () -> void
  def mutations: () -> untyped
end


# sig/crispr/reporter.rbs

class Crispr::Reporter
  def initialize: () -> void
  def record: () -> untyped
  def score: () -> untyped
  def summary: () -> untyped
end


# sig/crispr/runner.rbs

class Crispr::Runner
  def self.run_mutation: () -> untyped
end
