requires_authorizationare the 3 different ways that a stake pool can gate which NFTs can be staked in the pool.
requires_collectionsarrays are empty to enforce a random mint list.
stakeinstructions. If a receipt mint (see Stake Receipt section) is created, the current client will do this in two transactions due to compute limitations.
claim_receipt_mint. The client will automatically stake the NFT and then optionally claim a receipt that can either contain the "original" mint OR a dynamic/mutable copy receipt mint.
stake_entrybefore the user can unstake. This will be done automatically when calling the