No. 246 · August 29, 2026 · Hard
Entries
Implement `ObjectEntries<T>` so it produces the union of `[key, value]` pairs — the type-level shape of `Object.entries`. Each pair must keep its own key matched to its own value.
01
Puzzle
Par 4Puzzle
object-entries.tsStroke 1 of 4Not run yet
Replace ??? — your solution is checked against the cases below. Tab indents; press Escape then Tab to move focus out.
Checks
3ObjectEntries<{ a: string; b: number }>—→ ['a', string] | ['b', number]ObjectEntries<{ x: 1 }>—→ ['x', 1]ObjectEntries<{}>—→ never
How a check is judged Exact type equality, not assignability — an intersection is not the same as the flattened object.
How everyone did
Fewer than 5 people have solved this one so far. The distribution appears once there is enough of a sample to mean anything.
Short game
Fewest charactersNo public scores yet.
02
Annotated solution
This write-up publishes 24 hours after the puzzle closes.
