def __init__(self): ...
def init() -> Tuple[int, int]: ...
def quit() -> None: ...
def get_init() -> bool: ...
def get_error() -> str: ...
def set_error(error_msg: str) -> None: ...
def get_sdl_version(linked: bool = True) -> Tuple[int, int, int]: ...
def get_sdl_byteorder() -> int: ...
def register_quit(callable: Callable[[], Any]) -> None: ...

class Rect:

class Color:
    def normalize() -> turple[int, int, int, int]: ...

class Surface:
    def Surface(* arg) -> Surface: ...
    def blit(
        self,
        source: Surface,
        dest: Union[Coordinate, RectValue],
        area: Optional[RectValue] = None,
        special_flags: int = 0,
    ) -> Rect: ...

class display:
    def init() -> None: ...
    def quit() -> None: ...
    def get_init() -> bool: ...
    def set_mode(
        size: Coordinate = (0, 0),
        flags: int = 0,
        depth: int = 0,
        display: int = 0,
        vsync: int = 0,
    ) -> Surface: ...
    def get_surface() -> Surface: ...
    def flip() -> None: ...
    def update(
        rectangle: Optional[Union[RectValue, Sequence[Optional[RectValue]]]] = None
    ) -> None: ...
    def get_active() -> bool: ...
    def set_icon(surface: Surface) -> None: ...
    def set_caption(title: str, icontitle: Optional[str] = None) -> None: ...
    def get_num_displays() -> int: ...
    def get_window_size() -> Tuple[int, int]: ...
    def get_desktop_sizes() -> List[Tuple[int, int]]: ...
    def is_fullscreen() -> bool: ...
