MaxFreeHeadersPerBlock: PlainDescriptor<number>

Maximal number of "free" header transactions per block.

To be able to track the bridged chain, the pallet requires all headers that are changing GRANDPA authorities set at the bridged chain (we call them mandatory). So it is a common good deed to submit mandatory headers to the pallet.

The pallet may be configured (see [Self::FreeHeadersInterval]) to import some non-mandatory headers for free as well. It also may be treated as a common good deed, because it may help to reduce bridge fees - this cost may be deducted from bridge fees, paid by message senders.

However, if the bridged chain gets compromised, its validators may generate as many "free" headers as they want. And they may fill the whole block (at this chain) for free. This constant limits number of calls that we may refund in a single block. All calls above this limit are accepted, but are not refunded.