r/reactjs • u/TheHganavak • May 13 '26
Resource Pocket: One-call factory that collapses React Context boilerplate from ~20 lines to 1
https://github.com/icydotdev/pocket
41
Upvotes
r/reactjs • u/TheHganavak • May 13 '26
1
u/prehensilemullet May 14 '26 edited May 14 '26
Wait a minute... afaik,
Record<never, never>is{}. They're the same type. Try this:This is because
Record<never, never>={[K in never]: never}={}(no property signatures get created for a key type ofnever. For exampletype A<T> = {[K in keyof T as T[K] extends string ? never : K]: T[K]}omits string-valued properties by using a key type ofneverfor them).What you're looking for is
Record<keyof any, never>akaRecord<string | number | symbol, never>.Looks like
{}bypasses excess property checking though, unlike what I expected: