What it offers
- depositIntoStrategy: Deposit LSTs (stETH, rETH, cbETH) into a restaking strategy
- delegateTo: Delegate restaked assets to an operator (via DelegationManager)
- undelegate: Undelegate from an operator, initiating withdrawal
Notes
- Foundation of the restaking ecosystem
- Approve LST token to StrategyManager before depositing
- Each LST has its own strategy contract (stETH, rETH, cbETH listed above)
- Withdrawal has a 7-day delay period after undelegating
- delegateTo requires approverSignatureAndExpiry tuple - use empty bytes + far-future expiry for typical cases
Its names in a program
On Ethereum,Eigenlayer is a namespace: its contracts need no import.
Deployments
ABI
DelegationManagerABI
import DelegationManagerABI from "./protocols/eigenlayer/DelegationManagerABI.json"; Speaks for: delegationManager.
delegateTo(address operator, (bytes signature, uint256 expiry) approverSignatureAndExpiry, bytes32 approverSalt)undelegate(address staker) returns (bytes32[] withdrawalRoots)isDelegated(address staker) view returns (bool)
StrategyABI
import StrategyABI from "./protocols/eigenlayer/StrategyABI.json"; Speaks for: stETHStrategy, rETHStrategy, cbETHStrategy.
sharesToUnderlyingView(uint256 amountShares) view returns (uint256)underlyingToSharesView(uint256 amountUnderlying) view returns (uint256)
StrategyManagerABI
import StrategyManagerABI from "./protocols/eigenlayer/StrategyManagerABI.json"; Speaks for: strategyManager.
depositIntoStrategy(address strategy, address token, uint256 amount) returns (uint256 shares)stakerDepositShares(address staker, address strategy) view returns (uint256 shares)
Next steps
- Protocols: the other protocols, by what they do.
- Protocols and tokens: calling a contract by its namespace, or through its ABI.
- Glossary: the words these pages use, in plain terms.
