module WEBrick
  module HTTPAuth
    module Authenticator
      @reload_db: bool?

      @request_field: String

      @response_field: String

      @resp_info_field: String

      @auth_exception: singleton(HTTPStatus::ClientError)

      @auth_scheme: String

      RequestField: String

      ResponseField: String

      ResponseInfoField: String

      AuthException: singleton(HTTPStatus::ClientError)

      AuthScheme: String?

      attr_reader realm: String?

      attr_reader userdb: UserDB

      attr_reader logger: Log

      private

      def check_init: (Hash[Symbol, untyped] config) -> void

      def check_scheme: (HTTPRequest req) -> String?

      def log: (interned meth, String fmt, *untyped args) -> void

      def error: (String fmt, *untyped args) -> void

      def info: (String fmt, *untyped args) -> void
    end

    module ProxyAuthenticator
      RequestField: String

      ResponseField: String

      ResponseInfoField: String

      AuthException: singleton(HTTPStatus::ClientError)
    end
  end
end
