function makeUser() { return { name: 'Alice', age: 30 } }
type User = ReturnType<typeof makeUser>
// User = { name: string; age: number }ReturnType<T> extracts the return type of a function type, enabling DRY type inference.
ReturnType<T> extracts the return type of a function type T.
Challenge: Implement getValues<T extends object>(obj: T): T[keyof T][] returning all values of an object.
getValues({ a: 1, b: 2, c: 3 }) // β [1, 2, 3]