fires a collide/non-collide event on collision with viewport or any other bounding box
Zero-dependency augmented interval tree for TypeScript: find all intervals overlapping a point or range in O(log n + k). Port of Python intervaltree / Java Guava RangeSet.