Hi! I'm trying to understand an error I'm getting when assigning a function type that accepts a wider set of potential values to a type that accepts a narrower set. See playground link below for a reproduction.
The main thing that confuses me is the error Type 'PartialBook[Key]' is not assignable to type 'Book[Key]'. Shouldn't this be the other way around, with me assigning the function that takes Book[Key] to a function type that takes PartialBook[Key]?
I remember reading about this particular behaviour before, but I can't find the relevant discussion or docs. Any clarification on what's happening here would be appreciated!