"""Auto-generated stub for module: preprocessor."""
from typing import Any, Optional, Tuple

from .io_utils import temporary_file_from_bytes

# Functions
def build_image_transform(config: Any) -> Any.Any:
    """
    Construct torchvision transform pipeline for model inference.
    
        Args:
            config: Preprocessing configuration containing size and normalization.
    
        Returns:
            Composed torchvision transform callable.
    """
    ...
def get_model_device(model: Any.Any.Any) -> Any.Any:
    """
    Return model parameter device, or CPU for parameter-less models.
    
        Args:
            model: Torch module whose parameter device should be inspected.
    
        Returns:
            Device of first parameter, or CPU if module has no parameters.
    """
    ...
def load_rgb_image_from_bytes(image_bytes: Any) -> Any.Any:
    """
    Decode image bytes into an RGB PIL image.
    
        Args:
            image_bytes: Raw encoded image bytes.
    
        Returns:
            Decoded RGB ``PIL.Image`` object.
    """
    ...
def preprocess_image_from_bytes(image_bytes: Any) -> tuple[Any.Any, Any.Any]:
    """
    Decode and transform image bytes into batched tensor ``[1, C, H, W]``.
    
        Args:
            image_bytes: Raw encoded image bytes.
            config: Preprocessing configuration for resize and normalization.
            device: Optional device to move the output tensor to.
    
        Returns:
            Tuple of ``(image_tensor, pil_image)``.
    """
    ...
def probe_video_fps(video_bytes: Any) -> float:
    """
    Extract FPS from video bytes using OpenCV with temp-file isolation.
    
        Args:
            video_bytes: Raw encoded video bytes.
            default_fps: Fallback FPS value when probing fails.
    
        Returns:
            Probed FPS value, or ``default_fps`` when unavailable.
    """
    ...

# Classes
class ImagePreprocessConfig:
    # Standard image preprocessing configuration.

    ...
