# Interface: SyncEngineConfig

Defined in: [packages/core/src/sync/sync-engine.ts:47](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L47)

## Properties

| Property | Modifier | Type | Description | Defined in |
| ------ | ------ | ------ | ------ | ------ |
| <a id="property-files"></a> `files?` | `readonly` | (`peerId`, `message`) => `Promise`\<`void`\> | Where a files message from a peer goes (spec 05 §16.6); without it, they are dropped | [packages/core/src/sync/sync-engine.ts:65](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L65) |
| <a id="property-heartbeatinterval"></a> `heartbeatInterval?` | `readonly` | `number` | - | [packages/core/src/sync/sync-engine.ts:55](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L55) |
| <a id="property-holds"></a> `holds?` | `readonly` | () => `Holds` | What this node holds, asked afresh for every hello. Default: everything. | [packages/core/src/sync/sync-engine.ts:63](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L63) |
| <a id="property-self"></a> `self?` | `readonly` | `string` | This node's id among its peers; of two peers, the one that sorts first starts reconciling. Without it this node always starts, sometimes doubling the work. | [packages/core/src/sync/sync-engine.ts:54](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L54) |
| <a id="property-sendtopeer"></a> `sendToPeer` | `readonly` | (`peerId`, `message`) => `void` | - | [packages/core/src/sync/sync-engine.ts:49](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L49) |
| <a id="property-storageprovider"></a> `storageProvider` | `readonly` | [`StorageProvider`](https://minca.dev/api/storage/interfaces/StorageProvider.md) | - | [packages/core/src/sync/sync-engine.ts:48](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L48) |
| <a id="property-validate"></a> `validate?` | `readonly` | (`version`) => `Promise`\<[`IncomingValidation`](https://minca.dev/api/core/interfaces/IncomingValidation.md)\> | Gatekeeper for versions from peers, typically `createVersionCheck`. What it rejects is dropped and surfaces as `rejected`. Without it, everything is accepted: only for a trusted transport or a test. | [packages/core/src/sync/sync-engine.ts:61](https://github.com/leifriksheim/minca/blob/main/core/src/sync/sync-engine.ts#L61) |
