@CheckReturnValue
  @Contract(pure = true)
  default @NotNull ClickCallback<T> requiringPermission(final @NotNull String permission, final @Nullable Consumer<? super Audience> otherwise) {
    return this.filter(audience -> audience.getOrDefault(PermissionChecker.POINTER, ClickCallbackInternals.ALWAYS_FALSE).test(permission), otherwise);
  }
Require that audiences receiving this callback have a certain permission.

<p>For audiences without permissions information, this test will always fail.</p>

@param permission the permission to check
@param otherwise the action to perform on the audience if the conditions are not met
@return a modified callback
@since 4.13.0
api/src/main/java/net/kyori/adventure/text/event/ClickCallback.java