Search Results for

Show / Hide Table of Contents

# Namespace CoreUpload.Providers

### Classes

#### AzureAbortRequest

#### AzureCompleteRequest

#### AzureCompleteResult

#### AzureCreateRequest

#### AzureCreateResult

#### FileSystemProvider

Default provider that stores uploads, metadata, and chunk sessions on the local file system.

#### GcsAbortRequest

#### GcsCompleteRequest

#### GcsCompleteResult

#### GcsCreateRequest

#### GcsCreateResult

#### GcsSignRequest

#### GcsSignResult

#### GcsSignerOptions

Configuration object for built-in GCS signer implementations. Apps may either implement IGcsSigner directly or instantiate a reference implementation with these options.

#### ImageTransformRequest

Typed, validated view of the URL transform contract produced by `CoreUpload.transformUrl()` on the client (`?w=&h=&fit=&format=&q=&crop=&blur=&gravity=&rotate=&flip=&grayscale=&wm=&wmpos=`).

IImageTransformer implementations receive the raw IQueryCollection; call Parse(IQueryCollection) to get clamped, whitelist-validated values instead of re-parsing strings. Invalid or out-of-range values are dropped (never throw) so a malformed URL degrades to the original image rather than a 500.

#### S3AbortRequest

#### S3CompleteRequest

#### S3CompleteResult

#### S3CreateRequest

#### S3CreateResult

#### S3ListPartsRequest

#### S3ListPartsResult

#### S3Part

#### S3SignRequest

#### S3SignResult

#### S3StoredPart

### Interfaces

#### IAzureSigner

Bridges CoreUpload to an Azure Blob Storage upload session using a pre-signed blob SAS URL. The browser uses the SAS to PutBlock and PutBlockList directly; the server only signs and records metadata. The core library takes no Azure SDK dependency — host apps register an implementation with DI: `services.AddSingleton<IAzureSigner, MyAzureSigner>()`. When no IAzureSigner is registered, the `/azure/*` endpoints respond with `501 Not Implemented`.

#### IGcsSigner

Bridges CoreUpload to a Google Cloud Storage resumable upload session. The core library takes no Google.Cloud.Storage SDK dependency — host apps register an implementation with DI:

    builder.Services.AddSingleton<IGcsSigner, MyGcsSigner>();

When no IGcsSigner is registered, the `/gcs/*` endpoints respond with `501 Not Implemented`.

#### IImageTransformer

Optional server-side image transformer for URL-based transforms (`?w=&h=&fit=&format=&q=`) produced by `CoreUpload.transformUrl()` on the client.

CoreUpload ships ZERO image-library dependencies to remain cross-platform and trimming-friendly, so this capability is opt-in. Register an implementation in DI to have the download endpoint honor transform query parameters:

    builder.Services.AddSingleton<IImageTransformer, ImageSharpTransformer>();

When no implementation is registered, the download endpoint streams the original bytes and the client / CDN is expected to apply the transform.

#### IS3Signer

Bridges CoreUpload to an S3-compatible multipart upload session. The core library takes no AWS SDK dependency — host apps plug in their own signer by registering an implementation with DI:

    builder.Services.AddSingleton<IS3Signer, MyS3Signer>();

Works for any S3-API-compatible backend (AWS S3, MinIO, Backblaze B2, Cloudflare R2, Wasabi, etc.). When no IS3Signer is registered, the `/s3/*` endpoints respond with `501 Not Implemented`.

#### IUploaderProvider

Defines the storage operations used by CoreUpload to save, read, move, and maintain uploaded files. Providers abstract where uploaded file contents and metadata live.