mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-20 10:51:15 +08:00
Update some PIL stubs (#5692)
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com> Co-authored-by: Akuli <akuviljanen17@gmail.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
from typing import Any
|
||||
from typing import Mapping
|
||||
|
||||
TAGS: Any
|
||||
GPSTAGS: Any
|
||||
TAGS: Mapping[int, str]
|
||||
GPSTAGS: Mapping[int, str]
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
from _typeshed import SupportsRead, SupportsWrite
|
||||
from collections.abc import Iterable, Iterator, MutableMapping
|
||||
from pathlib import Path
|
||||
from typing import Any, Dict, Protocol, Tuple, Union
|
||||
from typing import Any, Callable, Dict, Protocol, Sequence, SupportsBytes, Tuple, Union
|
||||
from typing_extensions import Literal
|
||||
|
||||
from ._imaging import (
|
||||
@@ -11,9 +11,13 @@ from ._imaging import (
|
||||
HUFFMAN_ONLY as HUFFMAN_ONLY,
|
||||
RLE as RLE,
|
||||
)
|
||||
from .ImageFilter import Filter
|
||||
from .ImagePalette import ImagePalette
|
||||
|
||||
_Mode = Literal["1", "CMYK", "F", "HSV", "I", "L", "LAB", "P", "RGB", "RGBA", "RGBX", "YCbCr"]
|
||||
_Resample = Literal[0, 1, 2, 3, 4, 5]
|
||||
_Size = Tuple[int, int]
|
||||
_Box = Tuple[int, int, int, int]
|
||||
|
||||
_ConversionMatrix = Union[
|
||||
Tuple[float, float, float, float], Tuple[float, float, float, float, float, float, float, float, float, float, float, float],
|
||||
@@ -123,7 +127,7 @@ class Image:
|
||||
def tobytes(self, encoder_name: str = ..., *args) -> bytes: ...
|
||||
def tobitmap(self, name: str = ...) -> bytes: ...
|
||||
def frombytes(self, data: bytes, decoder_name: str = ..., *args) -> None: ...
|
||||
def load(self): ...
|
||||
def load(self) -> None: ...
|
||||
def verify(self) -> None: ...
|
||||
def convert(
|
||||
self,
|
||||
@@ -143,31 +147,29 @@ class Image:
|
||||
) -> Image: ...
|
||||
def copy(self) -> Image: ...
|
||||
__copy__ = copy
|
||||
def crop(self, box=...) -> Image: ...
|
||||
def draft(self, mode, size) -> None: ...
|
||||
def filter(self, filter): ...
|
||||
def crop(self, box: _Box | None = ...) -> Image: ...
|
||||
def draft(self, mode: str, size: _Size) -> None: ...
|
||||
def filter(self, filter: Filter | Callable[[], Filter]) -> Image: ...
|
||||
def getbands(self) -> Tuple[str, ...]: ...
|
||||
def getbbox(self) -> tuple[int, int, int, int] | None: ...
|
||||
def getcolors(self, maxcolors: int = ...): ...
|
||||
def getdata(self, band=...): ...
|
||||
def getcolors(self, maxcolors: int = ...) -> list[tuple[int, int]]: ...
|
||||
def getdata(self, band: int | None = ...): ...
|
||||
def getextrema(self): ...
|
||||
def getexif(self) -> Exif: ...
|
||||
def getim(self): ...
|
||||
def getpalette(self): ...
|
||||
def getpixel(self, xy): ...
|
||||
def getprojection(self): ...
|
||||
def histogram(self, mask=..., extrema=...): ...
|
||||
def entropy(self, mask=..., extrema=...): ...
|
||||
def paste(
|
||||
self, im: Image, box: tuple[float, float] | tuple[float, float, float, float] | None = ..., mask: Image | None = ...
|
||||
) -> None: ...
|
||||
def getpalette(self) -> list[int] | None: ...
|
||||
def getpixel(self, xy: tuple[int, int]): ...
|
||||
def getprojection(self) -> tuple[list[int], list[int]]: ...
|
||||
def histogram(self, mask: Image | None = ..., extrema: tuple[int, int] | tuple[float, float] | None = ...) -> list[int]: ...
|
||||
def entropy(self, mask: Image | None = ..., extrema: tuple[int, int] | tuple[float, float] | None = ...) -> float: ...
|
||||
def paste(self, im: Image, box: tuple[float, float] | _Box | None = ..., mask: Image | None = ...) -> None: ...
|
||||
def alpha_composite(self, im: Image, dest: tuple[int, int] = ..., source: tuple[int, int] = ...) -> None: ...
|
||||
def point(self, lut, mode=...): ...
|
||||
def putalpha(self, alpha): ...
|
||||
def putdata(self, data, scale: float = ..., offset: float = ...): ...
|
||||
def putpalette(self, data, rawmode=...): ...
|
||||
def putpixel(self, xy, value): ...
|
||||
def remap_palette(self, dest_map, source_palette=...): ...
|
||||
def point(self, lut, mode: str | None = ...) -> Image: ...
|
||||
def putalpha(self, alpha: Image | int) -> None: ...
|
||||
def putdata(self, data: Sequence[int], scale: float = ..., offset: float = ...) -> None: ...
|
||||
def putpalette(self, data: ImagePalette | bytes | Iterable[int] | SupportsBytes, rawmode: str | None = ...) -> None: ...
|
||||
def putpixel(self, xy: tuple[int, int], value: _Color | list[float]) -> None: ...
|
||||
def remap_palette(self, dest_map: Iterable[int], source_palette: Sequence[int] | None = ...) -> Image: ...
|
||||
def resize(
|
||||
self,
|
||||
size: tuple[int, int],
|
||||
@@ -175,7 +177,7 @@ class Image:
|
||||
box: tuple[float, float, float, float] | None = ...,
|
||||
reducing_gap: float | None = ...,
|
||||
) -> Image: ...
|
||||
def reduce(self, factor, box=...): ...
|
||||
def reduce(self, factor: int | tuple[int, int] | list[int], box: _Box | None = ...) -> None: ...
|
||||
def rotate(
|
||||
self,
|
||||
angle: float,
|
||||
@@ -186,17 +188,23 @@ class Image:
|
||||
fillcolor: _Color | None = ...,
|
||||
) -> Image: ...
|
||||
def save(self, fp: str | bytes | Path | _Writeable, format: str | None = ..., **params: Any) -> None: ...
|
||||
def seek(self, frame): ...
|
||||
def show(self, title=..., command=...): ...
|
||||
def split(self): ...
|
||||
def getchannel(self, channel): ...
|
||||
def seek(self, frame: int) -> None: ...
|
||||
def show(self, title: str | None = ..., command: str | None = ...) -> None: ...
|
||||
def split(self) -> Tuple[Image, ...]: ...
|
||||
def getchannel(self, channel: int | str) -> Image: ...
|
||||
def tell(self) -> int: ...
|
||||
def thumbnail(self, size: tuple[int, int], resample: _Resample = ..., reducing_gap: float = ...) -> None: ...
|
||||
def transform(
|
||||
self, size, method: Literal[0, 1, 2, 3, 4], data=..., resample: _Resample = ..., fill: int = ..., fillcolor=...
|
||||
self,
|
||||
size: _Size,
|
||||
method: Literal[0, 1, 2, 3, 4],
|
||||
data=...,
|
||||
resample: _Resample = ...,
|
||||
fill: int = ...,
|
||||
fillcolor: _Color | int | None = ...,
|
||||
) -> None: ...
|
||||
def transpose(self, method: Literal[0, 1, 2, 3, 4, 5, 6]): ...
|
||||
def effect_spread(self, distance): ...
|
||||
def transpose(self, method: Literal[0, 1, 2, 3, 4, 5, 6]) -> Image: ...
|
||||
def effect_spread(self, distance: int) -> Image: ...
|
||||
def toqimage(self): ...
|
||||
def toqpixmap(self): ...
|
||||
|
||||
@@ -209,12 +217,14 @@ def frombuffer(mode: _Mode, size: tuple[int, int], data, decoder_name: str = ...
|
||||
def fromarray(obj, mode: _Mode | None = ...) -> Image: ...
|
||||
def fromqimage(im) -> Image: ...
|
||||
def fromqpixmap(im) -> Image: ...
|
||||
def open(fp: str | bytes | Path | SupportsRead[bytes], mode: Literal["r"] = ..., formats=...) -> Image: ...
|
||||
def open(
|
||||
fp: str | bytes | Path | SupportsRead[bytes], mode: Literal["r"] = ..., formats: list[str] | tuple[str] | None = ...
|
||||
) -> Image: ...
|
||||
def alpha_composite(im1: Image, im2: Image) -> Image: ...
|
||||
def blend(im1: Image, im2: Image, alpha) -> Image: ...
|
||||
def composite(image1: Image, image2: Image, mask) -> Image: ...
|
||||
def eval(image: Image, *args): ...
|
||||
def merge(mode, bands): ...
|
||||
def blend(im1: Image, im2: Image, alpha: float) -> Image: ...
|
||||
def composite(image1: Image, image2: Image, mask: Image) -> Image: ...
|
||||
def eval(image: Image, *args) -> Image: ...
|
||||
def merge(mode: str, bands: Sequence[Image]) -> Image: ...
|
||||
def register_open(id: str, factory, accept=...) -> None: ...
|
||||
def register_mime(id: str, mimetype: str) -> None: ...
|
||||
def register_save(id: str, driver) -> None: ...
|
||||
@@ -224,18 +234,18 @@ def register_extensions(id: str, extensions: Iterable[str]) -> None: ...
|
||||
def registered_extensions() -> dict[str, str]: ...
|
||||
def register_decoder(name: str, decoder) -> None: ...
|
||||
def register_encoder(name: str, encoder) -> None: ...
|
||||
def effect_mandelbrot(size: tuple[int, int], extent, quality) -> Image: ...
|
||||
def effect_noise(size: tuple[int, int], sigma) -> Image: ...
|
||||
def linear_gradient(mode) -> Image: ...
|
||||
def radial_gradient(mode) -> Image: ...
|
||||
def effect_mandelbrot(size: tuple[int, int], extent: tuple[float, float, float, float], quality: int) -> Image: ...
|
||||
def effect_noise(size: tuple[int, int], sigma: float) -> Image: ...
|
||||
def linear_gradient(mode: str) -> Image: ...
|
||||
def radial_gradient(mode: str) -> Image: ...
|
||||
|
||||
class Exif(MutableMapping[int, Any]):
|
||||
def load(self, data: bytes) -> None: ...
|
||||
def tobytes(self, offset: int = ...) -> bytes: ...
|
||||
def get_ifd(self, tag: int): ...
|
||||
def __len__(self) -> int: ...
|
||||
def __getitem__(self, tag: int): ...
|
||||
def __getitem__(self, tag: int) -> Any: ...
|
||||
def __contains__(self, tag: object) -> bool: ...
|
||||
def __setitem__(self, tag: int, value) -> None: ...
|
||||
def __setitem__(self, tag: int, value: Any) -> None: ...
|
||||
def __delitem__(self, tag: int) -> None: ...
|
||||
def __iter__(self) -> Iterator[int]: ...
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
__version__: str
|
||||
|
||||
class UnidentifiedImageError(OSError): ...
|
||||
class UnidentifiedImageError(IOError): ...
|
||||
|
||||
Reference in New Issue
Block a user