[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [local‑first/Protocol](https://evolu.dev/docs/api-reference/common/local-first/Protocol) › TimestampsBuffer

Defined in: [packages/common/src/local-first/Protocol.ts:1047](https://github.com/evoluhq/evolu/blob/ce3eb809eb57a41429fb1d59d3c335e355814533/packages/common/src/local-first/Protocol.ts#L1047)

## Properties

<a id="add"></a>

### add

```ts
readonly add: (timestamp: Timestamp) => void;
```

Defined in: [packages/common/src/local-first/Protocol.ts:1048](https://github.com/evoluhq/evolu/blob/ce3eb809eb57a41429fb1d59d3c335e355814533/packages/common/src/local-first/Protocol.ts#L1048)

<a id="addinfinite"></a>

### addInfinite

```ts
readonly addInfinite: () => void;
```

Defined in: [packages/common/src/local-first/Protocol.ts:1049](https://github.com/evoluhq/evolu/blob/ce3eb809eb57a41429fb1d59d3c335e355814533/packages/common/src/local-first/Protocol.ts#L1049)

<a id="append"></a>

### append

```ts
readonly append: (buffer: Buffer) => void;
```

Defined in: [packages/common/src/local-first/Protocol.ts:1052](https://github.com/evoluhq/evolu/blob/ce3eb809eb57a41429fb1d59d3c335e355814533/packages/common/src/local-first/Protocol.ts#L1052)

<a id="checkpoint"></a>

### checkpoint

```ts
readonly checkpoint: () => () => void;
```

Defined in: [packages/common/src/local-first/Protocol.ts:1061](https://github.com/evoluhq/evolu/blob/ce3eb809eb57a41429fb1d59d3c335e355814533/packages/common/src/local-first/Protocol.ts#L1061)

Returns a function that restores the buffer, in constant time, to the state
it had when this was called, discarding every timestamp added since.

A restore function can be called repeatedly. It is valid until the buffer
is restored to an earlier checkpoint.

<a id="getcount"></a>

### getCount

```ts
readonly getCount: () => number & Brand<"NonNaN"> & Brand<"Finite"> & Brand<"Int"> & Brand<"NonNegative">;
```

Defined in: [packages/common/src/local-first/Protocol.ts:1050](https://github.com/evoluhq/evolu/blob/ce3eb809eb57a41429fb1d59d3c335e355814533/packages/common/src/local-first/Protocol.ts#L1050)

<a id="getlength"></a>

### getLength

```ts
readonly getLength: () => number;
```

Defined in: [packages/common/src/local-first/Protocol.ts:1051](https://github.com/evoluhq/evolu/blob/ce3eb809eb57a41429fb1d59d3c335e355814533/packages/common/src/local-first/Protocol.ts#L1051)