This is the solution in typescript for the Tech With Tim School of Programmers Design Problem.
The problem is presented and solved by Tech With Tim using python in this two videos available in his channel:
The design doc for this problem is here
Note: The design and implementation may be different than the one provided by Tim