# calculateDepositNeeded

> **calculateDepositNeeded**(`params`): [`OutputType`](/reference/filoz/synapse-core/warm-storage/namespaces/calculatedepositneeded/type-aliases/outputtype/)

Defined in: [packages/synapse-core/src/warm-storage/calculate-deposit-needed.ts:121](https://github.com/FilOzone/synapse-sdk/blob/ac439ced73387be0f1e7ed7e635dce4bdba76399/packages/synapse-core/src/warm-storage/calculate-deposit-needed.ts#L121)

Orchestrate lockup + runway + debt + buffer to compute total deposit needed.

Returns the deposit together with the lockup and fee breakdowns it was
computed from, so callers can reuse them without recomputing.

## Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `params` | [`ParamsType`](/reference/filoz/synapse-core/warm-storage/namespaces/calculatedepositneeded/type-aliases/paramstype/) | [calculateDepositNeeded.ParamsType](/reference/filoz/synapse-core/warm-storage/namespaces/calculatedepositneeded/type-aliases/paramstype/) |

## Returns

[`OutputType`](/reference/filoz/synapse-core/warm-storage/namespaces/calculatedepositneeded/type-aliases/outputtype/)

[calculateDepositNeeded.OutputType](/reference/filoz/synapse-core/warm-storage/namespaces/calculatedepositneeded/type-aliases/outputtype/)