HEX
Server: LiteSpeed
System: Linux houston.panomity.com 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
User: nudepix (1011)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //lib/python3/dist-packages/mailmanclient/restobjects/types.py
import sys
from typing import Mapping, Any, Tuple, NewType
if sys.version_info >= (3, 8):
    from typing import Protocol
else:
    # mypy understnads version_info check better than ImportError. So for the
    # sake of static typing checks, we are for once going to do LBYL.
    from typing_extensions import Protocol

__all__ = [
    'HTTPClientProto',
    'ResponseType',
    'ContentType',
    'ConnectionProto',
]


ContentType = NewType('ContentType', Mapping[str, Any])


class ResponseType(Protocol):
    status_code: int
    content: ContentType


class HTTPClientProto(Protocol):
    """A type checking protocol for the HTTP client argument for AsyncClient"""
    async def request(self) -> ResponseType:
        ...


class ConnectionProto(Protocol):
    """A type checking procol for connection object to avoid circular import"""
    async def call(self,
                   path: str,
                   data: Mapping[str, Any] = None,
                   method: str = 'GET') -> Tuple[ResponseType, ContentType]:
        ...