when<T>  method 
      
T
when<T>({  
    
    
- required T defaultCollision(),
 - required T quadTreeCollision(),
 
Implementation
T when<T>({
  required T Function(BonfireCollisionConfigDefault) defaultCollision,
  required T Function(BonfireCollisionConfigQuadTree) quadTreeCollision,
}) {
  return switch (this) {
    final BonfireCollisionConfigQuadTree c => quadTreeCollision(c),
    final BonfireCollisionConfigDefault c => defaultCollision(c),
    _ => throw UnimplementedError(),
  };
}