from typing import Optional, Tuple, List, Union

from pygame.surface import Surface

def load(filename: str, namehint: Optional[str] = "") -> Surface: ...
def save(surface: Surface, filename: str) -> None: ...
def get_extended() -> bool: ...
def tostring(surface: Surface, format: str, flipped: Optional[bool] = False) -> str: ...
def fromstring(
    string: str,
    size: Union[List[int], Tuple[int, int]],
    format: str,
    flipped: Optional[bool] = False,
) -> Surface: ...
def frombuffer(
    string: str, size: Union[List[int], Tuple[int, int]], format: str
) -> Surface: ...
