diff --git a/src/netius/adapters/base.pyi b/src/netius/adapters/base.pyi new file mode 100644 index 00000000..74b0f25d --- /dev/null +++ b/src/netius/adapters/base.pyi @@ -0,0 +1,16 @@ +from typing import Any, BinaryIO, Sequence + +class BaseAdapter: + def set(self, value: Any, owner: str = ...): ... + def get(self, key: str) -> bytes | None: ... + def get_file(self, key: str, mode: str = ...) -> BinaryIO: ... + def delete(self, key: str, owner: str = ...): ... + def append(self, key: str, value: Any): ... + def truncate(self, key: str, count: int): ... + def size(self, key: str) -> int: ... + def sizes(self, owner: str | None = ...) -> list[int]: ... + def total(self, owner: str | None = ...) -> int: ... + def reserve(self, owner: str = ...): ... + def count(self, owner: str | None = ...) -> int: ... + def list(self, owner: str | None = ...) -> Sequence[str]: ... + def generate(self) -> str: ... diff --git a/src/netius/adapters/fs.pyi b/src/netius/adapters/fs.pyi new file mode 100644 index 00000000..d900ceb4 --- /dev/null +++ b/src/netius/adapters/fs.pyi @@ -0,0 +1,11 @@ +from os import PathLike + +from netius import BaseAdapter + +class FsAdapter(BaseAdapter): + base_path: str + + def __init__(self, base_path: str | None = ...) -> None: ... + def _path(self, owner: str | None = ...) -> str: ... + def _ensure(self, owner: str) -> str: ... + def _symlink(self, source: PathLike[str], target: PathLike[str]) -> None: ... diff --git a/src/netius/adapters/memory.pyi b/src/netius/adapters/memory.pyi new file mode 100644 index 00000000..184f59b2 --- /dev/null +++ b/src/netius/adapters/memory.pyi @@ -0,0 +1,8 @@ +from typing import Any, BinaryIO, Callable + +from netius import BaseAdapter + +class MemoryAdapter(BaseAdapter): + def __init__(self): ... + def _ensure(self, owner: str) -> dict[str, Any]: ... + def _build_close(self, file: BinaryIO, key: str) -> Callable[[], None]: ... diff --git a/src/netius/adapters/mongo.pyi b/src/netius/adapters/mongo.pyi new file mode 100644 index 00000000..545e27b9 --- /dev/null +++ b/src/netius/adapters/mongo.pyi @@ -0,0 +1,4 @@ +from netius import BaseAdapter + +class MongoAdapter(BaseAdapter): + pass diff --git a/src/netius/adapters/null.pyi b/src/netius/adapters/null.pyi new file mode 100644 index 00000000..af22525b --- /dev/null +++ b/src/netius/adapters/null.pyi @@ -0,0 +1,4 @@ +from netius import BaseAdapter + +class NullAdapter(BaseAdapter): + pass