Source code for samgis_core.utilities.type_hints

"""custom type hints"""
from enum import Enum
from typing import TypedDict, NewType

from PIL.Image import Image
from numpy import ndarray


[docs] class DictStrInt(dict[str, int]): pass
[docs] class DictStr(dict[str]): pass
[docs] class DictStrAny(dict[str, any]): pass
[docs] class ListDict(list[dict]): pass
[docs] class ListFloat(list[float]): pass
[docs] class ListInt(list[int]): pass
[docs] class TupleInt(tuple[int]): pass
TupleInt2 = NewType("TupleInt", tuple[int, int])
[docs] class TupleNdarrayInt(tuple[ndarray, int]): pass
[docs] class TupleNdarrayFloat(tuple[ndarray, float]): pass
[docs] class LlistFloat(ListFloat): pass
[docs] class TupleFloat(tuple[float]): pass
[docs] class TupleFloatAny(tuple[float, any]): pass
PIL_Image = Image
[docs] class StrEnum(str, Enum): pass
[docs] class EmbeddingImage(TypedDict): image_embedding: ndarray original_size: TupleInt transform_matrix: ndarray
[docs] class EmbeddingPILImage(TypedDict): image_embedding: ndarray original_size: TupleInt2 resized_size: TupleInt2
EmbeddingDict = dict[str, EmbeddingImage] EmbeddingPILDict = dict[str, EmbeddingPILImage]