from typing import Tuple, List

class Graph:
    def __init__(self, directed : bool) -> None: ...
    def add_node(self, label: int = 0) -> int: ...
    def add_edge(self, src_node: int, dst_node: int, label: int = 0) -> None: ...

class WeisfeilerLeman:
    def __init__(self, k: int) -> None: ...
    def compute_coloring(self, graph: Graph) -> Tuple[int, List[int], List[int]]: ...
