An example of porting EIP-2981 to implement royalties at a per-contract level.
Exposes a new query message type:
// Should be called on sale to see if royalties are owed
// by the marketplace selling the NFT.
// See https://eips.ethereum.org/EIPS/eip-2981
RoyaltyInfo {
token_id: String,
// the denom of this sale must also be the denom returned by RoyaltiesInfoResponse
sale_price: Coin,
},
// Called against the contract to signal that CW-2981 is implemented
CheckRoyalties {},
Note that as this is contract-wide, token_id
is required but ignored.