import typing

import java
import java.chaquopy
import java.lang
import java.util
import org.xml.sax

class AttributeListImpl(org.xml.sax.AttributeList):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, atts: org.xml.sax.AttributeList, /) -> None: ...
    def addAttribute(self, name: str | java.lang.String, type: str | java.lang.String, value: str | java.lang.String, /) -> None: ...
    def clear(self) -> None: ...
    def getLength(self) -> int: ...
    def getName(self, i: int | java.jint | java.lang.Integer, /) -> str: ...
    @typing.overload
    def getType(self, i: int | java.jint | java.lang.Integer, /) -> str: ...
    @typing.overload
    def getType(self, name: str | java.lang.String, /) -> str: ...
    @typing.overload
    def getValue(self, i: int | java.jint | java.lang.Integer, /) -> str: ...
    @typing.overload
    def getValue(self, name: str | java.lang.String, /) -> str: ...
    def removeAttribute(self, name: str | java.lang.String, /) -> None: ...
    def setAttributeList(self, atts: org.xml.sax.AttributeList, /) -> None: ...

class AttributesImpl(org.xml.sax.Attributes):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, atts: org.xml.sax.Attributes, /) -> None: ...
    def addAttribute(self, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, type: str | java.lang.String, value: str | java.lang.String, /) -> None: ...
    def clear(self) -> None: ...
    @typing.overload
    def getIndex(self, qName: str | java.lang.String, /) -> int: ...
    @typing.overload
    def getIndex(self, uri: str | java.lang.String, localName: str | java.lang.String, /) -> int: ...
    def getLength(self) -> int: ...
    def getLocalName(self, index: int | java.jint | java.lang.Integer, /) -> str: ...
    def getQName(self, index: int | java.jint | java.lang.Integer, /) -> str: ...
    @typing.overload
    def getType(self, index: int | java.jint | java.lang.Integer, /) -> str: ...
    @typing.overload
    def getType(self, qName: str | java.lang.String, /) -> str: ...
    @typing.overload
    def getType(self, uri: str | java.lang.String, localName: str | java.lang.String, /) -> str: ...
    def getURI(self, index: int | java.jint | java.lang.Integer, /) -> str: ...
    @typing.overload
    def getValue(self, index: int | java.jint | java.lang.Integer, /) -> str: ...
    @typing.overload
    def getValue(self, qName: str | java.lang.String, /) -> str: ...
    @typing.overload
    def getValue(self, uri: str | java.lang.String, localName: str | java.lang.String, /) -> str: ...
    def removeAttribute(self, index: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAttribute(self, index: int | java.jint | java.lang.Integer, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, type: str | java.lang.String, value: str | java.lang.String, /) -> None: ...
    def setAttributes(self, atts: org.xml.sax.Attributes, /) -> None: ...
    def setLocalName(self, index: int | java.jint | java.lang.Integer, localName: str | java.lang.String, /) -> None: ...
    def setQName(self, index: int | java.jint | java.lang.Integer, qName: str | java.lang.String, /) -> None: ...
    def setType(self, index: int | java.jint | java.lang.Integer, type: str | java.lang.String, /) -> None: ...
    def setURI(self, index: int | java.jint | java.lang.Integer, uri: str | java.lang.String, /) -> None: ...
    def setValue(self, index: int | java.jint | java.lang.Integer, value: str | java.lang.String, /) -> None: ...

class DefaultHandler(org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler):
    def __init__(self) -> None: ...
    def characters(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    def endDocument(self) -> None: ...
    def endElement(self, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, /) -> None: ...
    def endPrefixMapping(self, prefix: str | java.lang.String, /) -> None: ...
    def error(self, e: org.xml.sax.SAXParseException, /) -> None: ...
    def fatalError(self, e: org.xml.sax.SAXParseException, /) -> None: ...
    def ignorableWhitespace(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    def notationDecl(self, name: str | java.lang.String, publicId: str | java.lang.String, systemId: str | java.lang.String, /) -> None: ...
    def processingInstruction(self, target: str | java.lang.String, data: str | java.lang.String, /) -> None: ...
    def resolveEntity(self, publicId: str | java.lang.String, systemId: str | java.lang.String, /) -> org.xml.sax.InputSource: ...
    def setDocumentLocator(self, locator: org.xml.sax.Locator, /) -> None: ...
    def skippedEntity(self, name: str | java.lang.String, /) -> None: ...
    def startDocument(self) -> None: ...
    def startElement(self, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, attributes: org.xml.sax.Attributes, /) -> None: ...
    def startPrefixMapping(self, prefix: str | java.lang.String, uri: str | java.lang.String, /) -> None: ...
    def unparsedEntityDecl(self, name: str | java.lang.String, publicId: str | java.lang.String, systemId: str | java.lang.String, notationName: str | java.lang.String, /) -> None: ...
    def warning(self, e: org.xml.sax.SAXParseException, /) -> None: ...

class LocatorImpl(org.xml.sax.Locator):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, locator: org.xml.sax.Locator, /) -> None: ...
    def getColumnNumber(self) -> int: ...
    def getLineNumber(self) -> int: ...
    def getPublicId(self) -> str: ...
    def getSystemId(self) -> str: ...
    def setColumnNumber(self, columnNumber: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLineNumber(self, lineNumber: int | java.jint | java.lang.Integer, /) -> None: ...
    def setPublicId(self, publicId: str | java.lang.String, /) -> None: ...
    def setSystemId(self, systemId: str | java.lang.String, /) -> None: ...

class NamespaceSupport(java.lang.Object):
    NSDECL: typing.ClassVar[str] = ...
    XMLNS: typing.ClassVar[str] = ...
    def __init__(self) -> None: ...
    def declarePrefix(self, prefix: str | java.lang.String, uri: str | java.lang.String, /) -> bool: ...
    def getDeclaredPrefixes(self) -> java.util.Enumeration: ...
    def getPrefix(self, uri: str | java.lang.String, /) -> str: ...
    @typing.overload
    def getPrefixes(self) -> java.util.Enumeration: ...
    @typing.overload
    def getPrefixes(self, uri: str | java.lang.String, /) -> java.util.Enumeration: ...
    def getURI(self, prefix: str | java.lang.String, /) -> str: ...
    def isNamespaceDeclUris(self) -> bool: ...
    def popContext(self) -> None: ...
    def processName(self, qName: str | java.lang.String, parts: java.chaquopy.JavaArray[java.lang.String], isAttribute: bool | java.jboolean | java.lang.Boolean, /) -> java.chaquopy.JavaArray[java.lang.String]: ...
    def pushContext(self) -> None: ...
    def reset(self) -> None: ...
    def setNamespaceDeclUris(self, value: bool | java.jboolean | java.lang.Boolean, /) -> None: ...

class ParserAdapter(org.xml.sax.DocumentHandler, org.xml.sax.XMLReader):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, parser: org.xml.sax.Parser, /) -> None: ...
    def characters(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    def endDocument(self) -> None: ...
    def endElement(self, qName: str | java.lang.String, /) -> None: ...
    def getContentHandler(self) -> org.xml.sax.ContentHandler: ...
    def getDTDHandler(self) -> org.xml.sax.DTDHandler: ...
    def getEntityResolver(self) -> org.xml.sax.EntityResolver: ...
    def getErrorHandler(self) -> org.xml.sax.ErrorHandler: ...
    def getFeature(self, name: str | java.lang.String, /) -> bool: ...
    def getProperty(self, name: str | java.lang.String, /) -> java.lang.Object: ...
    def ignorableWhitespace(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def parse(self, systemId: str | java.lang.String, /) -> None: ...
    @typing.overload
    def parse(self, input: org.xml.sax.InputSource, /) -> None: ...
    def processingInstruction(self, target: str | java.lang.String, data: str | java.lang.String, /) -> None: ...
    def setContentHandler(self, handler: org.xml.sax.ContentHandler, /) -> None: ...
    def setDTDHandler(self, handler: org.xml.sax.DTDHandler, /) -> None: ...
    def setDocumentLocator(self, locator: org.xml.sax.Locator, /) -> None: ...
    def setEntityResolver(self, resolver: org.xml.sax.EntityResolver, /) -> None: ...
    def setErrorHandler(self, handler: org.xml.sax.ErrorHandler, /) -> None: ...
    def setFeature(self, name: str | java.lang.String, value: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setProperty(self, name: str | java.lang.String, value: java.lang.Object | int | bool | float | str, /) -> None: ...
    def startDocument(self) -> None: ...
    def startElement(self, qName: str | java.lang.String, qAtts: org.xml.sax.AttributeList, /) -> None: ...

class ParserFactory(java.lang.Object):
    @typing.overload
    @staticmethod
    def makeParser() -> org.xml.sax.Parser: ...
    @typing.overload
    @staticmethod
    def makeParser(className: str | java.lang.String, /) -> org.xml.sax.Parser: ...

class XMLFilterImpl(org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler, org.xml.sax.XMLFilter):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, parent: org.xml.sax.XMLReader, /) -> None: ...
    def characters(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    def endDocument(self) -> None: ...
    def endElement(self, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, /) -> None: ...
    def endPrefixMapping(self, prefix: str | java.lang.String, /) -> None: ...
    def error(self, e: org.xml.sax.SAXParseException, /) -> None: ...
    def fatalError(self, e: org.xml.sax.SAXParseException, /) -> None: ...
    def getContentHandler(self) -> org.xml.sax.ContentHandler: ...
    def getDTDHandler(self) -> org.xml.sax.DTDHandler: ...
    def getEntityResolver(self) -> org.xml.sax.EntityResolver: ...
    def getErrorHandler(self) -> org.xml.sax.ErrorHandler: ...
    def getFeature(self, name: str | java.lang.String, /) -> bool: ...
    def getParent(self) -> org.xml.sax.XMLReader: ...
    def getProperty(self, name: str | java.lang.String, /) -> java.lang.Object: ...
    def ignorableWhitespace(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    def notationDecl(self, name: str | java.lang.String, publicId: str | java.lang.String, systemId: str | java.lang.String, /) -> None: ...
    @typing.overload
    def parse(self, systemId: str | java.lang.String, /) -> None: ...
    @typing.overload
    def parse(self, input: org.xml.sax.InputSource, /) -> None: ...
    def processingInstruction(self, target: str | java.lang.String, data: str | java.lang.String, /) -> None: ...
    def resolveEntity(self, publicId: str | java.lang.String, systemId: str | java.lang.String, /) -> org.xml.sax.InputSource: ...
    def setContentHandler(self, handler: org.xml.sax.ContentHandler, /) -> None: ...
    def setDTDHandler(self, handler: org.xml.sax.DTDHandler, /) -> None: ...
    def setDocumentLocator(self, locator: org.xml.sax.Locator, /) -> None: ...
    def setEntityResolver(self, resolver: org.xml.sax.EntityResolver, /) -> None: ...
    def setErrorHandler(self, handler: org.xml.sax.ErrorHandler, /) -> None: ...
    def setFeature(self, name: str | java.lang.String, value: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setParent(self, parent: org.xml.sax.XMLReader, /) -> None: ...
    def setProperty(self, name: str | java.lang.String, value: java.lang.Object | int | bool | float | str, /) -> None: ...
    def skippedEntity(self, name: str | java.lang.String, /) -> None: ...
    def startDocument(self) -> None: ...
    def startElement(self, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, atts: org.xml.sax.Attributes, /) -> None: ...
    def startPrefixMapping(self, prefix: str | java.lang.String, uri: str | java.lang.String, /) -> None: ...
    def unparsedEntityDecl(self, name: str | java.lang.String, publicId: str | java.lang.String, systemId: str | java.lang.String, notationName: str | java.lang.String, /) -> None: ...
    def warning(self, e: org.xml.sax.SAXParseException, /) -> None: ...

class XMLReaderAdapter(org.xml.sax.ContentHandler, org.xml.sax.Parser):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, xmlReader: org.xml.sax.XMLReader, /) -> None: ...
    def characters(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    def endDocument(self) -> None: ...
    def endElement(self, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, /) -> None: ...
    def endPrefixMapping(self, prefix: str | java.lang.String, /) -> None: ...
    def ignorableWhitespace(self, ch: java.chaquopy.JavaArrayJChar, start: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def parse(self, systemId: str | java.lang.String, /) -> None: ...
    @typing.overload
    def parse(self, input: org.xml.sax.InputSource, /) -> None: ...
    def processingInstruction(self, target: str | java.lang.String, data: str | java.lang.String, /) -> None: ...
    def setDTDHandler(self, handler: org.xml.sax.DTDHandler, /) -> None: ...
    def setDocumentHandler(self, handler: org.xml.sax.DocumentHandler, /) -> None: ...
    def setDocumentLocator(self, locator: org.xml.sax.Locator, /) -> None: ...
    def setEntityResolver(self, resolver: org.xml.sax.EntityResolver, /) -> None: ...
    def setErrorHandler(self, handler: org.xml.sax.ErrorHandler, /) -> None: ...
    def setLocale(self, locale: java.util.Locale, /) -> None: ...
    def skippedEntity(self, name: str | java.lang.String, /) -> None: ...
    def startDocument(self) -> None: ...
    def startElement(self, uri: str | java.lang.String, localName: str | java.lang.String, qName: str | java.lang.String, atts: org.xml.sax.Attributes, /) -> None: ...
    def startPrefixMapping(self, prefix: str | java.lang.String, uri: str | java.lang.String, /) -> None: ...

class XMLReaderFactory(java.lang.Object):
    @typing.overload
    @staticmethod
    def createXMLReader() -> org.xml.sax.XMLReader: ...
    @typing.overload
    @staticmethod
    def createXMLReader(className: str | java.lang.String, /) -> org.xml.sax.XMLReader: ...
