from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tf_available,
    is_torch_available,
    is_vision_available,
)


__snake_case       :   Dict  		=    {
    """configuration_sam""": [
        """SAM_PRETRAINED_CONFIG_ARCHIVE_MAP""",
        """SamConfig""",
        """SamMaskDecoderConfig""",
        """SamPromptEncoderConfig""",
        """SamVisionConfig""",
    ],
    """processing_sam""": ["""SamProcessor"""],
}


try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __snake_case       :   Dict  		=    [
          """SAM_PRETRAINED_MODEL_ARCHIVE_LIST""",
          """SamModel""",
          """SamPreTrainedModel""",
      ]
try:
      if not is_tf_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __snake_case       :   str  		=    [
          """TF_SAM_PRETRAINED_MODEL_ARCHIVE_LIST""",
          """TFSamModel""",
          """TFSamPreTrainedModel""",
      ]
try:
      if not is_vision_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __snake_case       :   Union[str, Any]  		=    ["""SamImageProcessor"""]


if TYPE_CHECKING:
      from .configuration_sam import (
          SAM_PRETRAINED_CONFIG_ARCHIVE_MAP,
          SamConfig,
          SamMaskDecoderConfig,
          SamPromptEncoderConfig,
          SamVisionConfig,
      )
      from .processing_sam import SamProcessor

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_sam import SAM_PRETRAINED_MODEL_ARCHIVE_LIST, SamModel, SamPreTrainedModel

      try:
            if not is_tf_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_tf_sam import TF_SAM_PRETRAINED_MODEL_ARCHIVE_LIST, TFSamModel, TFSamPreTrainedModel

      try:
            if not is_vision_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .image_processing_sam import SamImageProcessor

else:
      import sys

      __snake_case       :   Union[str, Any]  		=    _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)

'''simple docstring'''

from typing import TYPE_CHECKING

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


__snake_case       :   int  		=    {
    '''configuration_videomae''': ['''VIDEOMAE_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''VideoMAEConfig'''],
}

try:
      if not is_torch_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __snake_case       :   Optional[Any]  		=    [
          '''VIDEOMAE_PRETRAINED_MODEL_ARCHIVE_LIST''',
          '''VideoMAEForPreTraining''',
          '''VideoMAEModel''',
          '''VideoMAEPreTrainedModel''',
          '''VideoMAEForVideoClassification''',
      ]

try:
      if not is_vision_available():
            raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
      pass
else:
      __snake_case       :   str  		=    ['''VideoMAEFeatureExtractor''']
      __snake_case       :   Any  		=    ['''VideoMAEImageProcessor''']

if TYPE_CHECKING:
      from .configuration_videomae import VIDEOMAE_PRETRAINED_CONFIG_ARCHIVE_MAP, VideoMAEConfig

      try:
            if not is_torch_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .modeling_videomae import (
                VIDEOMAE_PRETRAINED_MODEL_ARCHIVE_LIST,
                VideoMAEForPreTraining,
                VideoMAEForVideoClassification,
                VideoMAEModel,
                VideoMAEPreTrainedModel,
            )

      try:
            if not is_vision_available():
                  raise OptionalDependencyNotAvailable()
      except OptionalDependencyNotAvailable:
            pass
      else:
            from .feature_extraction_videomae import VideoMAEFeatureExtractor
            from .image_processing_videomae import VideoMAEImageProcessor

else:
      import sys

      __snake_case       :   List[str]  		=    _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)
