Uso padrão
el.addEventListener('input', function () {
fn();
});
Mas , se você deseja disparar o evento ao alterar o valor das entradas manualmente por meio de JS, você deve usar o evento personalizado (qualquer nome, como 'myEvent' \ 'ev' etc.) SE você precisar ouvir formulários de evento de 'mudança' ou 'entrada' e você altera o valor das entradas por meio de JS - você pode nomear seu evento personalizado de 'mudança' \ 'entrada' e ele também funcionará.
var event = new Event('input');
el.addEventListener('input', function () {
fn();
});
form.addEventListener('input', function () {
anotherFn();
});
el.value = 'something';
el.dispatchEvent(input);
https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events