Typescript, Generics, Polymorphism.
keys type UppercaseObject<T> = { [K in keyof T]: string; }; // Function that converts string properties of an object to uppercase const convertToUppercase = <T extends StringObject>(obj: T): UppercaseObject<T> => { const converted: UppercaseObject<T> = {} as UppercaseObject<T>; for (const key in