AbstractOptional hook invoked before a controller begins a grouped batch of storage operations.
Providers can use this to open temporary connections or transactions that should stay alive across the whole batch instead of being recreated per request.
AbstractdestroyReleases open resources such as IndexedDB handles, sockets, or in-memory caches.
Optional hook invoked after a grouped batch of storage operations has completed.
AbstractgetRetrieves a stored media payload by content hash.
Content hash to resolve.
AbstractgetLists all stored media hashes known to the provider.
AbstracthasChecks whether a media payload identified by its content hash is already present.
Content hash to look up.
AbstractinitCreates or rebinds provider resources for a specific project scope.
Project identifier used to isolate persisted media.
AbstractisReports whether the provider is currently usable for reads/writes.
AbstractremoveRemoves a stored media payload by content hash.
Content hash to remove.
AbstractstorePersists media in the provider and decides whether downstream providers should continue processing it.
Media payload to store.
AbstractsyncSynchronizes the provider against a master provider and reports whether the local state was already up to date.
Source provider considered authoritative for the sync operation.
Base contract for storage backends used by
StorageController.Implementations decide how media is persisted, synchronized, and retrieved, while the controller coordinates batching and multi-provider fallback. Providers are expected to be reusable across project loads, which is why explicit
initanddestroylifecycle hooks are part of the contract.