33 lines
1.2 KiB
Python
33 lines
1.2 KiB
Python
from collections.abc import Callable, Mapping
|
|
from typing import Any
|
|
from typing_extensions import TypeAlias
|
|
|
|
_FieldValue: TypeAlias = str | bytes
|
|
_FieldValueTuple: TypeAlias = _FieldValue | tuple[str, _FieldValue] | tuple[str, _FieldValue, str]
|
|
|
|
def guess_content_type(filename: str | None, default: str = "application/octet-stream") -> str: ...
|
|
def format_header_param_rfc2231(name: str, value: _FieldValue) -> str: ...
|
|
def format_header_param_html5(name: str, value: _FieldValue) -> str: ...
|
|
|
|
format_header_param = format_header_param_html5
|
|
|
|
class RequestField:
|
|
data: Any
|
|
headers: Any
|
|
def __init__(
|
|
self,
|
|
name: str,
|
|
data: _FieldValue,
|
|
filename: str | None = None,
|
|
headers: Mapping[str, str] | None = None,
|
|
header_formatter: Callable[[str, _FieldValue], str] = ...,
|
|
) -> None: ...
|
|
@classmethod
|
|
def from_tuples(
|
|
cls, fieldname: str, value: _FieldValueTuple, header_formatter: Callable[[str, _FieldValue], str] = ...
|
|
) -> RequestField: ...
|
|
def render_headers(self) -> str: ...
|
|
def make_multipart(
|
|
self, content_disposition: str | None = None, content_type: str | None = None, content_location: str | None = None
|
|
) -> None: ...
|