[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › Resource

Concurrency-safe helpers for efficient reuse of disposable resources.

## Functions

| Function                                                                                                                     | Description                                                                                                                |
| ---------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| [createSharedResource](https://evolu.dev/docs/api-reference/common/Resource/functions/createSharedResource)                               | Creates [SharedResource](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResource).                               |
| [createSharedResourceByKey](https://evolu.dev/docs/api-reference/common/Resource/functions/createSharedResourceByKey)                     | Creates [SharedResourceByKey](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKey).                     |
| [createSharedResourceByKeyWithClaims](https://evolu.dev/docs/api-reference/common/Resource/functions/createSharedResourceByKeyWithClaims) | Creates [SharedResourceByKeyWithClaims](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyWithClaims). |

## Interfaces

| Interface                                                                                                                         | Description                                                                                                                                               |
| --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [ClaimLease](https://evolu.dev/docs/api-reference/common/Resource/interfaces/ClaimLease)                                                       | An owned lease on the resource-retains added by one claim operation.                                                                                      |
| [Lease](https://evolu.dev/docs/api-reference/common/Resource/interfaces/Lease)                                                                 | An owned lease on a shared [Resource](https://evolu.dev/docs/api-reference/common/Resource/type-aliases/Resource).                                                     |
| [SharedResource](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResource)                                               | Shared [Resource](https://evolu.dev/docs/api-reference/common/Resource/type-aliases/Resource).                                                                         |
| [SharedResourceByKey](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKey)                                     | Shared [Resource](https://evolu.dev/docs/api-reference/common/Resource/type-aliases/Resource)s keyed by logical identity.                                              |
| [SharedResourceByKeyOptions](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyOptions)                       | Options for [createSharedResourceByKey](https://evolu.dev/docs/api-reference/common/Resource/functions/createSharedResourceByKey).                                     |
| [SharedResourceByKeySnapshot](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeySnapshot)                     | Snapshot returned by [SharedResourceByKey.snapshot](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKey#snapshot).                     |
| [SharedResourceByKeyWithClaims](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyWithClaims)                 | Shared keyed [Resource](https://evolu.dev/docs/api-reference/common/Resource/type-aliases/Resource)s retained through claims.                                          |
| [SharedResourceByKeyWithClaimsOptions](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyWithClaimsOptions)   | Options for [createSharedResourceByKeyWithClaims](https://evolu.dev/docs/api-reference/common/Resource/functions/createSharedResourceByKeyWithClaims).                 |
| [SharedResourceByKeyWithClaimsSnapshot](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyWithClaimsSnapshot) | Snapshot returned by [SharedResourceByKeyWithClaims.snapshot](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyWithClaims#snapshot). |
| [SharedResourceOptions](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceOptions)                                 | Options for [createSharedResource](https://evolu.dev/docs/api-reference/common/Resource/functions/createSharedResource).                                               |
| [SharedResourceSnapshot](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceSnapshot)                               | Snapshot returned by [SharedResource.snapshot](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResource#snapshot).                               |

## Type Aliases

| Type Alias                                                                                | Description                                                                         |
| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| [BorrowedResource](https://evolu.dev/docs/api-reference/common/Resource/type-aliases/BorrowedResource) | Borrowed [Resource](https://evolu.dev/docs/api-reference/common/Resource/type-aliases/Resource). |
| [Resource](https://evolu.dev/docs/api-reference/common/Resource/type-aliases/Resource)                 | Disposable resource.                                                                |