В ts, так же как и в js допустимы конструкции, когда с помощью if можно провести проверку по выражению любого типа
Например, валидны такие варианты
let x = 15;
if (x)...
let y = "hi";
if (y)...
let z = {...};
if (z)...
Можно ли запретить использовать такие условия, чтобы if проверял исключительно по bool-условиям?