"""
Custom exceptions for CBCFacil
"""


class ProcessingError(Exception):
    """Base exception for all processing errors"""
    pass


class ConfigurationError(ProcessingError):
    """Raised when configuration is invalid"""
    pass


class WebDAVError(ProcessingError):
    """Raised when WebDAV operations fail"""
    pass


class AIProcessingError(ProcessingError):
    """Raised when AI processing fails"""
    pass


class FileProcessingError(ProcessingError):
    """Raised when file processing fails"""
    pass


class AuthenticationError(ProcessingError):
    """Raised when authentication fails"""
    pass


class ValidationError(ProcessingError):
    """Raised when input validation fails"""
    pass
