# Stubs for networkx.classes.coreviews (Python 3.5)
#
# NOTE: This dynamically typed stub was automatically generated by stubgen.

from collections import Mapping
from typing import Any

class AtlasView(Mapping):
    def __init__(self, d) -> None: ...
    def __len__(self): ...
    def __iter__(self): ...
    def __getitem__(self, key): ...
    def copy(self): ...

class AdjacencyView(AtlasView):
    def __getitem__(self, name): ...
    def copy(self): ...

class MultiAdjacencyView(AdjacencyView):
    def __getitem__(self, name): ...
    def copy(self): ...

class UnionAtlas(Mapping):
    def __init__(self, succ, pred) -> None: ...
    def __len__(self): ...
    def __iter__(self): ...
    def __getitem__(self, key): ...
    def copy(self): ...

class UnionAdjacency(Mapping):
    def __init__(self, succ, pred) -> None: ...
    def __len__(self): ...
    def __iter__(self): ...
    def __getitem__(self, nbr): ...
    def copy(self): ...

class UnionMultiInner(UnionAtlas):
    def __getitem__(self, node): ...
    def copy(self): ...

class UnionMultiAdjacency(UnionAdjacency):
    def __getitem__(self, node): ...

class ReadOnlyGraph:
    def not_allowed(self, *args, **kwds): ...
    add_node: Any = ...
    remove_node: Any = ...
    add_nodes_from: Any = ...
    remove_nodes_from: Any = ...
    add_edge: Any = ...
    remove_edge: Any = ...
    add_edges_from: Any = ...
    add_weighted_edges_from: Any = ...
    remove_edges_from: Any = ...
    clear: Any = ...

class FilterAtlas(Mapping):
    NODE_OK: Any = ...
    def __init__(self, d, NODE_OK) -> None: ...
    def __len__(self): ...
    def __iter__(self): ...
    def __getitem__(self, key): ...
    def copy(self): ...

class FilterAdjacency(Mapping):
    NODE_OK: Any = ...
    EDGE_OK: Any = ...
    def __init__(self, d, NODE_OK, EDGE_OK) -> None: ...
    def __len__(self): ...
    def __iter__(self): ...
    def __getitem__(self, node): ...
    def copy(self): ...

class FilterMultiInner(FilterAdjacency):
    def __iter__(self): ...
    def __getitem__(self, nbr): ...
    def copy(self): ...

class FilterMultiAdjacency(FilterAdjacency):
    def __getitem__(self, node): ...
    def copy(self): ...
