def METHOD_NAME(self) -> "Image.Image":
    if not PIL_AVAILABLE:
        raise RuntimeError(
            "PIL is not available. Please install via 'pip install Pillow'"
        )
    uncompressed = _decompress(self.data)
    pil_mode: Literal["L", "RGB"]
    if self.mode is ToifMode.grayscale:
        pil_mode = "L"
        raw_data = _to_grayscale(uncompressed, right_hi=False)
    elif self.mode is ToifMode.grayscale_eh:
        pil_mode = "L"
        raw_data = _to_grayscale(uncompressed, right_hi=True)
    elif self.mode is ToifMode.full_color:
        pil_mode = "RGB"
        raw_data = _to_rgb(uncompressed, little_endian=False)
    else:  # self.mode is ToifMode.full_color_le:
        pil_mode = "RGB"
        raw_data = _to_rgb(uncompressed, little_endian=True)
    return Image.frombuffer(pil_mode, self.size, raw_data, "raw", pil_mode, 0, 1)