Работает. Я понимаю о чем ты говоришь, много чего не доступно в TS, всяких удобных способов работы с ними нет, но интерфейсы в TS полноценные. Они выполняют свою базовую функциональость
Возможно, ты прав. Но вот у меня был один конкретный вопрос: если я указываю в качестве результата функции или аргумента интерфейс, то почему нельзя передать ему класс-реализацию интерфейса, без того, чтобы компилятор отругался или без жесткого приведения (которое пропустит, даже если ты затупил и там оказался скаляр)? Это же ломает базовые принципы?