dyna-record
    Preparing search index...

    Type Alias DotPathKeys<T, Depth>

    DotPathKeys: Depth["length"] extends MaxDotPathDepth
        ? never
        : T extends NonRecursiveLeaf
            ? never
            : T extends object
                ? {
                    [K in keyof T & string]: | K
                    | (
                        NonNullable<T[K]> extends readonly (...)[]
                            ? `${K}[${ListIndex}]` | ((...) extends (...) ? (...) : (...))
                            : DotPathKeys<(...)[(...)], [(...), (...)]> extends infer D extends
                                string
                                ? `${K}.${D}`
                                : never
                    )
                }[keyof T & string]
                : never

    Recursively generates dot-separated key paths for plain object types. Stops recursion at NonRecursiveLeaf types and at MaxDotPathDepth levels to prevent "Type instantiation is excessively deep" errors.

    An array-valued field yields name[n] paths into its elements, for each ListIndex, which is DynamoDB's document-path syntax for one element of a List. A path through an array with no index is deliberately absent: DynamoDB has no path meaning "every element", so such a condition can only match nothing.

    Type Parameters

    • T

      The object type to generate paths for.

    • Depth extends unknown[] = []

      Internal depth counter (tuple). Do not provide externally.