# Interfaces

This section provides an overview of the core interfaces used in the vault system. Each interface defines the standard methods for interacting with key components of the architecture.

### Core Interfaces

#### `DepositPipe`

Interface for deposit operations. Each DepositPipe handles deposits for a specific asset type and implements ERC4626 compatibility.

**Use Cases:**

* User deposits from same chain (hub)
* Cross-chain deposits via LayerZero
* Integration with DeFi protocols

***

#### `RedemptionPipe`

Interface for redemption operations. Handles instant and standard redemptions with liquidity management.

**Use Cases:**

* User redemptions on hub chain
* Cross-chain redemptions
* Liquidity provider integrations

***

#### `ShareManager`

Interface for managing vault shares. Tracks total supply on all chains and enforces limits on deposits, supply, and withdrawals.

**Use Cases:**

* Share minting/burning operations
* Limit enforcement
* Cross-chain share transfers
* Security controls

***

#### `NAVOracle`

Interface for Net Asset Value (NAV) management. Tracks the total value of assets in the vault and provides controlled mechanisms for updating it.

**Use Cases:**

* NAV tracking for share pricing
* Deposit/redemption NAV updates
* External valuation integrations

***

### Standard Interfaces

The system also implements standard ERC interfaces:

* **ERC20**: ShareManager implements standard ERC20 for share tokens
* **OFT:** xTokens Share implements the LayerZero OFT standard
* **ERC4626**: DepositPipe and RedemptionPipe implements ERC4626 and ERC7545 vault standard

***

### Decimal Handling

* **Shares**: Always 18 decimals
* **NAV**: Always 18 decimals (normalized internally)
* **Deposit Assets**: Native decimals (USDC = 6, USDT = 6, USDe = 18)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.liminal.money/tokenized/developers/interfaces.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
