# RustFsResource

- Module: [CommunityToolkit.Aspire.Hosting.RustFs](/reference/api/typescript/communitytoolkit.aspire.hosting.rustfs.md)
- Version: `13.5.0`
- Kind: `handle`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/tree/4ff8268fbd97ddd23cb73dc8eff9cc92718156d1)

## Definition

```typescript
interface RustFsResource
  extends IComputeResource,
    IExpressionValue,
    IManifestExpressionProvider,
    IResource,
    IResourceWithArgs,
    IResourceWithConnectionString,
    IResourceWithEndpoints,
    IResourceWithEnvironment,
    IResourceWithProbes,
    IResourceWithWaitSupport,
    IValueProvider,
    IValueWithReferences {
  addBucket(bucketName: string): RustFsBucketResource;
  addBuckets(bucketNames: string[]): RustFsResource;
  withDataBindMount(source: string): RustFsResource;
  withDataVolume(name?: string): RustFsResource;
  withSigningRegion(region: string): RustFsResource;
}
```

## Methods

- [addBucket](/reference/api/typescript/communitytoolkit.aspire.hosting.rustfs/rustfsresource/addbucket.md) -- `method` -- Adds a bucket to the RustFs resource. The bucket is created by issuing a signed `PUT` request to the RustFs S3 API after the server resource becomes ready.
    ```typescript
  addBucket(bucketName: string): RustFsBucketResource
  ```
- [addBuckets](/reference/api/typescript/communitytoolkit.aspire.hosting.rustfs/rustfsresource/addbuckets.md) -- `method` -- Adds multiple buckets to the RustFs resource. Each bucket is registered as its own `RustFsBucketResource` child resource and created via the RustFs S3 API once the server resource becomes ready.
    ```typescript
  addBuckets(bucketNames: string[]): RustFsResource
  ```
- [withDataBindMount](/reference/api/typescript/communitytoolkit.aspire.hosting.rustfs/rustfsresource/withdatabindmount.md) -- `method` -- Adds a bind mount for the data folder to a RustFs container resource.
    ```typescript
  withDataBindMount(source: string): RustFsResource
  ```
- [withDataVolume](/reference/api/typescript/communitytoolkit.aspire.hosting.rustfs/rustfsresource/withdatavolume.md) -- `method` -- Adds a named volume for the data folder to a RustFs container resource.
    ```typescript
  withDataVolume(name?: string): RustFsResource
  ```
- [withSigningRegion](/reference/api/typescript/communitytoolkit.aspire.hosting.rustfs/rustfsresource/withsigningregion.md) -- `method` -- Sets the AWS signing region used when creating buckets via the S3 API. Defaults to `us-east-1` if not specified.
    ```typescript
  withSigningRegion(region: string): RustFsResource
  ```
