# PrepareOptions

Defined in: [packages/synapse-sdk/src/types.ts:47](https://github.com/FilOzone/synapse-sdk/blob/0c729dad461472f017e4d84f8e6ac16e6afbe7c0/packages/synapse-sdk/src/types.ts#L47)

Options for the prepare() method on StorageManager

## Properties

### bufferEpochs?

> `optional` **bufferEpochs?**: `bigint`

Defined in: [packages/synapse-sdk/src/types.ts:55](https://github.com/FilOzone/synapse-sdk/blob/0c729dad461472f017e4d84f8e6ac16e6afbe7c0/packages/synapse-sdk/src/types.ts#L55)

Safety margin in epochs. Default: 5n

***

### context?

> `optional` **context?**: [`StorageContext`](/reference/filoz/synapse-sdk/storage/classes/storagecontext/) \| [`StorageContext`](/reference/filoz/synapse-sdk/storage/classes/storagecontext/)[]

Defined in: [packages/synapse-sdk/src/types.ts:49](https://github.com/FilOzone/synapse-sdk/blob/0c729dad461472f017e4d84f8e6ac16e6afbe7c0/packages/synapse-sdk/src/types.ts#L49)

StorageContext(s) to prepare for upload.

***

### costs?

> `optional` **costs?**: [`OutputType`](/reference/filoz/synapse-core/utils/namespaces/calculateuploadcosts/type-aliases/outputtype/)

Defined in: [packages/synapse-sdk/src/types.ts:57](https://github.com/FilOzone/synapse-sdk/blob/0c729dad461472f017e4d84f8e6ac16e6afbe7c0/packages/synapse-sdk/src/types.ts#L57)

Pre-computed costs — skips internal getUploadCosts() call.

***

### extraRunwayEpochs?

> `optional` **extraRunwayEpochs?**: `bigint`

Defined in: [packages/synapse-sdk/src/types.ts:53](https://github.com/FilOzone/synapse-sdk/blob/0c729dad461472f017e4d84f8e6ac16e6afbe7c0/packages/synapse-sdk/src/types.ts#L53)

Extra runway in epochs beyond the required lockup.

***

### pieceSizes

> **pieceSizes**: readonly `bigint`[]

Defined in: [packages/synapse-sdk/src/types.ts:51](https://github.com/FilOzone/synapse-sdk/blob/0c729dad461472f017e4d84f8e6ac16e6afbe7c0/packages/synapse-sdk/src/types.ts#L51)

Exact raw payload size of every piece committed per storage context, in bytes.