What does `KeepNum` resolve to here?type KeepNum<T> = T extends number ? T : never; type Result = KeepNum<0 | "a" | 5>;