Goal: Implement a generic `DeepReadonly<T>` which makes every parameter of an object and its sub-objects `readonly` recursively. You can assume that we are only dealing with Objects in this challenge. Arrays, Functions, Classes and so on are no need to take into consideration. However, you can still challenge yourself by covering different cases as many as possbile. For example: Source challenge: https://github.com/type-challenges/type-challenges/tree/main/questions/00009-medium-deep-readonly Reference explanation: https://github.com/ghaiklor/type-challenges-solutions/blob/main/en/medium-deep-readonly.md