@Override
    @SuppressWarnings("FunctionalInterfaceMethodChanged")
    default @NonNull CloudKey<Void> key() {
        return CloudKey.of(this.getClass().getSimpleName());
    }
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