@Override
            public @NonNull PermissionResult testPermission(final @NonNull C sender) {
                return PermissionResult.of(predicate.test(sender), this);
            }
Creates a new predicate permission

@param predicate predicate that determines whether the sender has the permission
@param <C>       command sender type
@return created permission node
cloud-core/src/main/java/org/incendo/cloud/permission/PredicatePermission.java