# ISharedDocEvents

## Content

# Interface: ISharedDocEvents<S, T\>

Events emitted by the SharedDoc.

## Type parameters

| Name | Description |
| :------ | :------ |
| `S` | The type of snapshot data. |
| `T` | The type of operation data. |

## Table of contents

### Methods

- [beforeOp](ISharedDocEvents#beforeop)
- [create](ISharedDocEvents#create)
- [del](ISharedDocEvents#del)
- [error](ISharedDocEvents#error)
- [hardRollback](ISharedDocEvents#hardrollback)
- [load](ISharedDocEvents#load)
- [op](ISharedDocEvents#op)
- [restore](ISharedDocEvents#restore)

## Methods

### <a id="beforeop" name="beforeop"></a> beforeOp

▸ **beforeOp**(`op`, `source?`): `void`

Triggered before an operation is applied.

#### Parameters

| Name | Type |
| :------ | :------ |
| `op` | `T` |
| `source?` | `unknown` |

#### Returns

`void`

___

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

▸ **create**(`source?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `source?` | `unknown` |

#### Returns

`void`

___

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

▸ **del**(`data`, `source?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `data` | `S` |
| `source?` | `unknown` |

#### Returns

`void`

___

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

▸ **error**(`err`): `void`

Triggered when an error occurs.

#### Parameters

| Name | Type |
| :------ | :------ |
| `err` | [`OTError`](../classes/OTError) |

#### Returns

`void`

___

### <a id="hardrollback" name="hardrollback"></a> hardRollback

▸ **hardRollback**(): `void`

#### Returns

`void`

___

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

▸ **load**(): `void`

Triggered after a client fetches or subscribes to the snapshot.

#### Returns

`void`

___

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

▸ **op**(`op`, `source?`): `void`

Triggered after an operation is applied.

#### Parameters

| Name | Type |
| :------ | :------ |
| `op` | `T` |
| `source?` | `unknown` |

#### Returns

`void`

___

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

▸ **restore**(`targetVersion`, `source?`): `void`

#### Parameters

| Name | Type |
| :------ | :------ |
| `targetVersion` | `number` |
| `source?` | `unknown` |

#### Returns

`void`
