Type Alias ObjectDotPaths<T>

ObjectDotPaths: {
    [K in keyof T & string]: Exclude<T[K], undefined> extends infer V
        ? V extends NonRecursiveLeaf
            ? never
            : V extends object
                ? DotPathKeys<V> extends infer D extends string ? `${K}.${D}` : never
                : never
        : never
}[keyof T & string]

For a given entity, produces all dot-path keys for its ObjectAttribute fields. Checks each property: if it's a plain object (not a NonRecursiveLeaf), generates "propName.nestedKey" paths.

Type Parameters