Skip to main content

Router And Modules

Multiswap runs as a router with installed modules. The Router maps function selectors to module contracts. Calls execute by delegatecall, so installed modules share the Router storage context.

Core Modules

  • Pool: initializes pool state, target token, treasury, surplus accounts, anchors, and deposit phase prep/start.
  • PoolState: exposes read models for pool state, epoch state, reserves, scale, stake, anchors, and deposit phase flags.
  • Deposit: owns user deposits, refund, seal, settle, claim, and claimable amount reads.
  • QuoteParams: stores quote parameters and exposes reserve-asset quote inputs.
  • QuoteMultiswap: computes multiswap quotes from current reserve state.
  • Multiswap: executes user swaps by quoting internally, moving ledger balances, and wrapping or unwrapping external assets when needed.