# typed: true

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


module JSONSchemer
  class << self
    def configuration; end
    def configure; end
    def draft201909; end
    def draft202012; end
    def draft4; end
    def draft6; end
    def draft7; end
    def openapi(document, **options); end
    def openapi30; end
    def openapi30_document; end
    def openapi31; end
    def openapi31_document; end
    def schema(schema, **options); end
    def valid_schema?(schema, **options); end
    def validate_schema(schema, **options); end

    private

    def meta_schema(schema, options); end
    def resolve(schema, options); end
  end
end

JSONSchemer::CATCHALL = T.let(T.unsafe(nil), String)
JSONSchemer::CLASSIC_ERROR_TYPES = T.let(T.unsafe(nil), Hash)
class JSONSchemer::CachedRefResolver < ::JSONSchemer::CachedResolver; end

class JSONSchemer::CachedResolver
  def initialize(&resolver); end

  def call(*args); end
end

class JSONSchemer::Configuration < ::Struct
  def initialize(base_uri: T.unsafe(nil), meta_schema: T.unsafe(nil), vocabulary: T.unsafe(nil), format: T.unsafe(nil), formats: T.unsafe(nil), content_encodings: T.unsafe(nil), content_media_types: T.unsafe(nil), keywords: T.unsafe(nil), before_property_validation: T.unsafe(nil), after_property_validation: T.unsafe(nil), insert_property_defaults: T.unsafe(nil), property_default_resolver: T.unsafe(nil), ref_resolver: T.unsafe(nil), regexp_resolver: T.unsafe(nil), output_format: T.unsafe(nil), resolve_enumerators: T.unsafe(nil), access_mode: T.unsafe(nil)); end

  def access_mode; end
  def access_mode=(_); end
  def after_property_validation; end
  def after_property_validation=(_); end
  def base_uri; end
  def base_uri=(_); end
  def before_property_validation; end
  def before_property_validation=(_); end
  def content_encodings; end
  def content_encodings=(_); end
  def content_media_types; end
  def content_media_types=(_); end
  def format; end
  def format=(_); end
  def formats; end
  def formats=(_); end
  def insert_property_defaults; end
  def insert_property_defaults=(_); end
  def keywords; end
  def keywords=(_); end
  def meta_schema; end
  def meta_schema=(_); end
  def output_format; end
  def output_format=(_); end
  def property_default_resolver; end
  def property_default_resolver=(_); end
  def ref_resolver; end
  def ref_resolver=(_); end
  def regexp_resolver; end
  def regexp_resolver=(_); end
  def resolve_enumerators; end
  def resolve_enumerators=(_); end
  def vocabulary; end
  def vocabulary=(_); end

  class << self
    def [](*_arg0); end
    def inspect; end
    def keyword_init?; end
    def members; end
    def new(*_arg0); end
  end
end

module JSONSchemer::ContentEncoding; end
JSONSchemer::ContentEncoding::BASE64 = T.let(T.unsafe(nil), Proc)
module JSONSchemer::ContentMediaType; end
JSONSchemer::ContentMediaType::JSON = T.let(T.unsafe(nil), Proc)
module JSONSchemer::Draft201909; end
JSONSchemer::Draft201909::BASE_URI = T.let(T.unsafe(nil), URI::HTTPS)
JSONSchemer::Draft201909::CONTENT_ENCODINGS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::CONTENT_MEDIA_TYPES = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::FORMATS = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft201909::Meta; end
JSONSchemer::Draft201909::Meta::APPLICATOR = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Meta::CONTENT = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Meta::CORE = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Meta::FORMAT = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Meta::META_DATA = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Meta::SCHEMAS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Meta::VALIDATION = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::SCHEMA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft201909::Vocab; end
JSONSchemer::Draft201909::Vocab::APPLICATOR = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft201909::Vocab::Applicator; end

class JSONSchemer::Draft201909::Vocab::Applicator::AdditionalItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft201909::Vocab::Applicator::Items < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft201909::Vocab::Applicator::UnevaluatedItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end

  private

  def collect_unevaluated_items(result, instance_location, unevaluated_items); end
end

JSONSchemer::Draft201909::Vocab::CONTENT = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Vocab::CORE = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft201909::Vocab::Core; end

class JSONSchemer::Draft201909::Vocab::Core::RecursiveAnchor < ::JSONSchemer::Keyword
  def parse; end
end

class JSONSchemer::Draft201909::Vocab::Core::RecursiveRef < ::JSONSchemer::Keyword
  def recursive_anchor; end
  def ref_schema; end
  def ref_uri; end
  def validate(instance, instance_location, keyword_location, context); end
end

JSONSchemer::Draft201909::Vocab::FORMAT = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Vocab::META_DATA = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft201909::Vocab::VALIDATION = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012; end
JSONSchemer::Draft202012::BASE_URI = T.let(T.unsafe(nil), URI::HTTPS)
JSONSchemer::Draft202012::CONTENT_ENCODINGS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::CONTENT_MEDIA_TYPES = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::FORMATS = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Meta; end
JSONSchemer::Draft202012::Meta::APPLICATOR = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::CONTENT = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::CORE = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::FORMAT_ANNOTATION = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::FORMAT_ASSERTION = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::META_DATA = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::SCHEMAS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::UNEVALUATED = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Meta::VALIDATION = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::SCHEMA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Vocab; end
JSONSchemer::Draft202012::Vocab::APPLICATOR = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Vocab::Applicator; end

class JSONSchemer::Draft202012::Vocab::Applicator::AdditionalProperties < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def false_schema_error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::AllOf < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::AnyOf < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::Contains < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::Dependencies < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::DependentSchemas < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::Else < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::If < ::JSONSchemer::Keyword
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::Items < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::Not < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::OneOf < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::PatternProperties < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::PrefixItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::Properties < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::PropertyNames < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Applicator::Then < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

JSONSchemer::Draft202012::Vocab::CONTENT = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Vocab::CORE = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Vocab::Content; end

class JSONSchemer::Draft202012::Vocab::Content::ContentEncoding < ::JSONSchemer::Keyword
  def parse; end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Content::ContentMediaType < ::JSONSchemer::Keyword
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Content::ContentSchema < ::JSONSchemer::Keyword
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

module JSONSchemer::Draft202012::Vocab::Core; end

class JSONSchemer::Draft202012::Vocab::Core::Anchor < ::JSONSchemer::Keyword
  def parse; end
end

class JSONSchemer::Draft202012::Vocab::Core::Comment < ::JSONSchemer::Keyword; end

class JSONSchemer::Draft202012::Vocab::Core::Defs < ::JSONSchemer::Keyword
  def parse; end
end

class JSONSchemer::Draft202012::Vocab::Core::DynamicAnchor < ::JSONSchemer::Keyword
  def parse; end
end

class JSONSchemer::Draft202012::Vocab::Core::DynamicRef < ::JSONSchemer::Keyword
  def dynamic_anchor; end
  def ref_schema; end
  def ref_uri; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Core::Id < ::JSONSchemer::Keyword
  def parse; end
end

class JSONSchemer::Draft202012::Vocab::Core::Ref < ::JSONSchemer::Keyword
  def ref_schema; end
  def ref_uri; end
  def validate(instance, instance_location, keyword_location, context); end

  class << self
    def exclusive?; end
  end
end

class JSONSchemer::Draft202012::Vocab::Core::Schema < ::JSONSchemer::Keyword
  def parse; end
end

class JSONSchemer::Draft202012::Vocab::Core::UnknownKeyword < ::JSONSchemer::Keyword
  def fetch(token); end
  def parse; end
  def parsed_schema; end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Core::Vocabulary < ::JSONSchemer::Keyword
  def parse; end
end

class JSONSchemer::Draft202012::Vocab::Core::XError < ::JSONSchemer::Keyword
  def message(error_key); end
end

JSONSchemer::Draft202012::Vocab::FORMAT_ANNOTATION = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft202012::Vocab::FORMAT_ASSERTION = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Vocab::FormatAnnotation; end

class JSONSchemer::Draft202012::Vocab::FormatAnnotation::Format < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, _context); end
end

module JSONSchemer::Draft202012::Vocab::FormatAssertion; end

class JSONSchemer::Draft202012::Vocab::FormatAssertion::Format < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, _context); end
end

JSONSchemer::Draft202012::Vocab::META_DATA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Vocab::MetaData; end

class JSONSchemer::Draft202012::Vocab::MetaData::ReadOnly < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::MetaData::WriteOnly < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, context); end
end

JSONSchemer::Draft202012::Vocab::UNEVALUATED = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Vocab::Unevaluated; end

class JSONSchemer::Draft202012::Vocab::Unevaluated::UnevaluatedItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def false_schema_error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end

  private

  def collect_unevaluated_items(result, unevaluated_items); end
end

class JSONSchemer::Draft202012::Vocab::Unevaluated::UnevaluatedProperties < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def false_schema_error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end

  private

  def collect_evaluated_keys(result, evaluated_keys); end
end

JSONSchemer::Draft202012::Vocab::VALIDATION = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft202012::Vocab::Validation; end

class JSONSchemer::Draft202012::Vocab::Validation::Const < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::DependentRequired < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::Enum < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::ExclusiveMaximum < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::ExclusiveMinimum < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MaxContains < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MaxItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MaxLength < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MaxProperties < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::Maximum < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MinContains < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MinItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MinLength < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MinProperties < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::Minimum < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::MultipleOf < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::Pattern < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::Required < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, details:, **_arg2); end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft202012::Vocab::Validation::Type < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end

  private

  def valid_type(type, instance); end

  class << self
    def valid_integer?(instance); end
  end
end

class JSONSchemer::Draft202012::Vocab::Validation::UniqueItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

module JSONSchemer::Draft4; end
JSONSchemer::Draft4::BASE_URI = T.let(T.unsafe(nil), URI::HTTP)
JSONSchemer::Draft4::CONTENT_ENCODINGS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft4::CONTENT_MEDIA_TYPES = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft4::FORMATS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft4::SCHEMA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft4::Vocab; end
JSONSchemer::Draft4::Vocab::ALL = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft4::Vocab::Validation; end

class JSONSchemer::Draft4::Vocab::Validation::ExclusiveMaximum < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft4::Vocab::Validation::ExclusiveMinimum < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft4::Vocab::Validation::Type < ::JSONSchemer::Draft202012::Vocab::Validation::Type
  class << self
    def valid_integer?(instance); end
  end
end

module JSONSchemer::Draft6; end
JSONSchemer::Draft6::BASE_URI = T.let(T.unsafe(nil), URI::HTTP)
JSONSchemer::Draft6::CONTENT_ENCODINGS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft6::CONTENT_MEDIA_TYPES = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft6::FORMATS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft6::SCHEMA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft6::Vocab; end
JSONSchemer::Draft6::Vocab::ALL = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft7; end
JSONSchemer::Draft7::BASE_URI = T.let(T.unsafe(nil), URI::HTTP)
JSONSchemer::Draft7::CONTENT_ENCODINGS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft7::CONTENT_MEDIA_TYPES = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft7::FORMATS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Draft7::SCHEMA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft7::Vocab; end
JSONSchemer::Draft7::Vocab::ALL = T.let(T.unsafe(nil), Hash)
module JSONSchemer::Draft7::Vocab::Validation; end

class JSONSchemer::Draft7::Vocab::Validation::AdditionalItems < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def parse; end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft7::Vocab::Validation::ContentEncoding < ::JSONSchemer::Draft202012::Vocab::Content::ContentEncoding
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, _context); end
end

class JSONSchemer::Draft7::Vocab::Validation::ContentMediaType < ::JSONSchemer::Draft202012::Vocab::Content::ContentMediaType
  def error(formatted_instance_location:, **_arg1); end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::Draft7::Vocab::Validation::Ref < ::JSONSchemer::Draft202012::Vocab::Core::Ref
  class << self
    def exclusive?; end
  end
end

class JSONSchemer::EcmaRegexp
  class << self
    def ruby_equivalent(pattern); end
  end
end

JSONSchemer::EcmaRegexp::RUBY_EQUIVALENTS = T.let(T.unsafe(nil), Hash)
class JSONSchemer::EcmaRegexp::Syntax < ::Regexp::Syntax::Base; end
JSONSchemer::EcmaRegexp::Syntax::SYNTAX = JSONSchemer::EcmaRegexp::Syntax

module JSONSchemer::Errors
  class << self
    def pretty(error); end
  end
end

JSONSchemer::FILE_URI_REF_RESOLVER = T.let(T.unsafe(nil), Proc)

module JSONSchemer::Format
  extend ::JSONSchemer::Format::Duration
  extend ::JSONSchemer::Format::Email
  extend ::JSONSchemer::Format::Hostname
  extend ::JSONSchemer::Format::JSONPointer
  extend ::JSONSchemer::Format::URITemplate

  class << self
    def iri_escape(data); end
    def parse_uri_scheme(data); end
    def percent_encode(data, regexp); end
    def valid_date_time?(data); end
    def valid_ip?(data, family); end
    def valid_regex?(data); end
    def valid_uri?(data); end
    def valid_uri_reference?(data); end
    def valid_uuid?(data); end
  end
end

JSONSchemer::Format::BINARY_TO_PERCENT_ENCODED = T.let(T.unsafe(nil), Hash)
JSONSchemer::Format::DATE = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::DATE_TIME = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::DATE_TIME_OFFSET_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::DATE_TIME_SEPARATOR_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::DURATION = T.let(T.unsafe(nil), Proc)

module JSONSchemer::Format::Duration
  def valid_duration?(data); end
end

JSONSchemer::Format::Duration::DURATION = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DURATION_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Duration::DUR_DATE = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_DAY = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_HOUR = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_MINUTE = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_MONTH = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_SECOND = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_TIME = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_WEEK = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Duration::DUR_YEAR = T.let(T.unsafe(nil), String)
JSONSchemer::Format::EMAIL = T.let(T.unsafe(nil), Proc)

module JSONSchemer::Format::Email
  def valid_email?(data); end
end

JSONSchemer::Format::Email::ADDRESS_LITERAL = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::ATOM = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::A_TEXT = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::DOT_STRING = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::EMAIL_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Email::LOCAL_PART = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::MAILBOX = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::QUOTED_PAIR_SMTP = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::QUOTED_STRING = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::Q_CONTENT_SMTP = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::Q_TEXT_SMTP = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Email::UTF8_NON_ASCII = T.let(T.unsafe(nil), String)
JSONSchemer::Format::HOSTNAME = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::HOUR_24_REGEX = T.let(T.unsafe(nil), Regexp)

module JSONSchemer::Format::Hostname
  def valid_hostname?(data); end
end

JSONSchemer::Format::Hostname::ARABIC_EXTENDED_DIGITS_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Hostname::ARABIC_INDIC_DIGITS_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Hostname::CONTEXT_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Hostname::EXCEPTIONS_DISALLOWED = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::EXCEPTIONS_PVALID = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::GREEK_LOWER_NUMERAL_SIGN = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::HEBREW_PUNCTUATION = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::HOSTNAME_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Hostname::JOINING_TYPE_D_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::JOINING_TYPE_L_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::JOINING_TYPE_R_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::JOINING_TYPE_T_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::KATAKANA_MIDDLE_DOT_CONTEXT_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Hostname::KATAKANA_MIDDLE_DOT_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Hostname::LABEL_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::LABEL_REGEX_STRING = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::LABEL_SEPARATOR_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::LABEL_SEPARATOR_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::Hostname::LEADING_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::LETTER_DIGITS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::MARKS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::MAX_A_LABEL_SIZE = T.let(T.unsafe(nil), Integer)
JSONSchemer::Format::Hostname::MAX_HOSTNAME_SIZE = T.let(T.unsafe(nil), Integer)
JSONSchemer::Format::Hostname::MIDDLE_DOT = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::VIRAMA_CHARACTER_CLASS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::ZERO_WIDTH_NON_JOINER_JOINING_TYPE = T.let(T.unsafe(nil), String)
JSONSchemer::Format::Hostname::ZERO_WIDTH_VIRAMA = T.let(T.unsafe(nil), String)
JSONSchemer::Format::IDN_EMAIL = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::IDN_HOSTNAME = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::INVALID_QUERY_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::IPV4 = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::IPV6 = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::IP_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::IRI = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::IRI_ESCAPE_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::IRI_REFERENCE = T.let(T.unsafe(nil), Proc)

module JSONSchemer::Format::JSONPointer
  def valid_json_pointer?(data); end
  def valid_relative_json_pointer?(data); end
end

JSONSchemer::Format::JSONPointer::JSON_POINTER_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::JSONPointer::JSON_POINTER_REGEX_STRING = T.let(T.unsafe(nil), String)
JSONSchemer::Format::JSONPointer::RELATIVE_JSON_POINTER_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::JSON_POINTER = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::LEAP_SECOND_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::NIL_UUID = T.let(T.unsafe(nil), String)
JSONSchemer::Format::REGEX = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::RELATIVE_JSON_POINTER = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::TIME = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::URI = T.let(T.unsafe(nil), Proc)

module JSONSchemer::Format::URITemplate
  def valid_uri_template?(data); end
end

JSONSchemer::Format::URITemplate::EXPLODE = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::EXPRESSION = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::LITERALS = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::MAX_LENGTH = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::MODIFIER_LEVEL4 = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::OPERATOR = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::PCT_ENCODED = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::PREFIX = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::URI_TEMPLATE = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::URI_TEMPLATE_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::Format::URITemplate::VARCHAR = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::VARIABLE_LIST = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::VARNAME = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URITemplate::VARSPEC = T.let(T.unsafe(nil), String)
JSONSchemer::Format::URI_REFERENCE = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::URI_TEMPLATE = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::UUID = T.let(T.unsafe(nil), Proc)
JSONSchemer::Format::UUID_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::I18N_ERRORS_SCOPE = T.let(T.unsafe(nil), String)
JSONSchemer::I18N_SCOPE = T.let(T.unsafe(nil), String)
JSONSchemer::I18N_SEPARATOR = T.let(T.unsafe(nil), String)
class JSONSchemer::InvalidEcmaRegexp < ::StandardError; end
class JSONSchemer::InvalidFileURI < ::StandardError; end
class JSONSchemer::InvalidRefPointer < ::StandardError; end
class JSONSchemer::InvalidRefResolution < ::StandardError; end
class JSONSchemer::InvalidRegexpResolution < ::StandardError; end

class JSONSchemer::Keyword
  include ::JSONSchemer::Output

  def initialize(value, parent, keyword, schema = T.unsafe(nil)); end

  def absolute_keyword_location; end
  def error_key; end
  def fetch(key); end
  def parent; end
  def parsed; end
  def parsed_schema; end
  def root; end
  def schema_pointer; end
  def validate(_instance, _instance_location, _keyword_location, _context); end
  def value; end

  private

  def parse; end
  def subschema(value, keyword = T.unsafe(nil), **options); end
end

module JSONSchemer::Location
  class << self
    def escape_json_pointer_token(token); end
    def join(location, name); end
    def resolve(location); end
    def root; end
  end
end

JSONSchemer::Location::JSON_POINTER_TOKEN_ESCAPE_CHARS = T.let(T.unsafe(nil), Hash)
JSONSchemer::Location::JSON_POINTER_TOKEN_ESCAPE_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::META_SCHEMAS_BY_BASE_URI_STR = T.let(T.unsafe(nil), Hash)
JSONSchemer::META_SCHEMA_CALLABLES_BY_BASE_URI_STR = T.let(T.unsafe(nil), Hash)

class JSONSchemer::OpenAPI
  def initialize(document, **options); end

  def ref(value); end
  def schema(name); end
  def valid?; end
  def validate(**options); end
end

module JSONSchemer::OpenAPI30; end
JSONSchemer::OpenAPI30::BASE_URI = T.let(T.unsafe(nil), URI::Generic)
module JSONSchemer::OpenAPI30::Document; end
JSONSchemer::OpenAPI30::Document::SCHEMA = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI30::Document::SCHEMAS = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI30::FORMATS = T.let(T.unsafe(nil), Hash)
module JSONSchemer::OpenAPI30::Meta; end
JSONSchemer::OpenAPI30::Meta::SCHEMAS = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI30::SCHEMA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::OpenAPI30::Vocab; end
JSONSchemer::OpenAPI30::Vocab::BASE = T.let(T.unsafe(nil), Hash)
module JSONSchemer::OpenAPI30::Vocab::Base; end

class JSONSchemer::OpenAPI30::Vocab::Base::Type < ::JSONSchemer::Draft4::Vocab::Validation::Type
  def parse; end
end

module JSONSchemer::OpenAPI31; end
JSONSchemer::OpenAPI31::BASE_URI = T.let(T.unsafe(nil), URI::HTTPS)

module JSONSchemer::OpenAPI31::Document
  class << self
    def dialect_schema(dialect); end
  end
end

JSONSchemer::OpenAPI31::Document::DEFAULT_DIALECT = T.let(T.unsafe(nil), String)
JSONSchemer::OpenAPI31::Document::DIALECTS = T.let(T.unsafe(nil), Array)
JSONSchemer::OpenAPI31::Document::OTHER_DIALECTS = T.let(T.unsafe(nil), Array)
JSONSchemer::OpenAPI31::Document::SCHEMA = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI31::Document::SCHEMAS = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI31::Document::SCHEMA_BASE = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI31::FORMATS = T.let(T.unsafe(nil), Hash)
module JSONSchemer::OpenAPI31::Meta; end
JSONSchemer::OpenAPI31::Meta::BASE = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI31::Meta::SCHEMAS = T.let(T.unsafe(nil), Hash)
JSONSchemer::OpenAPI31::SCHEMA = T.let(T.unsafe(nil), Hash)
module JSONSchemer::OpenAPI31::Vocab; end
JSONSchemer::OpenAPI31::Vocab::BASE = T.let(T.unsafe(nil), Hash)
module JSONSchemer::OpenAPI31::Vocab::Base; end

class JSONSchemer::OpenAPI31::Vocab::Base::AllOf < ::JSONSchemer::Draft202012::Vocab::Applicator::AllOf
  def skip_ref_once; end
  def skip_ref_once=(_arg0); end
  def validate(instance, instance_location, keyword_location, context); end
end

class JSONSchemer::OpenAPI31::Vocab::Base::AnyOf < ::JSONSchemer::Draft202012::Vocab::Applicator::AnyOf
  def validate(*_arg0); end
end

class JSONSchemer::OpenAPI31::Vocab::Base::Discriminator < ::JSONSchemer::Keyword
  def error(formatted_instance_location:, **_arg1); end
  def mapping; end
  def skip_ref_once; end
  def skip_ref_once=(_arg0); end
  def subschemas_by_property_value; end
  def validate(instance, instance_location, keyword_location, context); end
end

JSONSchemer::OpenAPI31::Vocab::Base::Discriminator::FIXED_FIELD_REGEX = T.let(T.unsafe(nil), Regexp)

class JSONSchemer::OpenAPI31::Vocab::Base::OneOf < ::JSONSchemer::Draft202012::Vocab::Applicator::OneOf
  def validate(*_arg0); end
end

module JSONSchemer::Output
  def keyword; end
  def schema; end
  def x_error; end

  private

  def deep_stringify_keys(obj); end
  def escaped_keyword; end
  def fragment_encode(location); end
  def join_location(location, keyword); end
  def result(instance, instance_location, keyword_location, valid, nested = T.unsafe(nil), type: T.unsafe(nil), annotation: T.unsafe(nil), details: T.unsafe(nil), ignore_nested: T.unsafe(nil)); end
  def stringify(key); end
end

JSONSchemer::Output::FRAGMENT_ENCODE_REGEX = T.let(T.unsafe(nil), Regexp)

class JSONSchemer::Resources
  def initialize; end

  def [](uri); end
  def []=(uri, resource); end
  def fetch(uri); end
  def key?(uri); end
end

class JSONSchemer::Result < ::Struct
  def annotation; end
  def annotation=(_); end
  def basic; end
  def classic; end
  def detailed; end
  def details; end
  def details=(_); end
  def error; end
  def flag; end
  def i18n!; end
  def i18n?; end
  def ignore_nested; end
  def ignore_nested=(_); end
  def insert_property_defaults(context); end
  def instance; end
  def instance=(_); end
  def instance_location; end
  def instance_location=(_); end
  def keyword_location; end
  def keyword_location=(_); end
  def nested; end
  def nested=(_); end
  def nested_key; end
  def nested_key=(_); end
  def output(output_format); end
  def source; end
  def source=(_); end
  def to_classic; end
  def to_output_unit; end
  def type; end
  def type=(_); end
  def valid; end
  def valid=(_); end
  def verbose; end

  private

  def default_keyword_instance(schema); end
  def formatted_instance_location; end
  def interpolation_variables; end
  def resolved_instance_location; end
  def resolved_keyword_location; end

  class << self
    def [](*_arg0); end
    def inspect; end
    def keyword_init?; end
    def members; end
    def new(*_arg0); end
  end
end

class JSONSchemer::Schema
  include ::JSONSchemer::Output
  extend ::Forwardable

  def initialize(value, parent = T.unsafe(nil), root = T.unsafe(nil), keyword = T.unsafe(nil), configuration: T.unsafe(nil), base_uri: T.unsafe(nil), meta_schema: T.unsafe(nil), vocabulary: T.unsafe(nil), format: T.unsafe(nil), formats: T.unsafe(nil), content_encodings: T.unsafe(nil), content_media_types: T.unsafe(nil), keywords: T.unsafe(nil), before_property_validation: T.unsafe(nil), after_property_validation: T.unsafe(nil), insert_property_defaults: T.unsafe(nil), property_default_resolver: T.unsafe(nil), ref_resolver: T.unsafe(nil), regexp_resolver: T.unsafe(nil), output_format: T.unsafe(nil), resolve_enumerators: T.unsafe(nil), access_mode: T.unsafe(nil)); end

  def absolute_keyword_location; end
  def after_property_validation(*args, **_arg1, &block); end
  def base_uri; end
  def base_uri=(_arg0); end
  def before_property_validation(*args, **_arg1, &block); end
  def bundle; end
  def configuration; end
  def content_encodings(*args, **_arg1, &block); end
  def content_media_types(*args, **_arg1, &block); end
  def custom_keywords(*args, **_arg1, &block); end
  def defs_keyword; end
  def error(formatted_instance_location:, **options); end
  def error_key; end
  def fetch(key); end
  def fetch_content_encoding(content_encoding, *args, &block); end
  def fetch_content_media_type(content_media_type, *args, &block); end
  def fetch_format(format, *args, &block); end
  def format(*args, **_arg1, &block); end
  def formats(*args, **_arg1, &block); end
  def id_keyword; end
  def insert_property_defaults(*args, **_arg1, &block); end
  def inspect; end
  def keyword_order; end
  def keyword_order=(_arg0); end
  def keywords; end
  def keywords=(_arg0); end
  def meta_schema; end
  def meta_schema=(_arg0); end
  def parent; end
  def parsed; end
  def ref(value); end
  def ref_resolver; end
  def regexp_resolver; end
  def resolve_ref(uri); end
  def resolve_regexp(pattern); end
  def resources; end
  def root; end
  def schema_pointer; end
  def valid?(instance, **options); end
  def valid_schema?(**options); end
  def validate(instance, output_format: T.unsafe(nil), resolve_enumerators: T.unsafe(nil), access_mode: T.unsafe(nil)); end
  def validate_instance(instance, instance_location, keyword_location, context); end
  def validate_schema(**options); end
  def value; end
  def vocabulary(*args, **_arg1, &block); end

  private

  def parse; end
  def property_default_resolver; end
  def resolve_enumerators!(output); end
  def root_keyword_location; end
end

class JSONSchemer::Schema::Context < ::Struct
  def access_mode; end
  def access_mode=(_); end
  def adjacent_results; end
  def adjacent_results=(_); end
  def dynamic_scope; end
  def dynamic_scope=(_); end
  def instance; end
  def instance=(_); end
  def original_instance(instance_location); end
  def short_circuit; end
  def short_circuit=(_); end

  class << self
    def [](*_arg0); end
    def inspect; end
    def keyword_init?; end
    def members; end
    def new(*_arg0); end
  end
end

JSONSchemer::Schema::DEFAULT_PROPERTY_DEFAULT_RESOLVER = T.let(T.unsafe(nil), Proc)
JSONSchemer::Schema::ECMA_REGEXP_RESOLVER = T.let(T.unsafe(nil), Proc)
JSONSchemer::Schema::ID_KEYWORD_CLASS = JSONSchemer::Draft202012::Vocab::Core::Id
JSONSchemer::Schema::NET_HTTP_REF_RESOLVER = T.let(T.unsafe(nil), Proc)
JSONSchemer::Schema::NOT_KEYWORD_CLASS = JSONSchemer::Draft202012::Vocab::Applicator::Not
JSONSchemer::Schema::PROPERTIES_KEYWORD_CLASS = JSONSchemer::Draft202012::Vocab::Applicator::Properties
JSONSchemer::Schema::RUBY_REGEXP_RESOLVER = T.let(T.unsafe(nil), Proc)
JSONSchemer::Schema::SCHEMA_KEYWORD_CLASS = JSONSchemer::Draft202012::Vocab::Core::Schema
JSONSchemer::Schema::SYMBOL_PROPERTY_DEFAULT_RESOLVER = T.let(T.unsafe(nil), Proc)
JSONSchemer::Schema::UNKNOWN_KEYWORD_CLASS = JSONSchemer::Draft202012::Vocab::Core::UnknownKeyword
JSONSchemer::Schema::VOCABULARY_KEYWORD_CLASS = JSONSchemer::Draft202012::Vocab::Core::Vocabulary
JSONSchemer::URI_PARSER = T.let(T.unsafe(nil), URI::RFC2396_Parser)
class JSONSchemer::UnknownContentEncoding < ::StandardError; end
class JSONSchemer::UnknownContentMediaType < ::StandardError; end
class JSONSchemer::UnknownFormat < ::StandardError; end
class JSONSchemer::UnknownOutputFormat < ::StandardError; end
class JSONSchemer::UnknownRef < ::StandardError; end
class JSONSchemer::UnknownVocabulary < ::StandardError; end
class JSONSchemer::UnsupportedOpenAPIVersion < ::StandardError; end
JSONSchemer::VERSION = T.let(T.unsafe(nil), String)
JSONSchemer::VOCABULARIES = T.let(T.unsafe(nil), Hash)
JSONSchemer::VOCABULARY_ORDER = T.let(T.unsafe(nil), Hash)
JSONSchemer::WINDOWS_URI_PATH_REGEX = T.let(T.unsafe(nil), Regexp)
JSONSchemer::X_ERROR_REGEX = T.let(T.unsafe(nil), Regexp)
