[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) › ClaimLease

Defined in: [packages/common/src/Resource.ts:1088](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Resource.ts#L1088)

An owned lease on the resource-retains added by one claim operation.

A ClaimLease is a grouped ownership token. For example, a claim for one
account can retain its relay, local-network, and Bluetooth transports. The
ClaimLease releases that whole group together; it does not expose or transfer
ownership of the resources themselves.

Releasing the lease removes every retain added by that claim call. Release is
idempotent and synchronous; resource disposal remains owned by the
[SharedResourceByKeyWithClaims](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyWithClaims) that created the lease.

## Extends

- [`Disposable`](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-2.html#using-declarations-and-explicit-resource-management)

## Methods

<a id="dispose"></a>

### \[dispose\]()

```ts
dispose: void;
```

Defined in: node\_modules/@typescript/old/lib/lib.esnext.disposable.d.ts:34

#### Inherited from

```ts
Disposable.[dispose]
```

## Properties

<a id="release"></a>

### release

```ts
readonly release: () => boolean;
```

Defined in: [packages/common/src/Resource.ts:1096](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Resource.ts#L1096)

Releases every resource retain owned by this claim lease.

Returns whether this call released a still-held lease. Returns `false` if
the lease was already released or drained by disposal of its owning
[SharedResourceByKeyWithClaims](https://evolu.dev/docs/api-reference/common/Resource/interfaces/SharedResourceByKeyWithClaims) or the Run tree that owns it.