Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@NullMarked @FunctionalInterface public interface ParticleShapeFunction
ParticleShapeFunction is a function that returns a ParticleShape based on a random value.