from typing import Mapping
from numpy.typing import ArrayLike
from collections import defaultdict

from ..classes.graph import Graph

__all__ = ["combinatorial_embedding_to_pos"]

def combinatorial_embedding_to_pos(
    embedding, fully_triangulate: bool = False
) -> Mapping: ...
def set_position(parent, tree, remaining_nodes, delta_x, y_coordinate, pos): ...
def get_canonical_ordering(embedding, outer_face: ArrayLike) -> ArrayLike: ...
def triangulate_face(embedding, v1, v2): ...
def triangulate_embedding(embedding, fully_triangulate: bool = True): ...
def make_bi_connected(
    embedding, starting_node, outgoing_node, edges_counted: set
) -> ArrayLike: ...
