from __future__ import annotations

from enum import Enum
from typing import Any

class MaskAlgo(Enum):
    MASK_1D = ...
    MASK_2D_GREEDY = ...
    MASK_2D_BEST = ...

class CheckMethod(Enum):
    CHECK_1D = ...
    CHECK_2D = ...
    @staticmethod
    def get_checking_method(mask_algo: Any): ...

def calculate_density(x: Any): ...
def check_mask_1d(mat: Any, n: Any, m: Any): ...
def get_mask_1d(mat: Any, n: Any, m: Any): ...
def check_mask_2d(mat: Any, n: Any, m: Any): ...
def get_mask_2d_greedy(mat: Any, n: Any, m: Any): ...
def get_mask_2d_best(mat: Any, n: Any, m: Any): ...
def create_mask(tensor: Any, func_name: Any = ..., n: int = ..., m: int = ...): ...
def check_sparsity(tensor: Any, func_name: Any = ..., n: int = ..., m: int = ...): ...
