KindaPretty<T>: T extends ((...args) => any)
    ? T
    : T extends (infer innerT)[]
        ? KindaPretty<innerT>[]
        : T extends object
            ? {
                [K in keyof T]: KindaPretty<T[K]>
            }
            : T

Prettify without rewriting function types.

Type Parameters

  • T