# onchain_aave v0.4.0 - Table of Contents

> Aave V3 and V4 protocol wrappers for Elixir — pool reads/writes, Hub-and-Spoke reads, Position Manager writes, oracle, math, and type structs. Built on onchain.

## Modules

- [Onchain.Aave.Contracts](Onchain.Aave.Contracts.md): Aave V3 + V4 contract address registry.
- [Onchain.Aave.DebtToken](Onchain.Aave.DebtToken.md): Aave V3 debt token credit delegation reads and writes.
- [Onchain.Aave.Faucet](Onchain.Aave.Faucet.md): Aave testnet faucet operations.
- [Onchain.Aave.Math](Onchain.Aave.Math.md): Aave V3 math — `Decimal.t()` display conversions plus integer-native WadRayMath
and MathUtils ports.
- [Onchain.Aave.Math.V4](Onchain.Aave.Math.V4.md): Aave V4 integer-native math ports.
- [Onchain.Aave.Oracle](Onchain.Aave.Oracle.md): Aave V3 Oracle and Chainlink price feed reads.
- [Onchain.Aave.Pool](Onchain.Aave.Pool.md): High-level Aave V3 Pool read and write operations.
- [Onchain.Aave.Types.AggregatedReserveData](Onchain.Aave.Types.AggregatedReserveData.md): Typed struct for Aave V3 `AggregatedReserveData` from `getReservesData`.
- [Onchain.Aave.Types.BaseCurrencyInfo](Onchain.Aave.Types.BaseCurrencyInfo.md): Typed struct for Aave V3 `BaseCurrencyInfo` from `getReservesData`.
- [Onchain.Aave.Types.UserAccountData](Onchain.Aave.Types.UserAccountData.md): Typed struct for Aave V3 `getUserAccountData` response.
- [Onchain.Aave.Types.UserReserveData](Onchain.Aave.Types.UserReserveData.md): Typed struct for Aave V3 per-user reserve data from `getUserReservesData`.
- [Onchain.Aave.UiPoolDataProvider](Onchain.Aave.UiPoolDataProvider.md): High-level Aave V3 UiPoolDataProvider read operations.
- [Onchain.Aave.V4.Hub](Onchain.Aave.V4.Hub.md): Aave V4 Hub read operations.
- [Onchain.Aave.V4.Hub.Asset](Onchain.Aave.V4.Hub.Asset.md): Typed `IHub.Asset` — Hub-level liquidity, shares, and drawn-rate environment.
- [Onchain.Aave.V4.Hub.AssetConfig](Onchain.Aave.V4.Hub.AssetConfig.md): Typed `IHub.AssetConfig` — fee and interest-rate configuration for a Hub asset.
- [Onchain.Aave.V4.Hub.SpokeConfig](Onchain.Aave.V4.Hub.SpokeConfig.md): Typed `IHub.SpokeConfig` — add/draw caps, risk-premium threshold, and flags.
- [Onchain.Aave.V4.Hub.SpokeData](Onchain.Aave.V4.Hub.SpokeData.md): Typed `IHub.SpokeData` — per-Spoke credit-line inventory and caps.
- [Onchain.Aave.V4.Oracle](Onchain.Aave.V4.Oracle.md): Aave V4 Spoke-scoped oracle reads.
- [Onchain.Aave.V4.PositionManager](Onchain.Aave.V4.PositionManager.md): Aave V4 Giver and Taker Position Manager write wrappers, plus Taker allowances.
- [Onchain.Aave.V4.Spoke](Onchain.Aave.V4.Spoke.md): Aave V4 Spoke read operations.
- [Onchain.Aave.V4.TokenizationSpoke](Onchain.Aave.V4.TokenizationSpoke.md): Aave V4 Tokenization Spoke reads — ERC-4626 share accounting plus V4 metadata.
- [Onchain.Aave.V4.Types.SpokeDynamicReserveConfig](Onchain.Aave.V4.Types.SpokeDynamicReserveConfig.md): Typed Aave V4 `ISpoke.DynamicReserveConfig` data.
- [Onchain.Aave.V4.Types.SpokeLiquidationConfig](Onchain.Aave.V4.Types.SpokeLiquidationConfig.md): Typed Aave V4 `ISpoke.LiquidationConfig` data.
- [Onchain.Aave.V4.Types.SpokeReserveConfig](Onchain.Aave.V4.Types.SpokeReserveConfig.md): Typed Aave V4 `ISpoke.ReserveConfig` data.
- [Onchain.Aave.V4.Types.SpokeReserveData](Onchain.Aave.V4.Types.SpokeReserveData.md): Typed Aave V4 `ISpoke.Reserve` data.
- [Onchain.Aave.V4.Types.SpokeUserData](Onchain.Aave.V4.Types.SpokeUserData.md): Typed Aave V4 per-Spoke user account health data.
- [Onchain.Aave.V4.Types.SpokeUserPosition](Onchain.Aave.V4.Types.SpokeUserPosition.md): Typed Aave V4 `ISpoke.UserPosition` data for one user and reserve.
- [OnchainAave](OnchainAave.md): Aave V3 and V4 protocol wrappers for Elixir.

