sindresorhus/type-fest

`Entries` don't works like `ObjectEntries`

Ouverte

#649 ouverte le 20 juil. 2023

 (4 commentaires) (0 réaction) (0 personne assignée)TypeScript (471 forks)batch import
bughelp wanted

Métriques du dépôt

Stars
 (12 328 étoiles)
Métriques de merge PR
 (Merge moyen 3j 5h) (11 PRs mergées en 30 j)

Description

playground The type of generic is lost. And it's useful when I want to make the result respect the key-value pair instead of a record with union keys-values So, maybe export the ObjectEntries. Or is it a bug?

function test<T extends Record<string, unknown>>(input: T) {
  for(const entry of Object.entries(input) as ObjectEntries<typeof input>) {
    type key = typeof entry[0] // keyof T
    type value = typeof entry[1] // T[keyof T]
  }

  for(const entry of Object.entries(input) as Entries<typeof input>) {
    type key = typeof entry[0] // string
    type value = typeof entry[1] // unknown
  }
}

Guide contributeur