Type Alias DeepKey<T, K>

DeepKey<T, K>: K extends keyof T
    ? T[K]
    : K extends `${infer First}.${infer Rest}`
        ? First extends keyof T
            ? DeepKey<T[First], Rest>
            : never
        : never

Type Parameters

  • T
  • K extends string