It seems like Get-TypeName is writing to the host output, rather than the default output. For example:
$a = Get-TypeName 3
Prints 'Int32' to the screen, rather than assigning it to the variable $a. Reading the help, this may be by design, but if so the cmdlet is misnamed: a Get- cmdlet shouldn't behave like that. Perhaps it should be Show-TypeName.