public static BlockHeaderValidator.Builder cliqueBlockHeaderValidator(
      final long secondsBetweenBlocks,
      final boolean createEmptyBlocks,
      final EpochManager epochManager,
      final Optional<BaseFeeMarket> baseFeeMarket) {
    return cliqueBlockHeaderValidator(
        secondsBetweenBlocks,
        createEmptyBlocks,
        epochManager,
        baseFeeMarket,
        MergeConfiguration.isMergeEnabled());
  }
Creates a set of rules which when executed will determine if a given block header is valid with
respect to its parent (or chain).

<p>Specifically the set of rules provided by this function are to be used for a Clique chain.

@param secondsBetweenBlocks the minimum number of seconds which must elapse between blocks.
@param createEmptyBlocks whether clique should allow the creation of empty blocks.
@param epochManager an object which determines if a given block is an epoch block.
@param baseFeeMarket an {@link Optional} wrapping {@link BaseFeeMarket} class if appropriate.
@return the header validator.
consensus/clique/src/main/java/org/hyperledger/besu/consensus/clique/BlockHeaderValidationRulesetFactory.java