# sig/cucumber/cucumber_expressions/errors.rbs

class Cucumber::CucumberExpressions::AmbiguousParameterTypeError < Cucumber::CucumberExpressions::CucumberExpressionError
  def expressions: () -> untyped
  def initialize: () -> void
  def parameter_type_names: () -> untyped
end


# sig/cucumber/cucumber_expressions/argument.rbs

class Cucumber::CucumberExpressions::Argument
  def self.build: () -> untyped
  def initialize: () -> void
  def value: () -> untyped
end


# sig/cucumber/cucumber_expressions/combinatorial_generated_expression_factory.rbs

class Cucumber::CucumberExpressions::CombinatorialGeneratedExpressionFactory
  def generate_expressions: () -> untyped
  def generate_permutations: () -> untyped
  def initialize: () -> void
end


# sig/cucumber/cucumber_expressions/cucumber_expression.rbs

class Cucumber::CucumberExpressions::CucumberExpression
  def build_capture_regexp: () -> untyped
  def check_no_parameter_type: () -> untyped
  def initialize: () -> void
  def match: () -> untyped
  def process_alternation: () -> untyped
  def process_escapes: () -> untyped
  def process_optional: () -> untyped
  def process_parameters: () -> untyped
  def regexp: () -> untyped
  def to_s: () -> untyped
end


# sig/cucumber/cucumber_expressions/cucumber_expression_generator.rbs

class Cucumber::CucumberExpressions::CucumberExpressionGenerator
  def create_parameter_type_matchers: () -> untyped
  def create_parameter_type_matchers2: () -> untyped
  def escape: () -> untyped
  def generate_expression: () -> untyped
  def generate_expressions: () -> untyped
  def initialize: () -> void
end


# sig/cucumber/cucumber_expressions/expression_factory.rbs

class Cucumber::CucumberExpressions::ExpressionFactory
  def create_expression: () -> untyped
  def initialize: () -> void
end


# sig/cucumber/cucumber_expressions/generated_expression.rbs

class Cucumber::CucumberExpressions::GeneratedExpression
  def get_parameter_name: () -> untyped
  def initialize: () -> void
  def parameter_names: () -> untyped
  def source: () -> untyped
end


# sig/cucumber/cucumber_expressions/group.rbs

class Cucumber::CucumberExpressions::Group
  def initialize: () -> void
  def values: () -> untyped
end


# sig/cucumber/cucumber_expressions/group_builder.rbs

class Cucumber::CucumberExpressions::GroupBuilder
  def add: () -> untyped
  def build: () -> untyped
  def capturing?: () -> untyped
  def children: () -> untyped
  def initialize: () -> void
  def move_children_to: () -> untyped
  def set_non_capturing!: () -> untyped
end


# sig/cucumber/cucumber_expressions/parameter_type.rbs

class Cucumber::CucumberExpressions::ParameterType
  def self.check_parameter_type_name: () -> untyped
  def <=>: () -> untyped
  def initialize: () -> void
  def prefer_for_regexp_match?: () -> untyped
  def regexp_source: () -> untyped
  def string_array: () -> untyped
  def transform: () -> untyped
  def use_for_snippets?: () -> untyped
end


# sig/cucumber/cucumber_expressions/parameter_type_matcher.rbs

class Cucumber::CucumberExpressions::ParameterTypeMatcher
  def <=>: () -> untyped
  def advance_to: () -> untyped
  def find: () -> untyped
  def full_word?: () -> untyped
  def group: () -> untyped
  def initialize: () -> void
  def space_after_match_or_sentence_end?: () -> untyped
  def space_before_match_or_sentence_start?: () -> untyped
  def start: () -> untyped
end


# sig/cucumber/cucumber_expressions/parameter_type_registry.rbs

class Cucumber::CucumberExpressions::ParameterTypeRegistry
  def define_parameter_type: () -> untyped
  def initialize: () -> void
  def lookup_by_regexp: () -> untyped
  def lookup_by_type_name: () -> untyped
  def parameter_types: () -> untyped
end


# sig/cucumber/cucumber_expressions/regular_expression.rbs

class Cucumber::CucumberExpressions::RegularExpression
  def initialize: () -> void
  def match: () -> untyped
  def regexp: () -> untyped
  def source: () -> untyped
  def to_s: () -> untyped
end


# sig/cucumber/cucumber_expressions/tree_regexp.rbs

class Cucumber::CucumberExpressions::TreeRegexp
  def create_group_builder: () -> untyped
  def initialize: () -> void
  def is_non_capturing: () -> untyped
  def match: () -> untyped
end


# sig/cucumber/cucumber_expressions/errors.rbs

class Cucumber::CucumberExpressions::UndefinedParameterTypeError < Cucumber::CucumberExpressions::CucumberExpressionError
  def initialize: () -> void
end
