@breadstone/archipel-platform-blob-storage
Classes
| Class | Description |
|---|---|
| AwsS3BlobStorageStrategy | Provides a blob storage strategy backed by Amazon S3. |
| AzureBlobStorageStrategy | Provides a blob storage strategy backed by Microsoft Azure Blob Storage. |
| BlobHealthIndicator | Health indicator for blob storage service. |
| BlobModule | NestJS module responsible for providing blob storage services. Uses a strategy pattern to support pluggable storage backends. |
| BlobObjectPersistencePort | Abstract port for persisting blob object metadata. Consuming projects must provide a concrete implementation (e.g. backed by Prisma, Mongo, etc.) and register it via BlobModule.forRoot({ objectPersistence: MyAdapter }). |
| BlobService | Provides a generic abstraction for blob storage operations independent of the underlying provider. |
| BlobStorageStrategyBase | Abstract base class for blob storage strategies. Every concrete provider (AWS S3, Azure, Vercel, Local, etc.) must extend this class. Serves as both the type contract and the NestJS DI token type reference. |
| BlobVariantPersistencePort | Abstract port for persisting blob variant metadata. Consuming projects must provide a concrete implementation and register it via BlobModule.forRoot({ variantPersistence: MyAdapter }). |
| EmptyBlobStorageStrategy | Provides a blob storage strategy backed by the local filesystem. |
| LocalBlobStorageStrategy | Provides a blob storage strategy backed by the local filesystem. |
| VercelBlobStorageStrategy | Provides a blob storage strategy backed by the Vercel Blob API. |
Interfaces
| Interface | Description |
|---|---|
| IBlobDeleteRequest | - |
| IBlobDownloadRequest | - |
| IBlobDownloadResult | - |
| IBlobModuleOptions | - |
| IBlobObjectMetadata | - |
| IBlobSignedUrlRequest | - |
| IBlobUploadRequest | - |
| IBlobUploadResult | - |
Type Aliases
| Type Alias | Description |
|---|---|
| BlobDownloadResponseType | - |
| BlobUploadBody | - |
Variables
| Variable | Description |
|---|---|
| AWS_S3_ACCESS_KEY_ID | AWS S3 access key ID. |
| AWS_S3_BUCKET | AWS S3 bucket name. |
| AWS_S3_CONFIG_ENTRIES | Configuration entries required by the AWS S3 blob storage strategy. |
| AWS_S3_ENDPOINT | AWS S3 custom endpoint (for S3-compatible providers). |
| AWS_S3_REGION | AWS S3 region. |
| AWS_S3_SECRET_ACCESS_KEY | AWS S3 secret access key. |
| AZURE_BLOB_CONNECTION_STRING | Azure Blob Storage connection string. |
| AZURE_BLOB_CONTAINER_NAME | Azure Blob Storage container name. |
| AZURE_CONFIG_ENTRIES | Configuration entries required by the Azure blob storage strategy. |
| BLOB_STORAGE_STRATEGY_TOKEN | - |
| BlobDownloadResponseTypes | - |
| LOCAL_BLOB_BASE_PATH | Local blob storage base path. |
| LOCAL_BLOB_BUCKET | Local blob storage bucket (subdirectory). |
| LOCAL_CONFIG_ENTRIES | Configuration entries required by the local blob storage strategy. |
| PLATFORM_BLOB_STORAGE_CONFIG_ENTRIES | All configuration entries for platform-blob-storage. All keys are optional at the aggregate level. |
| VERCEL_BLOB_BUCKET | Vercel Blob bucket name. |
| VERCEL_BLOB_PUBLIC_URL | Vercel Blob public URL. |
| VERCEL_BLOB_READ_WRITE_TOKEN | Vercel Blob read/write access token. |
| VERCEL_BLOB_REGION | Vercel Blob region. |
| VERCEL_BLOB_URL | Vercel Blob API URL. |
| VERCEL_CONFIG_ENTRIES | Configuration entries required by the Vercel blob storage strategy. |