Скорее всего потому что Boolean это функция, которая возвращает true или false, и в этом случае ts не приводит аргумент к типу. По сути можно создать функцию Bool(arg: any): boolean и будет такой же результат, но если написать Bool(arg: any): arg is “a”, то все будет ок
Все встало на места.
вроде все на поверхности, но в голову не пришло:)
спасибо!