
from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available, is_vision_available


SCREAMING_SNAKE_CASE__				=							{
    """configuration_donut_swin""": ["""DONUT_SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP""", """DonutSwinConfig"""],
    """processing_donut""": ["""DonutProcessor"""],
}

try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							SCREAMING_SNAKE_CASE__				=							[
							    """DONUT_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST""",
							    """DonutSwinModel""",
							    """DonutSwinPreTrainedModel""",
							]

try:
							if not is_vision_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							SCREAMING_SNAKE_CASE__				=							["""DonutFeatureExtractor"""]
							SCREAMING_SNAKE_CASE__				=							["""DonutImageProcessor"""]


if TYPE_CHECKING:
							from .configuration_donut_swin import DONUT_SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP, DonutSwinConfig
							from .processing_donut import DonutProcessor

							try:
														if not is_torch_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .modeling_donut_swin import (
														    DONUT_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
														    DonutSwinModel,
														    DonutSwinPreTrainedModel,
														)

							try:
														if not is_vision_available():
																					raise OptionalDependencyNotAvailable()
							except OptionalDependencyNotAvailable:
														pass
							else:
														from .feature_extraction_donut import DonutFeatureExtractor
														from .image_processing_donut import DonutImageProcessor

else:
							import sys

							SCREAMING_SNAKE_CASE__				=							_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)







from ..utils import DummyObject, requires_backends
class       A__  (		metaclass=lowerCAmelCase__							):
							lowerCAmelCase__						:		Tuple            =				["torch", "transformers", "invisible_watermark"]





							def __init__(					self    :  Any	,					*_UpperCAmelCase    :  Optional[Any]	,					**_UpperCAmelCase    :  List[str]							)		->						Tuple:



											"""simple docstring"""


											requires_backends(self	,					['torch', 'transformers', 'invisible_watermark']							)





							@classmethod
							def      a__					(					cls    :  str	,					*_UpperCAmelCase    :  List[str]	,					**_UpperCAmelCase    :  Optional[Any]							)		->						Union[str, Any]:



											"""simple docstring"""


											requires_backends(cls	,					['torch', 'transformers', 'invisible_watermark']							)





							@classmethod
							def      a__					(					cls    :  List[Any]	,					*_UpperCAmelCase    :  List[Any]	,					**_UpperCAmelCase    :  Union[str, Any]							)		->						str:



											"""simple docstring"""


											requires_backends(cls	,					['torch', 'transformers', 'invisible_watermark']							)






class       A__  (		metaclass=lowerCAmelCase__							):
							lowerCAmelCase__						:		Tuple            =				["torch", "transformers", "invisible_watermark"]





							def __init__(					self    :  Dict	,					*_UpperCAmelCase    :  Optional[int]	,					**_UpperCAmelCase    :  Any							)		->						Union[str, Any]:



											"""simple docstring"""


											requires_backends(self	,					['torch', 'transformers', 'invisible_watermark']							)





							@classmethod
							def      a__					(					cls    :  List[str]	,					*_UpperCAmelCase    :  Union[str, Any]	,					**_UpperCAmelCase    :  Optional[Any]							)		->						Optional[int]:



											"""simple docstring"""


											requires_backends(cls	,					['torch', 'transformers', 'invisible_watermark']							)





							@classmethod
							def      a__					(					cls    :  Tuple	,					*_UpperCAmelCase    :  List[Any]	,					**_UpperCAmelCase    :  Tuple							)		->						Any:



											"""simple docstring"""


											requires_backends(cls	,					['torch', 'transformers', 'invisible_watermark']							)





