--- /dev/null
+from typing import Any, List, NoReturn, Optional, Text, Union, IO\r
+\r
+import xml.sax\r
+from xml.sax.xmlreader import InputSource, Locator\r
+from xml.sax.handler import ContentHandler, ErrorHandler\r
+\r
+class SAXException(Exception):\r
+ def __init__(self, msg: str, exception: Optional[Exception] = ...) -> None: ...\r
+ def getMessage(self) -> str: ...\r
+ def getException(self) -> Exception: ...\r
+ def __getitem__(self, ix: Any) -> NoReturn: ...\r
+\r
+class SAXParseException(SAXException):\r
+ def __init__(self, msg: str, exception: Exception, locator: Locator) -> None: ...\r
+ def getColumnNumber(self) -> int: ...\r
+ def getLineNumber(self) -> int: ...\r
+ def getPublicId(self): ...\r
+ def getSystemId(self): ...\r
+\r
+class SAXNotRecognizedException(SAXException): ...\r
+class SAXNotSupportedException(SAXException): ...\r
+class SAXReaderNotAvailable(SAXNotSupportedException): ...\r
+\r
+default_parser_list = ... # type: List[str]\r
+\r
+def make_parser(parser_list: List[str] = ...) -> xml.sax.xmlreader.XMLReader: ...\r
+\r
+def parse(source: Union[str, IO[str]], handler: xml.sax.handler.ContentHandler,\r
+ errorHandler: xml.sax.handler.ErrorHandler = ...) -> None: ...\r
+\r
+def parseString(string: Union[bytes, Text], handler: xml.sax.handler.ContentHandler,\r
+ errorHandler: Optional[xml.sax.handler.ErrorHandler] = ...) -> None: ...\r
+\r
+def _create_parser(parser_name: str) -> xml.sax.xmlreader.XMLReader: ...\r