Exponent Vaults may consist of different contract modules:
Settler: A contract that batch submits multiple transactions. This contract will be whitelisted by the vault owner as an active manager. the contract will have a limited set of actions permitted on each vault
Custom Adapter Integration*: A module contract that facilitates interaction with external DeFi protocols where ERC20 and price feeds are available, and thus allows the vault to determine the net asset value.
Custom External Positions*: A module contract that facilitates interaction with external DeFi protocols. In an environment where the price feed is not present and value calculation via ERC20 tokens is not possible. The contract must report assets and liabilities to the vault chronologically to determine the real net asset value.
Issuance: A contract that facilitates batch entry/exit into and out of the vault to socialize gas costs for users. Only applies to vaults with multiple sets of token holders.
Custom Policies*: Contract-level protection to ensure settlers can act within the best interest of vault owners. Policies may vary depending on user requirements or the types of products.
Custom Fees*: On-chain configurations of how fees are paid to Exponent. The parameters such as amounts, or how fees are incurred, are unique to different types of products.
*Policies, Fees, External Positions, or Adapters not available within the Enzyme framework will be developed from scratch as a custom contract integration under the Exponent governance.