from typing import overload from urllib.parse import ParseResult, SplitResult class URL: def __init__(self, url: str | ParseResult | SplitResult) -> None: ... def __bool__(self) -> bool: ... def __ne__(self, other: object) -> bool: ... def __eq__(self, other: object) -> bool: ... def __hash__(self) -> int: ... @overload @classmethod def objectify(cls, url: None) -> None: ... @overload @classmethod def objectify(cls, url: URL | str | ParseResult | SplitResult) -> URL: ... def __getattr__(self, attr: str): ... def __unicode__(self) -> str: ... def strip_trailing_slash(self) -> URL: ... def is_auth(self) -> bool: ... def unauth(self) -> URL: ... def canonical(self) -> URL: ... def join(self, path: object) -> URL: ... @overload def make(url: None) -> None: ... @overload def make(url: URL | str | ParseResult | SplitResult) -> URL: ...