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

Defined in: [packages/common/src/Resource.ts:394](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Resource.ts#L394)

Snapshot returned by [SharedResourceByKey.snapshot](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKey#snapshot).

## Properties

<a id="mutexbykey"></a>

### mutexByKey

```ts
readonly mutexByKey: ReadonlyMap<K,
  | SemaphoreSnapshot
| null>;
```

Defined in: [packages/common/src/Resource.ts:399](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Resource.ts#L399)

Current mutex state for each key in the resource snapshot.

---

<a id="resourcesbykey"></a>

### resourcesByKey

```ts
readonly resourcesByKey: ReadonlyMap<K, BorrowedResource<T>>;
```

Defined in: [packages/common/src/Resource.ts:396](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Resource.ts#L396)

Current borrowed resources by key.