sindresorhus/type-fest

`Entries` don't works like `ObjectEntries`

Open

#649 aperta il 20 lug 2023

Vedi su GitHub
 (4 commenti) (0 reazioni) (0 assegnatari)TypeScript (471 fork)batch import
bughelp wanted

Metriche repository

Star
 (12.328 star)
Metriche merge PR
 (Merge medio 4g 18h) (9 PR mergiate in 30 g)

Descrizione

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
  }
}

Guida contributor