ExpandRecursively

import { ExpandRecursively } from "jsr:@ende/collections";

type alias

type ExpandRecursively<T> = T extends Record<PropertyKey, unknown> ? T extends infer O ? { [K in keyof O]: ExpandRecursively<O[K]> } : never : T

Force intellisense to expand the typing to hide merging typings

Source