# Stubs for galaxy.tools.deps.resolvers.galaxy_packages (Python 3.4)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.

from typing import Any
from .resolver_mixins import UsesToolDependencyDirMixin
from ..resolvers import Dependency, DependencyResolver, ListableDependencyResolver, MappableDependencyResolver

class GalaxyPackageDependency(Dependency):
    dict_collection_visible_keys = ...  # type: Any
    dependency_type = ...  # type: str
    script = ...  # type: Any
    path = ...  # type: Any
    version = ...  # type: Any
    name = ...  # type: Any
    def __init__(self, script, path, version, name, exact: bool = ...) -> None: ...
    @property
    def exact(self): ...
    def shell_commands(self, requirement): ...

class ToolShedDependency(GalaxyPackageDependency):
    dependency_type = ...  # type: str

class BaseGalaxyPackageDependencyResolver(DependencyResolver, UsesToolDependencyDirMixin):
    dict_collection_visible_keys = ...  # type: Any
    dependency_type = ...  # type: Any
    versionless = ...  # type: Any
    def __init__(self, dependency_manager, **kwds) -> None: ...
    def resolve(self, requirement, **kwds): ...

class GalaxyPackageDependencyResolver(BaseGalaxyPackageDependencyResolver, ListableDependencyResolver, MappableDependencyResolver):
    resolver_type = ...  # type: str
    def __init__(self, dependency_manager, **kwds) -> None: ...
    def resolve(self, requirement, **kwds): ...
    def list_dependencies(self): ...
