# Durable Object storage

Cloudflare Durable Object SQLite adapter for the Core-owned Harness `StorageService`.

```ts
import { makeDurableObjectStorage } from '@zephyrcloudio/harness-storage-durable-object';

const storage = await Effect.runPromise(
  makeDurableObjectStorage({ storage: state.storage, server }),
);
```

The adapter uses structural Durable Object SQL types, so consumers do not need Cloudflare's worker
types to import this package. One SQLite-backed Durable Object is permanently bound to one Harness
`ServerName` and holds every Session of that server.


## Public TypeScript exports

- `DurableObjectProviderAuthorityStorageOptions`
- `DurableObjectSessionCatalogAdoptionStorageOptions`
- `DurableObjectSqlBinding`
- `DurableObjectSqlCursor`
- `DurableObjectSqlRow`
- `DurableObjectSqlStorage`
- `DurableObjectSqlValue`
- `DurableObjectStorageInput`
- `DurableObjectStorageOptions`
- `isStorageMigrationFailure`
- `makeDurableObjectProviderAuthorityStorage`
- `makeDurableObjectSessionCatalogAdoptionStorage`
- `makeDurableObjectStorage`
- `migrateDurableObjectStorage`
- `PortableSessionCatalogAdoptionStorage`
- `readDurableObjectServer`
- `StorageMigrationDiverged`
- `StorageMigrationFailed`
- `StorageMigrationFailure`
- `StorageNewerThanBinary`
- `StorageResetRequired`
- `StorageSchemaDrifted`

---

Generated from [`packages/storage-durable-object/README.md`](https://github.com/ZephyrCloudIO/ze-harness/blob/main/packages/storage-durable-object/README.md).
