# IMilestoneDatabaseAdapter

## Content

# Interface: IMilestoneDatabaseAdapter<S\>

Defines the interface for a milestone database adapter.

## Type parameters

| Name |
| :------ |
| `S` |

## Table of contents

### Properties

- [interval](IMilestoneDatabaseAdapter#interval)

### Methods

- [getMilestoneSnapshot](IMilestoneDatabaseAdapter#getmilestonesnapshot)
- [saveMilestoneSnapshot](IMilestoneDatabaseAdapter#savemilestonesnapshot)

## Properties

### <a id="interval" name="interval"></a> interval

• **interval**: `number`

The interval for saving milestone snapshots; -1 means milestone snapshot saving is disabled.

## Methods

### <a id="getmilestonesnapshot" name="getmilestonesnapshot"></a> getMilestoneSnapshot

▸ **getMilestoneSnapshot**(`id`, `version`): `Promise`<``null`` \| [`ISnapshot`](ISnapshot)<`S`\>\>

Retrieves a milestone snapshot by document ID and version.

#### Parameters

| Name | Type |
| :------ | :------ |
| `id` | `string` |
| `version` | `number` |

#### Returns

`Promise`<``null`` \| [`ISnapshot`](ISnapshot)<`S`\>\>

___

### <a id="savemilestonesnapshot" name="savemilestonesnapshot"></a> saveMilestoneSnapshot

▸ **saveMilestoneSnapshot**(`snapshot`): `Promise`<`boolean`\>

Saves a milestone snapshot.

#### Parameters

| Name | Type |
| :------ | :------ |
| `snapshot` | [`ISnapshot`](ISnapshot)<`S`\> |

#### Returns

`Promise`<`boolean`\>
