add a stub file for better user experience
e.g.
# lru.pyi
from typing import Any, Generic, Hashable, TypeVar, Callable
_K = TypeVar("_K", bound=Hashable)
_V = TypeVar("_V")
_T = TypeVar("_T")
class LRU(Generic[_K, _V]):
def __init__(self, size: int, callback: Callable[[_K, _V], Any] | None) -> None: ...
def get(self, key: _K, default: _T) -> _V | _T: ...
def __getitem__(self, item: _K) -> _V: ...
def set(self, key: _K, value: Any) -> None: ...
def __setitem__(self, key: _K, value: Any) -> None: ...
...
add a stub file for better user experience
e.g.