class Dependabot::Package::ReleaseCooldownOptions

def excluded?(dependency_name)

def excluded?(dependency_name)
  @exclude.any? { |pattern| File.fnmatch?(pattern, dependency_name) }
end

def included?(dependency_name)

def included?(dependency_name)
  return false if dependency_name.empty? || excluded?(dependency_name)
  @include.empty? || @include.any? { |pattern| File.fnmatch?(pattern, dependency_name) }
end

def initialize(

def initialize(
  default_days: 0, semver_major_days: 0, semver_minor_days: 0, semver_patch_days: 0,
  include: [], exclude: []
)
  default_days ||= 0
  semver_major_days ||= 0
  semver_minor_days ||= 0
  semver_patch_days ||= 0
  include ||= []
  exclude ||= []
  @default_days = T.let(default_days, Integer)
  @semver_major_days = T.let(semver_major_days.positive? ? semver_major_days : default_days, Integer)
  @semver_minor_days = T.let(semver_minor_days.positive? ? semver_minor_days : default_days, Integer)
  @semver_patch_days = T.let(semver_patch_days.positive? ? semver_patch_days : default_days, Integer)
  @include = T.let(include.to_set, T::Set[String])
  @exclude = T.let(exclude.to_set, T::Set[String])
end