from typing import Optional import numpy as np from models.core import ValidationResult from models.images import ImageBatch class BatchValidator: @staticmethod def validate_batch(batch: ImageBatch) -> ValidationResult: raise NotImplementedError @staticmethod def validate_image_format(image_bytes: bytes) -> ValidationResult: raise NotImplementedError @staticmethod def validate_sequence_continuity( current_batch: ImageBatch, expected_start: int, ) -> ValidationResult: raise NotImplementedError @staticmethod def validate_image_dimensions( image: np.ndarray, expected_width: int, expected_height: int, ) -> ValidationResult: raise NotImplementedError @staticmethod def validate_batch_size( batch: ImageBatch, max_size: int = 100, ) -> ValidationResult: raise NotImplementedError