"""Custom exception hierarchy for the Kurier messaging library."""


class KurierError(Exception):
    """Base exception for all Kurier-related errors."""

    pass


class KurierPublishError(KurierError):
    """Raised when an error occurs while publishing a message."""

    pass


class KurierDeserializationError(KurierError):
    """Raised when a message payload cannot be converted to the handler's target type."""

    pass
