// SPDX-License-Identifier: MIT pragma solidity ^0.8.13; import "@openzeppelin/contracts/token/ERC721/IERC721.sol"; import "@openzeppelin/contracts/interfaces/IERC165.sol"; import "../../listing/listing-configurator/v1-controller/mechanics/listing/ICanListAssets.sol"; import "../../listing/listing-configurator/v1-controller/mechanics/renting/IListingTermsAware.sol"; import "../../listing/listing-configurator/v1-controller/mechanics/renting/IIsRentableListing.sol"; import "../../listing/listing-configurator/v1-controller/mechanics/reward/IERC20RewardAware.sol"; import "../../universe/universe-token/IUniverseToken.sol"; import "../../warper/mechanics/v1-controller/asset-rentability/IAssetRentabilityMechanics.sol"; import "../../warper/mechanics/v1-controller/availability-period/IAvailabilityPeriodMechanics.sol"; import "../../warper/mechanics/v1-controller/rental-fee-premium/IRentalFeePremiumMechanics.sol"; import "../../warper/mechanics/v1-controller/rental-period/IRentalPeriodMechanics.sol"; import "../../warper/mechanics/v1-controller/renting-hook/IRentingHookMechanics.sol"; import "../../warper/IWarper.sol"; import "../../warper/ERC721/IERC721Warper.sol"; contract SolidityInterfaces { struct Interface { string name; bytes4 id; } Interface[] internal _list; constructor() { _list.push(Interface("IERC721", type(IERC721).interfaceId)); _list.push(Interface("IERC165", type(IERC165).interfaceId)); _list.push(Interface("ICanListAssets", type(ICanListAssets).interfaceId)); _list.push(Interface("IListingTermsAware", type(IListingTermsAware).interfaceId)); _list.push(Interface("IIsRentableListing", type(IIsRentableListing).interfaceId)); _list.push(Interface("IERC20RewardAware", type(IERC20RewardAware).interfaceId)); _list.push(Interface("IContractEntity", type(IContractEntity).interfaceId)); _list.push(Interface("IUniverseToken", type(IUniverseToken).interfaceId)); _list.push(Interface("IUniverseRegistry", type(IUniverseRegistry).interfaceId)); _list.push(Interface("IAssetRentabilityMechanics", type(IAssetRentabilityMechanics).interfaceId)); _list.push(Interface("IAvailabilityPeriodMechanics", type(IAvailabilityPeriodMechanics).interfaceId)); _list.push(Interface("IRentalFeePremiumMechanics", type(IRentalFeePremiumMechanics).interfaceId)); _list.push(Interface("IRentalPeriodMechanics", type(IRentalPeriodMechanics).interfaceId)); _list.push(Interface("IRentingHookMechanics", type(IRentingHookMechanics).interfaceId)); _list.push(Interface("IWarper", type(IWarper).interfaceId)); _list.push(Interface("IERC721Warper", type(IERC721Warper).interfaceId)); } function list() external view returns (Interface[] memory) { return _list; } }