@xiangli-cmu We can always export them later. I'd rather keep the implementation as clean as possible though. Also, is `TTLKeyHeap` used outside of the package? It seems like that could be unexported too.