# FeeVaultDeployer

**Inherits:** IFeeVaultDeployer, BaseVaultDeployer

Helper contract for deploying fee-based vaults with single or multiple depositors Does not deploy the fee vault itself or the FeeCalculator

*Stores and retrieves fee vault parameters using transient storage during deployment*

## State Variables

### FEE\_VAULT\_PARAMETERS\_SLOT

ERC7201-compliant transient storage slot for storing fee vault parameters during deployment

*Equal to keccak256(abi.encode(uint256(keccak256("aera.factory.feeVaultParameters")) - 1)) & \~bytes32(uint256(0xff));*

```solidity
bytes32 internal constant FEE_VAULT_PARAMETERS_SLOT = 0xe980a18a7f321cb444704cc245d4dfee0157b4ba12f1db4cab9c6992a98d2600;
```

## Functions

### feeVaultParameters

Get the deployment parameters for the fee vault

```solidity
function feeVaultParameters() external view returns (FeeVaultParameters memory params);
```

**Returns**

| Name     | Type                 | Description                             |
| -------- | -------------------- | --------------------------------------- |
| `params` | `FeeVaultParameters` | Deployment parameters for the fee vault |

### \_storeFeeVaultParameters

Stores fee vault parameters in transient storage

```solidity
function _storeFeeVaultParameters(FeeVaultParameters calldata params) internal;
```

**Parameters**

| Name     | Type                 | Description                                      |
| -------- | -------------------- | ------------------------------------------------ |
| `params` | `FeeVaultParameters` | Struct with fee calculator, token, and recipient |
