isCompleteModuleDescriptor = (descriptor) => {
  return !!(
    isObjectyObject(descriptor) &&
    hasValue(descriptor, 'compartment') &&
    hasValue(descriptor, 'module')
  )
}
Type guard for a `Required<ModuleDescriptor>`.

The `compartment` and `module` props are optional in the original type, but
we need both.

@param {unknown} descriptor
@returns {descriptor is Required<ModuleDescriptor>}
@internal