
from typing import TYPE_CHECKING

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


lowerCamelCase__	=							{
    "configuration_pix2struct": [
        "PIX2STRUCT_PRETRAINED_CONFIG_ARCHIVE_MAP",
        "Pix2StructConfig",
        "Pix2StructTextConfig",
        "Pix2StructVisionConfig",
    ],
    "processing_pix2struct": ["Pix2StructProcessor"],
}

try:
		if not is_vision_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowerCamelCase__	=							["Pix2StructImageProcessor"]


try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		lowerCamelCase__	=							[
		    "PIX2STRUCT_PRETRAINED_MODEL_ARCHIVE_LIST",
		    "Pix2StructPreTrainedModel",
		    "Pix2StructForConditionalGeneration",
		    "Pix2StructVisionModel",
		    "Pix2StructTextModel",
		]

if TYPE_CHECKING:
		from .configuration_pixastruct import (
		    PIX2STRUCT_PRETRAINED_CONFIG_ARCHIVE_MAP,
		    PixaStructConfig,
		    PixaStructTextConfig,
		    PixaStructVisionConfig,
		)
		from .processing_pixastruct import PixaStructProcessor

		try:
				if not is_vision_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .image_processing_pixastruct import PixaStructImageProcessor

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_pixastruct import (
				    PIX2STRUCT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    PixaStructForConditionalGeneration,
				    PixaStructPreTrainedModel,
				    PixaStructTextModel,
				    PixaStructVisionModel,
				)

else:
		import sys

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





lowerCamelCase__	=							[
    "DownloadConfig",
    "DownloadManager",
    "DownloadMode",
    "StreamingDownloadManager",
]

from .download_config import DownloadConfig
from .download_manager import DownloadManager, DownloadMode
from .streaming_download_manager import StreamingDownloadManager



