Please write a TypeScript program that includes the implementation of a binary tree data structure, including functions for inserting and searching for nodes. The implementation should prioritize readability and maintainability, while still being performant. You may choose to include additional methods if you see fit.
This prompt doesn't seem malicious.