Why is this using `isAssignable` vs. `isSameType`?