ngModel - это не ссылка на ту же область памяти, а "синтаксический сахар".
При изменении значения input-а происходит событие, которое и позволяет использовать двустороннее связывание. https://metanit.com/web/angular2/5.2.php
А при чем тут фреймворки и ES6? Тот же Angular2+ можно и на ES5 запустить, и без поддержки TypeScript.
Так что писать код Вы можете хоть на ES7, просто нужно потом прогнать его через транспилер типа Babel.