Source code for novelai_image_mcp.nai.exceptions

"""Typed NovelAI domain failures."""


[docs] class NovelAIError(Exception): """Base class for NovelAI failures."""
[docs] class NovelAIProviderError(NovelAIError): """NovelAI rejected or failed the request."""
[docs] class NovelAIValidationError(NovelAIProviderError): """The request is invalid."""
[docs] class NovelAIAuthenticationError(NovelAIProviderError): """Credentials are missing, invalid, or expired."""
[docs] class NovelAIInsufficientCreditsError(NovelAIProviderError): """The account has insufficient Anlas or no subscription."""
[docs] class NovelAIConcurrencyError(NovelAIProviderError): """The account hit a concurrency or rate limit."""
[docs] class NovelAITimeoutError(NovelAIError): """A request exceeded its timeout."""
[docs] class NovelAITransportError(NovelAIError): """The request could not reach NovelAI."""
[docs] class NovelAIResponseError(NovelAIError): """NovelAI returned malformed or unsupported data."""
[docs] class NovelAIImageError(NovelAIError): """An input or output image is malformed or unsupported."""