##################################################################################
#                       Auto-generated Metaflow stub file                        #
# MF version: 2.12.8                                                             #
# Generated on 2024-07-16T15:51:55.422299                                        #
##################################################################################

from __future__ import annotations

import typing
if typing.TYPE_CHECKING:
    import abc
    import metaflow.metaflow_environment
    import metaflow.exception
    import io

class MetaflowException(Exception, metaclass=type):
    def __init__(self, msg = "", lineno = None):
        ...
    def __str__(self):
        ...
    ...

def get_pinned_conda_libs(python_version, datastore_type):
    ...

MAGIC_FILE: str

def conda_platform():
    ...

class CondaEnvironmentException(metaflow.exception.MetaflowException, metaclass=type):
    def __init__(self, msg):
        ...
    ...

class CondaEnvironment(metaflow.metaflow_environment.MetaflowEnvironment, metaclass=type):
    def __init__(self, flow):
        ...
    def set_local_root(self, local_root):
        ...
    def decospecs(self):
        ...
    def validate_environment(self, logger, datastore_type):
        ...
    def init_environment(self, echo, only_steps = None):
        ...
    def executable(self, step_name, default = None):
        ...
    def interpreter(self, step_name):
        ...
    def is_disabled(self, step):
        ...
    def pylint_config(self):
        ...
    @classmethod
    def get_client_info(cls, flow_name, metadata):
        ...
    def add_to_package(self):
        ...
    def bootstrap_commands(self, step_name, datastore_type):
        ...
    def get_environment_manifest_path(self):
        ...
    def read_from_environment_manifest(self, keys):
        ...
    def write_to_environment_manifest(self, keys, value):
        ...
    ...

class LazyOpen(io.BufferedIOBase, metaclass=abc.ABCMeta):
    def __init__(self, filename, mode = "rb", url = None):
        ...
    def readable(self):
        ...
    def seekable(self):
        ...
    def read(self, size = -1):
        ...
    def seek(self, offset, whence = 0):
        ...
    def tell(self):
        ...
    def close(self):
        ...
    ...

