--- /dev/null
+from typing import Any\r
+\r
+def default_stream_factory(total_content_length, filename, content_type, content_length=None): ...\r
+def parse_form_data(environ, stream_factory=None, charset='', errors='', max_form_memory_size=None, max_content_length=None, cls=None, silent=True): ...\r
+def exhaust_stream(f): ...\r
+\r
+class FormDataParser:\r
+ stream_factory = ... # type: Any\r
+ charset = ... # type: Any\r
+ errors = ... # type: Any\r
+ max_form_memory_size = ... # type: Any\r
+ max_content_length = ... # type: Any\r
+ cls = ... # type: Any\r
+ silent = ... # type: Any\r
+ def __init__(self, stream_factory=None, charset='', errors='', max_form_memory_size=None, max_content_length=None, cls=None, silent=True): ...\r
+ def get_parse_func(self, mimetype, options): ...\r
+ def parse_from_environ(self, environ): ...\r
+ def parse(self, stream, mimetype, content_length, options=None): ...\r
+ parse_functions = ... # type: Any\r
+\r
+def is_valid_multipart_boundary(boundary): ...\r
+def parse_multipart_headers(iterable): ...\r
+\r
+class MultiPartParser:\r
+ charset = ... # type: Any\r
+ errors = ... # type: Any\r
+ max_form_memory_size = ... # type: Any\r
+ stream_factory = ... # type: Any\r
+ cls = ... # type: Any\r
+ buffer_size = ... # type: Any\r
+ def __init__(self, stream_factory=None, charset='', errors='', max_form_memory_size=None, cls=None, buffer_size=...): ...\r
+ def fail(self, message): ...\r
+ def get_part_encoding(self, headers): ...\r
+ def get_part_charset(self, headers): ...\r
+ def start_file_streaming(self, filename, headers, total_content_length): ...\r
+ def in_memory_threshold_reached(self, bytes): ...\r
+ def validate_boundary(self, boundary): ...\r
+ def parse_lines(self, file, boundary, content_length, cap_at_buffer=True): ...\r
+ def parse_parts(self, file, boundary, content_length): ...\r
+ def parse(self, file, boundary, content_length): ...\r