Not sure how to explain it, but I think the example explains it well.
type Path = {
"/user": {
"get": any
"post": any
},
"/posts": {
"get": any
"post": any
}
}
Should make a type that returns
type FullPath = "/user/get" | "/user/post" | "/post/get" | "/post/post"
Generally, I'm not really sure what keyof T actually returns, and therefor not sure how I can use it to manipulate types.