Combine built-in utility types for precise shapes
type CreateUserDto = Pick<User, 'name' | 'email'>;
type UpdateUserDto = Partial<Omit<User, 'id'>>;
type ReadonlyUser = Readonly<Required<User>>;Combine built-in utility types for precise shapes
type CreateUserDto = Pick<User, 'name' | 'email'>;
type UpdateUserDto = Partial<Omit<User, 'id'>>;
type ReadonlyUser = Readonly<Required<User>>;