Or maybe two types if needed, a type for the returned Work type, and another for value...