from typing import Any, ClassVar

class EdgeType:
    Fragment: ClassVar[EdgeType] = ...
    Generic: ClassVar[EdgeType] = ...
    GenericBond: ClassVar[EdgeType] = ...
    Initialize: ClassVar[EdgeType] = ...
    RemoveAttachment: ClassVar[EdgeType] = ...
    names: ClassVar[dict] = ...
    values: ClassVar[dict] = ...
    __slots__: ClassVar[tuple] = ...

class NetworkEdge:
    @classmethod
    def __init__(cls, *args, **kwargs) -> None: ...
    @classmethod
    def __reduce__(cls) -> Any: ...
    @property
    def beginIdx(self) -> Any: ...
    @property
    def endIdx(self) -> Any: ...
    @property
    def type(self) -> Any: ...

class NetworkEdge_VECT:
    __instance_size__: ClassVar[int] = ...
    @classmethod
    def __init__(cls, *args, **kwargs) -> None: ...
    @classmethod
    def append(cls, *args, **kwargs) -> Any: ...
    @classmethod
    def extend(cls, *args, **kwargs) -> Any: ...
    @classmethod
    def __contains__(cls, other) -> Any: ...
    @classmethod
    def __delitem__(cls, other) -> Any: ...
    @classmethod
    def __getitem__(cls, index) -> Any: ...
    @classmethod
    def __iter__(cls, boost, std) -> Any: ...
    @classmethod
    def __len__(cls) -> Any: ...
    @classmethod
    def __reduce__(cls) -> Any: ...
    @classmethod
    def __setitem__(cls, index, object) -> Any: ...

class ScaffoldNetwork:
    __instance_size__: ClassVar[int] = ...
    __safe_for_unpickling__: ClassVar[bool] = ...
    @classmethod
    def __init__(cls, *args, **kwargs) -> None: ...
    @classmethod
    def __getinitargs__(cls, RDKit) -> Any: ...
    @classmethod
    def __reduce__(cls) -> Any: ...
    @property
    def counts(self) -> Any: ...
    @property
    def edges(self) -> Any: ...
    @property
    def molCounts(self) -> Any: ...
    @property
    def nodes(self) -> Any: ...

class ScaffoldNetworkParams:
    __instance_size__: ClassVar[int] = ...
    collectMolCounts: Any
    flattenChirality: Any
    flattenIsotopes: Any
    flattenKeepLargest: Any
    includeGenericBondScaffolds: Any
    includeGenericScaffolds: Any
    includeScaffoldsWithAttachments: Any
    includeScaffoldsWithoutAttachments: Any
    keepOnlyFirstFragment: Any
    pruneBeforeFragmenting: Any
    @classmethod
    def __init__(cls, *args, **kwargs) -> None: ...
    @classmethod
    def __reduce__(cls) -> Any: ...

def BRICSScaffoldParams() -> Any: ...
def CreateScaffoldNetwork(boost, RDKit) -> Any: ...
def UpdateScaffoldNetwork(*args, **kwargs) -> Any: ...
