"""Storage adapter SPI and backend registry. Backends address bytes by content address (ADR-0001). The SPI is small (``put`` / ``get`` / ``head`` / ``delete`` / ``health``) so swapping or adding adapters never touches the registry or API layers. """ from artifactstore.storage.backends.local import LocalBackend from artifactstore.storage.backends.s3 import S3Backend, S3BackendConfig from artifactstore.storage.registry import ( clear as clear_backends, ) from artifactstore.storage.registry import ( get as get_backend, ) from artifactstore.storage.registry import ( list_backends, ) from artifactstore.storage.registry import ( register as register_backend, ) from artifactstore.storage.spi import ( BackendStatus, DeletionResult, ObjectNotFoundError, StorageBackend, StorageObjectMetadata, StorageReceipt, ) __all__ = [ "BackendStatus", "DeletionResult", "LocalBackend", "ObjectNotFoundError", "S3Backend", "S3BackendConfig", "StorageBackend", "StorageObjectMetadata", "StorageReceipt", "clear_backends", "get_backend", "list_backends", "register_backend", ]