IAssetProvider is the interface which allows smart contracts to provide image assets for other smart contracts to use.
We assume there are three types of asset providers.
- Static asset provider, which has a collection of assets (either in the storage or the code) and returns them.
- Generative provider, which dynamically (but deterministically from the seed) generates assets.
- Data visualizer, which generates assets based on various data on the blockchain.
Note: Asset providers MUST implements IERC165 (supportsInterface method) as well.