# typed: true

# DO NOT EDIT MANUALLY
# This is an autogenerated file for types exported from the `date` gem.
# Please instead update this file by running `bin/tapioca gem date`.


class Date
  include ::Comparable
  include ::DateAndTime::Zones
  include ::DateAndTime::Calculations

  # call-seq:
  #   infinite? -> false
  #
  # Returns +false+
  #
  # @return [Boolean]
  #
  # source://date//lib/date.rb#13
  def infinite?; end
end

class Date::Infinity < ::Numeric
  # @return [Infinity] a new instance of Infinity
  #
  # source://date//lib/date.rb#19
  def initialize(d = T.unsafe(nil)); end

  # source://date//lib/date.rb#33
  def +@; end

  # source://date//lib/date.rb#32
  def -@; end

  # source://date//lib/date.rb#35
  def <=>(other); end

  # source://date//lib/date.rb#30
  def abs; end

  # source://date//lib/date.rb#51
  def coerce(other); end

  # @return [Boolean]
  #
  # source://date//lib/date.rb#26
  def finite?; end

  # @return [Boolean]
  #
  # source://date//lib/date.rb#27
  def infinite?; end

  # @return [Boolean]
  #
  # source://date//lib/date.rb#28
  def nan?; end

  # source://date//lib/date.rb#59
  def to_f; end

  # @return [Boolean]
  #
  # source://date//lib/date.rb#25
  def zero?; end

  protected

  # source://date//lib/date.rb#21
  def d; end
end

# source://date//lib/date.rb#7
Date::VERSION = T.let(T.unsafe(nil), String)
