Interfaces
| This document is better viewed at https://docs.openzeppelin.com/contracts/api/interfaces |
List of standardized interfaces
These interfaces are available as .sol files. These are useful to interact with third party contracts that implement them.
-
IERC7540(IERC7540Operator,IERC7540Deposit,IERC7540Redeem): Operator management and asynchronous deposit/redeem request interfaces for ERC-7540 tokenized vaults. -
IERC7575(IERC7575,IERC7575Share): Multi-asset ERC-4626 vaults and share-to-vault lookup interfaces. -
IERC7786Attributes: Standard attributes for ERC-7786 cross-chain messaging. -
{IERC7913SignatureVerifier}
-
{IERC7943}: ERC-20 based interface for RWA tokens with account restrictions, asset freezing, and forced transfers.
-
{IERC7969} (
IDKIMRegistry): Onchain DKIM public key registry interface for email-based authentication.
Detailed ABI
IERC7540
import "@openzeppelin/community-contracts/interfaces/IERC7540.sol";
Interface of the fully asynchronous Vault interface of ERC7540, as defined in https://eips.ethereum.org/EIPS/eip-7540
-
share()
-
asset() -
totalAssets() -
convertToShares(assets) -
convertToAssets(shares) -
maxDeposit(receiver) -
previewDeposit(assets) -
deposit(assets, receiver) -
maxMint(receiver) -
previewMint(shares) -
mint(shares, receiver) -
maxWithdraw(owner) -
previewWithdraw(assets) -
withdraw(assets, receiver, owner) -
maxRedeem(owner) -
previewRedeem(shares) -
redeem(shares, receiver, owner)
-
name() -
symbol() -
decimals()
-
totalSupply() -
balanceOf(account) -
transfer(to, value) -
allowance(owner, spender) -
approve(spender, value) -
transferFrom(from, to, value)
-
supportsInterface(interfaceId)
-
requestRedeem(shares, controller, owner) -
pendingRedeemRequest(requestId, controller) -
claimableRedeemRequest(requestId, controller)
-
requestDeposit(assets, controller, owner) -
pendingDepositRequest(requestId, controller) -
claimableDepositRequest(requestId, controller) -
deposit(assets, receiver, controller) -
mint(shares, receiver, controller)
-
setOperator(operator, approved) -
isOperator(controller, operator)
-
Deposit(sender, owner, assets, shares) -
Withdraw(sender, receiver, owner, assets, shares)
-
Transfer(from, to, value) -
Approval(owner, spender, value)
-
RedeemRequest(controller, owner, requestId, sender, shares)
-
DepositRequest(controller, owner, requestId, sender, assets)
-
OperatorSet(controller, operator, approved)
IERC7575
import "@openzeppelin/community-contracts/interfaces/IERC7575.sol";
Multi-Asset ERC-4626 Vaults, as defined in https://eips.ethereum.org/EIPS/eip-7575
-
share()
-
asset() -
totalAssets() -
convertToShares(assets) -
convertToAssets(shares) -
maxDeposit(receiver) -
previewDeposit(assets) -
deposit(assets, receiver) -
maxMint(receiver) -
previewMint(shares) -
mint(shares, receiver) -
maxWithdraw(owner) -
previewWithdraw(assets) -
withdraw(assets, receiver, owner) -
maxRedeem(owner) -
previewRedeem(shares) -
redeem(shares, receiver, owner)
-
name() -
symbol() -
decimals()
-
totalSupply() -
balanceOf(account) -
transfer(to, value) -
allowance(owner, spender) -
approve(spender, value) -
transferFrom(from, to, value)
-
supportsInterface(interfaceId)
-
Deposit(sender, owner, assets, shares) -
Withdraw(sender, receiver, owner, assets, shares)
-
Transfer(from, to, value) -
Approval(owner, spender, value)