Type Alias PascalCasedProperties<Value>

PascalCasedProperties: Value extends Function
    ? Value
    : Value extends (infer U)[]
        ? Value
        : { [K in keyof Value as PascalCase<K>]: Value[K] }

Convert object properties to pascal case but not recursively.

This can be useful when, for example, converting some API types from a different style.

Type Parameters

  • Value
  • PascalCase
  • PascalCasedPropertiesDeep
import type {PascalCasedProperties} from 'type-fest';

interface User {
userId: number;
userName: string;
}

const result: PascalCasedProperties<User> = {
UserId: 1,
UserName: 'Tom',
};