API reference@evolu/commonResource › createSharedResourceByKeyWithClaims

Call Signature

function createSharedResourceByKeyWithClaims<T, K, C, D>(
  create: (key: K) => Task<T, never, D>,
): Task<SharedResourceByKeyWithClaims<K, C, T, D>, never, D>;

Defined in: packages/common/src/Resource.ts:625

Creates SharedResourceByKeyWithClaims.

Claim-resource pairs are reference-counted by logical identity. The underlying resource for a key is acquired on the first active claim and released when the last active claim for that key is removed.

Call Signature

function createSharedResourceByKeyWithClaims<T, K, C, D, LK, LC>(
  create: (key: K) => Task<T, never, D>,
  options: SharedResourceByKeyWithClaimsOptions<K, C, T, LK, LC>,
): Task<SharedResourceByKeyWithClaims<K, C, T, D>, never, D>;

Defined in: packages/common/src/Resource.ts:633

Creates SharedResourceByKeyWithClaims.

Claim-resource pairs are reference-counted by logical identity. The underlying resource for a key is acquired on the first active claim and released when the last active claim for that key is removed.