import h5py as h5
import numpy as np
from .core import typing as tp
from .core.property import Corners as Corners

def linspace(start, end, count: int): ...
def meshcorners(corners: tp.NDArray, grid: tp.IntTuple): ...
def cutpatch(data: tp.Union[tp.NDArray, h5.Dataset], corners: tp.NDArray, grid: tp.IntTuple, fill: tp.Any = ...) -> np.ndarray: ...

class ByPatchWrapper:
    def __init__(self, func: tp.Callable[[tp.NDArray], tp.NDArray], size: tp.IntTuple, spacing: tp.FloatTuple = ..., grid: tp.IntTuple = ...) -> None: ...
    def __call__(self, data: tp.NDArray, spacing: tp.FloatTuple = ..., grid: tp.IntTuple = ..., **kwargs) -> np.ndarray: ...
