Type alias KeyToScreamingSnakeCaseKey<T, ValueDelimiter>

KeyToScreamingSnakeCaseKey<T, ValueDelimiter>: T extends object
    ? {
        [Key in keyof T]: Key extends string
            ? Join<Split<ScreamingSnakeCase<Key>, "."> extends string[]
                ? Split<ScreamingSnakeCase<Key>, ".">
                : never, ValueDelimiter extends string
                ? ValueDelimiter
                : never>
            : never
    }
    : never

Type Parameters

  • T

  • ValueDelimiter = "__"

Generated using TypeDoc